This blog is updated daily.
A general description is here.
approxfun(), approx(), splinefun() and spline() could be confused by x values that were different but so close as to print identically. (PR#14377)
as.POSIXlt() now handles negative sub-second POSIXct times properly - they were off by exactly one day. (Reported by Daniel Murphy.)
When building packages from sources it is now possible to create DWARF debugging symbols (dSYM) in each package on Mac OS X by setting PKG_MAKE_DSYM=1 environemnt variable.
tools::undoc() again detects undocumented data objects. Of course, this also affects R CMD check.
contour() did not display dashed line types properly when contour lines were labelled. (Reported by David B. Thompson.)
packageStatus() could return a data frame with duplicate row names which could then not be printed.
txtProgressBar(style = 2) did not work correctly.
txtProgressBar(style = 3) did not display until a non-minimum value was set.
pdf() device suffered from buffer overflow when adding more than a few raster images.
require(save = TRUE) recorded in .Depends the names of packages it failed to load.
require(save = TRUE) recorded in .Depends the names of packages it failed to load.
The use of Perl configuration variables for R CMD check (as previously documented in 'Writing R Extensions') is deprecated and will be removed in R 2.12.0. Use the environment variables documented in 'R Internals' instead.
The postscript() and pdf() devices will now allow 'lwd' values less than 1 (they used to force such values to be 1).
sessionInfo() gives more detailed platform information, including 32/64-bit and the sub-architecture if one is used.
dir.create(recursive = TRUE) could fail if one of the components existed but was a directory on a read-only file system. (Seen on Solaris, where the error code returned is not even listed as possible on the man page.)
The postscript() and pdf() devices will now allow lwd values less than 1 (they used to force such values to be 1).
Fixed font face for CID fonts in pdf() graphics output. (PR#14326)
GERaster() now checks for width or height of zero and does nothing in those cases; previously the behaviour was undefined, probably device-specific, and possibly dangerous.
wilcox.test(x, y, conf.int = TRUE) failed with an unhelpful message if 'x' and 'y' were constant vectors, and similarly in the one-sample case. (PR#14329)
Improperly calling Recall() from outside a function could cause a segfault. (Reported by Robert McGehee.)
\Sexpr[result=rd] in an Rd file added a spurious newline, which was displayed as extra whitespace when rendered.
The internal strptime() could corrupt its copy of the timezone which would then lead to spurious warnings. (PR#14338)
R CMD had a typo in its detection of whether the environment variable TEXINPUTS was set (reported by Martin Morgan).
The command-line parser could mistake --file=size... for one of the options for setting limits for Ncells or Vcells.
R CMD check runs the package-specific tests with LANGUAGE=en set, to facilitate comparison to .Rout.save files.
weighted.mean(NA, na.rm=TRUE) and similar now returns NaN again, as it did previously to R 2.10.0.
aggregate.ts() gave platform-dependent results due to rounding error for ndeltat != 1.
strsplit(x, fixed=TRUE) marked UTF-8 strings with the local encoding when no splits were found.
Text help rendering of \tabular{} has been improved: under some circumstances leading blank columns were not rendered.
stripchart() could fail with an empty factor level. (PR#14317)
install.packages() has a new optional argument 'INSTALL_opts' which can be used to pass options to R CMD INSTALL for source-package installs.
R CMD Rd2dvi failed if run from a path with name containing spaces. This(s). This also affected R CMD check, which calleds Rd2dvi.
R CMD Rd2dvi failed if run from a path with name containing spaces. This affected R CMD check, which called Rd2dvi.
tools::Rd2txt() did not render poorly written Rd files consistently with other renderers.
It computed widths of strings that would be print()ed with escapes incorrectly, for example in the computation of column width for \tabular.
Command 'gnutar' is preferred to 'tar' when configure sets TAR. This is needed on Mac OS 10.6, where the default tar, bsdtar 2.6.2, has been reported to produce archives with illegal extensions to tar (according to the POSIX standard).
na.action() did not extract the 'na.action' component as documented.
tools::Rd2txt() did not render poorly written Rd files consistently with other renderers.
R CMD INSTALL checks if dependent packages are available early on
in the installation of source packages, thereby giving clearer
error messages.
R CMD INSTALL --build now names the file in the format used
for Mac OS X binary files on that platform.
BIC() in package stats4 now also works with multiple fitted models,
analogously to AIC().
Use of .C for C++ code in packages is now deprecated: it has
caused problems for some 'make's on case-insensitive file
systems (although it currently works with the recommended
toolkits).
The C function mkCharLenCE now no longer reads past 'len' bytes
(unlikely to be a problem except in user code). (PR#14246)
On systems without any default LD_LIBRARY_PATH (not even
/usr/local/lib), [DY]LIB_LIBRARY_PATH is now set without a
trailing colon. (PR#13637)
More efficient utf8ToInt() on long multi-byte strings with
many multi-byte characters. (PR#14262)
aggregate.ts() gave platform-depedent results due to rounding
error for ndeltat != 1.
package.skeleton() sometimes failed to fix filenames for .R or
.Rd files to start with an alphanumeric. (PR#14253)
It also failed when only an S4 class without any methods was
defined. (PR#14280)
splinefun(*, method = "monoH.FC") was not quite monotone in rare
cases. (PR#14215)
Rhttpd no longer crashes due to SIGPIPE when the client closes
the connection prematurely. (PR#14266)
format.POSIXlt() could cause a stack overflow and crash when used on
very long vectors. (PR#14267)
Rd2latex() incorrectly escaped special characters in \usage sections.
mcnemar.test() could alter the levels (dropping unused levels)
if passed 'x' and 'y' as factors (reported by Greg Snow).
Rd2pdf sometimes needed a further pdflatex pass to get
hyperlinked pages correct.
interaction() produced malformed results when levels were
duplicated, causing segfaults in split().
cut(d, breaks = <n>) now also works for "Date" or "POSIXt"
argument d. (PR#14288)
memDecompress() could decompress incompletely rare xz-compressed
input due to incorrect documentation of xz utils. (Report
and patch from Olaf Mersmann.)
The S4 initialize() methods for "matrix", "array", and "ts" have
been fixed to call validObject(). (PR#14284)
R CMD INSTALL now behaves the same way with or without
--no-multiarch on platforms with only one installed
architecture. (It used to clean the src directory without
--no-multiarch.)
[<-.data.frame was not quite careful enough in assigning (and
potentially deleting) columns right-to-left. (PR#14263)
rbeta(n, a,b) no longer occasionally returns NaN for a >> 1 > b.
(PR#14291)
pnorm(x, log.p = TRUE) could return NaN not -Inf for x near
(minus for lower.tail=TRUE) the largest representable number.
Compressed data files *.(txt|tab|csv).(gz|bz2|xz) were not
recognized for the list of data topics and hence for packages
using LazyData. (PR#14273)
textConnection() did an unnecessary translation on strings in
a foreign encoding (e.g. UTF-8 strings on Windows) and so was
slower than it could have been on very long input strings.
(PR#14286)
tools::Rd2txt() did not render poorly written Rd files consistently
with other renderers.
R CMD INSTALL checks if dependent packages are available early on in the installation of source packages, thereby giving clearer error messages.
R CMD INSTALL --build now names the file in the format used for Mac OS X binary files on that platform.
BIC() in package stats4 now also works with multiple fitted models, analogously to AIC().
Use of file extension .C for C++ code in packages is now deprecated: it has caused problems for some 'make's on case-insensitive file systems (although it currently works with the recommended toolkits).
Command 'gnutar' is preferred to 'tar' when configure sets TAR. This is needed on Mac OS 10.6, where the default tar, bsdtar 2.6.2, has been reported to produce archives with illegal extensions (according to the POSIX standard).
The C function mkCharLenCE now no longer reads past 'len' bytes (unlikely to be a problem except in user code). (PR#14246)
On systems without any default LD_LIBRARY_PATH (not even /usr/local/lib), [DY]LIB_LIBRARY_PATH is now set without a trailing colon. (PR#13637)
More efficient utf8ToInt() on long multi-byte strings with many multi-byte characters. (PR#14262)
aggregate.ts() gave platform-depedent results due to rounding error for ndeltat != 1.
package.skeleton() sometimes failed to fix filenames for .R or .Rd files to start with an alphanumeric. (PR#14253) It also failed when only an S4 class without any methods was defined. (PR#14280)
splinefun(*, method = "monoH.FC") was not quite monotone in rare cases. (PR#14215)
Rhttpd no longer crashes due to SIGPIPE when the client closes the connection prematurely. (PR#14266)
format.POSIXlt() could cause a stack overflow and crash when used on very long vectors. (PR#14267)
Rd2latex() incorrectly escaped special characters in \usage sections.
mcnemar.test() could alter the levels (dropping unused levels) if passed 'x' and 'y' as factors (reported by Greg Snow).
Rd2pdf sometimes needed a further pdflatex pass to get hyperlinked pages correct.
interaction() produced malformed results when levels were duplicated, causing segfaults in split().
cut(d, breaks = <n>) now also works for "Date" or "POSIXt" argument d. (PR#14288)
memDecompress() could decompress incompletely rare xz-compressed input due to incorrect documentation of xz utils. (Report and patch from Olaf Mersmann.)
The S4 initialize() methods for "matrix", "array", and "ts" have been fixed to call validObject(). (PR#14284)
R CMD INSTALL now behaves the same way with or without --no-multiarch on platforms with only one installed architecture. (It used to clean the src directory without --no-multiarch.)
[<-.data.frame was not quite careful enough in assigning (and potentially deleting) columns right-to-left. (PR#14263)
rbeta(n, a,b) no longer occasionally returns NaN for a >> 1 > b. (PR#14291)
pnorm(x, log.p = TRUE) could return NaN not -Inf for x near (minus for lower.tail=TRUE) the largest representable number.
Compressed data files *.(txt|tab|csv).(gz|bz2|xz) were not recognized for the list of data topics and hence for packages using LazyData. (PR#14273)
textConnection() did an unnecessary translation on strings in a foreign encoding (e.g. UTF-8 strings on Windows) and so was slower than it could have been on very long input strings. (PR#14286)
tools::Rd2txt() did not render poorly written Rd files consistently with other renderers.
tools::Rd2txt() did not render poorly written Rd files consistently with other renderers.
BIC() in package stats4 now also works with multiple fitted models, analogously to AIC().
R CMD INSTALL --build now names the file in the format used for Mac OS X binary files on that platform.
textConnection() did an unnecessary translation on strings in a foreign encoding (e.g. UTF-8 strings on Windows) and so was slower than it could have been on very long input strings. (PR#14286)
[<-.data.frame was not quite careful enough in assigning (and potentially deleting) columns right-to-left. (PR#14263)
Compressed data files *.(txt|tab|csv).(gz|bz2|xz) were not recognized for the list of data topics and hence for packages using LazyData. (PR#14273)
pnorm(x, log.p = TRUE) could return NaN not -Inf for x near (minus for lower.tail=TRUE) the largest representable number.
R CMD INSTALL now behaves the same way with or without --no-multiarch on platforms with only one installed architecture. (It used to clean the src directory without --no-multiarch.)
rbeta(n, a,b) no longer occasionally returns NaN for a >> 1 > b. (PR#14291)
theThe S4 initialize() methods for "matrix", "array", and "ts" have been fixed to call validObject(). (PR#14284)
R CMD INSTALL checks if dependent packages are available early on in the installation of source packages, thereby giving clearer error messages.
memDecompress() could decompress incompletely rare xz-compressed input due to incorrect documentation of xz utils. (Report and patch from Olaf Mersmann.)
the initialize() methods for "matrix", "array", and "ts" have been fixed to call validObject() (PR#14284)
Use of .C for C++ code in packages is now deprecated: it has caused problems for some 'make's on case-insensitive file systems (although it currently works with the recommended toolkits).
cut(d, breaks = <n>) now also works for "Date" or "POSIXt" argument d. (PR#14288)
package.skeleton() sometimes failed to fix filenames for .R or .Rd files to start with an alphanumeric. (PR#14253) It also failed when only an S4 class without any methods was defined. (PR#14280)
interaction() produced malformed results when levels were duplicated, causing segfaults in split().
mcnemar.test() could alter the levels (dropping unused levels) if passed 'x' and 'y' as factors (reported by Greg Snow).
Rd2pdf sometimes needed a further pdflatex pass to get hyperlinked pages correct.
Rd2latex() incorrectly escaped special characters in \usage sections.
The C function mkCharLenCE now no longer reads past 'len' bytes (unlikely to be a problem except in user code). (PR# 14246)
format.POSIXlt() could cause a stack overflow and crash when used on very long vectors. (PR#14267)
pchisq(ncp =, log.p = TRUE) is more accurate for probabilities near one. E.g. pchisq(80, 4, ncp=1, log.p=TRUE). (Maybe what was meant in PR#1412216.)
The C function mkCharLenCE now no longer reads past 'len' bytes (unlikely to be a problem except in user code). (PR# 14246)
On systems without any default LD_LIBRARY_PATH (not even /usr/local/lib), [DY]LIB_LIBRARY_PATH is now set without a trailing colon. (PR#13637)
More efficient utf8ToInt() on long multi-byte strings with many multi-byte characters. (PR#14262)
aggregate.ts() gave platform-depedent results due to rounding error for ndeltat != 1.
package.skeleton() sometimes failed to fix filenames for .R or .Rd files to start with an alphanumeric. (PR#14253)
splinefun(*, method = "monoH.FC") was not quite monotone in rare cases. (PR#14215)
Rhttpd no longer crashes due to SIGPIPE when the client closes the connection prematurely. (PR#14266)
All the results from hist() now use the nominal 'breaks' not those adjusted by the numeric 'fuzz": in recent versions the nominal 'breaks' were reported but the 'density' referred to the intervals used in the calculation -- which mattered very slightly for one of the extreme bins. (Based on a report by Martin Becker.)
If xy[z].coords (used internally by many graphics functions) are given a list as 'x', they now check that the list has suitable names and give a more informative error message. (PR#13936)
Issuing POST requests to the internal web server could stall the request under certain circumstances.
gzcon( <textConnection> ), an error, no longer damages the connection (in a way to have it seg.fault). (PR#14237)
tools::readNEWS() now accepts a digit as the first character of a news section.
pgamma(0,0), a boundary case, now returns 0, its limit from the left, rather than the limit from the right.
all.equal(*, tolerance = e) passes the numeric tolerance also to the comparison of the attributes.
read.fwf() misread multi-line records when n was specified. (PR#14241)
configure looks for a POSIX compliant tr, Solaris's /usr/ucb/tr having been found to cause Rdiff to malfunction.
configure is now generated with autoconf-2.65, which works better on recent systems and on Mac OS X.
pretty() is now generic, with new methods for "Date" and
"POSIXt" classes (based on code contributed by Felix Andrews).
In the 'methods' package, the MethodsList metadata objects which had been superseded by hash tables (environments) since R 2.8.0 are being phased out. At the present stage stub objectObjects of this class are generated and a warning issued if these are accessed: shortly none will be generatedno longer assigned or used as metadata by the package.
getMethods() is now deprecated, with its internal use replaced by findMethods() and other changes. Creating objects from the MethodsList class is also deprecated.
pretty() is now generic, with new methods for "Date" and "POSIXt" classes (based on code contributed by Felix Andrews).
New arrayInd() such that which(x, arr.ind = TRUE) for an array 'x' is now equivalent to arrayInd(which(x), dim(x), dimnames(x)).
The parser no longer marks strings containing octal or hex escapes as being in UTF-8 when entered in a UTF-8 locale.
On platforms with cairo but not Pango (notably Mac OS X) the initial default X11() type is set to "Xlib": this avoids several problems with font selection when done by cairo rather than Pango (at least on Mac OS X).
Parsing strings containing both octal/hex and Unicode escapes now gives a warning and will become an error in R 2.12.0.
The X11() device with cairo but not Pango (notably Mac OS X) now checks validity of text strings in UTF-8 locales (since Pango does but cairo it seems does not).