Commit 1077648f authored by Dirk Eddelbuettel's avatar Dirk Eddelbuettel

Import Upstream version 3.3.2

parent b29d1339
......@@ -12,7 +12,7 @@ and Administration Manual', an HTML copy of which is available as file
if you are impatient, read on but please refer to the manual to
resolve any problems. (If you obtained R using Subversion, the manual
is at doc/manual/R-admin.texi and can be read online at
http://cran.r-project.org/manuals.html.)
https://CRAN.R-project.org/manuals.html.)
SIMPLE COMPILATION
......
......@@ -137,7 +137,7 @@ rsharedir = @rsharedir@
rincludedir = @rincludedir@
rdocdir = @rdocdir@
## Overrides for installing R as a framework (MacOS X).
## Overrides for installing R as a framework (macOS).
@WANT_R_FRAMEWORK_TRUE@FW_VERSION = @FW_VERSION@
@WANT_R_FRAMEWORK_TRUE@rhome = $(R_FRAMEWORK_DIR)/Versions/$(FW_VERSION)/Resources
@WANT_R_FRAMEWORK_TRUE@bindir = $(rhome)
......
......@@ -36,7 +36,7 @@ presentations.
A package specification allows the production of loadable modules for
specific purposes, and several thousand contributed packages are made
available through the CRAN sites (see
http://CRAN.R-project.org/mirrors.html for the current members).
https://CRAN.R-project.org/mirrors.html for the current members).
2. HISTORY
......
Revision: 70800
Last Changed Date: 2016-06-21
Revision: 71607
Last Changed Date: 2016-10-31
Bug in Your Hair
Sincere Pumpkin Patch
......@@ -76,8 +76,6 @@
## g77 f77 xlf frt pgf77 cf77 fort77 fl32 af77
## On HPUX fort77 is the POSIX compliant FORTRAN compiler, and replaces
## f77 in the search list.
## If CC is gcc, first preference is given to the matching FORTRAN
## compiler (g77 or gfortran).
## If none of these is found, R cannot be compiled.
## F77=
......@@ -155,10 +153,12 @@
## LDFLAGS=
## The command which runs the C++ compiler. It not specified, configure
## The command which runs the C++ compiler.
## This is optional, for use in packages.
## It not specified, configure
## uses the values of the environment variables 'CXX' or 'CCC' if set,
## and then looks under the names 'c++', 'g++', 'gcc', 'CC', 'cxx', and
## 'cc++' (in that order).
## and then looks under the names 'c++', 'g++', 'CC' and more OS-specific
## names (from autoconf).
## CXX=
## Options for the C++ compiler.
......@@ -235,7 +235,7 @@
## Dynamic library path
## This is be default created from libraries added to LIBS.
## Used for DYLD_FALLBACK_LIBRARY_PATH on OS X and LD_LIBRARY_PATH elsewhere.
## Used for DYLD_FALLBACK_LIBRARY_PATH on macOS and LD_LIBRARY_PATH elsewhere.
## Allow user to override.
## R_LD_LIBRARY_PATH=
......@@ -255,15 +255,16 @@
## Analogues for the C++11 compiler: default to the settings for C++
## CXX1XFLAGS=
## CXX1XPICFLAGS=
## SHLIB_CXXIXLD=
## SHLIB_CXXiXLDFLAGS=
## SHLIB_CXX1XLD=
## SHLIB_CXX1XLDFLAGS=
## Additional libraries to link the internet module against.
## Some claim Solaris needs -lsocket -lnsl
## INTERNET_LIBS=
## Script from texinfo 5.1 or later.
## Can be texi2any (the default) or makeinfo or a full path to either.
## Usually the full path to texi2any.
## (The name is historical: this was 'makeinfo' in texinfo 4.x)
## MAKEINFO=
## Full path to version of curl-config to be used
......@@ -281,11 +282,14 @@
## PKGCONF=
## search path for pkg-config
## PKG_CONFIG_PATH=
## path overriding pkg-config's default search path
## PKG_CONFIG_LIBDIR=
## OpenMP settings.
## The configure code is conservative about enabling OpenMP
## so use can be forced here (or non-use if set but empty).
## For packages
## For packages (note that SHLIB_OPENMP_CXXFLAGS is for CXX, not
## necessarily for CXX1X).
## SHLIB_OPENMP_CFLAGS=
## SHLIB_OPENMP_CXXFLAGS=
## SHLIB_OPENMP_FCFLAGS=
......
This diff is collapsed.
This diff is collapsed.
......@@ -10,7 +10,8 @@ redistribute it. R as a whole is distributed under GPL version 2 or
3: most source files contain a copyright statement allowing use of
that file under GPL version 2 or later: the main exceptions are the
included versions of packages 'MASS', 'class', 'nnet', 'rpart' and
'spatial' (GPL-2 or GPL-3).
'spatial' (GPL-2 or GPL-3). (The auxiliary file m4/openmp.m4 is under
GPL-3, but its incorporation into 'configure' is not.)
The status of files used only in the Windows port is in file
src/gnuwin32/COPYRIGHTS.win, which is appended to this file in binary
......@@ -369,30 +370,33 @@ src/main/valid_utf8.h
For binary builds of R that requires us to include
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
* Redistributions of source code must retain the above copyright notice,
this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
* Neither the name of the University of Cambridge nor the name of Google
Inc. nor the names of their contributors may be used to endorse or
promote products derived from this software without specific prior
written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
modification, are permitted provided that the following conditions
are met:
* Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above
copyright notice, this list of conditions and the following
disclaimer in the documentation and/or other materials
provided with the distribution.
* Neither the name of the University of Cambridge nor the name
of Google Inc. nor the names of their contributors may be used
to endorse or promote products derived from this software
without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
POSSIBILITY OF SUCH DAMAGE.
......@@ -514,6 +518,12 @@ tools/missing
Copyright various dates Free Software Foundation
m4/openmp.m4
Copyright (C) 2001-2012 Free Software Foundation, Inc.
Copyright (C) 2015-2016 R Core Team
Under GPL-3 with the Autoconf Configure Script Exception, version 3.0.
tools/config.quess
tools/config.sub
......@@ -583,3 +593,80 @@ src/gnuwin32/installer/R.bmp
The design of the current logo is based on the previous logo that
was included in the R source from 1998 to 2016.
---------------------------------------------------
Binary distributions of R may include compiled code from the PCRE
library whose licence is:
THE BASIC LIBRARY FUNCTIONS
---------------------------
Written by: Philip Hazel
Email local part: ph10
Email domain: cam.ac.uk
University of Cambridge Computing Service, Cambridge, England.
Copyright (c) 1997-2015 University of Cambridge
All rights reserved.
PCRE JUST-IN-TIME COMPILATION SUPPORT
-------------------------------------
Written by: Zoltan Herczeg
Email local part: hzmester
Emain domain: freemail.hu
Copyright(c) 2010-2015 Zoltan Herczeg
All rights reserved.
STACK-LESS JUST-IN-TIME COMPILER
--------------------------------
Written by: Zoltan Herczeg
Email local part: hzmester
Emain domain: freemail.hu
Copyright(c) 2009-2015 Zoltan Herczeg
All rights reserved.
THE C++ WRAPPER FUNCTIONS
-------------------------
Contributed by: Google Inc.
Copyright (c) 2007-2012, Google Inc.
All rights reserved.
THE "BSD" LICENCE
-----------------
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
* Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above
copyright notice, this list of conditions and the following
disclaimer in the documentation and/or other materials
provided with the distribution.
* Neither the name of the University of Cambridge nor the name
of Google Inc. nor the names of their contributors may be used
to endorse or promote products derived from this software
without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
POSSIBILITY OF SUCH DAMAGE.
---------------------------------------------------
This diff is collapsed.
R FAQ
Frequently Asked Questions on R
Version 2016-04-24
Version 2016-06-06
Kurt Hornik
......@@ -179,7 +179,7 @@ Feedback via email to <Kurt.Hornik@R-project.org> is of course most
welcome.
In particular, note that I do not have access to Windows or Mac
systems. Features specific to the Windows and OS X ports of R are
systems. Features specific to the Windows and macOS ports of R are
described in the "R for Windows FAQ"
(https://CRAN.R-project.org/bin/windows/base/rw-FAQ.html) and the "R for
Mac OS X FAQ" (https://CRAN.R-project.org/bin/macosx/RMacOSX-FAQ.html).
......@@ -246,11 +246,12 @@ operating systems. Support for Mac OS Classic ended with R 1.7.1.
The current version of R will configure and build under a number of
common Unix-like (e.g., <https://en.wikipedia.org/wiki/Unix-like>)
platforms including CPU-linux-gnu for the i386, amd64, alpha, arm/armel,
hppa, ia64, m68k, mips/mipsel, powerpc, s390 and sparc CPUs (e.g.,
platforms including CPU-linux-gnu for the i386, amd64/x86_64, alpha,
arm, arm64, hppa, mips/mipsel, powerpc, s390x and sparc CPUs (e.g.,
<https://buildd.debian.org/build.php?&pkg=r-base>), i386-hurd-gnu,
CPU-kfreebsd-gnu for i386 and amd64, powerpc-apple-darwin,
mips-sgi-irix, i386-freebsd, rs6000-ibm-aix, and sparc-sun-solaris.
CPU-kfreebsd-gnu for i386 and amd64, i386-pc-solaris, rs6000-ibm-aix,
sparc-sun-solaris, x86_64-apple-darwin, x86_64-unknown-freebsd and
x86_64-unknown-openbsd.
If you know about other platforms, please drop us a note.
......@@ -373,11 +374,11 @@ details.
----------------------------------
The 'bin/macosx' directory of a CRAN site contains a standard Apple
installer package to run on OS X 10.9 ('Mavericks') and later. Once
installer package to run on macOS 10.9 ('Mavericks') and later. Once
downloaded and executed, the installer will install the current release
of R and R.app, the OS X GUI. This port of R for OS X is maintained by
Simon Urbanek <Simon.Urbanek@R-project.org> (and previously by Stefano
Iacus). The "R for Mac OS X FAQ
of R and R.app, the macOS GUI. This port of R for macOS is maintained
by Simon Urbanek <Simon.Urbanek@R-project.org> (and previously by
Stefano Iacus). The "R for Mac macOS FAQ
(https://CRAN.R-project.org/bin/macosx/RMacOSX-FAQ.html) has more
details.
......@@ -631,8 +632,8 @@ load.
snapshots of R (copies of the current source trees), as gzipped and
bzipped tar files, a wealth of additional contributed code, as well as
prebuilt binaries for various operating systems (Linux, Mac OS Classic,
OS X, and MS Windows). CRAN also provides access to documentation on R,
existing mailing lists and the R Bug Tracking system.
macOS, and MS Windows). CRAN also provides access to documentation on
R, existing mailing lists and the R Bug Tracking system.
Since March 2016, "old" material is made available from a central
CRAN archive server (<https://CRAN-archive.R-project.org/>).
......@@ -760,9 +761,6 @@ S.
See <http://statweb.stanford.edu/~jmc4/papers/96.7.ps> for further
information on the "Evolution of the S Language".
There is a huge amount of user-contributed code for S, available at
the S Repository (http://lib.stat.cmu.edu/S/) at CMU.
3.2 What is S-PLUS?
===================
......@@ -1629,15 +1627,14 @@ manipulating and editing saved transcripts, and re-evaluating commands
from transcript files).
The latest stable version of ESS is available via CRAN or the ESS web
page (http://ESS.R-project.org/). The HTML version of the documentation
can be found at <https://stat.ethz.ch/ESS/>.
page (https://ESS.R-project.org/).
ESS comes with detailed installation instructions.
For help with ESS, send email to <ESS-help@stat.math.ethz.ch>.
For help with ESS, send email to <ESS-help@r-project.org>.
Please send bug reports and suggestions on ESS to
<ESS-bugs@stat.math.ethz.ch>. The easiest way to do this from is within
<ESS-bugs@r-project.org>. The easiest way to do this from is within
Emacs by typing 'M-x ess-submit-bug-report' or using the [ESS] or [iESS]
pulldown menus.
......@@ -2128,7 +2125,7 @@ Under a Unix-like, if your installation supports the 'type="cairo"'
option to the 'png()' device there should be no problems, and the
default settings should just work. This option is not available for
versions of R prior to 2.7.0, or without support for cairo. From R
2.7.0 'png()' by default uses the Quartz device on OS X, and that too
2.7.0 'png()' by default uses the Quartz device on macOS, and that too
works in batch mode.
Earlier versions of the 'png()' device used the X11 driver, which is
......@@ -2327,32 +2324,49 @@ between package and library?:: for more information.
=================================================
The only numbers that can be represented exactly in R's numeric type are
integers and fractions whose denominator is a power of 2. Other numbers
have to be rounded to (typically) 53 binary digits accuracy. As a
result, two floating point numbers will not reliably be equal unless
they have been computed by the same algorithm, and not always even then.
For example
integers and fractions whose denominator is a power of 2. All other
numbers are internally rounded to (typically) 53 binary digits accuracy.
As a result, two floating point numbers will not reliably be equal
unless they have been computed by the same algorithm, and not always
even then. For example
R> a <- sqrt(2)
R> a * a == 2
[1] FALSE
R> a * a - 2
[1] 4.440892e-16
R> print(a * a, digits = 18)
[1] 2.00000000000000044
The function 'all.equal()' compares two objects using a numeric
tolerance of '.Machine$double.eps ^ 0.5'. If you want much greater
accuracy than this you will need to consider error propagation
carefully.
A discussion with many easily followed examples is in Appendix G
"Computational Precision and Floating Point Arithmetic", pages 753-771
of _Statistical Analysis and Data Display: An Intermediate Course with
Examples in R_, Richard M. Heiberger and Burt Holland (Springer 2015,
second edition). This appendix is a free download from
<http://link.springer.com/content/pdf/bbm%3A978-1-4939-2122-5%2F1.pdf>.
For more information, see e.g. David Goldberg (1991), "What Every
Computer Scientist Should Know About Floating-Point Arithmetic", _ACM
Computing Surveys_, *23/1*, 5-48, also available via
<http://www.validlab.com/goldberg/paper.pdf>.
To quote from "The Elements of Programming Style" by Kernighan and
Plauger:
Here is another example, this time using addition:
_10.0 times 0.1 is hardly ever 1.0_.
R> .3 + .6 == .9
[1] FALSE
R> .3 + .6 - .9
[1] -1.110223e-16
R> print(matrix(c(.3, .6, .9, .3 + .6)), digits = 18)
[,1]
[1,] 0.299999999999999989
[2,] 0.599999999999999978
[3,] 0.900000000000000022
[4,] 0.899999999999999911
7.32 How can I capture or ignore errors in a long simulation?
=============================================================
......@@ -2433,7 +2447,7 @@ Acrobat Reader (cross platform)
There are options in Preferences to enable/disable text smoothing,
image smoothing and line art smoothing. Disable line art
smoothing.
Preview (OS X)
Preview (macOS)
There is an option in Preferences to enable/disable anti-aliasing
of text and line art. Disable this option.
GSview (cross platform)
......@@ -2650,13 +2664,13 @@ recommend that you use these methods. The requisite code to add to
options(download.file.method = "wininet", url.method = "wininet")
(Windows)
options(download.file.method = "libcurl", url.method = "libcurl")
(Linux and OS X)
(Linux and macOS)
(Method '"wininet"' is the default on Windows as from R 3.2.2.)
Note that the '"libcurl"' method may or may not have been compiled
in. In the case that it was not, i.e.. 'capabilities("libcurl") ==
FALSE', we recommend method '"wget"' on Linux and '"curl"' on OS X. It
FALSE', we recommend method '"wget"' on Linux and '"curl"' on macOS. It
is possible that system versions of '"libcurl"', 'wget' or 'curl' may
have been compiled without HTTPS support, but this is unlikely. As from
R 3.3.0 '"libcurl"' with HTTPS support is required except on Windows.
......@@ -2664,7 +2678,7 @@ R 3.3.0 '"libcurl"' with HTTPS support is required except on Windows.
7.44 How can I get CRAN package binaries for outdated versions of R?
====================================================================
Since March 2016, Windows and OS X binaries of CRAN packages for old
Since March 2016, Windows and macOS binaries of CRAN packages for old
versions of R (released more than 5 years ago) are made available from a
central CRAN archive server instead of the CRAN mirrors. To get these,
one should set the CRAN "mirror" element of the 'repos' option
......
R News
CHANGES IN R 3.3.2:
NEW FEATURES:
* extSoftVersion() now reports the version (if any) of the readline
library in use.
* The version of LAPACK included in the sources has been updated to
3.6.1, a bug-fix release including a speedup for the
non-symmetric case of eigen().
* Use options(deparse.max.lines=) to limit the number of lines
recorded in .Traceback and other deparsing activities.
* format(<AsIs>) looks more regular, also for non-character atomic
matrices.
* abbreviate() gains an option named = TRUE.
* The online documentation for package methods is extensively
rewritten. The goals are to simplify documentation for basic
use, to note old features not recommended and to correct
out-of-date information.
* Calls to setMethod() no longer print a message when creating a
generic function in those cases where that is natural: S3
generics and primitives.
INSTALLATION and INCLUDED SOFTWARE:
* Versions of the readline library >= 6.3 had been changed so that
terminal window resizes were not signalled to readline: code has
been added using a explicit signal handler to work around that
(when R is compiled against readline >= 6.3). (PR#16604)
* configure works better with Oracle Developer Studio 12.5.
UTILITIES:
* R CMD check reports more dubious flags in files
src/Makevars[.in], including -w and -g.
* R CMD check has been set up to filter important warnings from
recent versions of gfortran with -Wall -pedantic: this now
reports non-portable GNU extensions such as out-of-order
declarations.
* R CMD config works better with paths containing spaces, even
those of home directories (as reported by Ken Beath).
DEPRECATED AND DEFUNCT:
* Use of the C/C++ macro NO_C_HEADERS is deprecated (no C headers
are included by R headers from C++ as from R 3.3.0, so it should
no longer be needed).
BUG FIXES:
* The check for non-portable flags in R CMD check could be stymied
by src/Makevars files which contained targets.
* (Windows only) When using certain desktop themes in Windows 7 or
higher, Alt-Tab could cause Rterm to stop accepting input.
(PR#14406; patch submitted by Jan Gleixner.)
* pretty(d, ..) behaves better for date-time d (PR#16923).
* When an S4 class name matches multiple classes in the S4 cache,
perform a dynamic search in order to obey namespace imports.
This should eliminate annoying messages about multiple hits in
the class cache. Also, pass along the package from the
ClassExtends object when looking up superclasses in the cache.
* sample(NA_real_) now works.
* Packages using non-ASCII encodings in their code did not install
data properly on systems using different encodings.
* merge(df1, df2) now also works for data frames with column names
"na.last", "decreasing", or "method". (PR#17119)
* contour() caused a segfault if the labels argument had length
zero. (Reported by Bill Dunlap.)
* unique(warnings()) works more correctly, thanks to a new
duplicated.warnings() method.
* findInterval(x, vec = numeric(), all.inside = TRUE) now returns
0s as documented. (Reported by Bill Dunlap.)