This blog is updated daily.
A general description is here.
Some unusual arguments to ‘embedFonts()’ can now be specified as character vectors, and the defaults have been changed accordingly.
(Unix-alikes.) ‘system(cmd, input = )’ now uses ‘shell-execution-environment’ redirection, which will be more natural if ‘cmd’ is not a single command (but requires a POSIX-compliant shell). (Wish of PR#15508)
‘save()’, ‘saveRDS()’ and ‘serialize()’ now support ‘ascii = NA’ which writes ASCII files using ‘sprintf("%a")’ for double/complex quantities. This is read-compatible with ‘ascii = TRUE’ but avoids binary->decimal->binary conversions with potential loss of precision. Unfortunately the Windows C runtime's lack of C99 compliance means that the format cannot be read correctly there in R before 3.1.2.
‘apply(m, 2, identity)’ is now the same as the matrix ‘m’ when it has _named_ row names.
The compiler utility function ‘setCompilerOptions()’ now returns the old values invisibly. The initial optimization level can also be set with the environment variable ‘R_COMPILER_OPTIMIZE’.
‘all.equal()’ gains a method for ‘environment’s and ‘refClass’es.
‘RShowDoc("NEWS")’ now displays the pdf version.
matrices and arrays with last dimension zero did not print at all or incompletely. (PR#16012)
The ‘confint()’ method for ‘nls()’ fits failed it these has specified parameter limits despite using an algorithm other than ‘"port"’. (PR#15960)
‘hist(x, breaks)’ is more robust in adding a small fuzz to few breaks when some are very large. (PR#15899)
‘sub()’ and ‘gsub()’ did not handle regular expressions like ‘"\s{2,}"’ properly if the text contained ‘NA’ or non-ascii elements in a UTF-8 locale. Part of this was due to a bug in the TRE library. (PR#16009)