This blog is updated daily.
A general description is here.
The handling of ‘${FOO-bar}’ and ‘${FOO:-bar}’ in ‘Renviron’ files now follows POSIX shells (at least on a Unix-alike), so the first treats empty environment variables as set and the second does not. Previously both ignored empty variables. There are several uses of the first form in ‘etc/Renviron’.
‘unlink()’ gains a new argument ‘expand’ to disable wildcard and tilde expansion. Elements of ‘x’ of value ‘"~"’ are now ignored.
New ‘globalCallingHandlers()’ function to establish global condition handlers. This allows registering default handlers for specific condition classes. Developed in collaboration with Lionel Henry.
New function ‘tryInvokeRestart()’ to invoke a specified restart if one is available and return without signaling an error if no such restart is found. Contributed by Lionel Henry in PR#17598.
‘Rprof()’ gains a new argument ‘filter.callframes’ to request that intervening call frames due to lazy evaluation or explicit ‘eval()’ calls be omitted from the recorded profile data. Contributed by Lionel Henry in PR#17595.
‘summaryRprof()’ now should work correctly for the ‘Rprof(*, memory.profiling=TRUE)’ case with small chunk size (and ‘"tseries"’ or similar) thanks to a patch proposal by Benjamin Tyner, in PR#15886.
‘xgettext()’ ignores strings passed to ‘ngettext()’, since the latter is handled by ‘xngettext()’. Thanks to Daniele Medri for the report and all the recent work he has done on the Italian translations.