Dear all, A recent bug fix for data.table was for non-ascii characters in column names and grouping by those column. So, the package's test file now includes non-ascii characters to test that bug fix :
# Test non ascii characters when passed as character by, #2134 x = rep(LETTERS[1:2], 3) y = rep(1:3, each=2) DT = data.table(ÅR=x, foo=y) test(708, names(DT[, mean(foo), by="ÅR"]), c("ÅR","V1")) test(709, DT[, mean(foo), by="ÅR"], DT[, mean(foo), by=ÅR]) DT = data.table(FÅR=x, foo=y) test(710, names(DT[, mean(foo), by="FÅR"]), c("FÅR","V1")) DT = data.table(ÆØÅ=x, foo=y) test(711, DT[, mean(foo), by="ÆØÅ"], data.table(ÆØÅ=c("A","B"), V1=2)) test(712, DT[, mean(foo), by=ÆØÅ], data.table(ÆØÅ=c("A","B"), V1=2)) This passes R CMD check on Linux, Windows and Mac on R-Forge, but not on Mac on CRAN because Prof Ripley advises that uses the C locale. It works on Windows because data.table does this first : oldenc = options(encoding="UTF-8")[[1L]] sys.source("tests.R") # the file that includes the tests above options(encoding=oldenc) If I change it to the following, will it work on CRAN's Mac, and is this ok/correct? Since it passes on R-Forge's Mac, I can't think how else to test this. oldlocale = Sys.getlocale("LC_CTYPE") if (oldlocale=="C") Sys.setlocale("LC_CTYPE","en_GB.UTF-8") oldenc = options(encoding="UTF-8")[[1L]] sys.source("tests.R") # the file that includes the tests above options(encoding=oldenc) Sys.setlocalte("LC_CTYPE",oldlocale) Many thanks, Matthew ______________________________________________ R-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-devel