This blog is updated daily.
A general description is here.
colnames(DF) is now also fast for large dataframes DF with
automatic row.names. Note that the correct usage is
names(DF). (PR#10470)
tools::texi2dvi() works around the failure of 'texi2dvi --quiet'
to be quiet in texinfo 4.11.
A compilation problem on one system where glob was not found
has been corrected. (PR#10468)
The "profile.nls" method of plot() was losing the x axis labels.
array() computed the total number of entries in the array before
coercing the dimensions to integer. (Reported by Allen McIntosh.)
persp() misreported errors in the y parameter. (Reported by Allen
McIntosh.)
source("clipboard", echo=TRUE) and file("clipboard", open="rt")
gave spurious errors. (Reported by Fernando Saldanha.)
attributes<-() stripped any existing attributes before checking
that all elements of the right-hand side had names.
rbinom(n, size, *) gave NaN when 'size > .Machine$integer.max'.
print.summary.lm() is now consistent in the capitalization of
"R-squared".
confint() misreported on some rank-deficient lm() models.
(PR#10496) This could also occur in the default method.
\code{\var{<name>}} was not rendered correctly to latex in Rd
files for non-alphabetic arguments <name>.
In 2.6.1, curve(*, add=TRUE) used a wrong default 'xlim' when x
coordinates were logged.
The Java-based search in help.start() now only requires a
JVM >= 1.4 (2.6.1 accidentally required >= 1.5).
The default method for range() was omitting 'na.rm' for
non-numeric objects such as those of class "Date". (PR#10508)
cut(x, breaks=<n>) misbehaved on a constant vector of negative
values.
bxp(), the plotting engine of boxplot(), no longer plots staple
ticks multiple times. (PR#10499)
The automatic detection of the domain for message translation
was not working correctly for messages in message(), warning()
and stop() in packages other than 'base'.
The profile.nls() function misbehaved when encountering
non-convergence of the "port" algorithm.
Under certain rare circumstances in R 2.6.x, log(), round()
and trunc() could alter their arguments in the caller. This
involved passing of empty '...' arguments, and was spotted
when using apply(x, 2, log).
par() no longer warns unnecessarily when asked to set new=FALSE
on an unused graphics device.
plot.formula() was not passing on '...' when used with a
one-sided formula.
plot.formula() was not accepting expressions for annotations passed to title(). (PR#10525)
pchisq(x, df=0, ncp=L) now returns the correct limit exp(-L/2) for
x=0 and is no longer returning NaN for x > 0, L < 80. (PR#10551)
Non-ASCII characters were only working correctly in Hershey
fonts if these were specified by the 'vfont' argument to
text() and not if specified as a font family.
There were several errors in Hershey$allowed, but the help
page listed the allowed combinations correctly.
text() no longer attempts to use 'vfont' with an expression
for 'labels' (it was documented not to work).
fisher.test(simulate.p.value = TRUE) gave incorrect answers
in some extremely degenerate problems. (PR#10558)
src/extra/pcre has been updated to PCRE 7.5 (bugfix release).
capture.output() completes an incomplete final line of
output when file = NULL. (PR#10534)
capture.output() now returns invisibly if output is written to
a file/connection.
format.AsIs() did not remove the "AsIs" class and so could go
into an infinite loop.
summary.mlm() lost the names of the coefficients when there
was only one.
Rdconv was not marking examples files with an encoding if
this was known from the package's DESCRIPTION file.
readChar() from a raw vector was reading a number of bytes,
not characters.
slotNames() was erroneously treating classes that extend
"character" as strings.
R no longer ignores SIGPIPE signals even in processes launched
by system(). Instead PR#1959 is handled by a simple error
handler which will give an error message in circumstances
where none was given before.
The AIC() S4 generic in package stats4 no longer disables
dispatch of S3 methods for AIC().
The conflicts check in library() excluded all S4 generics, even
where they were unrelated to the function masked. It is now
more selective (although still too generous to S4 generics).
proc.time() was missing a protect and could misbehave if
provoked by gctorture(). (PR#10600)
colnames(DF) is now also fast for large dataframes DF with automatic row.names. Note that the correct usage is names(DF). (PR#10470)
tools::texi2dvi() works around the failure of 'texi2dvi --quiet' to be quiet in texinfo 4.11.
A compilation problem on one system where glob was not found has been corrected. (PR#10468)
The "profile.nls" method of plot() was losing the x axis labels.
array() computed the total number of entries in the array before coercing the dimensions to integer. (Reported by Allen McIntosh.)
persp() misreported errors in the y parameter. (Reported by Allen McIntosh.)
source("clipboard", echo=TRUE) and file("clipboard", open="rt") gave spurious errors. (Reported by Fernando Saldanha.)
attributes<-() stripped any existing attributes before checking that all elements of the right-hand side had names.
rbinom(n, size, *) gave NaN when 'size > .Machine$integer.max'.
print.summary.lm() is now consistent in the capitalization of "R-squared".
confint() misreported on some rank-deficient lm() models. (PR#10496) This could also occur in the default method.
\code{\var{<name>}} was not rendered correctly to latex in Rd files for non-alphabetic arguments <name>.
In 2.6.1, curve(*, add=TRUE) used a wrong default 'xlim' when x coordinates were logged.
The Java-based search in help.start() now only requires a JVM >= 1.4 (2.6.1 accidentally required >= 1.5).
The default method for range() was omitting 'na.rm' for non-numeric objects such as those of class "Date". (PR#10508)
cut(x, breaks=<n>) misbehaved on a constant vector of negative values.
bxp(), the plotting engine of boxplot(), no longer plots staple ticks multiple times. (PR#10499)
The automatic detection of the domain for message translation was not working correctly for messages in message(), warning() and stop() in packages other than 'base'.
The profile.nls() function misbehaved when encountering non-convergence of the "port" algorithm.
Under certain rare circumstances in R 2.6.x, log(), round() and trunc() could alter their arguments in the caller. This involved passing of empty '...' arguments, and was spotted when using apply(x, 2, log).
par() no longer warns unnecessarily when asked to set new=FALSE on an unused graphics device.
plot.formula() was not passing on '...' when used with a one-sided formula.
plot.formula() was not accepting expressions for annotations passed to title(). (PR#10525)
pchisq(x, df=0, ncp=L) now returns the correct limit exp(-L/2) for x=0 and is no longer returning NaN for x > 0, L < 80. (PR#10551)
Non-ASCII characters were only working correctly in Hershey fonts if these were specified by the 'vfont' argument to text() and not if specified as a font family.
There were several errors in Hershey$allowed, but the help page listed the allowed combinations correctly.
text() no longer attempts to use 'vfont' with an expression for 'labels' (it was documented not to work).
fisher.test(simulate.p.value = TRUE) gave incorrect answers in some extremely degenerate problems. (PR#10558)
src/extra/pcre has been updated to PCRE 7.5 (bugfix release).
capture.output() completes an incomplete final line of output when file = NULL. (PR#10534)
capture.output() now returns invisibly if output is written to a file/connection.
format.AsIs() did not remove the "AsIs" class and so could go into an infinite loop.
summary.mlm() lost the names of the coefficients when there was only one.
Rdconv was not marking examples files with an encoding if this was known from the package's DESCRIPTION file.
readChar() from a raw vector was reading a number of bytes, not characters.
slotNames() was erroneously treating classes that extend "character" as strings.
R no longer ignores SIGPIPE signals even in processes launched by system(). Instead PR#1959 is handled by a simple error handler which will give an error message in circumstances where none was given before.
The AIC() S4 generic in package stats4 no longer disables dispatch of S3 methods for AIC().
The conflicts check in library() excluded all S4 generics, even where they were unrelated to the function masked. It is now more selective (although still too generous to S4 generics).
proc.time() was missing a protect and could misbehave if provoked by gctorture(). (PR#10600)
The cut() and hist() methods for dates and datetimes are now more accurate for intervals of "months" and "years", thanks to Marc Schwarz.
url()/download.file() could segfault if the HTTP interaction involved a redirect to an address starting with '/' on the same server.
We set some environment variables to work around hangs in Rgui
when packages (e.g. tseries) use Fortran WRITE calls. The
Fortran output will be written to a file named 'fort.6' in the
working directory.
Browsing for a directory in choose.dir() and the Rgui
'Change Dir...' menu item now works around Vista's confusion
about 'desktop' by starting at 'Computer' on Vista/Server 2008.
The shortcuts created by the installer now start R in the user's
personal folder (typically 'My Documents' or 'Documents').
win.version() and Sys.info() know about recent and upcoming
Windows versions, including if they are running on a 64-bit
platform.
The listbox used by select.list() now responds to
double-clicking an item (as if the item had been selected and
then the OK button pressed).
The header iconv.h is now installed, and can be used by
packages in conjunction with PKG_LIBS=-liconv .
The value of "default" for the postscript() 'paper' argument for
savePlot() and the windows() graphics device menus is now
interpreted as "special" (rather than "a4" or "letter"): it
can still be overridden by setting ps.options(). (This changes
the default output to be most suitable for inclusion in other
documents rather than to produce a page for printing.)
If a graphics window was opened in MDI mode while the console
was zoomed, it would not be initialized properly.
The graphics window placement parameters on the GUI preferences
dialog were being ignored.
The text field in a drop-down list (as used in GUI preferences
for fonts) will now scroll horizontally when a user enters
text that exceeds the display width.
If Rterm is invoked as 'R', the status code (as passed to q())
is now returned (rather than 0 or 1).
The MSVC run-time (used by MinGW) has a global variable to
determine whether files default to text or binary mode. R now
overrides this setting so that files are always read in text
mode by default: this is relevant to embedded uses of R.
We set some environment variables to work around hangs in Rgui when packages (e.g. tseries) use Fortran WRITE calls. The Fortran output will be written to a file named 'fort.6' in the working directory.
Browsing for a directory in choose.dir() and the Rgui 'Change Dir...' menu item now works around Vista's confusion about 'desktop' by starting at 'Computer' on Vista/Server 2008.
The shortcuts created by the installer now start R in the user's personal folder (typically 'My Documents' or 'Documents').
win.version() and Sys.info() know about recent and upcoming Windows versions, including if they are running on a 64-bit platform.
The listbox used by select.list() now responds to double-clicking an item (as if the item had been selected and then the OK button pressed).
The header iconv.h is now installed, and can be used by packages in conjunction with PKG_LIBS=-liconv .
The value of "default" for the postscript() 'paper' argument for savePlot() and the windows() graphics device menus is now interpreted as "special" (rather than "a4" or "letter"): it can still be overridden by setting ps.options(). (This changes the default output to be most suitable for inclusion in other documents rather than to produce a page for printing.)
If a graphics window was opened in MDI mode while the console was zoomed, it would not be initialized properly.
The graphics window placement parameters on the GUI preferences dialog were being ignored.
The text field in a drop-down list (as used in GUI preferences for fonts) will now scroll horizontally when a user enters text that exceeds the display width.
If Rterm is invoked as 'R', the status code (as passed to q()) is now returned (rather than 0 or 1).
The MSVC run-time (used by MinGW) has a global variable to determine whether files default to text or binary mode. R now overrides this setting so that files are always read in text mode by default: this is relevant to embedded uses of R.