R 3.2.2 is released
pd.mes at cbs.dk
Fri Aug 14 11:21:48 CEST 2015
The build system rolled up R-3.2.2.tar.gz (codename "Fire Safety") this morning.
The list below details the changes in this release. The main point of this release is to enable package installation via secure HTTP, since ordinary HTTP is increasingly being considered a security risk.
You can get the source code from
or wait for it to be mirrored at a CRAN site nearer to you.
Binaries for various platforms will appear in due course.
For the R Core Team,
These are the md5sums for the freshly created files, in case you wish
to check that they are uncorrupted:
MD5 (AUTHORS) = eb97a5cd38acb1cfc6408988bffef765
MD5 (COPYING) = eb723b61539feef013de476e68b5c50a
MD5 (COPYING.LIB) = a6f89e2100d9b6cdffcea4f398e37343
MD5 (FAQ) = e74e64dde0f92181957d46a0f8538e8b
MD5 (INSTALL) = 3964b9119adeaab9ceb633773fc94aac
MD5 (NEWS) = 5ff829377f0de5cdb0ad30bb42977611
MD5 (NEWS.0) = bfcd7c147251b5474d96848c6f57e5a8
MD5 (NEWS.1) = eb78c4d053ec9c32b815cf0c2ebea801
MD5 (NEWS.2) = 8e2f4d1d5228663ae598a09bf1e2bc6b
MD5 (R-latest.tar.gz) = 57cef5c2e210a5454da1979562a10e5b
MD5 (README) = aece1dfbd18c1760128c3787f5456af6
MD5 (RESOURCES) = 529223fd3ffef95731d0a87353108435
MD5 (THANKS) = ba00f6cc68a823e1741cfa6011f40ccb
MD5 (VERSION-INFO.dcf) = 55826f7f976cd9623577e5a9ac694c47
MD5 (R-3/R-3.2.2.tar.gz) = 57cef5c2e210a5454da1979562a10e5b
This is the relevant part of the NEWS file
CHANGES IN R 3.2.2:
SIGNIFICANT USER-VISIBLE CHANGES:
* It is now easier to use secure downloads from https:// URLs on
builds which support them: no longer do non-default options need
to be selected to do so. In particular, packages can be
installed from repositories which offer https:// URLs, and those
listed by setRepositories() now do so (for some of their
Support for https:// URLs is available on Windows, and on other
platforms if support for libcurl was compiled in and if that
supports the https protocol (system installations can be expected
to do). So https:// support can be expected except on rather old
OSes (an example being OS X 'Snow Leopard', where a non-system
version of libcurl can be used).
(Windows only) The default method for accessing URLs _via_
download.file() and url() has been changed to be "wininet" using
Windows API calls. This changes the way proxies need to be set
and security settings made: there have been some reports of sites
being inaccessible under the new default method (but the previous
methods remain available).
* cmdscale() gets new option list. for increased flexibility when a
list should be returned.
* configure now supports texinfo version 6.0, which (unlike the
change from 4.x to 5.0) is a minor update. (Wish of PR#16456.)
* (Non-Windows only) download.file() with default method = "auto"
now chooses "libcurl" if that is available and a https:// or
ftps:// URL is used.
* (Windows only) setInternet2(TRUE) is now the default. The
command-line option --internet2 and environment variable
R_WIN_INTERNET2 are now ignored.
Thus by default the "internal" method for download.file() and
url() uses the "wininet" method: to revert to the previous
default use setInternet2(FALSE).
This means that https:// can be read by default by
download.file() (they have been readable by file() and url()
since R 3.2.0).
There are implications for how proxies need to be set (see
?download.file): also, cacheOK = FALSE is not supported.
* chooseCRANmirror() and chooseBioCmirror() now offer HTTPS mirrors
in preference to HTTP mirrors. This changes the interpretation
of their ind arguments: see their help pages.
* capture.output() gets optional arguments type and split to pass
to sink(), and hence can be used to capture messages.
* Header Rconfig.h now defines HAVE_ALLOCA_H if the platform has
the alloca.h header (it is needed to define alloca on Solaris and
AIX, at least: see 'Writing R Extensions' for how to use it).
INSTALLATION and INCLUDED SOFTWARE:
* The libtool script generated by configure has been modified to
support FreeBSD >= 10 (PR#16410).
* The HTML help page links to demo code failed due to a change in R
* If the na.action argument was used in model.frame(), the original
data could be modified. (PR#16436)
* getGraphicsEvent() could cause a crash if a graphics window was
closed while it was in use. (PR#16438)
* matrix(x, nr, nc, byrow = TRUE) failed if x was an object of type
* strptime() could overflow the allocated storage on the C stack
when the timezone had a non-standard format much longer than the
standard formats. (Part of PR#16328.)
* options(OutDec = s) now signals a warning (which will become an
error in the future) when s is not a string with exactly one
character, as that has been a documented requirement.
* prettyNum() gains a new option input.d.mark which together with
other changes, e.g., the default for decimal.mark, fixes some
format()ting variants with non-default getOption("OutDec") such
as in PR#16411.
* download.packages() failed for type equal to either "both" or
"binary". (Reported by Dan Tenenbaum.)
* The dendrogram method of labels() is much more efficient for
large dendrograms, now using rapply(). (Comment #15 of PR#15215)
* The "port" algorithm of nls() could give spurious errors.
(Reported by Radford Neal.)
* Reference classes that inherited from reference classes in
another package could invalidate methods of the inherited class.
Fixing this requires adding the ability for methods to be
"external", with the object supplied explicitly as the first
argument, named .self. See "Inter-Package Superclasses" in the
* readBin() could fail on the SPARC architecture due to alignment
issues. (Reported by Radford Neal.)
* qt(*, df=Inf, ncp=.) now uses the natural qnorm() limit instead
of returning NaN. (PR#16475)
* Auto-printing of S3 and S4 values now searches for print() in the
base namespace and show() in the methods namespace instead of
searching the global environment.
* polym() gains a coefs = NULL argument and returns class "poly"
just like poly() which gets a new simple=FALSE option. They now
lead to correct predict()ions, e.g., on subsets of the original
* rhyper(nn, <large>) now works correctly. (PR#16489)
* ttkimage() did not (and could not) work so was removed. Ditto for
tkimage.cget() and tkimage.configure(). Added two Ttk widgets and
missing subcommands for Tk's image command: ttkscale(),
ttkspinbox(), tkimage.delete(), tkimage.height(),
tkimage.inuse(), tkimage.type(), tkimage.types(),
tkimage.width(). (PR#15372, PR#16450)
* getClass("foo") now also returns a class definition when it is
found in the cache more than once.
More information about the R-announce