This blog is updated daily.
A general description is here.
The internal method of ‘download.file()’ can now handle files larger than 2GB on 32-bit builds which support such files (tested on 32-bit R running on 64-bit Windows).
‘kruskal.test()’ warns on more types of suspicious input.
The ‘as.dendrogram()’ method for ‘"hclust"’ objects gains a ‘check’ argument protecting against memory explosion for invalid inputs.
‘capabilities()’ has a new item ‘long.double’ which indicates if the build uses a ‘long double’ type which is longer than ‘double’.
‘nlm()’ no longer modifies the callback argument in place (a new vector is allocated for each invocation, which mimics the implicit duplication that occurred in R < 3.1.0); note that this is a change from the previously documented behavior. (PR#15958)
‘icuSetCollate()’ now accepts ‘locale = "ASCII"’ which uses the basic C function ‘strcmp’ and so collates strings byte-by-byte in numerical order.
‘sessionInfo()’ tries to report the OS version in use (not just that compiled under, and including details of Linux distributions).
‘model.frame()’ (used by ‘lm()’ and many other modelling functions) now warns when it drops contrasts from factors. (Wish of PR#16119)
‘install.packages()’ and friends now accept the value ‘type = "binary"’ as a synonym for the native binary type on the platform (if it has one).
Single source or binary files can be supplied for ‘install.packages(type = "both")’ and the appropriate type and ‘repos = NULL’ will be inferred.
New function ‘pcre_config()’ to report on some of the configuration options of the version of PCRE in use. In particular, this reports if regular expressions using ‘\p{xx}’ are supported.
(Windows.) ‘download.file(cacheOK = FALSE)’ is now supported when ‘internet2.dll’ is used.
‘browseURL()’ has been updated to work with Firefox 36.0 which has dropped support for the ‘-remote’ interface.
The included version of PCRE has been updated to 8.36.
‘configure’ accepts ‘MAKEINFO=texi2any’ as another way to ensure ‘texinfo’ 5.x is used when both 5.x and 4.x are installed.
‘R CMD check’ now checks the packages used in ‘\donttest’ sections of the examples are specified in the ‘DESCRIPTION’ file. (These are needed to run the examples interactively.)
‘R CMD check’ checks for the undeclared use of GNU extensions in Makefiles, and for Makefiles with a missing final linefeed.
‘R CMD build’ will correct line endings in all Makefiles, not just those in the ‘src’ directory.
‘R CMD check’ notes uses of ‘library()’ and ‘require()’ in package code: see the section ‘Suggested packages’ of ‘Writing R Extensions’ for good practice.
The ‘configure’ option ‘--with-valgrind-instrumentation=3’ is deprecated and will be removed in R 3.2.0.
(Windows.) ‘Rscript.exe’ was missing a manifest specifying the modern style for common controls (e.g., the download progress bar).
If a package had extra documentation files but no vignette, the HTML help system produced an empty index page.
The parser now gives an error if a null character is included in a string using Unicode escapes. (PR#16046)
‘qr.Q()’ failed on complex arguments due to pre-3.0(!) typo. (PR#16054)
‘abs()’ failed with named arguments when the argument was complex. (PR#16047)
‘"noquote"’ objects may now be used as columns in dataframes. (PR#15997)
Some values with extremely long names were printed incorrectly. (PR#15999)
Extremely large exponents on zero expressed in scientific notation (e.g. ‘0.0e50000’) could give ‘NaN’. (PR#15976)
‘download.file()’ reported downloaded sizes as 0KB if less than 1MB, only for R 3.1.2 and only on big-endian platforms.
‘prompt()’ did not escape percent signs in the automatically generated usage section of help files.
‘drop.terms()’ dropped some of the attributes of the object it was working with. (PR#16029)
(Windows.) The command completion in ‘Rgui.exe’ messed up the console. (PR#15791)
(Windows.) The ‘choose.files()’ command returned a blank string when the user asked for a single file but cancelled the request. (PR#16074)
‘Math2’ S4 group generics failed to correctly dispatch ‘"structure"’- and ‘"nonStructure"’-derived classes.
‘loadNamespace()’ imposed undocumented restrictions on the ‘versionCheck’ parameter. (Reported by Geoff Lee.)
Rare over-runs detected by AddressSanitizer in ‘substr()’ and its replacement version have been avoided.
_Inter alia_ that fix gives the documented behaviour for ‘substr(x, 1, 2) <- ""’ (subsequently reported as PR#16214).
Loading packages incorrectly defining an S4 generic followed by a function of the same name caused an erroneous cyclic namespace dependency error.
Declared vignette encodings are now always passed to the vignette engine.
Port Tomas Kalibera's fix from R-devel that restores the ‘loadMethod()’ fast path, effectively doubling the speed of S4 dispatch.
‘power.t.test()’ and ‘power.prop.test()’ now make use of the ‘extendInt’ option of ‘uniroot()’ and hence work in more extreme cases. (PR#15792)
If a package was updated and attached when its namespace was already loaded, it could end up with parts from one version and parts from the other. (PR#16120)
‘tools:::.Rdconv()’ didn't accept ‘--encoding=’ due to a typo. (PR#16121)
Unix-alike builds without a suitable ‘makeinfo’ were documented to link the missing HTML manuals to CRAN, but did not.
‘save(*, ascii=TRUE)’ and ‘load()’ now correctly deal with ‘NaN’'s. (PR#16137)
‘split.Date()’ retains fractional representations while avoiding incomplete class propagation.
‘R_ext/Lapack.h’ had not been updated for changes made by LAPACK to the argument lists of its (largely internal) functions ‘dlaed2’ and ‘dlaed3’. (PR#16157)
‘RShowDoc("NEWS", "txt")’ had not been updated for the layout changes of R 3.1.0.
The ‘xtfrm()’ method for class ‘"Surv"’ has been corrected and its description expanded.
‘mode(x) <- y’ would incorrectly evaluate ‘x’ before changing its mode. (PR#16215)
‘besselJ(1, 2^64)’ and ‘besselY(..)’ now signal a warning, returning ‘NaN’ instead of typically segfaulting. (Issue 3 of PR#15554)
HTML conversion of ‘\href’ markup in ‘.Rd’ files did not remove the backslash from ‘\%’ and so gave an invalid URL. In a related change, the ‘\’ escape is now required in such URLs.