R 3.4.2 is released (with several bug fixes and a few performance improvements)
Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.
R 3.4.2 (codename “Short Summer”) was released yesterday. You can get the latest binaries version from here. (or the .tar.gz source code from here).
As mentioned by David Smith, R 3.4.2 includes a performance improvement for names:
c()andunlist()are now more efficient in constructing thenames(.)of their return value, thanks to a proposal by Suharto Anggono. (PR#17284)
The full list of bug fixes and new features is provided below.
Thank you Duncan Murdoch !
On a related note, following the announcement on R 3.4.2, Duncan Murdoch wrote yesterday:
I’ve just finished the Windows build of R 3.4.2. It will make it to CRAN and its mirrors over the next few hours.
This is the last binary release that I will be producing. I’ve been building them for about 15 years, and it’s time to retire. Builds using different tools and scripts are available from https://mran.microsoft.com/download/. I’ll be putting my own scripts on CRAN soon in case anyone wants to duplicate them.
Nightly builds of R-patched and R-devel will continue to run on autopilot for the time being, without maintenance.
I will also be retiring from maintenance of the Rtools collection.
I am grateful to Duncan for contributing so much of his time and expertise throughout the years. And I am confident that other R users, using the binaries for the Windows OS, share this sentiment.
Upgrading to R 3.4.2 on Windows
If you are using Windows you can easily upgrade to the latest version of R using the installr package. Simply run the following code in Rgui:
install.packages("installr") # install
setInternet2(TRUE) # only for R versions older than 3.3.0
installr::updateR() # updating R.
# If you wish it to go faster, run: installr::updateR(T) |
Running “updateR()” will detect if there is a new R version available, and if so it will download+install it (etc.). There is also a step by step tutorial (with screenshots) on how to upgrade R on Windows, using the installr package. If you only see the option to upgrade to an older version of R, then change your mirror or try again in a few hours (it usually take around 24 hours for all CRAN mirrors to get the latest version of R).
I try to keep the installr package updated and useful, so if you have any suggestions or remarks on the package – you are invited to open an issue in the github page.
CHANGES IN R 3.4.2
NEW FEATURES
- Setting the
LC_ALLcategory inSys.setlocale()invalidates any cached locale-specific day/month names and the AM/PM indicator forstrptime()(as settingLC_TIMEhas since R 3.1.0). - The version of LAPACK included in the sources has been updated to 3.7.1, a bug-fix release.
- The default for
tools::write_PACKAGES(rds_compress=)has been changed to"xz"to match the compression used by CRAN. c()andunlist()are now more efficient in constructing thenames(.)of their return value, thanks to a proposal by Suharto Anggono. (PR#17284)
UTILITIES
R CMD checkchecks for andR CMD buildcorrects CRLF line endings in shell scriptsconfigureandcleanup(even on Windows).
INSTALLATION on a UNIX-ALIKE
- The order of selection of OpenMP flags has been changed: Oracle Developer Studio 12.5 accepts -fopenmp and -xopenmp but only the latter enables OpenMP so it is now tried first.
BUG FIXES
within(List, rm(x1, x2))works correctly again, including whenList[["x2"]]isNULL.regexec(pattern, text, *)now appliesas.character(.)to its first two arguments, as documented.write.table()and related functions,writeLines(), and perhaps other functions writing text to connections did not signal errors when the writes failed, e.g. due to a disk being full. Errors will now be signalled if detected during the write, warnings if detected when the connection is closed. (PR#17243)rt()assumed thencpparameter was a scalar. (PR#17306)menu(choices)with more than 10 choices which easily fit into onegetOption("width")-line no longer erroneously repeats choices. (PR#17312)length()<-on a pairlist succeeds. (https://stat.ethz.ch/pipermail/r-devel/2017-July/074680.html)- Language objects such as
quote(("\n"))or R functions are correctly printed again, where R 3.4.1 accidentally duplicated the backslashes. - Construction of
names()for very large objects inc()andunlist()now works, thanks to Suharto Anggono’s patch proposals in PR#17292. - Resource leaks (and similar) reported by Steve Grubb fixed. (PR#17314, PR#17316, PR#17317, PR#17318, PR#17319, PR#17320)
model.matrix(~1, mf)now gets the row names frommfalso when they differ from1:nrow(mf), fixing PR#14992 thanks to the suggestion by Sebastian Meyer.sigma(fm)now takes the correct denominator degrees of freedom for a fitted model withNAcoefficients. (PR#17313)hist(x, "FD")no longer “dies” with a somewhat cryptic error message whenxhas extreme outliers orIQR()zero:nclass.FD(x)tries harder to find a robust bin width h in the latter case, andhist.default(*, breaks)now checks and corrects a too largebreaksnumber. (PR#17274)callNextMethod()works for...methods.qr.coef(qd, y)now has correct names also whenqdis a complex QR or stems fromqr(*, LAPACK=TRUE).- Setting
options(device = *)to an invalid function no longer segfaults when plotting is initiated. (PR#15883) encodeString(<very large string>)no longer segfaults. (PR#15885)- It is again possible to use
configure --enable-maintainer-modewithout having installednotangle(it was required in R 3.4.[01]). - S4 method dispatch on
...calls the method by name instead of.Method(for consistency with default dispatch), and only attempts to pass non-missing arguments from the generic. readRDS(textConnection(.))works again. (PR#17325)(1:n)[-n]no longer segfaults forn <- 2.2e9(on a platform with enough RAM).x <- 1:2; tapply(x, list(x, x), function(x) "")[1,2]now correctly returnsNA. (PR#17333)- Running of finalizers after explicit GC request moved from the R interface
do_gcto theCinterfaceR_gc. This helps with reclaiming inaccessible connections. help.search(topic)and??topicmatching topics in vignettes with multiple file name extensions (e.g., ‘*.md.rsp’ but not ‘*.Rmd’) failed with an error when usingoptions(help_type = "html").- The X11 device no longer uses the Xlib backing store (PR#16497).
array(character(), 1)now gives (a 1D array with)NAas has been documented for a long time as in the other cases of zero-length array initialization and also compatibly withmatrix(character(), *). As mentioned there, this also fixes PR#17333.splineDesign(.., derivs = 4)no longer segfaults.fisher.test(*, hybrid=TRUE)now (again) will use the hybrid method when Cochran’s conditions are met, fixing PR#16654.

R-bloggers.com offers daily e-mail updates about R news and tutorials about learning R and many other topics. Click here if you're looking to post or find an R/data-science job.
Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.