INSTALLATION: * R can be installed using C23 (for example with -std=gnu23 or -std=gnu2x) with recent compilers including gcc 12-14, Apple clang 15-16, LLVM clang 17-20 and Intel icx 2024.2. It can be installed with the upcoming (at the time of writing) gcc 15, which defaults to C23. C-LEVEL FACILITIES: * The functions R_strtod and R_atof now allow hexadecimal constants without an exponent, for compatibility with their C99 versions (PR#18805). UTILITIES: * R CMD build and R CMD check now allow reference output for demo scripts (demo/<demo>.Rout.save files) to be shipped with the package, as proposed by Torsten Hothorn in PR#18816. BUG FIXES: * kappa(A, exact=TRUE) for singular A returns Inf more generally, fixing PR#18817 reported by Mikael Jagan. * Fixed URLs of the sun spots (sunspot.month etc) data sets and mention future changes due to recalibration. * The parser now accepts hexadecimal constants with a decimal point without an exponent (taken as p0) as documented in ?NumericConstants (PR#18819). * rbind() now works correctly when inputs include a raw vector and a logical, integer or double vector - previously the inclusion of the latter was garbled. * smooth.spline() checks validity of its arguments df.offset and penalty: it could segfault if they were NULL. * isGeneric(<primitive>, fdef=*, getName=TRUE) now also returns the name instead of just TRUE, fixing PR#18829 reported by Mikael OBS-URL: https://build.opensuse.org/package/show/devel:languages:R:released/R-base?expand=0&rev=146
10697 lines
431 KiB
Plaintext
10697 lines
431 KiB
Plaintext
-------------------------------------------------------------------
|
||
Sat Mar 1 21:17:00 UTC 2025 - Detlef Steuer <detlef.steuer@gmx.de>
|
||
|
||
- CHANGES IN R 4.4.3:
|
||
|
||
INSTALLATION:
|
||
|
||
* R can be installed using C23 (for example with -std=gnu23 or
|
||
-std=gnu2x) with recent compilers including gcc 12-14, Apple
|
||
clang 15-16, LLVM clang 17-20 and Intel icx 2024.2.
|
||
|
||
It can be installed with the upcoming (at the time of writing)
|
||
gcc 15, which defaults to C23.
|
||
|
||
C-LEVEL FACILITIES:
|
||
|
||
* The functions R_strtod and R_atof now allow hexadecimal constants
|
||
without an exponent, for compatibility with their C99 versions
|
||
(PR#18805).
|
||
|
||
UTILITIES:
|
||
|
||
* R CMD build and R CMD check now allow reference output for demo
|
||
scripts (demo/<demo>.Rout.save files) to be shipped with the
|
||
package, as proposed by Torsten Hothorn in PR#18816.
|
||
|
||
BUG FIXES:
|
||
|
||
* kappa(A, exact=TRUE) for singular A returns Inf more generally,
|
||
fixing PR#18817 reported by Mikael Jagan.
|
||
|
||
* Fixed URLs of the sun spots (sunspot.month etc) data sets and
|
||
mention future changes due to recalibration.
|
||
|
||
* The parser now accepts hexadecimal constants with a decimal point
|
||
without an exponent (taken as p0) as documented in
|
||
?NumericConstants (PR#18819).
|
||
|
||
* rbind() now works correctly when inputs include a raw vector and
|
||
a logical, integer or double vector - previously the inclusion of
|
||
the latter was garbled.
|
||
|
||
* smooth.spline() checks validity of its arguments df.offset and
|
||
penalty: it could segfault if they were NULL.
|
||
|
||
* isGeneric(<primitive>, fdef=*, getName=TRUE) now also returns the
|
||
name instead of just TRUE, fixing PR#18829 reported by Mikael
|
||
Jagan.
|
||
|
||
* isGeneric(fdef = print) now works, fixing PR#18369 thanks to
|
||
Mikael Jagan.
|
||
|
||
* sort(x, method = "qsort") made illegal accesses when x has length
|
||
0.
|
||
|
||
* dir.create() is protected against being passed an empty string as
|
||
its path argument.
|
||
|
||
* Silent integer overflow could occur in the 'exact' computations
|
||
for fisher.test() for unrealistic inputs: this is now an error.
|
||
|
||
* Some invalid C-level memory accesses are avoided for loglin(,
|
||
margin = NULL).
|
||
|
||
loglin(, param = TRUE) no longer gives an error in corner cases
|
||
such as a one-dimensional input.
|
||
|
||
* dev.capabilities() $ events now reports "Idle" if the device
|
||
provides it, fixing PR#18836, thanks to Trevor Davis.
|
||
|
||
* arima(.., seasonal = <wrong-vector>) correctly errors now, ditto
|
||
for arima0(), thanks to Norbert Kuder's report on the R-devel
|
||
list.
|
||
|
||
* binomial(<link>)$linkinv(eta) and .. $mu.eta(eta) now also work
|
||
for "logit" link when is.integer(eta).
|
||
|
||
* as.roman(x) now should work platform independently, also for,
|
||
e.g., x = "IIIII" (= V) and x = "IIIIII" (= VI).
|
||
|
||
* R CMD Rd2pdf works again on an installed package directory
|
||
containing LaTeX help (from option --latex), thanks to a report
|
||
by Peter Ruckdeschel.
|
||
|
||
-------------------------------------------------------------------
|
||
Thu Oct 31 11:09:11 UTC 2024 - Detlef Steuer <detlef.steuer@gmx.de>
|
||
|
||
- CHANGES IN R 4.4.2:
|
||
|
||
C-LEVEL FACILITIES:
|
||
|
||
* The S-compatibility macros F77_COM and F77_COMDECL defined in
|
||
header R_ext/RS.h are deprecated and will be removed shortly. We
|
||
could find no record of their use.
|
||
|
||
BUG FIXES:
|
||
|
||
* Mathlib function lgammacor(x) no longer warns about underflow to
|
||
zero for large x.
|
||
|
||
* Text widths and heights were incorrectly reported by the Quartz
|
||
device if the drawing context didn't exist yet (typically when
|
||
drawing off-screen to a window that is yet to appear, see
|
||
PR#18591).
|
||
|
||
* The Quartz device could segfault in cases where paths with spaces
|
||
are used in the new glyph drawing API. Thanks to Tomek
|
||
Gieorgijewski (PR#18758).
|
||
|
||
* On macOS in R CRAN builds, it is again possible to read
|
||
little-endian UTF-16 text with a BOM from a connection using
|
||
encoding="UTF-16". Users building R from source should avoid
|
||
using the system libiconv in macOS 14.1 and later.
|
||
|
||
* methods' internal .requirePackage() now re-enables primitive
|
||
method dispatch when needed; thanks to Ivan Krylov for
|
||
demystifying CRAN package check failures on the R-devel mailing
|
||
list.
|
||
|
||
-------------------------------------------------------------------
|
||
Fri Jun 14 08:20:44 UTC 2024 - Detlef Steuer <detlef.steuer@gmx.de>
|
||
|
||
- CHANGES IN R 4.4.1:
|
||
|
||
C-LEVEL FACILITIES:
|
||
|
||
* Functions R_atof and R_strtod declared in header R_ext/Utils.h
|
||
are now documented in 'Writing R Extensions' and so formally part
|
||
of the API.
|
||
|
||
* The non-API entry points Rf_setSVector, Rf_StringFalse,
|
||
Rf_StringTrue and Rf_isBlankString have been added to those
|
||
reported by R CMD check.
|
||
|
||
* The new function Rf_allocLang is now available. This provides an
|
||
alternative to the idiom of calling Rf_allocList followed by
|
||
SET_TYPEOF.
|
||
|
||
UTILITIES:
|
||
|
||
* R CMD check now reports as warnings what gfortran calls 'Fortran
|
||
2018 deleted features', all of which have long been marked as
|
||
'obsolescent' and some of which were deleted in Fortran 2008 or
|
||
earlier. Fortran compilers are no longer required to support
|
||
these.
|
||
|
||
BUG FIXES:
|
||
|
||
* as.numeric(), scan(), type.convert() and other places which use
|
||
the internal C function R_strtod now require a _non-empty_ digit
|
||
sequence in a decimal or binary exponent. This aligns with the
|
||
C/POSIX standard for strtod and with ?NumericConstants.
|
||
|
||
* as.data.frame(m, make.names=NA) now works correctly for a matrix
|
||
m with NA's in row names.
|
||
|
||
* The error message from <POSIXlt>[["hour"]] and similar now
|
||
mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
|
||
Michael Chirico.
|
||
|
||
* qbinom() and potentially qpois(), qnbinom(), no longer sometimes
|
||
fail accurate inversion (of pbinom(), etc), thanks to Christopher
|
||
Chang's report and patch in PR#18711.
|
||
|
||
* The internal help server on Windows can again serve requests sent
|
||
in quick succession, fixing a regression in R 4.4.0.
|
||
|
||
* debugcall(<S3Generic>()) now also works when a corresponding
|
||
S4-generic version is in the methods cache (PR#18143).
|
||
|
||
* Package tools' toTitleCase(ch0) now returns character(0) when ch0
|
||
is of zero length; fixing PR#18724, reported by David Hugh Jones.
|
||
|
||
* R CMD check is no longer broken (without a check result and no
|
||
explanation in 00check.log) for a package which declares an
|
||
invalid VignetteBuilder in DESCRIPTION but has no vignettes.
|
||
|
||
-------------------------------------------------------------------
|
||
Wed Apr 24 10:48:35 UTC 2024 - Detlef Steuer <detlef.steuer@gmx.de>
|
||
|
||
- CHANGES IN R 4.4.0:
|
||
|
||
SIGNIFICANT USER-VISIBLE CHANGES:
|
||
|
||
* Startup banners, R --version, sessionInfo() and R CMD check no
|
||
longer report (64-bit) as part of the platform as this is almost
|
||
universal - the increasingly rare 32-bit platforms will still
|
||
report (32-bit).
|
||
|
||
On Windows, ditto for window titles.
|
||
|
||
* is.atomic(NULL) now returns FALSE, as NULL is not an atomic
|
||
vector. Strict back-compatibility would replace is.atomic(foo)
|
||
by (is.null(foo) || is.atomic(foo)) but should happen only
|
||
sparingly.
|
||
|
||
NEW FEATURES:
|
||
|
||
* The confint() methods for "glm" and "nls" objects have been
|
||
copied to the stats package. Previously, they were stubs which
|
||
called versions in package MASS. The MASS namespace is no longer
|
||
loaded if you invoke (say) confint(glmfit). Further, the "glm"
|
||
method for profile() and the plot() and pairs() methods for class
|
||
"profile" have been copied from MASS to stats. (profile.nls()
|
||
and plot.profile.nls() were already in stats.)
|
||
|
||
* The confint() and profile methods for "glm" objects have gained a
|
||
possibility to do profiling based on the Rao Score statistic in
|
||
addition to the default Likelihood Ratio. This is controlled by a
|
||
new test = argument.
|
||
|
||
* The pairs() method for "profile" objects has been extended with a
|
||
which = argument to allow plotting only a subset of the
|
||
parameters.
|
||
|
||
* The "glm" method for anova() computes test statistics and
|
||
p-values by default, using a chi-squared test or an F test
|
||
depending on whether the dispersion is fixed or free. Test
|
||
statistics can be suppressed by giving argument test a false
|
||
logical value.
|
||
|
||
* In setRepositories() the repositories can be set using their
|
||
names via name = instead of index ind =.
|
||
|
||
* methods() and .S3methods() gain a all.names option for the (rare)
|
||
case where functions starting with a . should be included.
|
||
|
||
* Serializations can now be interrupted (e.g., by Ctrl-C on a
|
||
Unix-alike) if they take too long, e.g., from save.image(),
|
||
thanks to suggestions by Ivan Krylov and others on R-devel.
|
||
|
||
* New startup option --max-connections to set the maximum number of
|
||
simultaneous connections for the session. Defaults to 128 as
|
||
before: allowed values up to 4096 (but resource limits may in
|
||
practice restrict to smaller values).
|
||
|
||
* R on Windows (since Windows 10 2004) now uses the new Segment
|
||
Heap allocator. This may improve performance of some
|
||
memory-intensive applications.
|
||
|
||
* When R packages are built, typically by R CMD build <pkg>, the
|
||
new --user=<build_user> option overrides the (internally
|
||
determined) user name, currently Sys.info()["user"] or LOGNAME.
|
||
This is a (modified) fulfillment of Will Landau's suggestion in
|
||
PR#17530.
|
||
|
||
* tools::testInstalledBasic() gets new optional arguments outDir
|
||
and testSrcdir, e.g., allowing to use it in a <builddir> !=
|
||
<srcdir> setup, and in standard "binary" Windows installation
|
||
*if* a source tests/ folder is present.
|
||
|
||
* range(<DT_with_Inf>, finite = TRUE) now work for objects of class
|
||
"Date", "POSIXct", and "POSIXlt" with infinite entries,
|
||
analogously to range.default(), as proposed by Davis Vaughan on
|
||
R-devel. Other range()-methods can make use of new function
|
||
.rangeNum().
|
||
|
||
* New .internalGenerics object complementing .S3PrimitiveGenerics,
|
||
for documentation and low-level book-keeping.
|
||
|
||
* grid() now invisibly returns the x- and y- coordinates at which
|
||
the grid-lines were drawn.
|
||
|
||
* norm(., type) now also works for complex matrices.
|
||
|
||
* kappa(., exact = TRUE, norm = *) now works for all norms and also
|
||
for complex matrices. In symmetric / triangular cases, the new
|
||
argument uplo = "U" | "L" allows the upper or lower triangular
|
||
part to be specified.
|
||
|
||
* memDecompress(type = "unknown") recognizes compression in the
|
||
default 'zlib' format as used by memCompress(type = "gzip").
|
||
|
||
* memCompress() and memDecompress() will use the libdeflate library
|
||
(<https://github.com/ebiggers/libdeflate>) if installed. This
|
||
uses the same type of compression for type = "gzip" but is 1.5-2x
|
||
faster than the system libz library on some common platforms: the
|
||
speed-up may depend on the library version.
|
||
|
||
* diff() for objects of class "Date", "POSIXct", and "POSIXlt"
|
||
accepts a units argument passed via ....
|
||
|
||
* Dynamic help now does a much better job of rendering package
|
||
DESCRIPTION metadata.
|
||
|
||
* Rprof() gains an event argument and support for elapsed (real)
|
||
time profiling on Unix (PR#18076).
|
||
|
||
* filled.contour() gains a key.border argument.
|
||
|
||
* tools::update_pkg_po() gets arguments pot_make and mo_make for
|
||
_not_ re-making the corresponding files, and additionally a
|
||
verbose argument.
|
||
|
||
* Hexadecimal string colour specifications are now accepted in
|
||
short form, so, for example, we can use "#123", which is
|
||
equivalent to "#112233".
|
||
|
||
Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
|
||
Barrett, George Stagg, and Hanne Oberman for the patch.
|
||
|
||
* Plain-text help shows \var markup by angle brackets.
|
||
|
||
* The new experimental primitive function declare() is intended to
|
||
eventually allow information about R code to be communicated to
|
||
the interpreter, compiler, and code analysis tools. The syntax
|
||
for declarations is still being developed.
|
||
|
||
* Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
|
||
have had argument two.sided renamed to alternative, to take into
|
||
account that the permutation distributions of the one-sided
|
||
statistics can be different in the case of ties. Consequence of
|
||
PR#18582.
|
||
|
||
* sort() is now an implicit S4 generic in methods.
|
||
|
||
* Formatting and printing, format(z), print(z), of complex vectors
|
||
z no longer zap relatively small real or imaginary parts to zero,
|
||
fixing PR#16752. This is an API change, as it was documented
|
||
previously to round real and imaginary parts together on purpose,
|
||
producing nicer looking output. As mentioned, e.g. in the PR,
|
||
this change is compatible with many other "R-like" programming
|
||
environments.
|
||
|
||
We have simplified the internal code and now basically format the
|
||
real and imaginary parts independently of each other.
|
||
|
||
* New experimental functions Tailcall() and Exec() to support
|
||
writing stack-space-efficient recursive functions.
|
||
|
||
* Where characters are attempted to be plotted by pdf(),
|
||
postscript() and xfig() which are not in the selected 8-bit
|
||
character set (most often Latin-1) and the R session is using a
|
||
UTF-8 locale, the warning messages will show the UTF-8 character
|
||
rather than its bytes and one dot will be substituted per
|
||
character rather than per byte. (Platforms whose iconv() does
|
||
transliteration silently plot the transliteration.)
|
||
|
||
In a UTF-8 locale some transliterations are now done with a
|
||
warning (e.g., dashes and Unicode minus to hyphen, ligatures are
|
||
expanded, permille (‰) is replaced by o/oo), although the OS may
|
||
have got there first. These are warnings as they will continue
|
||
to be replaced by dots in earlier versions of R.
|
||
|
||
* The matrix multiplication functions crossprod() and tcrossprod()
|
||
are now also primitive and S3 generic, as %*% had become in R
|
||
4.3.0.
|
||
|
||
* source() and example() have a new optional argument catch.aborts
|
||
which allows continued evaluation of the R code after an error.
|
||
|
||
* The non-Quartz tiff() devices allow additional types of
|
||
compression if supported by the platform's libtiff library.
|
||
|
||
* The list of base and recommended package names is now provided by
|
||
tools::standard_package_names().
|
||
|
||
* cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
|
||
match pdf() and postscript().
|
||
|
||
* New option catch.script.errors provides a documented way to catch
|
||
errors and then continue in non-interactive use.
|
||
|
||
* L %||% R newly in base is an expressive idiom for the phrases
|
||
if(!is.null(L)) L else R or if(is.null(L)) R else L.
|
||
|
||
* The return value from warnings() now always inherits from
|
||
"warnings" as documented, now also in the case of no warnings
|
||
where it previously returned NULL.
|
||
|
||
* as.complex("1i") now returns 0 + 1i instead of NA with a warning.
|
||
|
||
* z <- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
|
||
longer coercing to NA_complex_. Similarly, cumsum(z) correctly
|
||
sums real and imaginary parts separately, i.e., without
|
||
"crosstalk" in case of NAs.
|
||
|
||
* On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
|
||
and "latin-9" to encoding names the OS knows about
|
||
(case-insensitively).
|
||
|
||
* iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
|
||
rather than to 4 or 8. (This seems to have become the convention
|
||
once Unicode restricted the number of Unicode points to 2^21 - 1
|
||
and so will never need more than 6 digits.)
|
||
|
||
* NCOL(NULL) now returns 0 instead of 1, for consistency with
|
||
cbind().
|
||
|
||
* The information for the Euro glyph missing from the Adobe .afm
|
||
files for the Courier, Helvetica and Times families has been
|
||
copied from their URW equivalents - this will improve vertical
|
||
centring in the pdf() and postscript() devices.
|
||
|
||
* The included BLAS sources have been updated to those shipped with
|
||
LAPACK version 3.12.0. The changes are almost entirely cosmetic.
|
||
|
||
* The included LAPACK sources have been updated to version 3.12.0
|
||
and some further double-complex routines added.
|
||
|
||
* There are new font families for the 2014--5 URW 2.0 fonts (see
|
||
?pdf) which are included in recent versions of Ghostscript.
|
||
These have font widths for most Greek glyphs and a few others
|
||
which were missing from the original versions (whose font
|
||
families remain available for reproducibility, although
|
||
Ghostscript-based viewers will render using the 2.0 versions).
|
||
|
||
* Improve the large-n efficiency of as.matrix(<dist>), thanks an R
|
||
contributors effort, notably by Tim Taylor and Heather Turner,
|
||
see PR#18660.
|
||
|
||
* The default and numeric methods of all.equal() get a check.class
|
||
option.
|
||
|
||
* zapsmall() gets new optional arguments, function mFUN and min.d,
|
||
for extra flexibility; fulfills a wish in PR#18199. Also, it is
|
||
now an implicit S4 generic in package methods.
|
||
|
||
* The Rd filter for aspell() gains an ignore argument.
|
||
|
||
* New generic function sort_by(), primarily useful for the
|
||
data.frame method which can be used to sort rows of a data frame
|
||
by one or more columns.
|
||
|
||
* The icence headers for the RPC code in src/extra/xdr have been
|
||
updated to use the GPL-compatible licence published by Oracle
|
||
America in 2010.
|
||
|
||
* New function pkg2HTML() in tools to create single-page HTML
|
||
reference manuals for R packages.
|
||
|
||
* The byte code evaluator now uses less C stack space for recursive
|
||
calls to byte-compiled functions. It also makes more of an effort
|
||
to avoid allocations for scalar return values.
|
||
|
||
* New completion option backtick (disabled by default) allows
|
||
non-syntactic completions to be wrapped in backquotes. This is
|
||
currently only useful for Jupyter notebooks via the IRkernel
|
||
package, and may cause problems for other backends.
|
||
|
||
INSTALLATION:
|
||
|
||
* The parser has been updated to work with bison 3.8.2, which is
|
||
now used for the pre-generated parsers in gram.c, file.c, and
|
||
gramRd.c. A few parser error messages have changed, which may
|
||
affect code that relies on exact messages.
|
||
|
||
INSTALLATION on a UNIX-ALIKE:
|
||
|
||
* System valgrind headers are now required to use configure option
|
||
--with-valgrind-instrumentation with value 1 or 2.
|
||
|
||
* configure will warn if it encounters a 32-bit build, as that is
|
||
nowadays almost untested.
|
||
|
||
* Environment variable R_SYSTEM_ABI is no longer used and so no
|
||
longer recorded in etc/Renviron (it was not on Windows and was
|
||
only ever used when preparing package tools).
|
||
|
||
* If the libdeflate library and headers are available, libdeflate
|
||
rather than libz is used to (de)compress R objects in lazy-load
|
||
databases. Typically tasks spend up to 5% of their time on such
|
||
operations, although creating lazy-data databases is one of the
|
||
exceptions.
|
||
|
||
This can be suppressed if the library is available by the
|
||
configure option --without-libdeflate-compression.
|
||
|
||
* configure option --enable-lto=check has not worked reliably since
|
||
2019 and has been removed.
|
||
|
||
* The minimum autoconf requirement for a maintainer build has been
|
||
increased to autoconf 2.71.
|
||
|
||
It is intended to increase this to 2.72 for R 4.5.0: the
|
||
distributed configure file was generated using 2.72.
|
||
|
||
* The minimum version requirement for an external LAPACK has been
|
||
reduced to 3.9.0.
|
||
|
||
* No default C++ compiler is set if no C++17 compiler is detected:
|
||
there is no longer an automatic fallback to C++14 or C++11.
|
||
|
||
Compilers from the last five years should have sufficient
|
||
support: for others macros CXX and CXXSTD can be set in file
|
||
config.site to provide a fallback if needed.
|
||
|
||
The Objective-C++ compiler now by default uses the standard
|
||
selected by R for C++ (currently C++17) rather than the default
|
||
standard for the C++ compiler (which on macOS is still C++98).
|
||
|
||
INSTALLATION on macOS:
|
||
|
||
* A new configure option --with-newAccelerate makes use of Apple's
|
||
'new' BLAS / LAPACK interfaces in their Accelerate framework.
|
||
Those interfaces are only available in macOS 13.3 or later, and
|
||
building requires SDK 13.3 or later (from the Command Line Tools
|
||
or Xcode 14.3 or later).
|
||
|
||
By default the option uses new Accelerate for BLAS calls: to also
|
||
use it for LAPACK use option --with-newAccelerate=lapack. The
|
||
later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
|
||
from 2021-04 and does not include the improved algorithms
|
||
introduced in LAPACK 3.10.0 (including for BLAS calls).
|
||
|
||
INSTALLATION on WINDOWS:
|
||
|
||
* The makefiles and installer scripts for Windows have been
|
||
tailored to Rtools44, an update of the Rtools43 toolchain. It is
|
||
based on GCC 13 and newer versions of MinGW-W64, binutils and
|
||
libraries (targeting 64-bit Intel CPUs). R-devel can no longer
|
||
be built using Rtools43 without changes.
|
||
|
||
* Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
|
||
_via_ the LLVM 17 toolchain using lld, clang/flang-new and
|
||
libc++.
|
||
|
||
UTILITIES:
|
||
|
||
* R CMD check notes when S4-style exports are used without
|
||
declaring a strong dependence on package methods.
|
||
|
||
* tools::checkRd() (used by R CMD check) detects more problems with
|
||
\Sexpr-based dynamic content, including bad nesting of \Sexprs
|
||
and invalid arguments.
|
||
|
||
* tools::checkRd() now reports Rd titles and section names ending
|
||
in a period; this is ignored by R CMD check unless environment
|
||
variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
|
||
|
||
* R CMD check now notes Rd files without an \alias, as long
|
||
documented in 'Writing R Extensions' §1.3.1. The check for a
|
||
missing \description has been moved from tools::checkRd() to
|
||
tools::checkRdContents().
|
||
|
||
* R CMD check now visits inst/NEWS.Rd and OS-specific man
|
||
subdirectories when checking Rd files.
|
||
|
||
* tools::checkDocFiles() and tools::checkRdContents() now also
|
||
check internal Rd files by default, but "specially" (ignoring
|
||
missing documentation of arguments).
|
||
|
||
* R CMD Rdiff gets option --useEx.
|
||
|
||
* R CMD check now warns on non-portable uses of Fortran KIND such
|
||
as INTEGER(KIND=4) and REAL(KIND=8).
|
||
|
||
To see the failing lines set environment variable
|
||
_R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
|
||
|
||
* When checking Rd files, R CMD check now notes some of the "lost
|
||
braces" that tools::checkRd() finds. Typical problems are Rd
|
||
macros missing the initial backslash (e.g., code{...}), in-text
|
||
set notation (e.g., {1, 2}, where the braces need escaping), and
|
||
\itemize lists with \describe-style entries of the form
|
||
\item{label}{description}.
|
||
|
||
* R CMD INSTALL (and hence check) will compile C++ code with
|
||
-DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
|
||
to a true value. It is planned that this will in future become
|
||
the default for compiling C++.
|
||
|
||
* The new built-in Rd macro \dontdiff{} can be used to mark example
|
||
code whose output should be ignored when comparing check output
|
||
to reference output (tests/Examples/<pkg>-Ex.Rout.save). The
|
||
\dontdiff tag, like \donttest, is _not_ shown on the rendered
|
||
help page, so provides a clean alternative to ##
|
||
IGNORE_RDIFF_(BEGIN|END) comments.
|
||
|
||
* R CMD build when there is no NAMESPACE, now uses the recommended
|
||
exportPattern("^[^.]"), instead of exporting everything.
|
||
|
||
* R CMD check now warns about non-ASCII characters in the NAMESPACE
|
||
file (in addition to R files). Such packages are not portable and
|
||
may fail to install on some platforms.
|
||
|
||
C-LEVEL FACILITIES:
|
||
|
||
* Headers R_ext/Applic.h and R-ext/Linpack.h used to include
|
||
R_ext/BLAS.h although this was undocumented and unneeded by their
|
||
documented entry points. They no longer do so.
|
||
|
||
* New function R_missing(), factored out from do_missing(), used to
|
||
fix PR#18579.
|
||
|
||
* SEXP type S4SXP has been renamed to OBJSXP to support
|
||
experimenting with alternative object systems. The S4SXP value
|
||
can still be used in C code but is now deprecated. Based on
|
||
contributions from the R Consortium's Object-Oriented Programming
|
||
Working Group.
|
||
|
||
* New function pow1p(x,y) for accurate (1+x)^y.
|
||
|
||
* mkCharLenCE was incorrectly documented to take a size_t length
|
||
but was implemented with int (and character strings in R are
|
||
limited to 2^31 - 1 bytes).
|
||
|
||
DEPRECATED AND DEFUNCT:
|
||
|
||
* data() no longer handles zipped data from long-defunct (since R
|
||
2.13.0) --use-zip-data installations.
|
||
|
||
* The legacy graphics devices pictex() and xfig() are now
|
||
deprecated. They do not support recent graphics enhancements and
|
||
their font handling is rudimentary. The intention is to retain
|
||
them for historical interest as long as they remain somewhat
|
||
functional.
|
||
|
||
* Support for encoding = "MacRoman" has been removed from the pdf()
|
||
and postscript() devices - this was a legacy encoding supporting
|
||
classic macOS up to 2001 and no longer has universal libiconv
|
||
support.
|
||
|
||
* is.R() is deprecated as no other S dialect is known to be in use
|
||
(and this could only identify historical dialects, not future
|
||
ones).
|
||
|
||
Further information on calls can be obtained by setting the
|
||
environment variable _R_DEPRECATED_IS_R_ to error which turns the
|
||
deprecation warning into an error and so by default gives a
|
||
traceback. (This is done by R CMD check --as-cran.)
|
||
|
||
* UseMethod() no longer forwards local variables assigned in the
|
||
generic function into method call environments before evaluating
|
||
the method body. This makes method calls behave more like
|
||
standard function calls and makes method code easier to analyze
|
||
correctly.
|
||
|
||
* The twelve as.data.frame.<class>() methods which were deprecated
|
||
only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
|
||
check --as-cran are formally deprecated now in favour of calling
|
||
as.data.frame() or as.data.frame.vector(). The deprecation
|
||
"check" now works also when as.data.frame() is S4 generic thanks
|
||
to Ivan Krylov.
|
||
|
||
* The default method for the directional comparison operators <, >,
|
||
<=, and >= now signals an error when one of the operands is a
|
||
language object, i.e. a symbol or a call.
|
||
|
||
* For terms.formula(), deprecate abb and neg.out arguments
|
||
_formally_ in addition to just documenting it.
|
||
|
||
BUG FIXES:
|
||
|
||
* The methods package is more robust to not being attached to the
|
||
search path. More work needs to be done.
|
||
|
||
* pairwise.t.test() misbehaved when subgroups had 0 DF for
|
||
variance, even with pool.sd = TRUE. (PR#18594 by Jack Berry).
|
||
|
||
* Probability distribution functions [dpq]<distrib>(x, *), but also
|
||
bessel[IKJY](x, .) now consistently preserve attributes(x) when
|
||
length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
|
||
Koncevičius' report PR#18509.
|
||
|
||
* Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
|
||
7, na.rm = LL) now give an error instead of either 17 or NN for
|
||
LL true or false, as proposed by Ivan Krylov on the R-devel
|
||
mailing list. (This also means it is now an error to specify
|
||
na.rm more than once.)
|
||
|
||
* as.complex(x) now returns complex(real = x, imaginary = 0) for
|
||
_all_ numerical and logical x, notably also for NA or
|
||
NA_integer_.
|
||
|
||
* Directories are now omitted by file.copy(, recursive = FALSE) and
|
||
in file.append() (PR#17337).
|
||
|
||
* gsub() and sub() are now more robust to integer overflow when
|
||
reporting errors caused by too large input strings (PR#18346).
|
||
|
||
* Top-level handlers are now more robust to attempts to remove a
|
||
handler whilst handlers are running (PR#18508).
|
||
|
||
* The handling of Alt+F4 in dialogs created on Windows using
|
||
GraphApp has been fixed (PR#13870).
|
||
|
||
* density() more consistently computes grid values for the
|
||
FFT-based convolution, following Robert Schlicht's analysis and
|
||
proposal in PR#18337, correcting density values typically by a
|
||
factor of about 0.999. Argument old.coords = TRUE provides back
|
||
compatibility.
|
||
|
||
* palette.colors() gains a name argument that defaults to FALSE
|
||
controlling whether the vector of colours that is returned has
|
||
names (where possible). PR#18529.
|
||
|
||
* tools::xgettext() no longer extracts the (non-translatable) class
|
||
names from warningCondition and errorCondition calls.
|
||
|
||
* S3method(<gen>, <class>, <func>) in the NAMESPACE file now works
|
||
(again) when <func> is visible from the namespace, e.g.,
|
||
imported, or in base.
|
||
|
||
* getParseData(f) now also works for a function defined in the
|
||
first of several <pkg>/R/*.R source files, thanks to Kirill
|
||
Müller's report and Duncan Murdoch's patch in PR#16756.
|
||
|
||
* Rd \Sexpr macros with nested #ifdef conditionals were not
|
||
processed.
|
||
|
||
* A non-blocking connection with non-default encoding (such as a
|
||
socket) now correctly returns from readLines() after new data has
|
||
arrived also when its EOF had been reached previously. Thanks to
|
||
Peter Meilstrup's report on R-devel and Ivan Krylov's report and
|
||
patch proposal in PR#18555.
|
||
|
||
* tools::checkRdContents() failed to detect empty argument
|
||
descriptions when they spanned multiple lines, including those
|
||
generated by prompt(). These cases are now noted by R CMD check.
|
||
|
||
* Plain-text help no longer outputs spurious colons in the
|
||
arguments list (for multi-line \item labels in the Rd source).
|
||
|
||
* kappa() and rcond() work correctly in more cases; kappa(., norm =
|
||
"2") now warns that it computes the 1-norm with (default) exact =
|
||
FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
|
||
|
||
* Rd skeletons generated by prompt() or promptData() now use a
|
||
dummy title (so R CMD build works). tools::checkRdContents() has
|
||
been updated to detect such template leftovers, including from
|
||
promptPackage().
|
||
|
||
* When S4 method dispatch fails because no method was found, the
|
||
error message now includes the signature argument names; thanks
|
||
to Michael Chirico's proposal on the R-devel list.
|
||
|
||
* withAutoprint({ .. }) now preserves srcrefs previously lost,
|
||
thanks to Andrew Simmons' report plus fix in PR#18572.
|
||
|
||
* transform.data.frame() no longer adjusts names; in particular,
|
||
untransformed variables are kept as-is, including those with
|
||
syntactically invalid names (PR#17890).
|
||
|
||
* The keep.source option for Rd \Sexpr blocks is no longer ignored.
|
||
|
||
* The formula methods for t.test() and wilcox.test() now catch when
|
||
paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
|
||
paired test.
|
||
|
||
* The level reported in the browser prompt was often too large. It
|
||
now shows the number of browser contexts on the stack.
|
||
|
||
* For cbind() and rbind(), the optional deparse.level argument is
|
||
now properly passed to methods, thanks to Mikael Jagan's PR#18579
|
||
and comments there.
|
||
|
||
* Some error and warning messages for large ('long vector')
|
||
matrix(v, nr, nc) and dim(m) <- d are now correct about sizes,
|
||
using long long formatting, fixing PR#18612 (and more) reported
|
||
by Mikael Jagan.
|
||
|
||
* readChar(useBytes = TRUE) now terminates strings even when the
|
||
underlying connection uses extra spaces in the input buffer.
|
||
This fixes problems with extra garbage seen with gzip
|
||
connections, PR#18605.
|
||
|
||
* Named capture in PCRE regular expressions now works also with
|
||
more than 127 named groups (PR#18588).
|
||
|
||
* Datetime functions are now robust against long jumps when dealing
|
||
with internal time zone changes. This avoids confusing warnings
|
||
about an invalid time zone, previously triggered by turning
|
||
warnings into errors or handling them via tryCatch (PR#17966,
|
||
PR#17780).
|
||
|
||
* Datetime functions now restore even an empty TZ environment
|
||
variable after internal time zone changes (PR#17724). This makes
|
||
results of datetime functions with this (typically unintentional)
|
||
setting more predictable.
|
||
|
||
* drop.terms(*) now drops response as by default, keep.response =
|
||
FALSE, fixing PR#18564 thanks to Mikael Jagan.
|
||
|
||
* dummy.coef(.) now also works for lm()-models with character
|
||
categorical predictor variables rather than factor ones, fixing
|
||
PR#18635 reported by Jinsong Zhao.
|
||
|
||
* formals(f) <- formals(f) now also works for a function w/o
|
||
arguments and atomic _constant_ body(f).
|
||
|
||
* Correct as.function(<invalid list>, .)'s error message.
|
||
|
||
* removeSource() is yet more thorough in finding and removing
|
||
"srcref" and the other source references from parsed R language
|
||
chunks, fixing PR#18638 thanks to Andrew Simmons.
|
||
|
||
* dgeom() is more accurate now, notably when its result is very
|
||
small, fixing PR#18642 thanks to the proposal of Morten Welinder,
|
||
also improving other instances where C level binom_raw(x, n, ..)
|
||
has x == 0 or x== n.
|
||
|
||
* warning() with options(warn = 1) has improved output for
|
||
multi-line messages.
|
||
|
||
* axis.Date() and axis.POSIXct() now respect the par("lab") setting
|
||
for the number of pretty() intervals.
|
||
|
||
* Comparisons for language objects (which are based on deparsing)
|
||
are now more careful about using accurate deparsed results
|
||
(PR#18676).
|
||
|
||
* Plain-text help (Rd2txt) now correctly preserves blank lines
|
||
following single-line \dontrun code.
|
||
|
||
* <POSIXlt>[*] no longer sets wrong "balanced" attribute, fixing
|
||
PR#18681 thanks to Mikael Jagan.
|
||
|
||
* str(<classed-call>) now deparses the call as expected, fixing
|
||
PR#18684, reported by Dave Slager.
|
||
|
||
* In Rd examples, code following the closing brace of a \dontrun,
|
||
\dontshow or \donttest tag on the same line is no longer skipped
|
||
when R CMD check runs the examples.
|
||
|
||
* as.data.frame(matrix(*, ncol=0)) now gets valid names() and
|
||
colnames(); reported by Davis Vaughan on the R-devel list.
|
||
|
||
* Internal Mathlib function stirlerr(n) is now almost fully
|
||
(52-bit) accurate for all n >= ~5.9 and more accurate also in the
|
||
range 1 -- 5.9. This entails small ("after 12th decimal")
|
||
changes in density functions, e.g., dgamma() in _some_ regions of
|
||
their support. The fix was partly prompted by Morten Welinder's
|
||
PR#18640.
|
||
|
||
* Numbers like 9876543.2 are now considered non-integer by Mathlib
|
||
internal R_nonint(), amending original fix of PR#15734.
|
||
|
||
* Rd comment lines no longer cause broken paragraphs in the
|
||
rendered PDF and plain-text help. In code blocks, pure comment
|
||
lines (starting with %) no longer produce an empty line.
|
||
|
||
* xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
|
||
using na.rm = FALSE (added as an argument) when summing over Freq
|
||
(PR#17770).
|
||
|
||
* tools::testInstalledPackage() is no longer silent about failures
|
||
from running examples or tests and its return code no longer
|
||
ignores failures from checking vignettes.
|
||
|
||
-------------------------------------------------------------------
|
||
Thu Feb 29 09:49:16 UTC 2024 - Detlef Steuer <detlef.steuer@gmx.de>
|
||
|
||
- CHANGES IN R 4.3.3:
|
||
|
||
NEW FEATURES:
|
||
|
||
* iconv() now fixes up variant encoding names such as "utf8"
|
||
case-insensitively.
|
||
|
||
DEPRECATED AND DEFUNCT:
|
||
|
||
* The legacy encoding = "MacRoman" is deprecated in pdf() and
|
||
postscript(): support was incomplete in earlier versions of R.
|
||
|
||
BUG FIXES:
|
||
|
||
* Arguments are now properly forwarded to methods on S4 generics
|
||
with ... in the middle of their formal arguments. This was broken
|
||
for the case when a method introduced an argument but did not
|
||
include ... in its own formals. Thanks to Herv'e Pag`es for the
|
||
report PR#18538.
|
||
|
||
* Some invalid file arguments to pictex(), postscript() and xfig()
|
||
opened a file called NA rather than throw an error. These
|
||
included postscript(NULL) (which some people expected to work
|
||
like pdf(NULL)).
|
||
|
||
* Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
|
||
Cairo-based bitmap devices opened a file called NA: it now throws
|
||
an error.
|
||
|
||
* quartz(file = NA) opened a file called NA, including when used as
|
||
a Quartz-based bitmap device. It now gives an error.
|
||
|
||
* rank(<long vector>) now works, fixing PR#18617, thanks to Ilia
|
||
Kats.
|
||
|
||
* seq.int() did not adequately check its length.out argument.
|
||
|
||
* match(<POSIXct>, .) is correct again for differing time zones,
|
||
ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
|
||
|
||
* drop.terms(*, dropx = <0-length>) now works, fixing PR#18563 as
|
||
proposed by Mikael Jagan.
|
||
|
||
* drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
|
||
and drop.terms() no longer makes up a response, PR#18566, fixing
|
||
both bugs thanks to Mikael Jagan.
|
||
|
||
* getS3method("t", "test") no longer finds the t.test() function,
|
||
fixing PR#18627.
|
||
|
||
* pdf() and postscript() support for the documented Adobe encodings
|
||
"Greek" and "Cyrilllic" was missing (although the corresponding
|
||
Windows' codepages could be used).
|
||
|
||
* Computations of glyph metric information for pdf() and
|
||
postscript() did not take into account that transliteration could
|
||
replace one character by two or more (only seen on macOS 14) and
|
||
typically warned that the information was not known.
|
||
|
||
* rank(x) no longer overflows during integer addition, when
|
||
computing rank average for largish but not-yet long vector x,
|
||
fixing PR#18630, thanks to Ilia Kats.
|
||
|
||
* list.files() on Windows now returns also files with names longer
|
||
that 260 bytes (the Windows limit is 260 characters).
|
||
Previously, some file names particularly with 'East Asian'
|
||
characters were omitted.
|
||
|
||
* cov2cor(<0 x 0>) now works, fixing PR#18423 thanks to Mikael
|
||
Jagan and Elin Waring.
|
||
|
||
* cov2cor(<negative diagonal>) and similar now give one warning
|
||
instead of two, with better wording, fixing PR#18424 thanks to
|
||
Mikael Jagan.
|
||
|
||
* tools:: startDynamicHelp() now ensures port is in proper range,
|
||
fixing PR#18645.
|
||
|
||
* pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
|
||
where a or b or both are 0, fixing PR#18672 thanks to Michael
|
||
Fay.
|
||
|
||
* pmatch(x, table) for large table, also called for data frame row
|
||
selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
|
||
|
||
* predict(<rank-deficient lm>, newdata=*) fix computing of nbasis,
|
||
see Russ Lenth's comment 29 in PR#16158.
|
||
|
||
* Added a work-around for a bug in macOS 14.3.1 and higher which
|
||
prevents R plots in the Quartz Cocoa device from updating on
|
||
screen.
|
||
|
||
-------------------------------------------------------------------
|
||
Fri Nov 3 09:49:06 UTC 2023 - Detlef Steuer <detlef.steuer@gmx.de>
|
||
|
||
- CHANGES IN R 4.3.2:
|
||
|
||
NEW FEATURES:
|
||
|
||
* The default initialization of the "repos" option from the
|
||
repositories file at startup can be skipped by setting
|
||
environment variable R_REPOSITORIES to NULL such that
|
||
getOption("repos") is empty if not set elsewhere.
|
||
|
||
* qr.X() is now an implicit S4 generic in methods.
|
||
|
||
* iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
|
||
platforms which do not support it (notably Alpine Linux). This
|
||
should give a human-readable conversion in ASCII on all platforms
|
||
(rather than NA_character_).
|
||
|
||
* trans3d() gains options continuous and verbose addressing the
|
||
problem of possible "wrap around" when projecting too long
|
||
curves, as reported by Achim Zeileis in PR#18537.
|
||
|
||
* tools::showNonASCII() has been rewritten to work better on macOS
|
||
14 (which has a changed implementation of iconv()).
|
||
|
||
* tiff(type = "quartz") (the default on macOS) now warns if
|
||
compression is specified: it continues to be ignored.
|
||
|
||
INSTALLATION on a UNIX-ALIKE:
|
||
|
||
* There is some support for building with Intel's LLVM-based
|
||
compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
|
||
(Fortran) ifx from oneAPI 2023.x.y.
|
||
|
||
* There is support for using LLVM's flang-new as the Fortran
|
||
compiler from LLVM 16.0.x (preferably 17.0.0 or later).
|
||
|
||
UTILITIES:
|
||
|
||
* R CMD check reports the use of the Fortran 90 random number
|
||
generator RANDOM_NUMBER() and the subroutines to initialize it.
|
||
|
||
'Writing R Extensions' has example code to use R's RNGs from
|
||
Fortran.
|
||
|
||
BUG FIXES:
|
||
|
||
* substr(x, n, L) <- cc now works (more) correctly for multibyte
|
||
UTF-8 strings x when L > nchar(x), thanks to a report and patch
|
||
by 'Architect 95'.
|
||
|
||
* contrib.url(character()) now returns 0-length character() as
|
||
documented, which also avoids spurious warnings from
|
||
available.packages() et al. in the edge case of an empty vector
|
||
of repository URLs.
|
||
|
||
* readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
|
||
(PR#18557).
|
||
|
||
* lapply(<list>, as.data.frame) no longer warns falsely for some
|
||
base vector components.
|
||
|
||
* Communication between parent and child processes in the multicore
|
||
part of parallel could fail on platforms that do not support an
|
||
arbitrarily large payload in system functions read()/write() on
|
||
pipes (seen on macOS where a restriction to INT_MAX bytes is
|
||
documented, without doing a partial read unlike Linux). The
|
||
payload is now split into 1Gb chunks to avoid that problem.
|
||
(PR#18571)
|
||
|
||
* qqplot(x,y, conf.level=.) gives better confidence bounds when
|
||
length(x) != length(y), thanks to Alexander Ploner's report and
|
||
patch proposal (PR#18557).
|
||
|
||
* norm(<0-length>, "2") now gives zero instead of an error, as all
|
||
the other norm types, thanks to Mikael Jagan's PR#18542.
|
||
|
||
* Build-stage Rd macros \packageAuthor and \packageMaintainer now
|
||
process Authors@R, fixing NA results when the package DESCRIPTION
|
||
omits Author and Maintainer fields.
|
||
|
||
* Formatting and printing complex numbers could give things like
|
||
0.1683-0i because of rounding error: -0i is now replaced by +0i.
|
||
|
||
* postscript() refused to accept a title comment containing the
|
||
letter "W" (PR#18599).
|
||
|
||
* isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
|
||
PR#18603.
|
||
|
||
* tiff(type = "Xlib") was only outputting the last page of
|
||
multi-page plots.
|
||
|
||
* tools::latexToUtf8() again knows about \~{n} and other letters
|
||
with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
|
||
alternative to \^{\i} (similarly with other accents).
|
||
Furthermore, LaTeX codes for accented I letters are now correctly
|
||
converted, also fixing related mistakes in
|
||
tools::encoded_text_to_latex().
|
||
|
||
* tar(*, tar = "internal") no longer creates out-of-spec tar files
|
||
in the very rare case of user or group names longer than 32
|
||
bytes, fixing PR#17871 with thanks to Ivan Krylov.
|
||
|
||
* When using the "internal" timezone datetime code, adding a
|
||
fraction of a second no longer adds one second, fixing PR#16856
|
||
from a patch by Ivan Krylov.
|
||
|
||
* tools::checkRd() no longer produces spurious notes about
|
||
"unnecessary braces" from multi-line Rd results of \Sexpr macros.
|
||
|
||
-------------------------------------------------------------------
|
||
Fri Jun 16 10:46:51 UTC 2023 - Detlef Steuer <detlef.steuer@gmx.de>
|
||
|
||
- CHANGES IN R 4.3.1:
|
||
|
||
C-LEVEL FACILITIES:
|
||
|
||
* The C-level API version of R's integrate(), Rdqags() in Applic.h,
|
||
now returns the correct number of integrand evaluations neval,
|
||
fixing PR#18515 reported and diagnosed by Stephen Wade.
|
||
|
||
* The C prototypes for LAPACK calls dspgv and dtptrs in
|
||
R_exts/Lapack.h had one too many and one too few character length
|
||
arguments - but this has not caused any known issues. To get the
|
||
corrected prototypes, include
|
||
|
||
#include <Rconfig.h> // for PR18534fixed
|
||
#ifdef PR18534fixed
|
||
# define usePR18534fix 1
|
||
#endif
|
||
#include <R_exts/Lapack.h>
|
||
|
||
in your C/C++ code (PR#18534).
|
||
|
||
INSTALLATION:
|
||
|
||
* Many of the checks of esoteric Internet operations and those
|
||
using unreliable external sites have been moved to a new target
|
||
that is not run by default and primarily intended for the core
|
||
developers. To run them use
|
||
|
||
cd tests; make test-Internet-dev
|
||
|
||
BUG FIXES:
|
||
|
||
* .S3methods(), typically called from methods(), again marks
|
||
methods from package base as visible.
|
||
|
||
Also, the visibility of non-base methods is again determined by
|
||
the method's presence in search().
|
||
|
||
* tools::Rdiff() is now more robust against invalid strings, fixing
|
||
installation tests on Windows without Rtools installed
|
||
(PR#18530).
|
||
|
||
* Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
|
||
|
||
* head(., <illegal>) and tail(..) now produce more useful "Error in
|
||
...." error messages, fixing PR#18362.
|
||
|
||
* Package code syntax on Windows is checked in UTF-8 when UTF-8 is
|
||
the native encoding.
|
||
|
||
* na.contiguous(x) now also returns the first run, when it is at
|
||
the beginning and there is a later one of the same length;
|
||
reported to R-devel, including a fix, by Georgi Boshnakov.
|
||
Further, by default, it modifies only an existing attr(*,"tsp")
|
||
but otherwise no longer sets one.
|
||
|
||
* chol(<not pos.def>, pivot = <T|F>) now gives a correct error or
|
||
warning message (depending on pivot), thanks to Mikael Jagan's
|
||
(PR#18541).
|
||
|
||
-------------------------------------------------------------------
|
||
Fri Apr 21 17:43:15 UTC 2023 - Detlef Steuer <detlef.steuer@gmx.de>
|
||
|
||
- CHANGES IN R 4.3.0:
|
||
|
||
SIGNIFICANT USER-VISIBLE CHANGES:
|
||
|
||
* Calling && or || with LHS or (if evaluated) RHS of length greater
|
||
than one is now always an error, with a report of the form
|
||
|
||
'length = 4' in coercion to 'logical(1)'
|
||
|
||
Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
|
||
effect.
|
||
|
||
NEW FEATURES:
|
||
|
||
* The included BLAS sources have been updated to those shipped with
|
||
LAPACK version 3.10.1. (This caused some platform-dependent
|
||
changes to package check output.) And then to the sources from
|
||
LAPACK version 3.11.0 (with changes only to double complex
|
||
subroutines).
|
||
|
||
* The included LAPACK sources have been updated to include the four
|
||
Fortran 90 routines rather than their Fortran 77 predecessors.
|
||
This may give some different signs in SVDs or
|
||
eigendecompositions.. (This completes the transition to LAPACK
|
||
3.10.x begun in R 4.2.0.)
|
||
|
||
* The LAPACK sources have been updated to version 3.11.0. (No new
|
||
subroutines have been added, so this almost entirely bug fixes:
|
||
Those fixes do affect some computations with NaNs, including R's
|
||
NA.)
|
||
|
||
* The parser now signals _classed_ errors, notably in case of the
|
||
pipe operator |>. The error object and message now give line and
|
||
column numbers, mostly as proposed and provided by Duncan Murdoch
|
||
in PR#18328.
|
||
|
||
* toeplitz() is now generalized for asymmetric cases, with a
|
||
toeplitz2() variant.
|
||
|
||
* xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
|
||
log = "y") now signal a _classed_ warning about negative values
|
||
of y (where log(.) is NA). Such a warning can be specifically
|
||
suppressed or caught otherwise.
|
||
|
||
* Regular expression functions now check more thoroughly whether
|
||
their inputs are valid strings (in their encoding, e.g. in
|
||
UTF-8).
|
||
|
||
* The performance of grep(), sub(), gsub() and strsplit() has been
|
||
improved, particularly with perl = TRUE and fixed = TRUE. Use of
|
||
useBytes = TRUE for performance reasons should no longer be
|
||
needed and is discouraged: it may lead to incorrect results.
|
||
|
||
* apropos() gains an argument dot_internals which is used by the
|
||
completion (help(rcompgen)) engine to also see base internals
|
||
such as .POSIXct().
|
||
|
||
* Support in tools::Rdiff() for comparing uncompressed PDF files is
|
||
further reduced - see its help page.
|
||
|
||
* qqplot(x, y, ...) gains conf.level and conf.args arguments for
|
||
computing and plotting a confidence band for the treatment
|
||
function transforming the distribution of x into the distribution
|
||
of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
|
||
Hothorn.
|
||
|
||
* Performance of package_dependencies() has been improved for cases
|
||
when the number of dependencies is large.
|
||
|
||
* Strings newly created by gsub(), sub() and strsplit(), when any
|
||
of the inputs is marked as "bytes", are also marked as "bytes".
|
||
This reduces the risk of creating invalid strings and accidental
|
||
substitution of bytes deemed invalid.
|
||
|
||
* Support for readLines(encoding = "bytes") has been added to allow
|
||
processing special text files byte-by-byte, without creating
|
||
invalid strings.
|
||
|
||
* iconv(from = "") now takes into account any declared encoding of
|
||
the input elements and uses it in preference to the native
|
||
encoding. This reduces the risk of accidental creation of
|
||
invalid strings, particularly when different elements of the
|
||
input have different encoding (including "bytes").
|
||
|
||
* Package repositories in getOption("repos") are now initialized
|
||
from the repositories file when utils is loaded (if not already
|
||
set, e.g., in .Rprofile). (From a report and patch proposal by
|
||
Gabriel Becker in PR#18405.)
|
||
|
||
* compactPDF() gets a verbose option.
|
||
|
||
* type.convert() and hence read.table() get new option tryLogical =
|
||
TRUE with back compatible default. When set to false, converts
|
||
"F" or "T" columns to character.
|
||
|
||
* Added new unit prefixes "R" and "Q" for abbreviating
|
||
(unrealistically large) sizes beyond 10^{27} in standard = "SI",
|
||
thanks to Henrik Bengtsson's PR#18435.
|
||
|
||
* as.data.frame()'s default method now also works fine with atomic
|
||
objects inheriting from classes such as "roman", "octmode" and
|
||
"hexmode", such fulfilling the wish of PR#18421, by Benjamin
|
||
Feakins.
|
||
|
||
* The as.data.frame.vector() utility now errors for wrong-length
|
||
row.names. It warned for almost six years, with "Will be an
|
||
error!".
|
||
|
||
* sessionInfo() now also contains La_version() and reports codepage
|
||
and timezone when relevant, in both print() and toLatex() methods
|
||
which also get new option tzone for displaying timezone
|
||
information when locale = FALSE.
|
||
|
||
* New function R_compiled_by() reports the C and Fortran compilers
|
||
used to build R, if known.
|
||
|
||
* predict(<lm>, newdata = *) no longer unnecessarily creates an
|
||
offset of all 0s.
|
||
|
||
* solve() for complex inputs now uses argument tol and by default
|
||
checks for 'computational singularity' (as it long has done for
|
||
numeric inputs).
|
||
|
||
* predict(<rank-deficient lm>, newdata=*) now obeys a new argument
|
||
rankdeficient, with new default "warnif", warning only if there
|
||
are non-estimable cases in newdata. Other options include
|
||
rankdeficient = "NA", predicting NA for non-estimable newdata
|
||
cases. This addresses PR#15072 by Russ Lenth and is based on his
|
||
original proposal and discussions in PR#16158 also by David Firth
|
||
and Elin Waring. Still somewhat experimental.
|
||
|
||
* Rgui console implementation now works better with the NVDA screen
|
||
reader when the full blinking cursor is selected. The underlying
|
||
improvements in cursor handling may help also other screen
|
||
readers on Windows.
|
||
|
||
* The drop-field control in GraphApp can now be left with the TAB
|
||
key and all controls can be navigated in the reverse order using
|
||
the Shift+TAB key, improving accessibility of the Rgui
|
||
configuration editor.
|
||
|
||
* qnorm(<very large negative>, log.p=TRUE) is now fully accurate
|
||
(instead of to "only" minimally five digits).
|
||
|
||
* demo(error.catching) now also shows off withWarnings() and
|
||
tryCatchWEMs().
|
||
|
||
* As an experimental feature the placeholder _ can now also be used
|
||
in the rhs of a forward pipe |> expression as the first argument
|
||
in an extraction call, such as _$coef. More generally, it can be
|
||
used as the head of a chain of extractions, such as _$coef[[2]].
|
||
|
||
* Spaces in the environment variable used to choose the R session's
|
||
temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
|
||
now fatal. (On Windows the 'short path' version of the path is
|
||
tried and used if that does not contain a space.)
|
||
|
||
* all.equal.numeric() gets a new optional switch giveErr to return
|
||
the numeric error as attribute. Relatedly,
|
||
stopifnot(all.equal<some>(a, b, ..)) is as "smart" now, as
|
||
stopifnot(all.equal(....)) has been already, thus allowing
|
||
customized all.equal<Some>() wrappers.
|
||
|
||
* R on Windows is now able to work with path names longer than 260
|
||
characters when these are enabled in the system (requires at
|
||
least Windows 10 version 1607). Packages should be updated to
|
||
work with long paths as well, instead of assuming PATH_MAX to be
|
||
the maximum length. Custom front-ends and applications embedding
|
||
R need to update their manifests if they wish to allow this
|
||
feature. See
|
||
<https://blog.r-project.org/2023/03/07/path-length-limit-on-windows>
|
||
for more information.
|
||
|
||
* 'Object not found' and 'Missing argument' errors now give a more
|
||
accurate error context. Patch provided by Lionel Henry in
|
||
PR#18241.
|
||
|
||
* The @ operator is now an S3 generic. Based on contributions by
|
||
Tomasz Kalinowski in PR#18482.
|
||
|
||
* New generic chooseOpsMethod() provides a mechanism for objects to
|
||
resolve cases where two suitable methods are found for an Ops
|
||
Group Generic. This supports experimenting with alternative
|
||
object systems. Based on contributions by Tomasz Kalinowski in
|
||
PR#18484.
|
||
|
||
* inherits(x, what) now accepts values other than a simple
|
||
character vector for argument what. A new generic, nameOfClass(),
|
||
is called to resolve the class name from what. This supports
|
||
experimenting with alternative object systems. Based on
|
||
contributions by Tomasz Kalinowski in PR#18485.
|
||
|
||
* Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
|
||
now reports the current backend.
|
||
|
||
* The "data.frame" method for subset() now warns about extraneous
|
||
arguments, typically catching the use of = instead of == in the
|
||
subset expression.
|
||
|
||
* Calling a:b when numeric a or b is longer than one may now be
|
||
made into an error by setting environment variable
|
||
_R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
|
||
PR#18419 by Henrik Bengtsson.
|
||
|
||
* density(x, weights = *) now warns if automatic bandwidth
|
||
selection happens without using weights; new optional warnWbw may
|
||
suppress the warning. Prompted by Christoph Dalitz' PR#18490 and
|
||
its discussants.
|
||
|
||
* rm(list = *) is faster and more readable thanks to Kevin Ushey's
|
||
PR#18492.
|
||
|
||
* The plot.lm() function no longer produces a normal Q-Q plot for
|
||
GLMs. Instead it plots a half-normal Q-Q plot of the absolute
|
||
value of the standardized deviance residuals.
|
||
|
||
* The print() method for class "summary.glm" no longer shows
|
||
summary statistics for the deviance residuals by default. Its
|
||
optional argument show.residuals can be used to show them if
|
||
required.
|
||
|
||
* The tapply() function now accepts a data frame as its X argument,
|
||
and allows INDEX to be a formula in that case. by.data.frame()
|
||
similarly allows INDICES to be a formula.
|
||
|
||
* The performance of df[j] <- value (including for missing j) and
|
||
write.table(df) has been improved for data frames df with a large
|
||
number of columns. (Thanks to Gabriel Becker's PR#18500,
|
||
PR#18503 and discussants, prompted by a report from Toby Dylan
|
||
Hocking on the R-devel mailing list.)
|
||
|
||
* The matrix multiply operator %*% is now an S3 generic, belonging
|
||
to new group generic matrixOps. From Tomasz Kalinowski's
|
||
contribution in PR#18483.
|
||
|
||
* New function array2DF() to convert arrays to data frames,
|
||
particularly useful for the list arrays created by tapply().
|
||
|
||
DATES and TIMES:
|
||
|
||
* On platforms where (non-UTC) datetimes before 1902 (or before
|
||
1900 as with system functions on recent macOS) are guessed by
|
||
extrapolating time zones from 1902-2037, there is a warning at
|
||
the first use of extrapolation in a session. (As all time zones
|
||
post 2037 are extrapolation, we do not warn on those.)
|
||
|
||
* (Platforms using --with-internal-tzone, including Windows and by
|
||
default macOS). How years are printed in dates or date-times can
|
||
be controlled by environment variable R_PAD_YEARS_BY_ZERO. The
|
||
default remains to pad to 4 digits by zeroes, but setting value
|
||
no gives no padding (as used by default by glibc).
|
||
|
||
* strftime() tries harder to determine the offset for the "%z"
|
||
format, and succeeds on the mainstream R platforms.
|
||
|
||
* strftime() has a limit of 2048 bytes on the string produced -
|
||
attempting to exceed this is an error. (Previously it silently
|
||
truncated at 255 bytes.)
|
||
|
||
* sessionInfo() records (and by default prints) the system time
|
||
zone as part of the locale information. Also, the source
|
||
(system/internal) of the date-time conversion and printing
|
||
functions.
|
||
|
||
* Objects of class "POSIXlt" created in this version of R always
|
||
have 11 components: component zone is always set, and component
|
||
gmtoff is set for times in UTC and usually set on the (almost
|
||
all) platforms which have C-level support, otherwise is NA.
|
||
|
||
* There are comprehensive validity checks on the structure of
|
||
objects of class "POSIXlt" when converting (including formatting
|
||
and printing). (This avoids mis-conversions of hand-crafted
|
||
objects.)
|
||
|
||
* There is some support for using the native date-time routines on
|
||
macOS: this is only viable on recent versions (e.g. 12.6 and 13)
|
||
and does get wrong some historical changes (before 1900, during
|
||
WWII). Use of --with-internal-tzone remains the default.
|
||
|
||
* as.POSIXct(<numeric>) and as.POSIXlt(.) (without specifying
|
||
origin) now work. So does as.Date(<numeric>).
|
||
|
||
* as.Date.POSIXct(., tz) now treats several tz values, notably
|
||
"GMT" as equivalent to "UTC", proposed and improved by Michael
|
||
Chirico and Joshua Ulrich in PR#17674.
|
||
|
||
* Experimental balancePOSIXlt() utility allows using "ragged" and
|
||
or out-of-range "POSIXlt" objects more correctly, e.g., in
|
||
subsetting and subassignments. Such objects are now documented.
|
||
|
||
More experimentally, a "POSIXlt" object may have an attribute
|
||
"balanced" indicating if it is known to be filled or fully
|
||
balanced.
|
||
|
||
* Functions axis.Date() and axis.POSIXct() are rewritten to gain
|
||
better default tick locations and better default formats by using
|
||
prettyDate(). Thanks to Swetlana Herbrandt.
|
||
|
||
* The mapping of Windows' names for time zones to IANA's 'Olson'
|
||
names has been updated. When ICU is available (it is by
|
||
default), it is used to get a mapping for the current region set
|
||
in Windows. This can be overridden by setting environment
|
||
variable TZ to the desired Olson name - see OlsonNames() for
|
||
those currently available.
|
||
|
||
GRAPHICS:
|
||
|
||
* The graphics engine version, R_GE_version, has been bumped to 16
|
||
and so packages that provide graphics devices should be
|
||
reinstalled.
|
||
|
||
* The grDevices and grid packages have new functions for rendering
|
||
typeset glyphs, primarily: grDevices::glyphInfo() and
|
||
grid::grid.glyph().
|
||
|
||
Rendering of typeset glyphs is only supported so far on the
|
||
Cairo-based graphics devices and on the pdf() and quartz()
|
||
devices.
|
||
|
||
* The defined behaviour for "clear" and "source" compositing
|
||
operators (via grid::grid.group()) has been changed (to align
|
||
better with simple interpretation of original Porter-Duff
|
||
definitions).
|
||
|
||
* Support for gradients, patterns, clipping paths, masks, groups,
|
||
compositing operators, and affine transformations has been added
|
||
to the quartz() device.
|
||
|
||
INSTALLATION on a UNIX-ALIKE:
|
||
|
||
* A system installation of generic LAPACK 3.10.0 or later will be
|
||
preferred to the version in the R sources.
|
||
|
||
configure option --with-lapack=no (equivalently --without-lapack)
|
||
forces compilation of the internal LAPACK sources.
|
||
|
||
If --with-lapack is not specified, a system liblapack is looked
|
||
for and used if it reports version 3.10.0 or later and does not
|
||
contain BLAS routines.
|
||
|
||
Packages using LAPACK will need to be reinstalled if this changes
|
||
to using an external library.
|
||
|
||
* On aarch64 Linux platforms using GCC, configure now defaults to
|
||
-fPIC (instead of -fpic), as desired in PR#18326.
|
||
|
||
* configure now checks conversion of datetimes between POSIXlt and
|
||
POSIXct around year 2020. Failure (which has been seen on
|
||
platforms missing tzdata) is fatal.
|
||
|
||
* If configure option --with-valgrind-instrumentation is given
|
||
value 1 or 2, option --with-system-valgrind-headers is now the
|
||
default and ignored (with a warning). It is highly recommended
|
||
that the system headers are installed alongside valgrind: they
|
||
are part of its packaging on some Linux distributions and
|
||
packaged separately (e.g. in the valgrind-devel RPM) on others.
|
||
configure will give a warning if they are not found.
|
||
|
||
The system headers will be required in a future release of R to
|
||
build with valgrind instrumentation.
|
||
|
||
* libcurl 8.x is now accepted by configure: despite a change in
|
||
major version number it changes neither API nor ABI.
|
||
|
||
INSTALLATION on WINDOWS:
|
||
|
||
* The makefiles and installer scripts for Windows have been
|
||
tailored to Rtools43, an update of the Rtools42 toolchain. It is
|
||
based on gcc 12 and newer versions of MinGW-W64, binutils and
|
||
libraries. At this time R-devel can still be built using
|
||
Rtools42 without changes, but when R-devel is installed via the
|
||
installer, it will by default look for Rtools43.
|
||
|
||
* Old make targets rsync-extsoft and 32-bit ones that are no longer
|
||
needed have been removed.
|
||
|
||
* Default builds (including for packages) no longer select C99.
|
||
Thus the C standard used is the default for the compiler, which
|
||
for the toolchain in Rtools43 is C17. (This is consistent with
|
||
Unix builds.)
|
||
|
||
PACKAGE INSTALLATION:
|
||
|
||
* The default C++ standard has been changed to C++17 where
|
||
available (which it is on all currently checked platforms): if
|
||
not C++14 or C++11 is used if available otherwise C++ is not
|
||
supported.
|
||
|
||
* USE_FC_LEN_T is the default: this uses the correct
|
||
(compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
|
||
called from C/C++, and requires adjustment of many such calls -
|
||
see 'Writing R Extensions' SS6.6.1.
|
||
|
||
* There is initial support for C++23 as several compilers are now
|
||
supporting -std=c++23 or -std=c++2b or similar. As for C++20,
|
||
there no additional configure checks for C++23 features beyond a
|
||
check that the compiler reports a __cplusplus value greater than
|
||
that in the C++20 standard. C++ feature tests should be used.
|
||
|
||
* There is support for a package to indicate the version of the C
|
||
standard which should be used to compile it, and for the
|
||
installing user to specify this. In most cases R defaults to the
|
||
C compiler's default standard which is C17 (a `bug-fix' of C11) -
|
||
earlier versions of R or compilers may have defaulted to C99.
|
||
|
||
Current options are:
|
||
|
||
USE_C17 Use a standard that is at most C17. The intention is to
|
||
allow legacy packages to still be installed when later C
|
||
standards become the default, including packages using new
|
||
keywords as identifiers or with K&R-style function
|
||
declarations. This will use C17 if available, falling back
|
||
to C11.
|
||
|
||
USE_C90 Use the C90 (aka C89) standard. (As that standard did
|
||
not require compilers to identify that version, all we can
|
||
verify is that the compiler does not claim to be using a
|
||
later standard. It may accept C99 features - for example
|
||
clang accepts // to make comments.)
|
||
|
||
USE_C99 Use the C99 standard. This should be rarely needed - it
|
||
avoids the few new features of C11/C17 which can be useful if
|
||
a package assumes them if C17 is specified and they are not
|
||
implemented.
|
||
|
||
USE_C23 Use C23 (or in future, later). Compiler/library support
|
||
for C23 is still being implemented, but LLVM clang from
|
||
15.0.0 and the upcoming GCC 13 have quite extensive support.
|
||
|
||
These can be specified as part of the SystemRequirements field in
|
||
the package's DESCRIPTION file or _via_ options --use-C17 and so
|
||
on of R CMD INSTALL and R CMD SHLIB.
|
||
|
||
For further details see "Writing R Extensions" SS1.2.5.
|
||
|
||
* (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
|
||
included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
|
||
to include that file itself. Installation of a package with such
|
||
a file now uses a site Makevars file in the same way as a package
|
||
with a src/Makevars.win file would.
|
||
|
||
* configure is now passed crucial variables such as CC and CFLAGS
|
||
in its environment, as many packages were not setting them (as
|
||
documented in 'Writing R Extensions' SS1.2).
|
||
|
||
This has most effect where configure is used to compile parts of
|
||
the package - most often by cmake or libtool which obfuscate the
|
||
actual compile commands used.
|
||
|
||
Also used for configure.win and configure.ucrt on Windows.
|
||
|
||
FORTRAN FLAGS:
|
||
|
||
* The flag -fno-optimize-sibling-calls is no longer forced for
|
||
gfortran 7 and later. It should no longer be needed now using
|
||
'hidden' character-length arguments when calling BLAS/LAPACK
|
||
routines from C/C++ is the default even for packages. (Unless
|
||
perhaps packages call Fortran code from C/C++ without using R's
|
||
headers and without allowing for these arguments.)
|
||
|
||
C-LEVEL FACILITIES:
|
||
|
||
* The deprecated S-compatibility macros DOUBLE_* in
|
||
R_ext/Constants.h (included by R.h) have been removed.
|
||
|
||
* The deprecated legacy typedefs of Sint and Sfloat in header R.h
|
||
are no longer defined, and that header no longer includes header
|
||
limits.h from C nor climits from C++.
|
||
|
||
* New macro CAD5R() is provided in Rinternals.h and used in a few
|
||
places in the R sources.
|
||
|
||
* ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
|
||
in PR#17620.
|
||
|
||
* The Rcomplex definition (in header R_ext/Complex.h) has been
|
||
extended to prevent possible mis-compilation when interfacing
|
||
with Fortran (PR#18430). The new definition causes compiler
|
||
warnings with static initializers such as {1, 2}, which can be
|
||
changed to {.r=1, .i=2}.
|
||
|
||
Using the new definition from C++ depends on compiler extensions
|
||
supporting C features that have not been incorporated into the
|
||
C++ standards but are available in g++ and clang++: this may
|
||
result in C++ compiler warnings but these have been worked around
|
||
for recent versions of common compilers (GCC, Apple/LLVM clang,
|
||
Intel).
|
||
|
||
It is intended to change the inclusion of header R_ext/Complex.h
|
||
by other R headers, so C/C++ code files which make use of
|
||
Rcomplex should include that header explicitly.
|
||
|
||
UTILITIES:
|
||
|
||
* R CMD check does more checking of package .Rd files, warning
|
||
about invalid email addresses and (some) invalid URIs and noting
|
||
empty \item labels in description lists.
|
||
|
||
* R CMD check now also reports problems when reading package news
|
||
in md (file NEWS.md) and (optionally) plain text (file NEWS)
|
||
formats.
|
||
|
||
* _R_CHECK_TIMINGS_ defaults to a value from the environment even
|
||
for R CMD check --as-cran; this allows for exceptionally fast or
|
||
slow platforms.
|
||
|
||
It now applies to checking PDF and HTML versions of the manuals,
|
||
and 'checking CRAN incoming feasibility'.
|
||
|
||
* R CMD check can optionally (but included in --as-cran) check
|
||
whether HTML math rendering _via_ KaTeX works for the package .Rd
|
||
files.
|
||
|
||
* Non-interactive debugger invocations can be trapped by setting
|
||
the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
|
||
true value. This is enabled by R CMD check --as-cran to detect
|
||
the use of leftover browser() statements in the package.
|
||
|
||
* The use of sprintf and vsprintf from C/C++ has been deprecated in
|
||
macOS 13 and is a known security risk. R CMD check now reports
|
||
(on all platforms) if their use is found in compiled code:
|
||
replace by snprintf or vsnprintf respectively. [*NB:* whether
|
||
such calls get compiled into the package is platform-dependent.]
|
||
|
||
* Where recorded at installation, R CMD check reports the C and
|
||
Fortran compilers used to build R.
|
||
|
||
It reports the OS in use (if known, as given by osVersion) as
|
||
well as that R was built for.
|
||
|
||
It notes if a C++ standard was specified which is older than the
|
||
current default: many packages have used C++11 to mean 'not
|
||
C++98' - as C++11 is the minimum supported since R 4.0.0, that
|
||
specification can probably be removed.
|
||
|
||
* R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
|
||
and this is copied to the output of R CMD check.
|
||
|
||
Where a C++ standard is specified, it is reported.
|
||
|
||
* R CMD check's 'checking compilation flags in Makevars' has been
|
||
relaxed to accept the use of flags such as -std=f2008 in
|
||
PKG_FFLAGS.
|
||
|
||
* tools::buildVignettes() has a new argument skip, which is used by
|
||
R CMD check to skip (and note) vignettes with unavailable
|
||
\VignetteDepends (PR#18318).
|
||
|
||
* New generic .AtNames() added to enable class-specific completions
|
||
after @. The formerly internal function findMatches() is now
|
||
exported, mainly for use in methods for .DollarNames() and
|
||
.AtNames().
|
||
|
||
DEPRECATED AND DEFUNCT:
|
||
|
||
* default.stringsAsFactors() is defunct.
|
||
|
||
* Calling as.data.frame.<class>() directly (for 12 atomic classes)
|
||
is going to be formally deprecated, currently activated by
|
||
setting the environment variable
|
||
_R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
|
||
happens in R CMD check --as-cran.
|
||
|
||
BUG FIXES:
|
||
|
||
* Hashed environments with sizes less than 5 can now grow.
|
||
(Reported to R-devel by Duncan Garmonsway.)
|
||
|
||
* as.character(<Rd>, deparse = TRUE) failed to re-escape curly
|
||
braces in LaTeX-like text. (Reported by Hadley Wickham in
|
||
PR#18324.)
|
||
|
||
* library() now passes its lib.loc argument when requiring Depends
|
||
packages; reported (with fix) in PR#18331 by Mikael Jagan.
|
||
|
||
* R CMD Stangle: improved message about 'Output' files.
|
||
|
||
* head(x, n) and tail(x, n) now signal an error if n is not
|
||
numeric, instead of incidentally "working" sometimes returning
|
||
all of x. Reported and discussed by Colin Fay, in PR#18357.
|
||
|
||
* The "lm" method for summary() now gives the correct F-statistic
|
||
when the model contains an offset. Reported in PR#18008.
|
||
|
||
* C() and `contrasts<-`() now preserve factor level names when
|
||
given a function object (as opposed a function name which did
|
||
preserve names). Reported in PR#17616.
|
||
|
||
* c(a = 1, 2)[[]] no longer matches 2 but rather signals a
|
||
_classed_ error. Reported and analysed by Davis Vaughan in
|
||
PR#18367, a duplicate of PR#18004, by Jan Meis et al. For
|
||
consistency, NULL[[]] is also erroneous now. x[[]] <- v gives an
|
||
error of the same class "MissingSubscriptError".
|
||
|
||
* The relist() function of utils now supports NULL elements in the
|
||
skeleton (PR#15854).
|
||
|
||
* ordered(levels = *) (missing x) now works analogously to factor(,
|
||
ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
|
||
|
||
* User-defined Rd macro definitions can now span multiple lines,
|
||
thanks to a patch from Duncan Murdoch. Previously, the Rd parser
|
||
silently ignored everything after the first line.
|
||
|
||
* Plain-text help (tools::Rd2txt()) now preserves an initial blank
|
||
line for text following description list items.
|
||
|
||
* tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
|
||
and \value lists at Rd comments.
|
||
|
||
* tools::Rd2latex() now correctly handles optional text outside
|
||
\items of argument lists as well as bracketed text at the
|
||
beginning of sections, e.g., \value{[NULL]}.
|
||
|
||
* as.character(<POSIXt>) now behaves more in line with the methods
|
||
for atomic vectors such as numbers, and is no longer influenced
|
||
by options(). Ditto for as.character(<Date>). The
|
||
as.character() method gets arguments digits and OutDec with
|
||
defaults _not_ depending on options(). Use of as.character(*,
|
||
format = .) now warns.
|
||
|
||
* Similarly, the as.character.hexmode() and *.octmode() methods
|
||
also behave as good citizen methods and back compatibility option
|
||
keepStr = TRUE.
|
||
|
||
* The as.POSIXlt(<POSIXlt>) and as.POSIXct(<POSIXct>) default
|
||
methods now do obey their tz argument, also in this case.
|
||
|
||
* as.POSIXlt(<Date>) now does apply a tz (time zone) argument, as
|
||
does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
|
||
mailing list.
|
||
|
||
* as.Date.POSIXlt(x) now also works when the list components are of
|
||
unequal length, aka "partially filled" or "ragged".
|
||
|
||
* expand.model.frame() looked up variables in the wrong environment
|
||
when applied to models fitted without data. Reported in
|
||
PR#18414.
|
||
|
||
* time() now (also) uses the ts.eps = getOption("ts.eps") argument
|
||
and thus by default rounds values very close to the start (or
|
||
end) of a year. Based on a proposal by Andre"i V. Kostyrka on
|
||
R-help.
|
||
|
||
* Printing of a factanal() result with just one factor and sort =
|
||
TRUE now works regularly, fixing PR#17863 by Timothy Bates,
|
||
thanks to the 'R Contributors' working group.
|
||
|
||
* Printing 0-length objects of class "factor", "roman", "hexmode",
|
||
"octmode", "person", "bibentry", or "citation" now prints
|
||
something better, one of which fixes PR#18422, reported by
|
||
Benjamin Feakins.
|
||
|
||
* Sys.timezone() queries timedatectl only if systemd is loaded;
|
||
addressing a report by Jan Gorecki in PR#17421.
|
||
|
||
* The formula method of cor.test() had scoping problems when
|
||
environment(formula) was not the calling environment; reported
|
||
with a patch proposal by Mao Kobayashi in PR#18439.
|
||
|
||
* attach() of an environment with active bindings now preserves the
|
||
active bindings. Reported by Kevin Ushey in PR#18425.
|
||
|
||
* BLAS detection now works also with system-provided libraries not
|
||
available as regular files. This fixes detection of the
|
||
Accelerate framework on macOS since Big Sur. Reported by David
|
||
Novgorodsky.
|
||
|
||
* download.file() gives a helpful error message in case of an
|
||
invalid download.file.method option, thanks to Colin Fay's report
|
||
in PR#18455.
|
||
|
||
* Sporadic crashes of Rterm when using completion have been fixed.
|
||
|
||
* Rprof() is now more reliable. A livelock in thread
|
||
initialization with too short sampling interval has been fixed on
|
||
macOS. A deadlock in using the C runtime has been fixed on
|
||
Windows. A potential deadlock has been prevented on Unix.
|
||
|
||
* Cursor placement in Rgui now works even after a fixed-width font
|
||
is selected.
|
||
|
||
* Mandatory options (options()) are now set on startup so that
|
||
saving and restoring them always works (PR#18372).
|
||
|
||
* Package installation, R CMD INSTALL or install.packages(*), now
|
||
parses each of the <pkg>/R/*.R files individually instead of
|
||
first concatenating and then parse()ing the large resulting file.
|
||
This allows parser or syntax errors to be diagnosed with correct
|
||
file names and line numbers, thanks to Simon Dedman's report and
|
||
Bill Dunlap's patch in PR#17859.
|
||
|
||
This _does_ require syntactically self contained R source files
|
||
now, fixing another inadvertent bug.
|
||
|
||
* predict.lm(<model with offset>) now finds the offset in the
|
||
correct environment, thanks to Andr'e Gillibert's report and patch
|
||
in PR#18456.
|
||
|
||
* getInitial(<formula>) now finds the selfStart model in the
|
||
correct environment. (Reported by Ivan Krylov in PR#18368.)
|
||
|
||
* Fix for possible segfault when using recently-added graphics
|
||
features, such as gradients, clipping paths, masks, and groups
|
||
with pdf(file=NULL).
|
||
|
||
* class(m) <- class(m) no longer changes a matrix m by adding a
|
||
class _attribute_.
|
||
|
||
* packageDate(pkg) now only warns once if there is no pkg.
|
||
|
||
* When ts() creates a multivariate time series, "mts", it also
|
||
inherits from "array" now, and is.mts() is documented _and_
|
||
stricter.
|
||
|
||
* Rd2txt() now preserves line breaks of \verb Rd content and from
|
||
duplicated \cr. The former also fixes the rendering of verbatim
|
||
output from Rd \Sexpr in plain-text help.
|
||
|
||
* uniroot(f, interval) should no longer wrongly converge _outside_
|
||
the interval in some cases where abs(f(x)) == Inf for an x at the
|
||
interval boundary, thanks to posts by Ben Bolker and Serguei
|
||
Sokol on R-devel.
|
||
|
||
* Vectorized alpha handling in palette functions such as in gray(),
|
||
rainbow(), or hcl.colors() works correctly now, thanks to Achim
|
||
Zeileis' report and patch in PR#18476.
|
||
|
||
* Formatting and print()ing of bibentry objects has dropped the
|
||
deprecated citation.bibtex.max argument, such that the bibtex
|
||
argument's default for print.bibentry() depends directly on the
|
||
citation.bibtex.max option, whereas in format.bibentry() the
|
||
option no longer applies.
|
||
|
||
* Attempting to use a character string naming a foreign function
|
||
entry point in a foreign function call in a package will now
|
||
signal an error if the packages has called R_forceSymbols to
|
||
specify that symbols must be used.
|
||
|
||
* An error in table() could permanently set options(warn=2)
|
||
promoting all subsequent warnings to errors.
|
||
|
||
* The sigma() function gave misleading results for binary GLMs. A
|
||
new method for objects of class "glm" returns the square root of
|
||
the estimate of the dispersion parameter using the same
|
||
calculation as summary.glm().
|
||
|
||
* bs() and ns() in the (typical) case of automatic knot
|
||
construction, when some of the supposedly inner knots coincide
|
||
with boundary knots, now moves them inside (with a warning),
|
||
building on PR#18442 by Ben Bolker.
|
||
|
||
* R CMD on Windows now skips the site profile with --no-site-file
|
||
and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
|
||
Ushey).
|
||
|
||
-------------------------------------------------------------------
|
||
Mon Apr 10 11:06:06 UTC 2023 - Detlef Steuer <detlef.steuer@gmx.de>
|
||
|
||
- add patch to build with libcurl >= 8
|
||
|
||
-------------------------------------------------------------------
|
||
Wed Mar 15 11:30:49 UTC 2023 - Detlef Steuer <detlef.steuer@gmx.de>
|
||
|
||
- CHANGES IN R 4.2.3:
|
||
|
||
C-LEVEL FACILITIES:
|
||
|
||
* The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
|
||
be fully C-compliant. This means that functions loaded _via_ for
|
||
example R_GetCCallable need to be cast to an appropriate type if
|
||
they have any arguments.
|
||
|
||
* .Machine has a new element sizeof.time_t to identify old systems
|
||
with a 32-bit type and hence a limited range of date-times (and
|
||
limited support for dates millions of years from present).
|
||
|
||
PACKAGE INSTALLATION:
|
||
|
||
* (Windows) The default C++ standard had accidentally been left at
|
||
C++11 when it was changed to C++14 on Unix.
|
||
|
||
BUG FIXES:
|
||
|
||
* As "POSIXlt" objects may be "partially filled" and their list
|
||
components meant to be recycled, length() now is the length of
|
||
the longest component.
|
||
|
||
* as.POSIXlt.Date() could underflow for dates in the far past (more
|
||
than half a million years BCE).
|
||
|
||
* as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
|
||
4.2.2, e.g., for
|
||
|
||
x <- as.POSIXlt(c("2019-01-30","2001-1-1"))
|
||
x$mon <- c(0L, NA); as.Date(x)
|
||
|
||
* R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
|
||
examples and vignettes (regression in R 4.2.0).
|
||
|
||
* R CMD check did not re-build vignettes in separate processes by
|
||
default (regression in R 4.2.0).
|
||
|
||
* Running examples from HTML documentation now restores previous
|
||
knitr settings and options (PR#18420).
|
||
|
||
* Quartz: fonts are now located using Core Graphics API instead of
|
||
deprecated ATS which is no longer supported in the macOS 13 SDK
|
||
(PR#18426). This also addresses an issue where the currently
|
||
used font in the Quartz device context was not correctly
|
||
retained.
|
||
|
||
* (Windows) Math symbols in text drawing functions are again
|
||
rendered correctly (PR#18440). This fixes a regression in R
|
||
4.2.1 caused by a fix in PR#18382 which uncovered an issue in
|
||
GraphApp due to which the symbol charset was not used with TT
|
||
Symbol font face.
|
||
|
||
* (Windows) Installing a package with a src/Makefile.{win,ucrt}
|
||
file includes ~/.R/Makevars.win64 in the search for user
|
||
makevars, as documented in "R Installation and Administration"
|
||
and done for packages with a src/Makevars.{win,ucrt} file.
|
||
* format(<POSIXlt_w/_unbalanced_sec>, "....%OS<n>") with n > 0 no
|
||
longer accidentally uses the unbalanced seconds, thanks to
|
||
Suharto Anggono's report (including patch) in PR#18448.
|
||
|
||
* solve.default(a, b) works around issues with some versions of
|
||
LAPACK when a contains NA or NaN values.
|
||
|
||
* When UseMethod() cannot dispatch, it no longer segfaults
|
||
producing the error message in case of a long class(), thanks to
|
||
Joris Vankerschaver's report (including patch) in PR#18447.
|
||
|
||
* When example(foo, ..) produces graphics on an interactive device
|
||
it needs to open itself, it now leaves devAskNewPage() unchanged
|
||
even when it was FALSE, thus fixing a 14 years old '<FIXME>'.
|
||
|
||
* packageDescription() again catches errors from encoding
|
||
conversions. This also fixes broken packageVersion() in C locale
|
||
on systems where iconv does not support transliteration.
|
||
|
||
-------------------------------------------------------------------
|
||
Mon Oct 31 18:56:44 UTC 2022 - Detlef Steuer <detlef.steuer@gmx.de>
|
||
|
||
- CHANGES IN R 4.2.2:
|
||
|
||
NEW FEATURES:
|
||
|
||
* tools::Rdiff(useDiff = TRUE) checks for the presence of an
|
||
external diff command and switches to useDiff = FALSE if none is
|
||
found. This allows R CMD Rdiff to always work.
|
||
|
||
* On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
|
||
can be used to switch to only 'best-effort' SSL certificate
|
||
revocation checks with the default "libcurl" download method.
|
||
This reduces security, but may be needed for downloads to work
|
||
with MITM proxies (PR#18379).
|
||
|
||
* (macOS) The run-time check for libraries from XQuartz for X11 and
|
||
Tcl/Tk no longer uses otool from the Apple Developer Tools
|
||
(PR#18400).
|
||
|
||
* The LaTeX style for producing the PDF manuals, Rd.sty, now loads
|
||
the standard amsmath, amsfonts and amssymb packages for greater
|
||
coverage of math commands in the Rd \eqn and \deqn macros. The
|
||
\mathscr LaTeX command is also provided (via the mathrsfs
|
||
package, if available, or the amsfonts bundle otherwise),
|
||
fulfilling the wish of PR#18398.
|
||
|
||
* (Windows) The default format of readClipboard() and
|
||
writeClipboard() has been changed to 13 (CF_UNICODETEXT).
|
||
|
||
INSTALLATION on a UNIX-ALIKE:
|
||
|
||
* The PDF manuals (if built) can be compacted by the new target
|
||
make compact-pdf (at the top level or in directory doc/manual).
|
||
|
||
* There is now configure support for LLVM clang 15 on Linux, which
|
||
defaults to position-independent (PIE) executables whereas
|
||
gfortran does not.
|
||
|
||
* Many small changes to ease compilation (and suppress warnings)
|
||
with LLVM clang 15.
|
||
|
||
BUG FIXES:
|
||
|
||
* Rscript -e would fail if stdin were closed (Reported by Henrik
|
||
Bengtsson.)
|
||
|
||
* qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
|
||
final steps, thus fixing PR#18360.
|
||
|
||
* tools::Rd2latex() now escapes hashes and ampersands when writing
|
||
URLs, fixing LaTeX errors with such URLs in \tabular.
|
||
|
||
* When isGeneric(f, fdef=*) is used with mismatching names, the
|
||
warning is better understandable; reported (with fix) in PR#18370
|
||
by Gabe Becker.
|
||
|
||
* poly(x, n) now works again (and is now documented) when x is a
|
||
"Date" or "POSIXct" object, or of another class while fulfilling
|
||
mode(x) == "numeric". This also enables poly(x, *, raw=TRUE) for
|
||
such variables. Reported by Michael Chirico to R-devel.
|
||
|
||
* write.table(), write.csv() and write.csv2() restore their
|
||
numerical precision (internal equivalent of digits = 15) after an
|
||
interrupt (PR#18384).
|
||
|
||
* One can now read also byte FF from a clipboard connection
|
||
(PR#18385).
|
||
|
||
* source("") and source(character()) now give more helpful error
|
||
messages.
|
||
|
||
* R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
|
||
intended effect.
|
||
|
||
* as.POSIXlt(x) now also works with very large dates x, fixing
|
||
PR#18401 reported by Hannes M"uhleisen.
|
||
|
||
* Files can now be extracted even from very large zip archives
|
||
(PR#18390, thanks to Martin Jakt).
|
||
|
||
* Non-finite objects of class "POSIXlt" are now correctly coerced
|
||
to classes "Date" and "POSIXct"; following up on the extension to
|
||
format() them correctly.
|
||
|
||
* Added methods for is.finite(), is.infinite() and is.nan() for
|
||
"POSIXlt" date-time objects.
|
||
|
||
-------------------------------------------------------------------
|
||
Thu Jun 23 08:40:01 UTC 2022 - Detlef Steuer <detlef.steuer@gmx.de>
|
||
|
||
- CHANGES IN R 4.2.1:
|
||
|
||
NEW FEATURES:
|
||
|
||
* New function utils::findCRANmirror() to find out if a CRAN mirror
|
||
has been selected, otherwise fallback to the main site. This
|
||
behaves in the same way as tools::CRAN_package_db() and is
|
||
intended for packages wishing to access CRAN for purposes other
|
||
than installing packages.
|
||
|
||
The need for this was shown by a day when the main CRAN website
|
||
was offline and a dozen or so packages which had its URL
|
||
hardcoded failed their checks.
|
||
|
||
INSTALLATION on a UNIX-ALIKE:
|
||
|
||
* The libraries searched for by --with-blas (without a value) now
|
||
include BLIS (after OpenBLAS but before ATLAS). And on macOS,
|
||
the Accelerate framework (after ATLAS). (This is patterned after
|
||
the AX_BLAS macro from the Autoconf Archive.)
|
||
|
||
* The included LAPACK sources have been updated to 3.10.1.
|
||
|
||
UTILITIES:
|
||
|
||
* The (full path to) the command tidy to be used for HTML
|
||
validation can be set by environment variable R_TIDYCMD.
|
||
|
||
* Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
|
||
false value will override R CMD check --as-cran and turn off HTML
|
||
validation. This provides a way to circumvent a problematic
|
||
tidy.
|
||
|
||
The 2006 version that ships with macOS is always skipped.
|
||
|
||
C-LEVEL FACILITIES:
|
||
|
||
* The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
|
||
and SINT_MIN in header R.h are deprecated.
|
||
|
||
BUG FIXES:
|
||
|
||
* fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
|
||
by preventing/detecting an integer overflow reliably.
|
||
|
||
* tar(., files=*) now produces correctly the warning about invalid
|
||
uid or gid of files, fixing PR#18344, reported by Martin Morgan.
|
||
|
||
* tk_choose.files() with multi = FALSE misbehaved on paths
|
||
containing spaces (PR#18334) (regression introduced in R 4.0.0).
|
||
|
||
* sort(x, partial = ind, *) now works correctly notably for the
|
||
non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
|
||
James Edwards.
|
||
|
||
* Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
|
||
for checking .Rd cross-references in R CMD check (as documented)
|
||
and not for other uses looking for a CRAN mirror.
|
||
|
||
* The search for a CRAN mirror when checking packages now uses
|
||
getOption("repos") if that specifies a CRAN mirror, even when it
|
||
does not also specify all three Bioconductor repositories (as was
|
||
previously required).
|
||
|
||
* The HTML code generated by tools::Rd2HTML() has been improved to
|
||
pass tidy 5.8.0.
|
||
|
||
-------------------------------------------------------------------
|
||
Fri Apr 22 12:38:25 UTC 2022 - Detlef Steuer <detlef.steuer@gmx.de>
|
||
|
||
- CHANGES IN R 4.2.0:
|
||
|
||
SIGNIFICANT USER-VISIBLE CHANGES:
|
||
|
||
* The formula method of aggregate() now matches the generic in
|
||
naming its first argument x (resolving PR#18299 by Thomas
|
||
Soeiro).
|
||
|
||
This means that calling aggregate() with a formula as a named
|
||
first argument requires name formula in earlier versions of R and
|
||
name x now, so portable code should not name the argument (code
|
||
in many packages did).
|
||
|
||
* Calling && or || with either argument of length greater than one
|
||
now gives a warning (which it is intended will become an error).
|
||
|
||
* Calling if() or while() with a condition of length greater than
|
||
one gives an error rather than a warning. Consequently,
|
||
environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
|
||
any effect.
|
||
|
||
* Windows users should consult the WINDOWS section below for some
|
||
profound changes including
|
||
|
||
* Support for 32-bit builds has been dropped.
|
||
|
||
* UTF-8 locales are used where available.
|
||
|
||
* The default locations for the R installation and personal
|
||
library folder have been changed.
|
||
|
||
Thanks to Tomas Kalibera for months of work on the Windows port
|
||
for this release.
|
||
|
||
NEW FEATURES:
|
||
|
||
* matrix(x, n, m) now warns in more cases where length(x) differs
|
||
from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
|
||
Feb 2021 on the R-devel mailing list.
|
||
|
||
This warning can be turned into an error by setting environment
|
||
variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
|
||
does so unless it is already set.
|
||
|
||
* Function file_test() in package utils gains tests for symlinks,
|
||
readability and writability.
|
||
|
||
* capabilities("libxml") is now false.
|
||
|
||
The description of capabilities("http/ftp") now reflects that it
|
||
refers to the default method, no longer the internal one.
|
||
|
||
* simplify2array() gains an except argument for controlling the
|
||
exceptions used by sapply().
|
||
|
||
* Environment variables R_LIBS_USER and R_LIBS_SITE are both now
|
||
set to the R system default if unset or empty, and can be set to
|
||
NULL to indicate an empty list of user or site library
|
||
directories.
|
||
|
||
* The warning for axis()(-like) calls in cases of relatively small
|
||
ranges (typically in log-scale situations) is slightly improved
|
||
_and_ suppressed from explicit calls to .axisPars() as has always
|
||
been the intention.
|
||
|
||
* The contrasts setter function `contrasts<-` gains an explicit
|
||
default how.many = NULL rather than just using missing(how.many).
|
||
|
||
* grid.pretty() gains a new optional argument n = 5.
|
||
|
||
* There is a new function .pretty() with option bounds as a
|
||
technical-utility version of pretty(). It and pretty() gain a
|
||
new argument f.min with a better than back-compatible default.
|
||
|
||
* Function grDevices::axisTicks() and related functions such as
|
||
graphics::axis() work better, notably for the log scale; partly
|
||
because of the pretty() improvements, but also because care is
|
||
taken e.g., when ylim is finite but diff(ylim) is infinite.
|
||
|
||
* nclass.FD() gains a digits option.
|
||
|
||
* The R Mathlib internal C function bd0() (called indirectly from a
|
||
dozen probability density and distribution functions such as
|
||
dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
|
||
complemented by a more sophisticated and (mostly) more accurate C
|
||
function ebd0(), currently called only by internal dpois_raw()
|
||
improving accuracy for R level dpois() and potentially others
|
||
calling it such as dnbinom(), dgamma() or pgamma(). (Thanks to
|
||
Morten Welinder's PR#15628.)
|
||
|
||
* write.ftable() gains sep = " " argument as suggested by Thomas
|
||
Soeiro.
|
||
|
||
* The names of the locale categories supported by R's
|
||
Sys.getlocale() and Sys.setlocale() are now provided by variable
|
||
.LC.categories in the base namespace.
|
||
|
||
* The Date and POSIXt methods for hist() and the histogram method
|
||
for plot() now also use the new default col = "lightgray" in
|
||
consistency with the corresponding change to hist()'s default for
|
||
R 4.0.0.
|
||
|
||
* hist.default() gains new fuzz argument, and the histogram plot
|
||
method no longer uses fractional axis ticks when displaying
|
||
counts ("Frequency").
|
||
|
||
* mapply() and hence Map() now also obey the "max-or-0-if-any"
|
||
recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
|
||
now.
|
||
|
||
* as.character(<obj>) for "hexmode" or "octmode" objects now
|
||
fulfils the important basic rule as.character(x)[j] ===
|
||
as.character(x[j]).
|
||
|
||
* The set utility functions, notably intersect() have been tweaked
|
||
to be more consistent and symmetric in their two set arguments,
|
||
also preserving a common mode.
|
||
|
||
* substr(ch, start,end) <- new now e.g., preserves names(ch); ditto
|
||
for substring(), thanks to a patch from Brodie Gaslam.
|
||
|
||
* plot(<lm>) gains a extend.ylim.f argument, in partial response to
|
||
PR#15285; further PR#17784 is fixed thanks to several
|
||
contributors and a patch by Elin Waring. The Cook's dist
|
||
contours get customizable via cook.col and cook.lty with a
|
||
different default color and their legend is nicer by default and
|
||
customizable via cook.legendChanges.
|
||
|
||
* Attempting to subset an object that is not subsettable now
|
||
signals an error of class notSubsettableError. The
|
||
non-subsettable object is contained in the object field of the
|
||
error condition.
|
||
|
||
* Subscript-out-of-bounds errors are now signaled as errors of
|
||
class subscriptOutOfBoundsError.
|
||
|
||
* Stack-overflow errors are now signaled as errors inheriting from
|
||
class stackOverflowError. See ?stackOverflowError for more
|
||
details.
|
||
|
||
* New partly experimental Sys.setLanguage() utility, solving the
|
||
main problem of PR#18055.
|
||
|
||
* gettext() and gettextf() get a new option trim = TRUE which when
|
||
set to false allows translations for strings such as "Execution
|
||
halted\n" typical for C code.
|
||
|
||
* An experimental implementation of hash tables is now available.
|
||
See ?hashtab for more details.
|
||
|
||
* identical() gains a extptr.as.ref argument for requesting that
|
||
external pointer objects be compared as reference objects.
|
||
|
||
* reorder() gets an argument decreasing which it passes to sort()
|
||
for level creation; based on the wish and patch by Thomas Soeiro
|
||
in PR#18243.
|
||
|
||
* as.vector() gains a data.frame method which returns a simple
|
||
named list, also clearing a long standing 'FIXME' to enable
|
||
as.vector(<data.frame>, mode="list"). This breaks code relying
|
||
on as.vector(<data.frame>) to return the unchanged data frame.
|
||
|
||
* legend() is now vectorized for arguments cex, x.intersp, and
|
||
text.width. The latter can now also be specified as a vector
|
||
(one element for each column of the legend) or as NA for
|
||
computing a proper column wise maximum value of strwidth(legend).
|
||
The argument y.intersp can be specified as a vector with one
|
||
entry for each row of the legend.
|
||
|
||
legend() also gains new arguments title.cex and title.font.
|
||
Thanks to Swetlana Herbrandt.
|
||
|
||
* Deparsing no longer remaps attribute names dim, dimnames, levels,
|
||
names and tsp to historical S-compatible names (which structure()
|
||
maps back).
|
||
|
||
* sample() and sample.int() have additional sanity checks on their
|
||
size and n arguments.
|
||
|
||
all.equal.numeric() gains a sanity check on its tolerance
|
||
argument - calling all.equal(a, b, c) for three numeric vectors
|
||
is a surprisingly common error.
|
||
|
||
mean(na.rm =), rank(na.last =), barplot(legend.text =),
|
||
boxplot(), contour(drawlabels =), polygon(border =) and
|
||
methods::is(class2 =) have more robust sanity checks on their
|
||
arguments.
|
||
|
||
R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
|
||
on the format of \alias{} commands.
|
||
|
||
* psigamma(x, deriv) for negative x now also works for deriv = 4
|
||
and 5; their underlying C level dpsifn() is documented in
|
||
'Writing R Extensions'.
|
||
|
||
* The HTML help system now uses HTML5 (wish of PR#18149).
|
||
|
||
* ks.test() now provides exact p-values also with ties and MC
|
||
p-values in the two-sample (Smirnov) case. By Torsten Hothorn.
|
||
|
||
* ks.test() gains a formula interface, with y ~ 1 for the
|
||
one-sample (Kolmogorov) test and y ~ group for the two-sample
|
||
(Smirnov) test. Contributed by Torsten Hothorn.
|
||
|
||
* The return value from ks.test() now has class c("ks.test",
|
||
"htest") - packages using try() need to take care to use
|
||
inherits() and not == on the class.
|
||
|
||
* New functions psmirnov(), qsmirnov() and rsmirnov() in package
|
||
stats implementing the asymptotic and exact distributions of the
|
||
two-sample Smirnov statistic.
|
||
|
||
* iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
|
||
inputs which cannot be converted to encoding to.
|
||
|
||
* In a forward pipe |> expression it is now possible to use a named
|
||
argument with the placeholder _ in the rhs call to specify where
|
||
the lhs is to be inserted. The placeholder can only appear once
|
||
on the rhs.
|
||
|
||
* The included LAPACK sources have been updated to version 3.10.0,
|
||
except for the four Fortran 77 routines which 3.10.0 has
|
||
re-implemented in Fortran 90 (where the older versions have been
|
||
retained as the R build process does not support Fortran 90).
|
||
|
||
* path.expand() and most other uses of tilde expansion now warn if
|
||
a path would be too long if expanded. (An exception is
|
||
file.exists(), which silently returns false.)
|
||
|
||
* trunc(<Date>, *) now supports units = "months" or "years" for
|
||
consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
|
||
proposal in PR#18099.
|
||
|
||
* list2DF() now checks that its arguments are of the same length,
|
||
rather than use recycling.
|
||
|
||
* The HTML help system has several new features: LaTeX-like math
|
||
can be typeset using either KaTeX or MathJax, usage and example
|
||
code is highlighted using Prism, and for dynamic help the output
|
||
of examples and demos can be shown within the browser if the
|
||
knitr package is installed. These features can be disabled by
|
||
setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
|
||
a false value.
|
||
|
||
GRAPHICS:
|
||
|
||
* The graphics engine version, R_GE_version, has been bumped to 15
|
||
and so packages that provide graphics devices should be
|
||
reinstalled.
|
||
|
||
* The grid package now allows the user to specify a "vector" of
|
||
pattern fills. The fill argument to gpar() accepts a list of
|
||
gradients and/or patterns and the functions linearGradient(),
|
||
radialGradient(), and pattern() have a new group argument.
|
||
|
||
Points grobs (data symbols) can now also have a pattern fill.
|
||
|
||
The grobCoords() function now returns a more informative and
|
||
complex result.
|
||
|
||
* The grid package has new functions for drawing isolated groups:
|
||
grid.group(), grid.define(), and grid.use(). These functions add
|
||
compositing operators and affine transformations to R's graphics
|
||
capabilities.
|
||
|
||
The grid package also has new functions for stroking and filling
|
||
paths: grid.stroke(), grid.fill(), and grid.fillStroke().
|
||
|
||
A new function as.path() allows the user to specify the fill rule
|
||
for a path that is to be used for clipping, stroking, or filling;
|
||
available options are "winding" and "evenodd". A new function
|
||
as.mask() allows the user to specify the type of a mask;
|
||
available options are "alpha" and "luminance".
|
||
|
||
These new features are only supported so far (at most) on the
|
||
Cairo-based graphics devices and on the pdf() device.
|
||
|
||
* dev.capabilities() reports on device support for the new
|
||
features.
|
||
|
||
* par() now warns about unnamed non-character arguments to prevent
|
||
misuse such as {usr <- par("usr"); par(usr)}.
|
||
|
||
INSTALLATION:
|
||
|
||
* Facilities for accessing ftp:// sites are no longer tested
|
||
(except _pro tem_ for curlGetHeaders()) as modern browsers have
|
||
removed support.
|
||
|
||
* R can now be built with DEFS = -DSTRICT_R_HEADERS .
|
||
|
||
PACKAGE INSTALLATION:
|
||
|
||
* R CMD INSTALL no longer tangles vignettes. This completes an R
|
||
CMD build change in R 3.0.0 and affects packages built before R
|
||
3.0.2. Such packages should be re-made with R CMD build to have
|
||
the tangled R code of vignettes shipped with the tarball.
|
||
|
||
* USE_FC_LEN_T will become the default: this uses the correct
|
||
prototypes for Fortran BLAS/LAPACK routines called from C/C++,
|
||
and requires adjustment of most such calls - see 'Writing R
|
||
Extensions' SS6.6.2. (This has been supported since R 3.6.2.)
|
||
|
||
* Package installation speed for packages installed with
|
||
keep.source has been improved. This resolve the issue reported by
|
||
Ofek Shilon in PR#18236.
|
||
|
||
UTILITIES:
|
||
|
||
* R CMD check can optionally report files/directories left behind
|
||
in home, /tmp (even though TMPDIR is set) and other directories.
|
||
See the "R Internals" manual for details.
|
||
|
||
* R CMD check now reports byte-compilation errors during
|
||
installation. These are not usually fatal but may result in
|
||
parts of the package not being byte-compiled.
|
||
|
||
* _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
|
||
tests and/or vignettes in R CMD check: see the "R Internals"
|
||
manual.
|
||
|
||
* _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
|
||
versions of Apple clang on macOS have made implicit function
|
||
declarations in C into a compilation error.
|
||
|
||
* R CMD check --as-cran makes use of the environment variable
|
||
AUTORECONF. See the "R Internals" manual SS8 for further details.
|
||
|
||
* R CMD check --use-valgrind also uses valgrind when re-building
|
||
vignettes as some non-Sweave vignettes unhelpfully comment out
|
||
all their code when R CMD check runs vignettes.
|
||
|
||
* Errors in re-building vignettes (unless there are LaTeX errors)
|
||
are reported by R CMD check as ERROR rather than WARNING when
|
||
running vignettes has been skipped (as it frequently is in CRAN
|
||
checks and by --as-cran).
|
||
|
||
* R CMD Rd2pdf gains a --quiet option that is used by R CMD build
|
||
when building the PDF package manual.
|
||
|
||
* R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
|
||
Texinfo >= 6.7. The --batch option is ignored.
|
||
|
||
* R CMD build and R CMD check now include the Rd file name and line
|
||
numbers in the error message of an \Sexpr evaluation failure.
|
||
|
||
* For packages using the \doi Rd macro (now an install-time \Sexpr)
|
||
but no other dynamic Rd content, R CMD build now produces a
|
||
smaller tarball and is considerably faster - skipping temporary
|
||
package installation.
|
||
|
||
C-LEVEL FACILITIES:
|
||
|
||
* The non-API header R_ext/R-ftp-http.h is no longer provided, as
|
||
the entry points it covered are now all defunct.
|
||
|
||
* A number of non-API declarations and macro definitions have been
|
||
moved from the installed header Rinternals.h to the internal
|
||
header Defn.h. Packages that only use entry points and
|
||
definitions documented to be part of the API as specified in
|
||
'Writing R Extensions' SS6 should not be affected.
|
||
|
||
* The macro USE_RINTERNALS no longer has any effect when compiling
|
||
package code. Packages which also use R_NO_REMAP will need to
|
||
ensure that the remapped names are used for calls to API
|
||
functions that were formerly also made available as macros.
|
||
|
||
* The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
|
||
ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
|
||
R_exts/RS.h (included by R.h). Replace these by calls to
|
||
Rf_error and Rf_warning (defined in header R_ext/Error.h included
|
||
by R.h).
|
||
|
||
Header R_ext/RS.h no longer includes R_ext/Error.h.
|
||
|
||
* Header R_ext/Constants.h (included by R.h) when included from C++
|
||
now includes the C++ header cfloat rather than the C header
|
||
float.h (now possible as C++11 is required).
|
||
|
||
* The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
|
||
(included by R.h) are deprecated.
|
||
|
||
* The deprecated S-compatibility macros SINGLE_* in
|
||
R_ext/Constants.h (included by R.h) have been removed.
|
||
|
||
* R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
|
||
forms and error messages now use the prefix. These forms were
|
||
introduced in R 3.4.0 and are available even when
|
||
STRICT_R_HEADERS is defined.
|
||
|
||
* rmultinom has been documented in 'Writing R Extensions' SS6 so is
|
||
now part of the R API.
|
||
|
||
* Similarly, Rtanpi, called from R level tanpi() is now part of the
|
||
R API.
|
||
|
||
* The long-deprecated, undocumented and non-API entry point call_R
|
||
is no longer declared in R_ext/RS.h (included by R.h).
|
||
|
||
* The header S.h which has been unsupported since Jan 2016 has been
|
||
removed. Use R.h instead.
|
||
|
||
DEPRECATED AND DEFUNCT:
|
||
|
||
* The (non-default and deprecated) method = "internal" for
|
||
download.file() and url() no longer supports http:// nor ftp://
|
||
URIs. (It is used only for file:// URIs.)
|
||
|
||
On Windows, download.file(method = "wininet") no longer supports
|
||
ftp:// URIs. (It is no longer the default method, which is
|
||
"libcurl" and does.)
|
||
|
||
On Windows, the deprecated method = "wininet" now gives a warning
|
||
for http:// and https:// URIs for both download.file() and url().
|
||
(It is no longer the default method.)
|
||
|
||
* On Windows, the command-line option --max-mem-size and
|
||
environment variable R_MAX_MEM_SIZE are defunct. The memory
|
||
allocation limit was important for 32-bit builds, but these are
|
||
no longer supported.
|
||
|
||
* default.stringsAsFactors() is now formally deprecated, where that
|
||
was only mentioned on its regular help page, previously. So it
|
||
now gives a warning if called.
|
||
|
||
* unix.time() is defunct now; it had been deprecated since R 3.4.0.
|
||
|
||
BUG FIXES:
|
||
|
||
* Setting digits = 0 in format(), print.default() (and hence
|
||
typically print()) or options() is again invalid. Its behaviour
|
||
was platform-dependent, and it is unclear what "zero significant
|
||
digits" should mean (PR#18098).
|
||
|
||
* Messages from C code in the cairo section of package grDevices
|
||
are now also offered for translation, thanks to Michael Chirico's
|
||
PR#18123.
|
||
|
||
* mean(x) with finite x now is finite also without "long.double"
|
||
capability.
|
||
|
||
* R CMD Rd2pdf no longer leaves an empty build directory behind
|
||
when it aborts due to an already existing output file. (Thanks
|
||
to Sebastian Meyer's PR#18141.)
|
||
|
||
* density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
|
||
removes weights "in parallel" to x, fixing PR#18151, reported by
|
||
Matthias Gondan. Additionally, it gets a subdensity option.
|
||
|
||
* Conversion of \Sexpr[]{<expR>} to LaTeX or HTML no longer
|
||
produces long blocks of empty lines when <expR> itself contains
|
||
several lines all producing empty output. Thanks to a report and
|
||
patch by Ivan Krylov posted to R-devel.
|
||
|
||
* R CMD build no longer fails if a package vignette uses child
|
||
documents and inst/doc exists. (Thanks to Sebastian Meyer's
|
||
PR#18156.)
|
||
|
||
* When an R documentation ('help' source) file man/foo.Rd in a
|
||
package has \donttest{..} examples with a syntax error, it is now
|
||
signalled as ERROR and with correct line numbers relating to the
|
||
*-Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
|
||
reports and patch proposals in PR#17501.
|
||
|
||
* Improved determination of the correct translation domain in
|
||
non-base packages, addressing the combination of PR#18092 and
|
||
PR#17998 (#c6) with reports and _augmented_ patch #2904 by
|
||
Suharto Anggono.
|
||
|
||
Note that "R-base" is no longer the default domain e.g., for
|
||
top-level calls to gettext(); rather translation needs explicit
|
||
domain = * specification in such cases.
|
||
|
||
* identical(attrib.as.set=FALSE) now works correctly with data
|
||
frames with default row names (Thanks to Charlie Gao's PR#18179).
|
||
|
||
* txtProgressBar() now enforces a non-zero width for argument char,
|
||
without which no progress can be visible.
|
||
|
||
* dimnames(table(d)) is more consistent in the case where d is a
|
||
list with a single component, thanks to Thomas Soeiro's report to
|
||
R-devel.
|
||
|
||
Further, table(d1, d2) now gives an error when d1 and d2 are data
|
||
frames as suggested by Thomas in PR#18224.
|
||
|
||
* Fix for drawing semi-transparent lines and fills on the native
|
||
Windows graphics device (PR#18219 and PR#16694). Thanks to Nick
|
||
Ray for helpful diagnosis on Bugzilla.
|
||
|
||
* The deparser now wraps sub-expressions such as if(A) .. with
|
||
parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
|
||
Lionel Henry's patches there.
|
||
|
||
* remove.packages() no longer tries to uninstall Priority: base
|
||
packages, thanks to a report and suggestions by Colin Fay in
|
||
PR#18227.
|
||
|
||
* win.metafile() now has xpinch and ypinch arguments so that the
|
||
user can override Windows' (potentially wrong) guess at device
|
||
dimensions.
|
||
|
||
* x[i] and x[[i]] for non-integer i should now behave in all cases
|
||
as always documented: the index used is equivalent to
|
||
as.integer(i) unless that would overflow where trunc(i) is used
|
||
instead; thanks to Suharto Anggono's report and patch proposals
|
||
in PR#17977.
|
||
|
||
* asOneSidedFormula() now associates the resulting formula with the
|
||
global environment rather than the evaluation environment created
|
||
for the call.
|
||
|
||
* <bibentry>$name now matches the field name case-insensitively,
|
||
consistent with bibentry() creation and the replacement method.
|
||
|
||
* cbind() failed to detect some length mismatches with a mixture of
|
||
time-series and non-time-series inputs.
|
||
|
||
* The default LaTeX style file Sweave.sty used by the RweaveLatex
|
||
driver no longer loads the obsolete ae package; thanks to a
|
||
report by Thomas Soeiro in PR#18271. Furthermore, it now skips
|
||
\usepackage[T1]{fontenc} for engines other than pdfTeX (if
|
||
detected) or if the new [nofontenc] option is used.
|
||
|
||
* smooth.spline() now stores its logical cv argument more safely,
|
||
fixing a rare bug when printing, and also stores n.
|
||
|
||
* smooth.spline(x,y,*) now computes the cv.crit statistic
|
||
correctly, also when is.unsorted(x), fixing PR#18294.
|
||
|
||
* The data.frame method of rbind() now warns when binding
|
||
not-wholly-recycling vectors, by analogy to the default method
|
||
(for matrices).
|
||
|
||
* setAs() finds the correct class for name to when multiple
|
||
packages define a class with that name. Thanks to Gabor Csardi
|
||
for the report.
|
||
|
||
* Fix for detaching a package when two classes of the same name are
|
||
present in method signatures for the same generic. Thanks to
|
||
Gabor Csardi for the report.
|
||
|
||
* match.arg("", c("", "a", "B")) gives a better error message, in
|
||
part from PR#17959, thanks to Elin Waring.
|
||
|
||
* R CMD Sweave --clean no longer removes pre-existing files or
|
||
subdirectories (PR#18242).
|
||
|
||
* The quartz() device no longer splits polylines into subpaths.
|
||
That has caused narrowly-spaced lines with many points to always
|
||
look solid even when dashed line type was used due to dash phase
|
||
restarts.
|
||
|
||
* Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
|
||
before R 3.5.0, thanks to the report and patch in PR#18284 by
|
||
Suharto Anggono.
|
||
|
||
* as.list(f) for a factor f now keeps names(f), fixing PR#18309.
|
||
|
||
* qbeta(.001, .9, .009) and analogous qf() calls now return a
|
||
correct value instead of NaN or wrongly 1, all with a warning;
|
||
thanks to the report by Ludger Goeminne in PR#18302.
|
||
|
||
* plot.lm() failed to produce the plot of residuals vs. factor
|
||
levels (i.e., which=5 when leverages are constant) for models
|
||
with character predictors (PR#17840).
|
||
|
||
* interaction.plot(..., xtick = TRUE) misplaced the x-axis line
|
||
(PR#18305).
|
||
|
||
* Not strictly fixing a bug, format()ing and print()ing of
|
||
non-finite Date and POSIXt values NaN and +/-Inf no longer show
|
||
as NA but the respective string, e.g., Inf, for consistency with
|
||
numeric vector's behaviour, fulfilling the wish of PR#18308.
|
||
|
||
* R CMD check no longer runs test scripts generated from
|
||
corresponding .Rin files twice and now signals an ERROR if
|
||
processing an .Rin script fails.
|
||
|
||
* tools::Rd2txt() used for plain-text help pages now renders \hrefs
|
||
(if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
|
||
percent-encoding and standards-compliant delimiting style (angle
|
||
brackets and no URL: prefix). \email is now rendered with a
|
||
mailto: prefix.
|
||
|
||
-------------------------------------------------------------------
|
||
Fri Mar 11 07:54:58 UTC 2022 - Detlef Steuer <detlef.steuer@gmx.de>
|
||
|
||
- CHANGES IN R 4.1.3:
|
||
|
||
NEW FEATURES:
|
||
|
||
* The default version of Bioconductor has been changed to 3.14.
|
||
(This is used by setRepositories and the menus in GUIs.)
|
||
|
||
UTILITIES:
|
||
|
||
* R CMD check --as-cran has a workaround for a bug in versions of
|
||
file up to at least 5.41 which mis-identify DBF files last
|
||
changed in 2022 as executables.
|
||
|
||
C-LEVEL FACILITIES:
|
||
|
||
* The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
|
||
(included by R.h) are deprecated and will be removed in R 4.2.0.
|
||
|
||
BUG FIXES:
|
||
|
||
* Initialization of self-starting nls() models with initialization
|
||
functions following the pre-R-4.1.0 API (without the ...
|
||
argument) works again for now, with a deprecation warning.
|
||
|
||
* Fixed quoting of ~autodetect~ in Java setting defaults to avoid
|
||
inadvertent user lookup due to leading ~, reported in PR#18231 by
|
||
Harold Gutch.
|
||
|
||
* substr(., start, stop) <- v now treats _negative_ stop values
|
||
correctly. Reported with a patch in PR#18228 by Brodie Gaslam.
|
||
|
||
* Subscripting an array x without dimnames by a
|
||
length(dim(x))-column character matrix gave "random" non-sense,
|
||
now an error; reported in PR#18244 by Mikael Jagan.
|
||
|
||
* ...names() now matches names(list(...)) closely, fixing PR#18247.
|
||
|
||
* all.equal(*, scale = s) now works as intended when length(s) > 1,
|
||
partly thanks to Michael Chirico's PR#18272.
|
||
|
||
* print(x) for long vectors x now also works for named atomic
|
||
vectors or lists and prints the correct number when reaching the
|
||
getOption("max.print") limit; partly thanks to a report and
|
||
proposal by Hugh Parsonage to the R-devel list.
|
||
|
||
* all.equal(<selfStart>, *) no longer signals a deprecation
|
||
warning.
|
||
|
||
* reformulate(*, response=r) gives a helpful error message now when
|
||
length(r) > 1, thanks to Bill Dunlap's PR#18281.
|
||
|
||
* Modifying globalCallingHandlers inside withCallingHandlers() now
|
||
works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
|
||
|
||
* hist(<Date>, breaks = "days") and hist(<POSIXt>, breaks = "secs")
|
||
no longer fail for inputs of length 1.
|
||
|
||
* qbeta(.001, .9, .009) and similar cases now converge correctly
|
||
thanks to Ben Bolker's report in PR#17746.
|
||
|
||
* window(x, start, end) no longer wrongly signals "'start' cannot
|
||
be after 'end'", fixing PR#17527 and PR#18291.
|
||
|
||
* data() now checks that its (rarely used) list argument is a
|
||
character vector - a couple of packages passed other types and
|
||
gave incorrect results.
|
||
|
||
* which() now checks its arr.ind argument is TRUE rather coercing
|
||
to logical and taking the first element - which gave incorrect
|
||
results in package code.
|
||
|
||
* model.weights() and model.offset() more carefully extract their
|
||
model components, thanks to Ben Bolker and Tim Taylor's R-devel
|
||
post.
|
||
|
||
* list.files(recursive = TRUE) now shows all broken symlinks
|
||
(previously, some of them may have been omitted, PR#18296).
|
||
|
||
-------------------------------------------------------------------
|
||
Mon Nov 1 09:24:49 UTC 2021 - Detlef Steuer <detlef.steuer@gmx.de>
|
||
|
||
- CHANGES IN R 4.1.2:
|
||
|
||
C-LEVEL FACILITIES:
|
||
|
||
* The workaround in headers R.h and Rmath.h (using namespace std;)
|
||
for the Oracle Developer Studio compiler is no longer needed now
|
||
C++11 is required so has been removed. A couple more usages of
|
||
log() (which should have been std::log()) with an int argument
|
||
are reported on Solaris.
|
||
|
||
* The undocumented limit of 4095 bytes on messages from the
|
||
S-compatibility macros PROBLEM and MESSAGE is now documented and
|
||
longer messages will be silently truncated rather than
|
||
potentially causing segfaults.
|
||
|
||
* If the R_NO_SEGV_HANDLER environment variable is non-empty, the
|
||
signal handler for SEGV/ILL/BUS signals (which offers recovery
|
||
user interface) is not set. This allows more reliable debugging
|
||
of crashes that involve the console.
|
||
|
||
DEPRECATED AND DEFUNCT:
|
||
|
||
* The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
|
||
WARNING, RECOVER, ... are deprecated and will be hidden in R
|
||
4.2.0. R's native interface of Rf_error and Rf_warning has long
|
||
been preferred.
|
||
|
||
BUG FIXES:
|
||
|
||
* .mapply(F, dots, .) no longer segfaults when dots is not a list
|
||
and uses match.fun(F) as always documented; reported by Andrew
|
||
Simmons in PR#18164.
|
||
|
||
* hist(<Date>, ...) and hist(<POSIXt>, ...) no longer pass
|
||
arguments for rect() (such as col and density) to axis().
|
||
(Thanks to Sebastian Meyer's PR#18171.)
|
||
|
||
* \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
|
||
patch by Jeroen Ooms in PR#18152.)
|
||
|
||
* Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
|
||
warns in more places, thanks to Andr'e Gillibert's report and
|
||
patch in PR#18168.
|
||
|
||
* gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
|
||
reported by Till Krenz.
|
||
|
||
* Fixed dnbinom(x, size=<very_small>, .., log=TRUE) regression,
|
||
reported by Martin Morgan.
|
||
|
||
* as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
|
||
report and patch in PR#18188.
|
||
|
||
* model.response() now strips an "AsIs" class typically, thanks to
|
||
Duncan Murdoch's report and other discussants in PR#18190.
|
||
|
||
* try() is considerably faster in case of an error and long call,
|
||
as e.g., from some do.call(). Thanks to Alexander Kaever's
|
||
suggestion posted to R-devel.
|
||
|
||
* qqline(y = <object>) such as y=I(.), now works, see also
|
||
PR#18190.
|
||
|
||
* Non-integer mgp par() settings are now handled correctly in
|
||
axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
|
||
report and suggestion in PR#18194.
|
||
|
||
* formatC(x) returns length zero character() now, rather than ""
|
||
when x is of length zero, as documented, thanks to Davis
|
||
Vaughan's post to R-devel.
|
||
|
||
* removeSource(fn) now retains (other) attributes(fn).
|
||
|
||
-------------------------------------------------------------------
|
||
Mon Oct 25 14:09:08 UTC 2021 - Detlef Steuer <detlef.steuer@gmx.de>
|
||
|
||
- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
|
||
(rpmacros now go to rpmmacrodir)
|
||
- minor clean-ups in spec file
|
||
|
||
-------------------------------------------------------------------
|
||
Tue Aug 10 12:23:48 UTC 2021 - Detlef Steuer <detlef.steuer@gmx.de>
|
||
|
||
- CHANGES IN R 4.1.1:
|
||
|
||
NEW FEATURES:
|
||
|
||
* require(pkg, quietly = TRUE) is quieter and in particular does
|
||
not warn if the package is not found.
|
||
|
||
DEPRECATED AND DEFUNCT:
|
||
|
||
* Use of ftp:// URIs should be regarded as deprecated, with
|
||
on-going support confined to method = "libcurl" and not routinely
|
||
tested. (Nowadays no major browser supports them.)
|
||
|
||
* The non-default method = "internal" is deprecated for http:// and
|
||
ftp:// URIs for both download.file and url.
|
||
|
||
* On Windows, method = "wininet" is deprecated for http://,
|
||
https:// and ftp:// URIs for both download.file and url. (A
|
||
warning is only given for ftp://.)
|
||
|
||
For ftp:// URIs the default method is now "libcurl" if available
|
||
(which it is on CRAN builds).
|
||
|
||
method = "wininet" remains the default for http:// and https://
|
||
URIs but if libcurl is available, using method = "libcurl" is
|
||
preferred.
|
||
|
||
INSTALLATION:
|
||
|
||
* make check now works also without a LaTeX installation. (Thanks
|
||
to Sebastian Meyer's PR#18103.)
|
||
|
||
BUG FIXES:
|
||
|
||
* make check-devel works again in an R build configured with
|
||
--without-recommended-packages.
|
||
|
||
* qnbinom(p, size, mu) for large size/mu is correct now in a range
|
||
of cases (PR#18095); similarly for the (size, prob)
|
||
parametrization of the negative binomial. Also qpois() and
|
||
qbinom() are better and or faster for extreme cases. The
|
||
underlying C code has been modularized and is common to all four
|
||
cases of discrete distributions.
|
||
|
||
* gap.axis is now part of the axis() arguments which are passed
|
||
from bxp(), and hence boxplot(). (Thanks to Martin Smith's
|
||
report and suggestions in PR#18109.)
|
||
|
||
* .First and .Last can again be set from the site profile.
|
||
|
||
* seq.int(from, to, *) and seq.default(..) now work better in large
|
||
range cases where from-to is infinite where the two boundaries
|
||
are finite.
|
||
|
||
* all.equal(x,y) now returns TRUE correctly also when several
|
||
entries of abs(x) and abs(y) are close to .Machine$double.xmax,
|
||
the largest finite numeric.
|
||
|
||
* model.frame() now clears the object bit when removing the class
|
||
attribute of a value via na.action (PR#18100).
|
||
|
||
* charClass() now works with multi-character strings on Windows
|
||
(PR#18104, fixed by Bill Dunlap).
|
||
|
||
* encodeString() on Solaris now works again in Latin-1 encoding on
|
||
characters represented differently in UTF-8. Support for
|
||
surrogate pairs on Solaris has been improved.
|
||
|
||
* file.show() on Windows now works with non-ASCII path names
|
||
representable in the current native encoding (PR#18132).
|
||
|
||
* Embedded R on Windows can now find R home directory via the
|
||
registry even when installed only for the current user
|
||
(PR#18135).
|
||
|
||
* pretty(x) with finite x now returns finite values also in the
|
||
case where the extreme x values are close in size to the maximal
|
||
representable number .Machine$double.xmax.
|
||
|
||
Also, it's been tweaked for very small ranges and when a boundary
|
||
is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
|
||
has negative numbers, currently still warning about a very small
|
||
range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
|
||
|
||
* The error message for not finding vignette files when weaving has
|
||
correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
|
||
|
||
* dnbinom(20, <large>, 1) now correctly gives 0, and similar cases
|
||
are more accurate with underflow precaution. (Reported by Francisco Vera Alcivar in PR#18072.)
|
||
|
||
-------------------------------------------------------------------
|
||
Fri Jun 4 07:21:23 UTC 2021 - Detlef Steuer <detlef.steuer@gmx.de>
|
||
|
||
- The line %{__install} -m 755 -d %{_infodir}
|
||
no longer works in TW or Factory.
|
||
But without that line it works everywhere. So this instruction
|
||
was commented out of the spec file.
|
||
|
||
-------------------------------------------------------------------
|
||
Tue May 18 17:01:25 UTC 2021 - Detlef Steuer <detlef.steuer@gmx.de>
|
||
|
||
- CHANGES IN R 4.1.0:
|
||
|
||
FUTURE DIRECTIONS:
|
||
|
||
* It is planned that the 4.1.x series will be the last to support
|
||
32-bit Windows, with production of binary packages for that
|
||
series continuing until early 2023.
|
||
|
||
SIGNIFICANT USER-VISIBLE CHANGES:
|
||
|
||
* Data set esoph in package datasets now provides the correct
|
||
numbers of controls; previously it had the numbers of cases added
|
||
to these. (Reported by Alexander Fowler in PR#17964.)
|
||
|
||
NEW FEATURES:
|
||
|
||
* www.omegahat.net is no longer one of the repositories known by
|
||
default to setRepositories(). (Nowadays it only provides source
|
||
packages and is often unavailable.)
|
||
|
||
* Function package_dependencies() (in package tools) can now use
|
||
different dependency types for direct and recursive dependencies.
|
||
|
||
* The checking of the size of tarball in R CMD check --as-cran
|
||
<pkg> may be tweaked via the new environment variable
|
||
_R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
|
||
PR#17777 by Jan Gorecki.
|
||
|
||
* Using c() to combine a factor with other factors now gives a
|
||
factor, an ordered factor when combining ordered factors with
|
||
identical levels.
|
||
|
||
* apply() gains a simplify argument to allow disabling of
|
||
simplification of results.
|
||
|
||
* The format() method for class "ftable" gets a new option justify.
|
||
(Suggested by Thomas Soeiro.)
|
||
|
||
* New ...names() utility. (Proposed by Neal Fultz in PR#17705.)
|
||
|
||
* type.convert() now warns when its as.is argument is not
|
||
specified, as the help file always said it _should_. In that
|
||
case, the default is changed to TRUE in line with its change in
|
||
read.table() (related to stringsAsFactor) in R 4.0.0.
|
||
|
||
* When printing list arrays, classed objects are now shown _via_
|
||
their format() value if this is a short enough character string,
|
||
or by giving the first elements of their class vector and their
|
||
length.
|
||
|
||
* capabilities() gets new entry "Rprof" which is TRUE when R has
|
||
been configured with the equivalent of --enable-R-profiling (as
|
||
it is by default). (Related to Michael Orlitzky's report
|
||
PR#17836.)
|
||
|
||
* str(xS4) now also shows extraneous attributes of an S4 object
|
||
xS4.
|
||
|
||
* Rudimentary support for vi-style tags in rtags() and R CMD rtags
|
||
has been added. (Based on a patch from Neal Fultz in PR#17214.)
|
||
|
||
* checkRdContents() is now exported from tools; it and also
|
||
checkDocFiles() have a new option chkInternal allowing to check
|
||
Rd files marked with keyword "internal" as well. The latter can
|
||
be activated for R CMD check via environment variable
|
||
_R_CHECK_RD_INTERNAL_TOO_.
|
||
|
||
* New functions numToBits() and numToInts() extend the raw
|
||
conversion utilities to (double precision) numeric.
|
||
|
||
* Functions URLencode() and URLdecode() in package utils now work
|
||
on vectors of URIs. (Based on patch from Bob Rudis submitted
|
||
with PR#17873.)
|
||
|
||
* path.expand() can expand ~user on most Unix-alikes even when
|
||
readline is not in use. It tries harder to expand ~, for example
|
||
should environment variable HOME be unset.
|
||
|
||
* For HTML help (both dynamic and static), Rd file links to help
|
||
pages in external packages are now treated as references to
|
||
topics rather than file names, and fall back to a file link only
|
||
if the topic is not found in the target package. The earlier rule
|
||
which prioritized file names over topics can be restored by
|
||
setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
|
||
false value.
|
||
|
||
* c() now removes NULL arguments before dispatching to methods,
|
||
thus simplifying the implementation of c() methods, _but_ for
|
||
back compatibility keeps NULL when it is the first argument.
|
||
(From a report and patch proposal by Lionel Henry in PR#17900.)
|
||
|
||
* Vectorize()'s result function's environment no longer keeps
|
||
unneeded objects.
|
||
|
||
* Function ...elt() now propagates visibility consistently with
|
||
..n. (Thanks to Lionel Henry's PR#17905.)
|
||
|
||
* capture.output() no longer uses non-standard evaluation to
|
||
evaluate its arguments. This makes evaluation of functions like
|
||
parent.frame() more consistent. (Thanks to Lionel Henry's
|
||
PR#17907.)
|
||
|
||
* packBits(bits, type="double") now works as inverse of
|
||
numToBits(). (Thanks to Bill Dunlap's proposal in PR#17914.)
|
||
|
||
* curlGetHeaders() has two new arguments, timeout to specify the
|
||
timeout for that call (overriding getOption("timeout")) and TLS
|
||
to specify the minimum TLS protocol version to be used for
|
||
https:// URIs (_inter alia_ providing a means to check for sites
|
||
using deprecated TLS versions 1.0 and 1.1).
|
||
|
||
* For nls(), an optional constant scaleOffset may be added to the
|
||
denominator of the relative offset convergence test for cases
|
||
where the fit of a model is expected to be exact, thanks to a
|
||
proposal by John Nash. nls(*, trace=TRUE) now also shows the
|
||
convergence criterion.
|
||
|
||
* Numeric differentiation _via_ numericDeriv() gets new optional
|
||
arguments eps and central, the latter for taking central divided
|
||
differences. The latter can be activated for nls() via
|
||
nls.control(nDcentral = TRUE).
|
||
|
||
* nls() now passes the trace and control arguments to getInitial(),
|
||
notably for all self-starting models, so these can also be fit in
|
||
zero-noise situations via a scaleOffset. For this reason, the
|
||
initial function of a selfStart model must now have ... in its
|
||
argument list.
|
||
|
||
* bquote(splice = TRUE) can now splice expression vectors with
|
||
attributes: this makes it possible to splice the result of
|
||
parse(keep.source = TRUE). (Report and patch provided by Lionel
|
||
Henry in PR#17869.)
|
||
|
||
* textConnection() gets an optional name argument.
|
||
|
||
* get(), exists(), and get0() now signal an error if the first
|
||
argument has length greater than 1. Previously additional
|
||
elements were silently ignored. (Suggested by Antoine Fabri on
|
||
R-devel.)
|
||
|
||
* R now provides a shorthand notation for creating functions, e.g.
|
||
\(x) x + 1 is parsed as function(x) x + 1.
|
||
|
||
* R now provides a simple native forward pipe syntax |>. The
|
||
simple form of the forward pipe inserts the left-hand side as the
|
||
first argument in the right-hand side call. The pipe
|
||
implementation as a syntax transformation was motivated by
|
||
suggestions from Jim Hester and Lionel Henry.
|
||
|
||
* all.equal(f, g) for functions now by default also compares their
|
||
environment(.)s, notably via new all.equal method for class
|
||
function. Comparison of nls() fits, e.g., may now need
|
||
all.equal(m1, m2, check.environment = FALSE).
|
||
|
||
* .libPaths() gets a new option include.site, allowing to _not_
|
||
include the site library. (Thanks to Dario Strbenac's suggestion
|
||
and Gabe Becker's PR#18016.)
|
||
|
||
* Lithuanian translations are now available. (Thanks to Rimantas
|
||
Zakauskas.)
|
||
|
||
* names() now works for DOTSXP objects. On the other hand, in
|
||
R-lang, the R language manual, we now warn against relying on the
|
||
structure or even existence of such dot-dot-dot objects.
|
||
|
||
* all.equal() no longer gives an error on DOTSXP objects.
|
||
|
||
* capabilities("cairo") now applies only to the file-based devices
|
||
as it is now possible (if very unusual) to build R with Cairo
|
||
support for those but not for X11().
|
||
|
||
* There is optional support for tracing the progress of
|
||
loadNamespace() - see its help.
|
||
|
||
* (Not Windows.) l10n_info() reports an additional element, the
|
||
name of the encoding as reported by the OS (which may differ from
|
||
the encoding part (if any) of the result from
|
||
Sys.getlocale("LC_CTYPE").
|
||
|
||
* New function gregexec() which generalizes regexec() to find _all_
|
||
disjoint matches and well as all substrings corresponding to
|
||
parenthesized subexpressions of the given regular expression.
|
||
(Contributed by Brodie Gaslam.)
|
||
|
||
* New function charClass() in package utils to query the
|
||
wide-character classification functions in use (such as
|
||
iswprint).
|
||
|
||
* The names of quantile()'s result no longer depend on the global
|
||
getOption("digits"), but quantile() gets a new optional argument
|
||
digits = 7 instead.
|
||
|
||
* grep(), sub(), regexp and variants work considerably faster for
|
||
long factors with few levels. (Thanks to Michael Chirico's
|
||
PR#18063.)
|
||
|
||
* Provide grouping of x11() graphics windows within a window
|
||
manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
|
||
posted to R-devel.
|
||
|
||
* The split() method for class data.frame now allows the f argument
|
||
to be specified as a formula.
|
||
|
||
* sprintf now warns on arguments unused by the format string.
|
||
|
||
* New palettes "Rocket" and "Mako" for hcl.colors() (approximating
|
||
palettes of the same name from the 'viridisLite' package).
|
||
|
||
Contributed by Achim Zeileis.
|
||
|
||
* The base environment and its namespace are now locked (so one can
|
||
no longer add bindings to these or remove from these).
|
||
|
||
* Rterm handling of multi-byte characters has been improved,
|
||
allowing use of such characters when supported by the current
|
||
locale.
|
||
|
||
* Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
|
||
characters as hex digits.
|
||
|
||
* Environment variable LC_ALL on Windows now takes precedence over
|
||
LC_CTYPE and variables for other supported categories, matching
|
||
the POSIX behaviour.
|
||
|
||
* duplicated() and anyDuplicated() are now optimized for integer
|
||
and real vectors that are known to be sorted via the ALTREP
|
||
framework. Contributed by Gabriel Becker via PR#17993.
|
||
|
||
GRAPHICS:
|
||
|
||
* The graphics engine version, R_GE_version, has been bumped to 14
|
||
and so packages that provide graphics devices should be
|
||
reinstalled.
|
||
|
||
* Graphics devices should now specify deviceVersion to indicate
|
||
what version of the graphics engine they support.
|
||
|
||
* Graphics devices can now specify deviceClip. If TRUE, the
|
||
graphics engine will never perform any clipping of output itself.
|
||
|
||
The clipping that the graphics engine does perform (for both
|
||
canClip = TRUE and canClip = FALSE) has been improved to avoid
|
||
producing unnecessary artifacts in clipped output.
|
||
|
||
* The grid package now allows gpar(fill) to be a linearGradient(),
|
||
a radialGradient(), or a pattern(). The viewport(clip) can now
|
||
also be a grob, which defines a clipping path, and there is a new
|
||
viewport(mask) that can also be a grob, which defines a mask.
|
||
|
||
These new features are only supported so far on the Cairo-based
|
||
graphics devices and on the pdf() device.
|
||
|
||
* (Not Windows.) A warning is given when a Cairo-based type is
|
||
specified for a png(), jpeg(), tiff() or bmp() device but Cairo
|
||
is unsupported (so type = "Xlib" is tried instead).
|
||
|
||
* grSoftVersion() now reports the versions of FreeType and
|
||
FontConfig if they are used directly (not _via_ Pango), as is
|
||
most commonly done on macOS.
|
||
|
||
C-LEVEL FACILITIES:
|
||
|
||
* The _standalone_ libRmath math library and R's C API now provide
|
||
log1pexp() again as documented, and gain log1mexp().
|
||
|
||
INSTALLATION on a UNIX-ALIKE:
|
||
|
||
* configure checks for a program pkgconf if program pkg-config is
|
||
not found. These are now only looked for on the path (like
|
||
almost all other programs) so if needed specify a full path to
|
||
the command in PKG_CONFIG, for example in file config.site.
|
||
|
||
* C99 function iswblank is required - it was last seen missing ca
|
||
2003 so the workaround has been removed.
|
||
|
||
* There are new configure options --with-internal-iswxxxxx,
|
||
--with-internal-towlower and --with-internal-wcwidth which allows
|
||
the system functions for wide-character classification,
|
||
case-switching and width (wcwidth and wcswidth) to be replaced by
|
||
internal ones. The first has long been used on macOS, AIX (and
|
||
Windows) but this enables it to be unselected there and selected
|
||
for other platforms (it is the new default on Solaris). The
|
||
second is new in this version of R and is selected by default on
|
||
macOS and Solaris. The third has long been the default and
|
||
remains so as it contains customizations for East Asian
|
||
languages.
|
||
|
||
System versions of these functions are often minimally
|
||
implemented (sometimes only for ASCII characters) and may not
|
||
cover the full range of Unicode points: for example Solaris (and
|
||
Windows) only cover the Basic Multilingual Plane.
|
||
|
||
* Cairo installations without X11 are more likely to be detected by
|
||
configure, when the file-based Cairo graphics devices will be
|
||
available but not X11(type = "cairo").
|
||
|
||
* There is a new configure option --with-static-cairo which is the
|
||
default on macOS. This should be used when only static cairo
|
||
(and where relevant, Pango) libraries are available.
|
||
|
||
* Cairo-based graphics devices on platforms without Pango but with
|
||
FreeType/FontConfig will make use of the latter for font
|
||
selection.
|
||
|
||
LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
|
||
|
||
* Configuring with flag --enable-lto=R now also uses LTO when
|
||
installing the recommended packages.
|
||
|
||
* R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
|
||
LTO when compiling code, for use with R configured with
|
||
--enable-lto=R. For R configured with --enable-lto, they have
|
||
the new flag --no-use-LTO.
|
||
|
||
Packages can opt in or out of LTO compilation _via_ a UseLTO
|
||
field in the DESCRIPTION file. (As usual this can be overridden
|
||
by the command-line flags.)
|
||
|
||
BUILDING R on Windows:
|
||
|
||
* for GCC >= 8, FC_LEN_T is defined in config.h and hence character
|
||
lengths are passed from C to Fortran in _inter alia_ BLAS and
|
||
LAPACK calls.
|
||
|
||
* There is a new text file src/gnuwin32/README.compilation, which
|
||
outlines how C/Fortran code compilation is organized and
|
||
documents new features:
|
||
|
||
* R can be built with Link-Time Optimization with a suitable
|
||
compiler - doing so with GCC 9.2 showed several
|
||
inconsistencies which have been corrected.
|
||
|
||
* There is support for cross-compiling the C and Fortran code
|
||
in R and standard packages on suitable (Linux) platforms.
|
||
This is mainly intended to allow developers to test later
|
||
versions of compilers - for example using GCC 9.2 or 10.x has
|
||
detected issues that GCC 8.3 in Rtools40 does not.
|
||
|
||
* There is experimental support for cross-building R packages
|
||
with C, C++ and/or Fortran code.
|
||
|
||
* The R installer can now be optionally built to support a single
|
||
architecture (only 64-bit or only 32-bit).
|
||
|
||
PACKAGE INSTALLATION:
|
||
|
||
* The default C++ standard has been changed to C++14 where
|
||
available (which it is on all currently checked platforms): if
|
||
not (as before) C++11 is used if available otherwise C++ is not
|
||
supported.
|
||
|
||
Packages which specify C++11 will still be installed using C++11.
|
||
|
||
C++14 compilers may give deprecation warnings, most often for
|
||
std::random_shuffle (deprecated in C++14 and removed in C++17).
|
||
Either specify C++11 (see 'Writing R Extensions') or modernize
|
||
the code and if needed specify C++14. The latter has been
|
||
supported since R 3.4.0 so the package's DESCRIPTION would need
|
||
to include something like
|
||
|
||
Depends: R (>= 3.4)
|
||
|
||
PACKAGE INSTALLATION on Windows:
|
||
|
||
* R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
|
||
when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
|
||
or in a personal/site Makevars file. (For details see 'Writing R
|
||
Extensions' SS4.5.)
|
||
|
||
This provides a valuable check on code consistency. It does work
|
||
with GCC 8.3 as in Rtools40, but that does not detect everything
|
||
the CRAN checks with current GCC do.
|
||
|
||
PACKAGE INSTALLATION on macOS:
|
||
|
||
* The default personal library directory on builds with
|
||
--enable-aqua (including CRAN builds) now differs by CPU type,
|
||
one of
|
||
|
||
~/Library/R/x86_64/x.y/library
|
||
~/Library/R/arm64/x.y/library
|
||
|
||
This uses the CPU type R (and hence the packages) were built for,
|
||
so when a x86_64 build of R is run under Rosetta emulation on an
|
||
arm64 Mac, the first is used.
|
||
|
||
UTILITIES:
|
||
|
||
* R CMD check can now scan package functions for bogus return
|
||
statements, which were possibly intended as return() calls (wish
|
||
of PR#17180, patch by Sebastian Meyer). This check can be
|
||
activated via the new environment variable
|
||
_R_CHECK_BOGUS_RETURN_, true for --as-cran.
|
||
|
||
* R CMD build omits tarballs and binaries of previous builds from
|
||
the top-level package directory. (PR#17828, patch by Sebastian
|
||
Meyer.)
|
||
|
||
* R CMD check now runs sanity checks on the use of LazyData, for
|
||
example that a data directory is present and that
|
||
LazyDataCompression is not specified without LazyData and has a
|
||
documented value. For packages with large LazyData databases
|
||
without specifying LazyDataCompression, there is a reference to
|
||
the code given in 'Writing R Extensions' SS1.1.6 to test the
|
||
choice of compression (as in all the CRAN packages tested a
|
||
non-default method was preferred).
|
||
|
||
* R CMD build removes LazyData and LazyDataCompression fields from
|
||
the DESCRIPTION file of packages without a data directory.
|
||
|
||
ENCODING-RELATED CHANGES:
|
||
|
||
* The parser now treats \Unnnnnnnn escapes larger than the upper
|
||
limit for Unicode points (\U10FFFF) as an error as they cannot be
|
||
represented by valid UTF-8.
|
||
|
||
Where such escapes are used for outputting non-printable
|
||
(including unassigned) characters, 6 hex digits are used (rather
|
||
than 8 with leading zeros). For clarity, braces are used, for
|
||
example \U{0effff}.
|
||
|
||
* The parser now looks for non-ASCII spaces on Solaris (as
|
||
previously on most other OSes).
|
||
|
||
* There are warnings (including from the parser) on the use of
|
||
unpaired surrogate Unicode points such as \uD834. (These cannot
|
||
be converted to valid UTF-8.)
|
||
|
||
* Functions nchar(), tolower(), toupper() and chartr() and those
|
||
using regular expressions have more support for inputs with a
|
||
marked Latin-1 encoding.
|
||
|
||
* The character-classification functions used (by default) to
|
||
replace the system iswxxxxx functions on Windows, macOS and AIX
|
||
have been updated to Unicode 13.0.0.
|
||
|
||
The character-width tables have been updated to include new
|
||
assignments in Unicode 13.0.0.
|
||
|
||
* The code for evaluating default (extended) regular expressions
|
||
now uses the same character-classification functions as the rest
|
||
of R (previously they differed on Windows, macOS and AIX).
|
||
|
||
* There is a build-time option to replace the system's
|
||
wide-character wctrans C function by tables shipped with R: use
|
||
configure option --with-internal-towlower or (on Windows)
|
||
-DUSE_RI18N_CASE in CFLAGS when building R. This may be needed
|
||
to allow tolower() and toupper() to work with Unicode characters
|
||
beyond the Basic Multilingual Plane where not supported by system
|
||
functions (e.g. on Solaris where it is the new default).
|
||
|
||
* R is more careful when truncating UTF-8 and other multi-byte
|
||
strings that are too long to be printed, passed to the system or
|
||
libraries or placed into an internal buffer. Truncation will no
|
||
longer produce incomplete multibyte characters.
|
||
|
||
DEPRECATED AND DEFUNCT:
|
||
|
||
* Function plclust() from the package stats and
|
||
package.dependencies(), pkgDepends(), getDepList(),
|
||
installFoundDepends(), and vignetteDepends() from package tools
|
||
are defunct.
|
||
|
||
* Defunct functions checkNEWS() and readNEWS() from package tools
|
||
and CRAN.packages() from utils have been removed.
|
||
|
||
* R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
|
||
|
||
* parallel::detectCores() drops support for Irix (retired in 2013).
|
||
|
||
* The LINPACK argument to chol.default(), chol2inv(),
|
||
solve.default() and svd() has been defunct since R 3.1.0. It was
|
||
silently ignored up to R 4.0.3 but now gives an error.
|
||
|
||
* Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
|
||
(dot-dot-dot) object ddd has been disabled; it worked by accident
|
||
only and was undocumented.
|
||
|
||
BUG FIXES:
|
||
|
||
* Many more C-level allocations (mainly by malloc and strdup) are
|
||
checked for success with suitable alternative actions.
|
||
|
||
* Bug fix for replayPlot(); this was turning off graphics engine
|
||
display list recording if a recorded plot was replayed in the
|
||
same session. The impact of the bug became visible if resize the
|
||
device after replay OR if attempted another savePlot() after
|
||
replay (empty display list means empty screen on resize or empty
|
||
saved plot).
|
||
|
||
* R CMD check etc now warn when a package exports non-existing S4
|
||
classes or methods, also in case of no "methods" presence.
|
||
(Reported by Alex Bertram; reproducible example and patch by
|
||
Sebastian Meyer in PR#16662.)
|
||
|
||
* boxplot() now also accepts calls for labels such as ylab, the
|
||
same as plot(). (Reported by Marius Hofert.)
|
||
|
||
* The help page for xtabs() now correctly states that addNA is
|
||
setting na.action = na.pass among others. (Reported as PR#17770
|
||
by Thomas Soeiro.)
|
||
|
||
* The R CMD check <pkg> gives a longer and more comprehensible
|
||
message when DESCRIPTION misses dependencies, e.g., in Imports:.
|
||
(Thanks to the contributors of PR#17179.)
|
||
|
||
* update.default() now calls the generic update() on the formula to
|
||
work correctly for models with extended formulas. (As reported
|
||
and suggested by Neal Fultz in PR#17865.)
|
||
|
||
* The horizontal position of leaves in a dendrogram is now correct
|
||
also with center = FALSE. (PR#14938, patch from Sebastian
|
||
Meyer.)
|
||
|
||
* all.equal.POSIXt() no longer warns about and subsequently ignores
|
||
inconsistent "tzone" attributes, but describes the difference in
|
||
its return value (PR#17277). This check can be disabled _via_
|
||
the new argument check.tzone = FALSE as suggested by Sebastian
|
||
Meyer.
|
||
|
||
* as.POSIXct() now populates the "tzone" attribute from its tz
|
||
argument when x is a logical vector consisting entirely of NA
|
||
values.
|
||
|
||
* x[[2^31]] <- v now works. (Thanks to the report and patch by
|
||
Suharto Anggono in PR#17330.)
|
||
|
||
* In log-scale graphics, axis() ticks and label positions are now
|
||
computed more carefully and symmetrically in their range,
|
||
typically providing _more_ ticks, fulfilling wishes in PR#17936.
|
||
The change really corresponds to an improved axisTicks() (package
|
||
grDevices), potentially influencing grid and lattice, for
|
||
example.
|
||
|
||
* qnorm(<very large negative>, log.p=TRUE) is now correct to at
|
||
least five digits where it was catastrophically wrong,
|
||
previously.
|
||
|
||
* sum(df) and similar "Summary"- and "Math"-group member functions
|
||
now work for data frames df with logical columns, notably also of
|
||
zero rows. (Reported to R-devel by Martin "b706".)
|
||
|
||
* unsplit() had trouble with tibbles due to unsound use of rep(NA,
|
||
len)-indexing, which should use NA_integer_ (Reported to R-devel
|
||
by Mario Annau.)
|
||
|
||
* pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
|
||
|
||
* show(<hidden S4 generic>) prints better and without quotes for
|
||
non-hidden S4 generics.
|
||
|
||
* read.table() and relatives treated an "NA" column name as missing
|
||
when check.names = FALSE PR#18007.
|
||
|
||
* Parsing strings containing UTF-16 surrogate pairs such as
|
||
"\uD834\uDD1E" works better on some (uncommon) platforms.
|
||
sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
|
||
on all platforms.
|
||
|
||
* identical(x,y) is no longer true for differing DOTSXP objects,
|
||
fixing PR#18032.
|
||
|
||
* str() now works correctly for DOTSXP and related exotics, even
|
||
when these are doomed.
|
||
|
||
Additionally, it no longer fails for lists with a class and
|
||
"irregular" method definitions such that e.g. lapply(*) will
|
||
necessarily fail, as currently for different igraph objects.
|
||
|
||
* Too long lines in environment files (e.g. Renviron) no longer
|
||
crash R. This limit has been increased to 100,000 bytes.
|
||
(PR#18001.)
|
||
|
||
* There is a further workaround for FreeType giving incorrect
|
||
italic font faces with cairo-based graphics devices on macOS.
|
||
|
||
* add_datalist(*, force = TRUE) (from package tools) now actually
|
||
updates an existing data/datalist file for new content. (Thanks
|
||
to a report and patch by Sebastian Meyer in PR#18048.)
|
||
|
||
* cut.Date() and cut.POSIXt() could produce an empty last interval
|
||
for breaks = "months" or breaks = "years". (Reported as PR#18053
|
||
by Christopher Carbone.)
|
||
|
||
* Detection of the encoding of 'regular' macOS locales such as
|
||
en_US (which is UTF-8) had been broken by a macOS change:
|
||
fortunately these are now rarely used with en_US.UTF-8 being
|
||
preferred.
|
||
|
||
* sub() and gsub(pattern, repl, x, *) now keep attributes of x such
|
||
as names() also when pattern is NA (PR#18079).
|
||
|
||
* Time differences ("difftime" objects) get a replacement and a
|
||
rep() method to keep "units" consistent. (Thanks to a report and
|
||
patch by Nicolas Bennett in PR#18066.)
|
||
|
||
* The \RdOpts macro, setting defaults for \Sexpr options in an Rd
|
||
file, had been ineffective since R 2.12.0: it now works again.
|
||
(Thanks to a report and patch by Sebastian Meyer in PR#18073.)
|
||
|
||
* mclapply and pvec no longer accidentally terminate parallel
|
||
processes started before by mcparallel or related calls in
|
||
package parallel (PR#18078).
|
||
|
||
* grep and other functions for evaluating (extended) regular
|
||
expressions handle in Unicode also strings not explicitly flagged
|
||
UTF-8, but flagged native when running in UTF-8 locale.
|
||
|
||
* Fixed a crash in fifo implementation on Windows (PR#18031).
|
||
|
||
* Binary mode in fifo on Windows is now properly detected from
|
||
argument open (PR#15600, PR#18031).
|
||
|
||
|
||
-------------------------------------------------------------------
|
||
Tue May 18 13:10:15 UTC 2021 - Detlef Steuer <detlef.steuer@gmx.de>
|
||
|
||
- improved spec file according to comments of dimstar in
|
||
https://build.opensuse.org/request/show/892685
|
||
|
||
-------------------------------------------------------------------
|
||
Thu May 6 12:43:28 UTC 2021 - Detlef Steuer <detlef.steuer@gmx.de>
|
||
|
||
- To get in sync with d:l:R:autoCRAN the Matrix package's split
|
||
in -devel was reversed.
|
||
|
||
-------------------------------------------------------------------
|
||
Wed Mar 31 18:41:20 UTC 2021 - Detlef Steuer <detlef.steuer@gmx.de>
|
||
|
||
- CHANGES IN R 4.0.5:
|
||
|
||
BUG FIXES:
|
||
|
||
* The change to the internal table in R 4.0.4 for iswprint has been
|
||
reverted: it contained some errors in printability of 'East
|
||
Asian' characters.
|
||
|
||
* For packages using LazyData, R CMD build ignored the
|
||
--resave-data option and the BuildResaveData field of the
|
||
DESCRIPTION file (in R versions 4.0.0 to 4.0.4).
|
||
|
||
-------------------------------------------------------------------
|
||
Mon Feb 15 10:07:41 UTC 2021 - Detlef Steuer <detlef.steuer@gmx.de>
|
||
|
||
- CHANGES IN R 4.0.4:
|
||
|
||
NEW FEATURES:
|
||
|
||
* File share/texmf/tex/latex/jss.cls has been updated to work with
|
||
LaTeX versions since Oct 2020.
|
||
|
||
* Unicode character width tables (as used by nchar(, type = "w"))
|
||
have been updated to Unicode 12.1 by Brodie Gaslam (PR#17781),
|
||
including many emoji.
|
||
|
||
* The internal table for iswprint (used on Windows, macOS and AIX)
|
||
has been updated to include many recent Unicode characters.
|
||
|
||
INSTALLATION on a UNIX-ALIKE:
|
||
|
||
* If an external BLAS is specified by --with-blas=foo or _via_
|
||
environment variable BLAS_LIBS is not found, this is now a
|
||
configuration error. The previous behaviour was not clear from
|
||
the documentation: it was to continue the search as if
|
||
--with-blas=yes was specified.
|
||
|
||
BUG FIXES:
|
||
|
||
* all.equal(x,y) now "sees" the two different NAs in factors,
|
||
thanks to Bill Dunlap and others in PR#17897.
|
||
|
||
* (~ NULL)[1] and similar formula subsetting now works, thanks to a
|
||
report and patch by Henrik Bengtsson in PR#17935. Additionally,
|
||
subsetting leaving an empty formula now works too, thanks to
|
||
suggestions by Suharto Anggono.
|
||
|
||
* .traceback(n) keeps source references again, as before R 4.0.0,
|
||
fixing a regression; introduced by the PR#17580, reported
|
||
including two patch proposals by Brodie Gaslam.
|
||
|
||
* unlist(plst, recursive=FALSE) no longer drops content for
|
||
pairlists with list components, thanks to the report and patch by
|
||
Suharto Anggono in PR#17950.
|
||
|
||
* iconvlist() now also works on MUSL based (Linux) systems, from a
|
||
report and patch suggestion by Wesley Chan in PR#17970.
|
||
|
||
* round() and signif() no longer tolerate wrong argument names,
|
||
notably in 1-argument calls; reported by Shane Mueller on R-devel
|
||
(mailing list); later reported as PR#17976.
|
||
|
||
* .Machine has longdouble.* elements only if
|
||
capabilities("long.double") is true, as documented. (Previously
|
||
they were included if the platform had long double identical to
|
||
double, as ARM does.)
|
||
|
||
* p.adjust(numeric(), n=0) now works, fixing PR#18002.
|
||
|
||
* identical(x,y) no longer prints "Unknown Type .." for typeof(x)
|
||
== "..." objects.
|
||
|
||
* Fix (auto-)print()ing of named complex vectors, see PR#17868 and
|
||
PR#18019.
|
||
|
||
* all.equal(<language>, <...>) now works, fixing PR#18029.
|
||
|
||
* as.data.frame.list(L, row.names=NULL) now behaves in line with
|
||
data.frame(), disregarding names of components of L, fixing
|
||
PR#18034, reported by Kevin Tappe.
|
||
|
||
* checkRdaFiles(ff)$version is now correct also when ff contains
|
||
files of different versions, thanks to a report and patch from
|
||
Sebastian Meyer in PR#18041.
|
||
|
||
* macOS: Quartz device live drawing could fail (no plot is shown)
|
||
if the system changes the drawing context after view update
|
||
(often the case since macOS Big Sur). System log may show
|
||
"CGContextDelegateCreateForContext: invalid context" error.
|
||
|
||
|
||
-------------------------------------------------------------------
|
||
Sat Oct 10 18:43:26 UTC 2020 - Detlef Steuer <detlef.steuer@gmx.de>
|
||
|
||
- CHANGES IN R 4.0.3:
|
||
|
||
NEW FEATURES:
|
||
|
||
* On platforms using configure option --with-internal-tzcode,
|
||
additional values "internal" and (on macOS only) "macOS" are
|
||
accepted for the environment variable TZDIR. (See ?TZDIR.)
|
||
|
||
On macOS, "macOS" is used by default if the system timezone
|
||
database is a newer version than that in the R installation.
|
||
|
||
* When install.packages(type = "source") fails to find a package in
|
||
a repository it mentions package versions which are excluded by
|
||
their R version requirement and links to hints on why a package
|
||
might not be found.
|
||
|
||
* The default value for options("timeout") can be set from
|
||
enviromnent variable R_DEFAULT_INTERNET_TIMEOUT, still defaulting
|
||
to 60 (seconds) if that is not set or invalid.
|
||
|
||
This may be needed when child R processes are doing downloads,
|
||
for example during the installation of source packages which
|
||
download jars or other forms of data.
|
||
|
||
LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
|
||
|
||
* There is now support for parallelized Link-Time Optimization
|
||
(LTO) with GCC and for 'thin' LTO with clang _via_ setting the
|
||
LTO macro.
|
||
|
||
* There is support for setting a different LTO flag for the Fortran
|
||
compiler, including to empty when mixing clang and gfortran (as
|
||
on macOS). See file config.site.
|
||
|
||
* There is a new LTO_LD macro to set linker options for LTO
|
||
compilation, for example to select an alternative linker or to
|
||
parallelize thin LTO.
|
||
|
||
DEPRECATED AND DEFUNCT:
|
||
|
||
* The LINPACK argument to chol.default(), chol2inv(),
|
||
solve.default() and svd() has been defunct since R 3.1.0. Using
|
||
it now gives a warning which will become an error in R 4.1.0.
|
||
|
||
BUG FIXES:
|
||
|
||
* The code mitigating stack overflow with PCRE regexps on very long
|
||
strings is enabled for PCRE2 < 10.30 also when JIT is enabled,
|
||
since stack overflows have been seen in that case.
|
||
|
||
* Fix to correctly show the group labels in dotchart() (which where
|
||
lost in the ylab improvement for R 4.0.0).
|
||
|
||
* addmargins(*, ..) now also works when fn() is a local function,
|
||
thanks to bug report and patch PR#17124 from Alex Bertram.
|
||
|
||
* rank(x) and hence sort(x) now work when x is an object (as per
|
||
is.object(x)) of type "raw" _and_ provides a valid `[` method,
|
||
e.g., for gmp::as.bigz(.) numbers.
|
||
|
||
* chisq.test(*, simulate.p.value=TRUE) and r2dtable() now work
|
||
correctly for large table entries (in the millions). Reported by
|
||
Sebastian Meyer and investigated by more helpers in PR#16184.
|
||
|
||
* Low-level socket read/write operations have been fixed to
|
||
correctly signal communication errors. Previously, such errors
|
||
could lead to a segfault due to invalid memory access. Reported
|
||
and debugged by Dmitriy Selivanov in PR#17850.
|
||
|
||
* quantile(x, pr) works more consistently for pr values slightly
|
||
outside [0,1], thanks to Suharto Anggono's PR#17891.
|
||
|
||
Further, quantile(x, prN, names=FALSE) now works even when prN
|
||
contains NAs, thanks to Anggono's PR#17892. Ditto for ordered
|
||
factors or Date objects when type = 1 or 3, thanks to PR#17899.
|
||
|
||
* Libcurl-based internet access, including curlGetHeaders(), was
|
||
not respecting the "timeout" option. If this causes
|
||
unanticipated timeouts, consider increasing the default by
|
||
setting R_DEFAULT_INTERNET_TIMEOUT.
|
||
|
||
* as.Date(<char>) now also works with an initial "", thanks to
|
||
Michael Chirico's PR#17909.
|
||
|
||
* isS3stdGeneric(f) now detects an S3 generic also when it it is
|
||
trace()d, thanks to Gabe Becker's PR#17917.
|
||
|
||
* R_allocLD() has been fixed to return memory aligned for long
|
||
double type PR#16534.
|
||
|
||
* fisher.test() no longer segfaults when called again after its
|
||
internal stack has been exceeded PR#17904.
|
||
|
||
* Accessing a long vector represented by a compact integer sequence
|
||
no longer segfaults (reported and debugged by Hugh Parsonage).
|
||
|
||
* duplicated() now works also for strings with multiple encodings
|
||
inside a single vector PR#17809.
|
||
|
||
* phyper(11, 15, 0, 12, log.p=TRUE) no longer gives NaN; reported
|
||
as PR#17271 by Alexey Stukalov.
|
||
|
||
* Fix incorrect calculation in logLik.nls() PR#16100, patch from
|
||
Sebastian Meyer.
|
||
|
||
* A very old bug could cause a segfault in model.matrix() when
|
||
terms involved logical variables. Part of PR#17879.
|
||
|
||
* model.frame.default() allowed data = 1, leading to involuntary
|
||
variable capture (rest of PR#17879).
|
||
|
||
* tar() no longer skips non-directory files, thanks to a patch by
|
||
Sebastian Meyer, fixing the remaining part of PR#16716.
|
||
|
||
-------------------------------------------------------------------
|
||
Mon Jun 22 09:18:01 UTC 2020 - Detlef Steuer <detlef.steuer@gmx.de>
|
||
|
||
- CHANGES IN R 4.0.2:
|
||
|
||
UTILITIES:
|
||
|
||
* R CMD check skips vignette re-building (with a warning) if the
|
||
VignetteBuilder package(s) are not available.
|
||
|
||
BUG FIXES:
|
||
|
||
* Paths with non-ASCII characters caused problems for package
|
||
loading on Windows PR#17833.
|
||
|
||
* Using tcltk widgets no longer crashes R on Windows.
|
||
|
||
* source(*, echo=TRUE) no longer fails in some cases with empty
|
||
lines; reported by Bill Dunlap in PR#17769.
|
||
|
||
* on.exit() now correctly matches named arguments, thanks to
|
||
PR#17815 (including patch) by Brodie Gaslam.
|
||
|
||
* regexpr(*, perl=TRUE) no longer returns incorrect positions into
|
||
text containing characters outside of the Unicode Basic
|
||
Multilingual Plane on Windows.
|
||
|
||
-------------------------------------------------------------------
|
||
Sat Jun 6 10:33:50 UTC 2020 - Detlef Steuer <detlef.steuer@gmx.de>
|
||
|
||
- CHANGES IN R 4.0.1:
|
||
|
||
NEW FEATURES:
|
||
|
||
* paste() and paste0() gain a new optional argument recycle0. When
|
||
set to true, zero-length arguments are recycled leading to
|
||
character(0) after the sep-concatenation, i.e., to the empty
|
||
string "" if collapse is a string and to the zero-length value
|
||
character(0) when collapse = NULL.
|
||
|
||
A package whose code uses this should depend on R (>= 4.0.1).
|
||
|
||
* The summary(<warnings>) method now maps the counts correctly to
|
||
the warning messages.
|
||
|
||
BUG FIXES:
|
||
|
||
* aov(frml, ...) now also works where the formula deparses to more
|
||
than 500 characters, thanks to a report and patch proposal by Jan
|
||
Hauffa.
|
||
|
||
* Fix a dozen places (code, examples) as Sys.setlocale() returns
|
||
the new rather than the previous setting.
|
||
|
||
* Fix for adding two complex grid units via sum(). Thanks to Gu
|
||
Zuguang for the report and Thomas Lin Pedersen for the patch.
|
||
|
||
* Fix parallel::mclapply(..., mc.preschedule=FALSE) to handle raw
|
||
vector results correctly. PR#17779
|
||
|
||
* Computing the base value, i.e., 2, "everywhere", now uses
|
||
FLT_RADIX, as the original machar code looped indefinitely on the
|
||
ppc64 architecture for the longdouble case.
|
||
|
||
* In R 4.0.0, sort.list(x) when is.object(x) was true, e.g., for x
|
||
<- I(letters), was accidentally using method = "radix".
|
||
Consequently, e.g., merge(<data.frame>) was much slower than
|
||
previously; reported in PR#17794.
|
||
|
||
* plot(y ~ x, ylab = quote(y[i])) now works, as e.g., for xlab;
|
||
related to PR#10525.
|
||
|
||
* parallel::detect.cores(all.tests = TRUE) tries a matching OS name
|
||
before the other tests (which were intended only for unknown
|
||
OSes).
|
||
|
||
* Parse data for raw strings is now recorded correctly. Reported by
|
||
Gabor Csardi.
|
||
|
||
-------------------------------------------------------------------
|
||
Fri Apr 24 08:08:31 UTC 2020 - Detlef Steuer <detlef.steuer@gmx.de>
|
||
|
||
- CHANGES IN 4.0.0:
|
||
|
||
SIGNIFICANT USER-VISIBLE CHANGES:
|
||
|
||
* Packages need to be (re-)installed under this version (4.0.0) of
|
||
R.
|
||
|
||
* matrix objects now also inherit from class "array", so e.g.,
|
||
class(diag(1)) is c("matrix", "array"). This invalidates code
|
||
incorrectly assuming that class(matrix_obj)) has length one.
|
||
|
||
S3 methods for class "array" are now dispatched for matrix
|
||
objects.
|
||
|
||
* There is a new syntax for specifying _raw_ character constants
|
||
similar to the one used in C++: r"(...)" with ... any character
|
||
sequence not containing the sequence )". This makes it easier to
|
||
write strings that contain backslashes or both single and double
|
||
quotes. For more details see ?Quotes.
|
||
|
||
* R now uses a stringsAsFactors = FALSE default, and hence by
|
||
default no longer converts strings to factors in calls to
|
||
data.frame() and read.table().
|
||
|
||
A large number of packages relied on the previous behaviour and
|
||
so have needed/will need updating.
|
||
|
||
* The plot() S3 generic function is now in package base rather than
|
||
package graphics, as it is reasonable to have methods that do not
|
||
use the graphics package. The generic is currently re-exported
|
||
from the graphics namespace to allow packages importing it from
|
||
there to continue working, but this may change in future.
|
||
|
||
Packages which define S4 generics for plot() should be
|
||
re-installed and package code using such generics from other
|
||
packages needs to ensure that they are imported rather than rely
|
||
on their being looked for on the search path (as in a namespace,
|
||
the base namespace has precedence over the search path).
|
||
|
||
REFERENCE COUNTING:
|
||
|
||
* Reference counting is now used instead of the NAMED mechanism for
|
||
determining when objects can be safely mutated in base C code.
|
||
This reduces the need for copying in some cases and should allow
|
||
further optimizations in the future. It should help make the
|
||
internal code easier to maintain.
|
||
|
||
This change is expected to have almost no impact on packages
|
||
using supported coding practices in their C/C++ code.
|
||
|
||
MIGRATION TO PCRE2:
|
||
|
||
* This version of R is built against the PCRE2 library for
|
||
Perl-like regular expressions, if available. (On non-Windows
|
||
platforms PCRE1 can optionally be used if PCRE2 is not available
|
||
at build time.) The version of PCRE in use can be obtained _via_
|
||
extSoftVersion(): PCRE1 (formerly known as 'PCRE') has versions
|
||
<= 8, PCRE2 versions >= 10.
|
||
|
||
* Making PCRE2 available when building R from source is strongly
|
||
recommended (preferably version 10.30 or later) as PCRE1 is no
|
||
longer developed: version 8.44 is 'likely to be the final
|
||
release'.
|
||
|
||
* PCRE2 reports errors for some regular expressions that were
|
||
accepted by PCRE1. A hyphen now has to be escaped in a character
|
||
class to be interpreted as a literal (unless first or last in the
|
||
class definition). \R, \B and \X are no longer allowed in
|
||
character classes (PCRE1 treated these as literals).
|
||
|
||
* Option PCRE_study is no longer used with PCRE2, and is reported
|
||
as FALSE when that is in use.
|
||
|
||
NEW FEATURES:
|
||
|
||
* assertError() and assertWarning() (in package tools) can now
|
||
check for _specific_ error or warning classes _via_ the new
|
||
optional second argument classes (which is not back compatible
|
||
with previous use of an unnamed second argument).
|
||
|
||
* DF2formula(), the utility for the data frame method of formula(),
|
||
now works without parsing and explicit evaluation, starting from
|
||
Suharto Anggono's suggestion in PR#17555.
|
||
|
||
* approxfun() and approx() gain a new argument na.rm defaulting to
|
||
true. If set to false, missing y values now propagate into the
|
||
interpolated values.
|
||
|
||
* Long vectors are now supported as the seq argument of a for()
|
||
loop.
|
||
|
||
* str(x) gets a new deparse.lines option with a default to speed it
|
||
up when x is a large call object.
|
||
|
||
* The internal traceback object produced when an error is signalled
|
||
(.Traceback), now contains the calls rather than the _deparse()d_
|
||
calls, deferring the deparsing to the user-level functions
|
||
.traceback() and traceback(). This fulfils the wish of PR#17580,
|
||
reported including two patch proposals by Brodie Gaslam.
|
||
|
||
* data.matrix() now converts character columns to factors and from
|
||
this to integers.
|
||
|
||
* package.skeleton() now explicitly lists all exports in the
|
||
NAMESPACE file.
|
||
|
||
* New function .S3method() to register S3 methods in R scripts.
|
||
|
||
* file.path() has some support for file paths not in the session
|
||
encoding, e.g. with UTF-8 inputs in a non-UTF-8 locale the output
|
||
is marked as UTF-8.
|
||
|
||
* Most functions with file-path inputs will give an explicit error
|
||
if a file-path input in a marked encoding cannot be translated
|
||
(to the native encoding or in some cases on Windows to UTF-8),
|
||
rather than translate to a different file path using escapes.
|
||
Some (such as dir.exists(), file.exists(), file.access(),
|
||
file.info(), list.files(), normalizePath() and path.expand())
|
||
treat this like any other non-existent file, often with a
|
||
warning.
|
||
|
||
* There is a new help document accessed by help("file path
|
||
encoding") detailing how file paths with marked encodings are
|
||
handled.
|
||
|
||
* New function list2DF() for creating data frames from lists of
|
||
variables.
|
||
|
||
* iconv() has a new option sub = "Unicode" to translate UTF-8 input
|
||
invalid in the to encoding using <U+xxxx> escapes.
|
||
|
||
* There is a new function infoRDS() providing information about the
|
||
serialization format of a serialized object.
|
||
|
||
* S3 method lookup now by default skips the elements of the search
|
||
path between the global and base environments.
|
||
|
||
* Added an argument add_datalist(*, small.size = 0) to allow the
|
||
creation of a data/datalist file even when the total size of the
|
||
data sets is small.
|
||
|
||
* The backquote function bquote() has a new argument splice to
|
||
enable splicing a computed list of values into an expression,
|
||
like ,@ in LISP's backquote.
|
||
|
||
* The formula interface to t.test() and wilcox.test() has been
|
||
extended to handle one-sample and paired tests.
|
||
|
||
* The palette() function has a new default set of colours (which
|
||
are less saturated and have better accessibility properties).
|
||
There are also some new built-in palettes, which are listed by
|
||
the new palette.pals() function. These include the old default
|
||
palette under the name "R3". Finally, the new palette.colors()
|
||
function allows a subset of colours to be selected from any of
|
||
the built-in palettes.
|
||
|
||
* n2mfrow() gains an option asp = 1 to specify the aspect ratio,
|
||
fulfilling the wish and extending the proposal of Michael Chirico
|
||
in PR#17648.
|
||
|
||
* For head(x, n) and tail() the default and other S3 methods
|
||
notably for _vector_ n, e.g. to get a "corner" of a matrix, has
|
||
been extended to array's of higher dimension thanks to the patch
|
||
proposal by Gabe Becker in PR#17652. Consequently, optional
|
||
argument addrownums is deprecated and replaced by the (more
|
||
general) argument keepnums. An invalid second argument n now
|
||
leads to typically more easily readable error messages.
|
||
|
||
* New function .class2() provides the full character vector of
|
||
class names used for S3 method dispatch.
|
||
|
||
* Printing methods(..) now uses a new format() method.
|
||
|
||
* sort.list(x) now works for non-atomic objects x and method =
|
||
"auto" (the default) or "radix" in cases order(x) works.
|
||
|
||
* Where they are available, writeBin() allows long vectors.
|
||
|
||
* New function deparse1() produces one string, wrapping deparse(),
|
||
to be used typically in deparse1(substitute(*)), e.g., to fix
|
||
PR#17671.
|
||
|
||
* wilcox.test() enhancements: In the (non-paired) two-sample case,
|
||
Inf values are treated as very large for robustness consistency.
|
||
If exact computations are used, the result now has "exact" in the
|
||
method element of its return value. New arguments tol.root and
|
||
digits.rank where the latter may be used for stability to treat
|
||
very close numbers as ties.
|
||
|
||
* readBin() and writeBin() now report an error for an invalid
|
||
endian value. The affected code needs to be fixed with care as
|
||
the old undocumented behavior was to swap endian-ness in such
|
||
cases.
|
||
|
||
* sequence() is now an S3 generic with an internally implemented
|
||
default method, and gains arguments to generate more complex
|
||
sequences. Based on code from the S4Vectors Bioconductor package
|
||
and the advice of Herv'e Pag`es.
|
||
|
||
* print()'s default method and many other methods (by calling the
|
||
default eventually and passing ...) now make use of a new
|
||
optional width argument, avoiding the need for the user to set
|
||
and reset options("width").
|
||
|
||
* memDecompress() supports the RFC 1952 format (e.g. in-memory
|
||
copies of gzip-compressed files) as well as RFC 1950.
|
||
|
||
* memCompress() and memDecompress() support long raw vectors for
|
||
types "gzip" and "zx".
|
||
|
||
* sweep() and slice.index() can now use names of dimnames for their
|
||
MARGIN argument (apply has had this for almost a decade).
|
||
|
||
* New function proportions() and marginSums(). These should replace
|
||
the unfortunately named prop.table() and margin.table(). They are
|
||
drop-in replacements, but also add named-margin functionality.
|
||
The old function names are retained as aliases for
|
||
back-compatibility.
|
||
|
||
* Functions rbinom(), rgeom(), rhyper(), rpois(), rnbinom(),
|
||
rsignrank() and rwilcox() which have returned integer since R
|
||
3.0.0 and hence NA when the numbers would have been outside the
|
||
integer range, now return double vectors (without NAs, typically)
|
||
in these cases.
|
||
|
||
* matplot(x,y) (and hence matlines() and matpoints()) now call the
|
||
corresponding methods of plot() and lines(), e.g, when x is a
|
||
"Date" or "POSIXct" object; prompted by Spencer Graves'
|
||
suggestion.
|
||
|
||
* stopifnot() now allows customizing error messages via argument
|
||
names, thanks to a patch proposal by Neal Fultz in PR#17688.
|
||
|
||
* unlink() gains a new argument expand to disable wildcard and
|
||
tilde expansion. Elements of x of value "~" are now ignored.
|
||
|
||
* mle() in the stats4 package has had its interface extended so
|
||
that arguments to the negative log-likelihood function can be one
|
||
or more vectors, with similar conventions applying to bounds,
|
||
start values, and parameter values to be kept fixed. This
|
||
required a minor extension to class "mle", so saved objects from
|
||
earlier versions may need to be recomputed.
|
||
|
||
* The default for pdf() is now useDingbats = FALSE.
|
||
|
||
* The default fill colour for hist() and boxplot() is now col =
|
||
"lightgray".
|
||
|
||
* The default order of the levels on the y-axis for spineplot() and
|
||
cdplot() has been reversed.
|
||
|
||
* If the R_ALWAYS_INSTALL_TESTS environment variable is set to a
|
||
true value, R CMD INSTALL behaves as if the --install-tests
|
||
option is always specified. Thanks to Reinhold Koch for the
|
||
suggestion.
|
||
|
||
* New function R_user_dir() in package tools suggests paths
|
||
appropriate for storing R-related user-specific data,
|
||
configuration and cache files.
|
||
|
||
* capabilities() gains a new logical option Xchk to avoid warnings
|
||
about X11-related capabilities.
|
||
|
||
* The internal implementation of grid units has changed, but the
|
||
only visible effects at user-level should be
|
||
|
||
* a slightly different print format for some units (especially
|
||
unit arithmetic),
|
||
|
||
* faster performance (for unit operations) and
|
||
|
||
* two new functions unitType() and unit.psum().
|
||
|
||
Based on code contributed by Thomas Lin Pedersen.
|
||
|
||
* When internal dispatch for rep.int() and rep_len() fails, there
|
||
is an attempt to dispatch on the equivalent call to rep().
|
||
|
||
* Object .Machine now contains new longdouble.* entries (when R
|
||
uses long doubles internally).
|
||
|
||
* news() has been enhanced to cover the news on R 3.x and 2.x.
|
||
|
||
* For consistency, N <- NULL; N[[1]] <- val now turns N into a list
|
||
also when val) has length one. This enables dimnames(r1)[[1]] <-
|
||
"R1" for a 1-row matrix r1, fixing PR#17719 reported by Serguei
|
||
Sokol.
|
||
|
||
* deparse(..), dump(..), and dput(x, control = "all") now include
|
||
control option "digits17" which typically ensures 1:1
|
||
invertibility. New option control = "exact" ensures numeric
|
||
exact invertibility via "hexDigits".
|
||
|
||
* When loading data sets via read.table(), data() now uses
|
||
LC_COLLATE=C to ensure locale-independent results for possible
|
||
string-to-factor conversions.
|
||
|
||
* A server socket connection, a new connection type representing a
|
||
listening server socket, is created via serverSocket() and can
|
||
accept multiple socket connections via socketAccept().
|
||
|
||
* New function socketTimeout() changes the connection timeout of a
|
||
socket connection.
|
||
|
||
* The time needed to start a homogeneous PSOCK cluster on localhost
|
||
with many nodes has been significantly reduced (package
|
||
parallel).
|
||
|
||
* 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.
|
||
|
||
* str(x) now shows the length of attributes in some cases for a
|
||
data frame x.
|
||
|
||
* 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.
|
||
|
||
* 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.
|
||
|
||
* New classes argument for suppressWarnings() and
|
||
suppressMessages() to selectively suppress only warnings or
|
||
messages that inherit from particular classes. Based on patch
|
||
from Lionel Henry submitted with PR#17619.
|
||
|
||
* New function activeBindingFunction() retrieves the function of an
|
||
active binding.
|
||
|
||
* New "cairoFT" and "pango" components in the output of
|
||
grSoftVersion().
|
||
|
||
* New argument symbolfamily in cairo-based graphics devices and new
|
||
function cairoSymbolFont() that can be used to provide the value
|
||
for that argument.
|
||
|
||
Windows:
|
||
|
||
* Rterm now works also when invoked from MSYS2 terminals. Line
|
||
editing is possible when command winpty is installed.
|
||
|
||
* normalizePath() now resolves symbolic links and normalizes case
|
||
of long names of path elements in case-insensitive folders
|
||
(PR#17165).
|
||
|
||
* md5sum() supports UTF-8 file names with characters that cannot be
|
||
translated to the native encoding (PR#17633).
|
||
|
||
* Rterm gains a new option --workspace to specify the workspace to
|
||
be restored. This allows equals to be part of the name when
|
||
opening _via_ Windows file associations (reported by Christian
|
||
Asseburg).
|
||
|
||
* Rterm now accepts ALT+xxx sequences also with NumLock on. Tilde
|
||
can be pasted with an Italian keyboard (PR#17679).
|
||
|
||
* R falls back to copying when junction creation fails during
|
||
package checking (patch from Duncan Murdoch).
|
||
|
||
DEPRECATED AND DEFUNCT:
|
||
|
||
* Make macro F77_VISIBILITY has been removed and replaced by
|
||
F_VISIBILITY.
|
||
|
||
* Make macros F77, FCPIFCPLAGS and SHLIB_OPENMP_FCFLAGS have been
|
||
removed and replaced by FC, FPICFLAGS and SHLIB_OPENMP_FFLAGS
|
||
respectively. (Most make programs will set F77 to the value of
|
||
FC, which is set for package compilation. But portable code
|
||
should not rely on this.)
|
||
|
||
* The deprecated support for specifying C++98 for package
|
||
installation has been removed.
|
||
|
||
* R CMD config no longer knows about the unused settings F77 and
|
||
FCPIFCPLAGS, nor CXX98 and similar.
|
||
|
||
* Either PCRE2 or PCRE1 >= 8.32 (Nov 2012) is required: the
|
||
deprecated provision for 8.20-8.31 has been removed.
|
||
|
||
* Defunct functions mem.limits(), .readRDS(),
|
||
.saveRDS(),..find.package(), and .path.package() from package
|
||
base and allGenerics(), getAccess(), getAllMethods(),
|
||
getClassName(), getClassPackage(), getExtends(), getProperties(),
|
||
getPrototype(), getSubclasses(), getVirtual(), mlistMetaName(),
|
||
removeMethodsObject(), seemsS4Object(), traceOff(), and traceOn()
|
||
from methods have been removed.
|
||
|
||
C-LEVEL FACILITIES:
|
||
|
||
* installChar is now remapped in Rinternals.h to installTrChar, of
|
||
which it has been a wrapper since R 3.6.0. Neither are part of
|
||
the API, but packages using installChar can replace it if they
|
||
depend on R >= 3.6.2.
|
||
|
||
* Header R_ext/Print.h defines R_USE_C99_IN_CXX and hence exposes
|
||
Rvprintf and REvprintf if used with a C++11 (or later) compiler.
|
||
|
||
* There are new Fortran subroutines dblepr1, realpr1 and intpr1 to
|
||
print a scalar variable (gfortran 10 enforces the distinction
|
||
between scalars and length-one arrays). Also labelpr to print
|
||
just a label.
|
||
|
||
* R_withCallingErrorHandler is now available for establishing a
|
||
calling handler in C code for conditions inheriting from class
|
||
error.
|
||
|
||
INSTALLATION on a UNIX-ALIKE:
|
||
|
||
* User-set DEFS (e.g., in config.site) is now used for compiling
|
||
packages (including base packages).
|
||
|
||
* There is a new variant option --enable-lto=check for checking
|
||
consistency of BLAS/LAPACK/LINPACK calls - see 'Writing R
|
||
Extensions'.
|
||
|
||
* A C++ compiler default is set only if the C++11 standard is
|
||
supported: it no longer falls back to C++98.
|
||
|
||
* PCRE2 is used if available. To make use of PCRE1 if PCRE2 is
|
||
unavailable, configure with option --with-pcre1.
|
||
|
||
* The minimum required version of libcurl is now 7.28.0 (Oct 2012).
|
||
|
||
* New make target distcheck checks
|
||
|
||
* R can be rebuilt from the tarball created by make dist,
|
||
|
||
* the build from the tarball passes make check-all,
|
||
|
||
* the build installs and uninstalls,
|
||
|
||
* the source files are properly cleaned by make distclean.
|
||
|
||
UTILITIES:
|
||
|
||
* R --help now mentions the option --no-echo (renamed from --slave)
|
||
and its previously undocumented short form -s.
|
||
|
||
* R CMD check now optionally checks configure and cleanup scripts
|
||
for non-Bourne-shell code ('bashisms').
|
||
|
||
* R CMD check --as-cran now runs \donttest examples (which are run
|
||
by example()) instead of instructing the tester to do so. This
|
||
can be temporarily circumvented during development by setting
|
||
environment variable _R_CHECK_DONTTEST_EXAMPLES_ to a false
|
||
value.
|
||
|
||
PACKAGE INSTALLATION:
|
||
|
||
* There is the beginnings of support for the recently approved
|
||
C++20 standard, specified analogously to C++14 and C++17. There
|
||
is currently only limited support for this in compilers, with
|
||
flags such as -std=c++20 and -std=c++2a. For the time being the
|
||
configure test is of accepting one of these flags and compiling
|
||
C++17 code.
|
||
|
||
BUG FIXES:
|
||
|
||
* formula(x) with length(x) > 1 character vectors, is deprecated
|
||
now. Such use has been rare, and has 'worked' as expected in
|
||
some cases only. In other cases, wrong x have silently been
|
||
truncated, not detecting previous errors.
|
||
|
||
* Long-standing issue where the X11 device could lose events
|
||
shortly after startup has been addressed (PR#16702).
|
||
|
||
* The data.frame method for rbind() no longer drops <NA> levels
|
||
from factor columns by default (PR#17562).
|
||
|
||
* available.packages() and hence install.packages() now pass their
|
||
... argument to download.file(), fulfilling the wish of PR#17532;
|
||
subsequently, available.packages() gets new argument quiet,
|
||
solving PR#17573.
|
||
|
||
* stopifnot() gets new argument exprObject to allow an R object of
|
||
class expression (or other 'language') to work more consistently,
|
||
thanks to suggestions by Suharto Anggono.
|
||
|
||
* conformMethod() now works correctly in cases containing a "&&
|
||
logic" bug, reported by Henrik Bengtsson. It now creates methods
|
||
with "missing" entries in the signature. Consequently,
|
||
rematchDefinition() is amended to use appropriate .local() calls
|
||
with named arguments where needed.
|
||
|
||
* format.default(*, scientific = FALSE) now corresponds to a
|
||
practically most extreme options(scipen = n) setting rather than
|
||
arbitrary n = 100.
|
||
|
||
* format(as.symbol("foo")) now works (returning "foo").
|
||
|
||
* postscript(.., title = *) now signals an error when the title
|
||
string contains a character which would produce corrupt
|
||
PostScript, thanks to PR#17607 by Daisuko Ogawa.
|
||
|
||
* Certain Ops (notably comparison such as ==) now also work for
|
||
0-length data frames, after reports by Hilmar Berger.
|
||
|
||
* methods(class = class(glm(..))) now warns more usefully and only
|
||
once.
|
||
|
||
* write.dcf() no longer mangles field names (PR#17589).
|
||
|
||
* Primitive replacement functions no longer mutate a referenced
|
||
first argument when used outside of a complex assignment context.
|
||
|
||
* A better error message for contour(*, levels = Inf).
|
||
|
||
* The return value of contourLines() is no longer invisible().
|
||
|
||
* The Fortran code for calculating the coefficients component in
|
||
lm.influence() was very inefficient. It has (for now) been
|
||
replaced with much faster R code (PR#17624).
|
||
|
||
* cm.colors(n) _etc_ no longer append the code for alpha = 1, "FF",
|
||
to all colors. Hence all eight *.colors() functions and
|
||
rainbow() behave consistently and have the same non-explicit
|
||
default (PR#17659).
|
||
|
||
* dnorm had a problematic corner case with sd == -Inf or negative
|
||
sd which was not flagged as an error in all cases. Thanks to
|
||
Stephen D. Weigand for reporting and Wang Jiefei for analyzing
|
||
this; similar change has been made in dlnorm().
|
||
|
||
* The optional iter.smooth argument of plot.lm(), (the plot()
|
||
method for lm and glm fits) now defaults to 0 for all glm fits.
|
||
Especially for binary observations with high or low fitted
|
||
probabilities, this effectively deleted all observations of 1 or
|
||
0. Also, the type of residuals used in the glm case has been
|
||
switched to "pearson" since deviance residuals do not in general
|
||
have approximately zero mean.
|
||
|
||
* In plot.lm, Cook's distance was computed from unweighted
|
||
residuals, leading to inconsistencies. Replaced with usual
|
||
weighted version. (PR#16056)
|
||
|
||
* Time-series ts(*, start, end, frequency) with fractional
|
||
frequency are supported more consistently; thanks to a report
|
||
from Johann Kleinbub and analysis and patch by Duncan Murdoch in
|
||
PR#17669.
|
||
|
||
* In case of errors mcmapply() now preserves attributes of returned
|
||
"try-error" objects and avoids simplification, overriding
|
||
SIMPLIFY to FALSE. (PR#17653)
|
||
|
||
* as.difftime() gets new optional tz = "UTC" argument which should
|
||
fix behaviour during daylight-savings-changeover days, fixing
|
||
PR#16764, thanks to proposals and analysis by Johannes Ranke and
|
||
Kirill M"uller.
|
||
|
||
* round() does a better job of rounding _"to nearest"_ by
|
||
_measuring_ and _"to even"_; thanks to a careful algorithm
|
||
originally prompted by the report from Adam Wheeler and then
|
||
others, in PR#17668.
|
||
round(x, dig) for _negative_ digits is much more rational now,
|
||
notably for large |dig|.
|
||
|
||
* Inheritance information on S4 classes is maintained more
|
||
consistently, particularly in the case of class unions (in part
|
||
due to PR#17596 and a report from Ezra Tucker).
|
||
|
||
* is() behaves more robustly when its argument class2 is a
|
||
classRepresentation object.
|
||
|
||
* The warning message when attempting to export an nonexistent
|
||
class is now more readable; thanks to Thierry Onkelinx for
|
||
recognizing the problem.
|
||
|
||
* choose() misbehaved in corner cases where it switched n - k for k
|
||
and n was only _nearly_ integer (report from Erik Scott Wright).
|
||
|
||
* mle() in the stats4 package had problems combining use of box
|
||
constraints and fixed starting values (in particular, confidence
|
||
intervals were affected).
|
||
|
||
* Operator ? now has lower precedence than = to work as documented,
|
||
so = behaves like <- in help expressions (PR#16710).
|
||
|
||
* smoothEnds(x) now returns integer type in _both_ cases when x is
|
||
integer, thanks to a report and proposal by Bill Dunlap PR#17693.
|
||
|
||
* The methods package does a better job of tracking inheritance
|
||
relationships across packages.
|
||
|
||
* norm(diag(c(1, NA)), "2") now works.
|
||
|
||
* subset() had problems with 0-col dataframes (reported by Bill
|
||
Dunlap, PR#17721).
|
||
|
||
* Several cases of integer overflow detected by the 'undefined
|
||
behaviour sanitizer' of clang 10 have been circumvented. One in
|
||
rhyper() may change the generated value for large input values.
|
||
|
||
* dotchart() now places the y-axis label (ylab) much better, not
|
||
overplotting labels, thanks to a report and suggestion by Alexey
|
||
Shipunov.
|
||
|
||
* A rare C-level array overflow in chull() has been worked around.
|
||
|
||
* Some invalid specifications of the day-of-the-year (_via_ %j,
|
||
e.g. day 366 in 2017) or week plus day-of-the-week are now
|
||
detected by strptime(). They now return NA but give a warning as
|
||
they may have given random results or corrupted memory in earlier
|
||
versions of R.
|
||
|
||
* socketConnection(server = FALSE) now respects the connection
|
||
timeout also on Linux.
|
||
|
||
* socketConnection(server = FALSE) no longer leaks a connection
|
||
that is available right away without waiting (e.g. on localhost).
|
||
|
||
* Socket connections are now robust against spurious readability
|
||
and spurious availability of an incoming connection.
|
||
|
||
* blocking = FALSE is now respected also on the server side of a
|
||
socket connection, allowing non-blocking read operations.
|
||
|
||
* anova.glm() and anova.glmlist() computed incorrect score (Rao)
|
||
tests in no-intercept cases. (Andr'e Gillibert, PR#17734)
|
||
|
||
* 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.
|
||
|
||
* data(package = "P") for P in base and stats no longer reports the
|
||
data sets from package datasets (which it did for back
|
||
compatibility for 16 years), fixing PR#17730.
|
||
|
||
* x[[Inf]] (returning NULL) no longer leads to undefined behavior,
|
||
thanks to a report by Kirill M"uller in PR#17756. Further,
|
||
x[[-Inf]] and x[[-n]] now give more helpful error messages.
|
||
|
||
* Gamma() family sometimes had trouble storing link name PR#15891
|
||
|
||
BUG FIXES (Windows):
|
||
|
||
* Sys.glob() now supports all characters from the Unicode Basic
|
||
Multilingual Plane, no longer corrupting some (less commonly
|
||
used) characters (PR#17638).
|
||
|
||
* Rterm now correctly displays multi-byte-coded characters
|
||
representable in the current native encoding (at least on Windows
|
||
10 they were sometimes omitted, PR#17632).
|
||
|
||
* scan() issues with UTF-8 data when running in a DBCS locale have
|
||
been resolved (PR#16520, PR#16584).
|
||
|
||
* RTerm now accepts enhanced/arrow keys also with ConPTY.
|
||
|
||
* R can can now be started _via_ the launcher icon in a user
|
||
documents directory whose path is not representable in the system
|
||
encoding.
|
||
|
||
* socketConnection(server = FALSE) now returns instantly also on
|
||
Windows when connection failure is signalled.
|
||
|
||
* Problems with UTF-16 surrogate pairs have been fixed in several
|
||
functions, including tolower() and toupper() (PR#17645).
|
||
|
||
-------------------------------------------------------------------
|
||
Sat Feb 29 18:08:15 UTC 2020 - Detlef Steuer <detlef.steuer@gmx.de>
|
||
|
||
- CHANGES IN R 3.6.3:
|
||
|
||
NEW FEATURES:
|
||
|
||
* The included LAPACK has been updated to version 3.9.0 (for the
|
||
included routines, just bug fixes).
|
||
|
||
BUG FIXES:
|
||
|
||
* Fixed a C level integer overflow in rhyper(); reported by
|
||
Benjamin Tyner in PR#17694.
|
||
|
||
* Uses of url(gzcon(.)) needing to extend buffer size have failed
|
||
(with HTTP/2 servers), reported by G'abor Cs'ardi.
|
||
|
||
* predict(loess(..), se=TRUE) now errors out (instead of
|
||
seg.faulting etc) for large sample sizes, thanks to a report and
|
||
patch by Benjamin Tyner in PR#17121.
|
||
|
||
* tools:assertCondition(., "error") and hence assertError() no
|
||
longer return errors twice (invisibly).
|
||
|
||
* update(form, new) in the case of a long new formula sometimes
|
||
wrongly eliminated the intercept from form, or (more rarely)
|
||
added a garbage term (or seg.faulted !); the fix happened by
|
||
simplifying the C-level logic of terms.formula(). Reported by
|
||
Mathias Amb"uhl in PR#16326.
|
||
|
||
* The error message from stopifnot(.., <error producing call>)
|
||
again contains the full "stopifnot(.......)" call: Its attempted
|
||
suppression did not work consistently.
|
||
|
||
* On Windows, download.file(., , "wininet", headers=character())
|
||
would fail; reported with patch proposal by Kevin Ushey in
|
||
PR#17710.
|
||
|
||
-------------------------------------------------------------------
|
||
Mon Jan 20 18:30:04 UTC 2020 - Dan Čermák <dcermak@suse.com>
|
||
|
||
- Don't mark %{_libdir}/R/doc as %doc:
|
||
This causes issues for rstudio, which requires the directory %{_libdir}/R/doc
|
||
to exist, but the directory is not present if libzypp is configured to omit
|
||
documentation.
|
||
|
||
-------------------------------------------------------------------
|
||
Thu Dec 12 11:37:25 UTC 2019 - Detlef Steuer <detlef.steuer@gmx.de>
|
||
|
||
- CHANGES IN R 3.6.2:
|
||
|
||
NEW FEATURES:
|
||
|
||
* runmed(x, *) gains a new option na.action determining _how_ to
|
||
handle NaN or NA in x.
|
||
|
||
* dotchart() gains new options ann, xaxt, frame.plot and log.
|
||
|
||
INSTALLATION on a UNIX-ALIKE:
|
||
|
||
* Detection of the C stack direction has been moved from run-time
|
||
to configure: this is safer with LTO builds and allows the
|
||
detection to be overridden - see file config.site.
|
||
|
||
* Source-code changes enable installation on platforms using gcc
|
||
-fno-common (the expected default for gcc 10.x).
|
||
|
||
C-LEVEL FACILITIES:
|
||
|
||
* installTrChar (which is nowadays is wrapped by installChar) is
|
||
defined in Rinternals.h. (Neither are part of the API.)
|
||
|
||
PACKAGE INSTALLATION:
|
||
|
||
* Header Rconfig.h contains the value of FC_LEN_T deduced at
|
||
installation which is used by the prototypes in headers
|
||
R_ext/BLAS.h and R_ext/Lapack.h but to avoid extensive breakage
|
||
this is only exposed when USE_FC_LEN_T is defined.
|
||
|
||
If a package's C/C++ calls to BLAS/LAPACK allow for the 'hidden'
|
||
arguments used by most Fortran compilers to pass the lengths of
|
||
Fortran character arguments, define USE_FC_LEN_T and include
|
||
Rconfig.h (possibly _via_ R.h) before including R_ext/BLAS.h or
|
||
R_ext/Lapack.h.
|
||
|
||
* A package with Fortran source code and perhaps C (but not C++)
|
||
sources can request for its shared object/DLL to be linked by the
|
||
Fortran compiler by including a line USE_FC_TO_LINK= in
|
||
src/Makevars[.win] and using $(SHLIB_OPENMP_FFLAGS) as part of
|
||
PKG_LIBS.
|
||
|
||
The known reason for doing so is a package which uses Fortran
|
||
(only) OpenMP on a platform where the Fortran OpenMP runtime is
|
||
incompatible with the C one (e.g. gfortran 9.x with clang).
|
||
|
||
UTILITIES:
|
||
|
||
* R CMD check has a new option to mitigate checks leaving
|
||
files/directories in /tmp. See the 'R Internals' manual - this
|
||
is part of --as-cran.
|
||
|
||
Windows:
|
||
|
||
* The default standard for C++ in package installation is C++11 (as
|
||
it has been on other platforms where available since R 3.6.0: the
|
||
default toolchain on Windows was defaulting to C++98).
|
||
|
||
DEPRECATED AND DEFUNCT:
|
||
|
||
* Support for specifying C++98 in package installation is
|
||
deprecated.
|
||
|
||
* Support in R CMD config for F77, FCPIFCPLAGS, CPP, CXXCPP and
|
||
CXX98 and similar is deprecated. (CPP is found from the system
|
||
make and may well not be set.)
|
||
|
||
Use $CC -E and $CXX -E instead of CPP and CXXCPP.
|
||
|
||
BUG FIXES:
|
||
|
||
* runmed(x, *) when x contains missing values now works
|
||
consistently for both algorithm="Stuetzle" and "Turlach", and no
|
||
longer segfaults for "Turlach", as reported by Hilmar Berger.
|
||
|
||
* apply(diag(3), 2:3, mean) now gives a helpful error message.
|
||
|
||
* dgamma(x, shape, log=TRUE) now longer overflows to Inf for shape
|
||
< 1 and very small x, fixing PR#17577, reported by Jonathan
|
||
Rougier.
|
||
|
||
* Buffer overflow in building error messages fixed. Reported by
|
||
Benjamin Tremblay.
|
||
|
||
* options(str = .) is correctly initialized at package utils load
|
||
time, now. A consequence is that str() in scripts now is more
|
||
consistent to interactive use, e.g., when displaying function(**)
|
||
argument lists.
|
||
|
||
* as.numeric(<call>) now gives correct error message.
|
||
|
||
* Printing ls.str() no longer wrongly shows "<missing>" in rare
|
||
cases.
|
||
|
||
* Auto-printing S4 objects no longer duplicates the object, for
|
||
faster speed and reduced memory consumption. Reported by Aaron
|
||
Lun.
|
||
|
||
* pchisq(<LRG>, <LRG>, ncp=100) no longer takes practically forever
|
||
in some cases. Hence ditto for corresponding qchisq() calls.
|
||
|
||
* x %% L for finite x no longer returns NaN when L is infinite, nor
|
||
suffers from cancellation for large finite L, thanks to Long Qu's
|
||
PR#17611.
|
||
|
||
Analogously, x %/% L and L %/% x suffer less from cancellation
|
||
and return values corresponding to limits for large L.
|
||
|
||
|
||
* grepl(NA, *) now returns logical as documented.
|
||
|
||
* options(warn=1e11) is an error now, instead of later leading to C
|
||
stack overflow because of infinite recursion.
|
||
|
||
* R_tryCatch no longer transfers control for all conditions.
|
||
Reported and patch provided by Lionel Henry in PR#17617.
|
||
|
||
* format(object.size(.), digits=NULL) now works, fixing PR#17628
|
||
reported by Jonathan Carroll.
|
||
|
||
* get_all_vars(f, d) now also works for cases, e.g. where d
|
||
contains a matrix. Reported by Simon Wood in 2009 and patch
|
||
provided by Ben Bolker in PR#13624.
|
||
|
||
Additionally, it now also works when some variables are data
|
||
frames, fixing PR#14905, reported by Patrick Breheny.
|
||
|
||
* barplot() could get spacings wrong if there were exactly two bars
|
||
PR#15522. Patch by Michael Chirico.
|
||
|
||
* power.t.test() works in more cases when returning values of n
|
||
smaller than 2.
|
||
|
||
* dotchart(*, pch=., groups=.) now works better. Reported by
|
||
Robert and confirmed by Nic Rochette in PR#16953.
|
||
|
||
* canCoerce(obj, cl) no longer assumes length(class(obj)) == 1.
|
||
|
||
* plot.formula(*, subset = *) now also works in a boundary case
|
||
reported by Robert Schlicht (TU Dresden).
|
||
|
||
* readBin() and writeBin() of a rawConnection() now also work in
|
||
large cases, thanks to a report and proposal by Taeke Harkema in
|
||
PR#17665.
|
||
|
||
-------------------------------------------------------------------
|
||
Thu Oct 17 12:34:46 UTC 2019 - Richard Brown <rbrown@suse.com>
|
||
|
||
- Remove obsolete Groups tag (fate#326485)
|
||
|
||
-------------------------------------------------------------------
|
||
Fri Aug 30 10:24:32 UTC 2019 - John Vandenberg <jayvdb@gmail.com>
|
||
|
||
- Use %license
|
||
|
||
-------------------------------------------------------------------
|
||
Sun Aug 11 06:08:45 UTC 2019 - John Vandenberg <jayvdb@gmail.com>
|
||
|
||
- Fix Summary of R-core and R-core-devel
|
||
|
||
-------------------------------------------------------------------
|
||
Fri Jul 5 07:41:49 UTC 2019 - Detlef Steuer <detlef.steuer@gmx.de>
|
||
|
||
- CHANGES IN R 3.6.1:
|
||
|
||
INSTALLATION on a UNIX-ALIKE:
|
||
|
||
* The default detection of the shell variable libNN is overridden
|
||
for derivatives of Debian Linux, some of which have started to
|
||
have a /usr/lib64 directory. (E.g. Ubuntu 19.04.) As before, it
|
||
can be specified in config.site.
|
||
|
||
UTILITIES:
|
||
|
||
* R CMD config knows the values of AR and RANLIB, often set for LTO
|
||
builds.
|
||
|
||
DEPRECATED AND DEFUNCT:
|
||
|
||
* The use of a character vector with .Fortran() is formally
|
||
deprecated and gives a non-portability warning. (It has long
|
||
been strongly discouraged in 'Writing R Extensions'.)
|
||
|
||
BUG FIXES:
|
||
|
||
* On Windows, GUI package installation via menuInstallPkgs() works
|
||
again, thanks to Len Weil's and Duncan Murdoch's PR#17556.
|
||
|
||
* R CMD check on data() fixing PR#17558 thanks to Duncan Murdoch.
|
||
|
||
* quasi(*, variance = list(..)) now works more efficiently, and
|
||
should work in all cases fixing PR#17560. Further, quasi(var =
|
||
mu(1-mu)) and quasi(var = "mu ^ 3") now work, and quasi(variance
|
||
= "log(mu)") now gives a correct error message.
|
||
|
||
* Creation of lazy loading database during package installation is
|
||
again robust to Rprofile changing the current working directory
|
||
(PR#17559).
|
||
|
||
* boxplot(y ~ f, horizontal=TRUE) now produces correct x- and
|
||
y-labels.
|
||
|
||
* rbind.data.frame() allows to keep <NA> levels from factor columns
|
||
(PR#17562) via new option factor.exclude.
|
||
|
||
Additionally, it works in one more case with matrix-columns which
|
||
had been reported on 2017-01-16 by Krzysztof Banas.
|
||
|
||
* Correct messaging in C++ pragma checks in tools code for R CMD
|
||
check, fixing PR#17566 thanks to Xavier Robin.
|
||
|
||
* print()ing and auto-printing no longer differs for functions with
|
||
a user defined print.function, thanks to Bill Dunlap's report.
|
||
|
||
* On Windows, writeClipboard(.., format = <n>) now does correctly
|
||
pass format to the underlying C code, thanks to a bug report
|
||
(with patch) by Jenny Bryan.
|
||
|
||
* as.data.frame() treats 1D arrays the same as vectors, PR#17570.
|
||
|
||
* Improvements in smoothEnds(x, *) working with NAs (towards
|
||
runmed() working in that case, in the next version of R).
|
||
* vcov(glm(<quasi>), dispersion = *) works correctly again, fixing
|
||
PR#17571 thanks to Pavel Krivitsky.
|
||
|
||
* R CMD INSTALL of binary packages on Windows now works also with
|
||
per-directory locking.
|
||
|
||
* R CMD INSTALL and install.packages() on Windows are now more
|
||
robust against a locked file in an earlier installation of the
|
||
package to be installed. The default value of option
|
||
install.lock on Windows has been changed to TRUE.
|
||
|
||
* On Unix alikes (when readline is active), only expand tilde (~)
|
||
file names starting with a tilde, instead of almost all tildes.
|
||
|
||
* In R documentation (*.Rd) files, \item [..] is no longer treated
|
||
specially when rendered in LaTeX and hence pdf, but rather shows
|
||
the brackets in all cases.
|
||
|
||
|
||
-------------------------------------------------------------------
|
||
Fri Apr 26 09:17:02 UTC 2019 - Detlef Steuer <detlef.steuer@gmx.de>
|
||
|
||
- CHANGES IN R 3.6.0:
|
||
|
||
SIGNIFICANT USER-VISIBLE CHANGES:
|
||
|
||
* Serialization format version 3 becomes the default for
|
||
serialization and saving of the workspace (save(), serialize(),
|
||
saveRDS(), compiler::cmpfile()). Serialized data in format 3
|
||
cannot be read by versions of R prior to version 3.5.0.
|
||
Serialization format version 2 is still supported and can be
|
||
selected by version = 2 in the save/serialization functions. The
|
||
default can be changed back for the whole R session by setting
|
||
environment variables R_DEFAULT_SAVE_VERSION and
|
||
R_DEFAULT_SERIALIZE_VERSION to 2. For maximal
|
||
back-compatibility, files vignette.rds and partial.rdb generated
|
||
by R CMD build are in serialization format version 2, and resave
|
||
by default produces files in serialization format version 2
|
||
(unless the original is already in format version 3).
|
||
|
||
* The default method for generating from a discrete uniform
|
||
distribution (used in sample(), for instance) has been changed.
|
||
This addresses the fact, pointed out by Ottoboni and Stark, that
|
||
the previous method made sample() noticeably non-uniform on large
|
||
populations. See PR#17494 for a discussion. The previous method
|
||
can be requested using RNGkind() or RNGversion() if necessary for
|
||
reproduction of old results. Thanks to Duncan Murdoch for
|
||
contributing the patch and Gabe Becker for further assistance.
|
||
|
||
The output of RNGkind() has been changed to also return the
|
||
'kind' used by sample().
|
||
|
||
NEW FEATURES:
|
||
|
||
* Sys.setFileTime() has been vectorized so arguments path and time
|
||
of length greater than one are now supported.
|
||
|
||
* axis() gets new option gap.axis = NA for specifying a
|
||
multiplication factor for the minimal "gap" (distance) between
|
||
axis labels drawn. Its default is 1 for labels _parallel_ to the
|
||
axis, and 0.25 for perpendicular ones.
|
||
|
||
Perpendicular labels no longer overlap, fixing bug PR#17384.
|
||
|
||
* The default method of plot() gains new arguments xgap.axis = NA
|
||
and ygap.axis = NA to be passed to the x- and y- axis(..,
|
||
gap.axis=*) calls.
|
||
|
||
* removeSource() now works not only for functions but also for some
|
||
language objects.
|
||
|
||
* as.call(), rep.int(), rep_len() and nchar() dispatch internally.
|
||
|
||
* is(object, class2) looks for class2 in the calling namespace
|
||
after looking in the namespace of class(object).
|
||
* extendrange(.., f) with a length-2 f now extends separately to
|
||
the left and the right.
|
||
|
||
* lengths() dispatches internally to S4 methods.
|
||
|
||
* download.file() on Windows now uses URLdecode() to determine the
|
||
file extension, and uses binary transfer (mode = "wb") also for
|
||
file extension .rds.
|
||
|
||
The help page for download.file() now contains the same
|
||
information on all platforms.
|
||
|
||
* Setting C locale for collation _via_ environment variables LC_ALL
|
||
and LC_COLLATE and _via_ a call to Sys.setlocale() now takes
|
||
precedence over environment variable R_ICU_LOCALE.
|
||
|
||
* There is a new function, nullfile(), to give the file name of the
|
||
null system device (e.g., /dev/null) on the current platform.
|
||
|
||
* There are two new options, keep.parse.data and
|
||
keep.parse.data.pkgs, which control whether parse data are
|
||
included into sources when keep.source or keep.source.pkgs is
|
||
TRUE. By default, keep.parse.data.pkgs is now FALSE, which
|
||
changes previous behavior and significantly reduces space and
|
||
time overhead when sources are kept when installing packages.
|
||
|
||
* In rapply(x, ..), x can also be "list-like" and of length >=
|
||
2^{31}.
|
||
|
||
* trimws() gets new optional whitespace argument, allowing more
|
||
extensive definitions of "space", such as including Unicode
|
||
spaces (as wished in PR#17431).
|
||
|
||
* weighted.mean() no longer coerces the weights to a double/numeric
|
||
vector, since sum() now handles integer overflow. This makes
|
||
weighted.mean() more polymorphic and endomorphic, but be aware
|
||
that the results are no longer guaranteed to be a vector of type
|
||
double.
|
||
|
||
* When loading namespaces, S3 method registrations which overwrite
|
||
previous registrations are now noted by default (using
|
||
packageStartupMessage()).
|
||
|
||
* compiler::cmpfile() gains a version argument, for use when the
|
||
output file should be saved in serialization format 2.
|
||
|
||
* The axis labeling in the default method of pairs() may now be
|
||
toggled by new options horOdd and verOdd.
|
||
|
||
* (Not Windows nor macOS.) Package tcltk now supports an
|
||
environment variable R_DONT_USE_TK which if set disables Tk
|
||
initialization. This is intended for use to circumvent errors in
|
||
loading the package, e.g. with recent Linux running under an
|
||
address sanitizer.
|
||
|
||
|
||
* The numeric method of all.equal() gets optional arguments countEQ
|
||
and formatFUN. If countEQ is true, the mean error is more
|
||
sensible when many entries are *eq*ual.
|
||
|
||
* outer(x,y, FUN = "*") is more efficient using tcrossprod(u,v)
|
||
instead of u %*% t(v).
|
||
|
||
* vcov(<mlm>) is more efficient via new optional arguments in
|
||
summary.mlm().
|
||
|
||
* The default method of summary() gets an option to choose the
|
||
_kind_ of quantile()s to use; wish of PR#17438.
|
||
|
||
* Fitting multiple linear models _via_ lm() does work with _matrix_
|
||
offsets, as suggested in PR#17407.
|
||
|
||
* The new functions mem.maxVSize() and mem.maxMSize() allow the
|
||
maximal size of the vector heap and the maximal number of nodes
|
||
allowed in the current R process to be queried and set.
|
||
|
||
* news() gains support for NEWS.md files.
|
||
|
||
* An effort has been started to have our reference manuals, i.e.,
|
||
all help pages. show platform-independent information (rather
|
||
than Windows or Unix-alike specifics visible only on that
|
||
platform). Consequently, the Windows version of X11() / x11()
|
||
got identical formal arguments to the Unix one.
|
||
|
||
* sessionInfo()$running has been factored out in a new variable
|
||
osVersion.
|
||
|
||
* slice.index() now also works for multi-dimensional margins.
|
||
|
||
* untar() used with an external tar command assumes this supports
|
||
decompression including xz and automagically detecting the
|
||
compression type. This has been true of all mainstream
|
||
implementations since 2009 (for GNU tar, since version 1.22):
|
||
older implementations are still supported _via_ the new argument
|
||
support_old_tars whose default is controlled by environment
|
||
variable R_SUPPORT_OLD_TARS. (It looks like NetBSD and OpenBSD
|
||
have 'older' tar commands for this purpose.)
|
||
|
||
* The new function asplit() allow splitting an array or matrix by
|
||
its margins.
|
||
|
||
* New functions errorCondition() and warningCondition() provide a
|
||
convenient way to create structured error and warning objects.
|
||
|
||
.Deprecated() now signals a warning of class "deprecatedWarning",
|
||
and .Defunct() now signals an error of class "defunctError".
|
||
|
||
* Many 'package not found' errors are now signaled as errors of
|
||
class "packageNotFoundError".
|
||
|
||
* As an experimental feature, when loadNamespace() fails because
|
||
the requested package is not available the error is initially
|
||
signaled with a retry_loadNamespace restart available. This
|
||
allows a calling handler to try to install the package and
|
||
continue.
|
||
|
||
* S3method() directives in NAMESPACE can now also be used to
|
||
perform _delayed_ S3 method registration.
|
||
|
||
* Experimentally, setting environment variable
|
||
_R_CHECK_LENGTH_1_LOGIC2_ will lead to warnings (or errors if the
|
||
variable is set to a 'true' value) when && or || encounter and
|
||
use arguments of length more than one.
|
||
|
||
* Added "lines" and "chars" coordinate systems to grconvertX() and
|
||
grconvertY().
|
||
|
||
* getOption() is more efficient notably for the rare case when
|
||
called with two arguments, from several contributors in PR#17394.
|
||
|
||
* In .col(dim) and .row(dim), dim now may also be an integer-valued
|
||
"double".
|
||
|
||
* sQuote() and dQuote() get an explicit q argument with obvious
|
||
default instead of using getOption("fancyQuotes") implicitly and
|
||
unconditionally.
|
||
|
||
* unzip() can list archives with comments and with spaces in file
|
||
names even using an external unzip command.
|
||
|
||
* Command line completion has a new setting rc.settings(dots =
|
||
FALSE) to remove ... from the list of possible function
|
||
arguments.
|
||
|
||
* library() no longer checks packages with compiled code match
|
||
R.version$platform. loadNamespace() never has, and increasingly
|
||
the 'canonical name' does not reflect the important
|
||
characteristics of compiled code.
|
||
|
||
* The primitive functions drop() and unclass() now avoid
|
||
duplicating their data for atomic vectors that are large enough,
|
||
by returning ALTREP wrapper objects with adjusted attributes.
|
||
R-level assignments to change attributes will also use wrapper
|
||
objects to avoid duplicating data for larger atomic vectors. R
|
||
functions like structure() and unname() will therefore not
|
||
duplicate data in these settings. Generic vectors as produced by
|
||
list() are not yet covered by this optimization but may be in due
|
||
course.
|
||
|
||
* In formals(), envir becomes an optional argument instead of being
|
||
hardwired.
|
||
|
||
* Instead of signalling an error for an invalid S4 object x, str(x)
|
||
now gives a warning and subsequently still shows most parts of x,
|
||
e.g., when slots are missing.
|
||
|
||
* gamma(x) and lgamma(x) no longer warn when correctly returning
|
||
Inf or underflowing to zero. This helps maximum likelihood and
|
||
similar computations.
|
||
|
||
* convertColor() is now vectorized, so a lot faster for converting
|
||
many colours at once. The new argument vectorized to
|
||
colorConverter() ensures that non-vectorized colour converters
|
||
still work. (Thanks to Brodie Gaslam.)
|
||
|
||
* download.file() and url() get new argument headers for custom
|
||
HTTP headers, e.g., allowing to perform basic http
|
||
authentication, thanks to a patch contributed by G'abor Cs'ardi.
|
||
|
||
* File-based connection functions file(), gzfile(), bzfile() and
|
||
xzfile() now signal an error when used on a directory.
|
||
|
||
* For approx(), splinefun() _etc_, a new setting ties =
|
||
c("ordered", <fun>) allows skipping the sorting and still treat
|
||
ties.
|
||
|
||
* format(x) gives a more user friendly error message in the case
|
||
where no method is defined. A minimal method is provided in
|
||
format.default(x) when isS4(x) is true.
|
||
|
||
* which(x) now also works when x is a long vector, thanks to
|
||
Suharto Anggono's PR#17201. *NB*: this may return a double
|
||
result, breaking the previous guarantee of an integer result.
|
||
|
||
* seq.default() is more careful to return an integer (as opposed to
|
||
double) result when its arguments are large and/or classed
|
||
objects; see comment #9 of Suharto Anggono's PR#17497.
|
||
|
||
* The plot() method for lm and glm fits, plot.lm(), gains a new
|
||
option iter.smooth with a default of 0 for binomial fits, no
|
||
longer down-weighting when smoothing the residuals.
|
||
|
||
* zip() passes its list of files _via_ standard input to the
|
||
external command when too long for the command line (on some
|
||
platforms).
|
||
|
||
* data() gains an overwrite argument.
|
||
|
||
* t.test() now also returns the standard error (in list component
|
||
stderr).
|
||
|
||
* model.matrix(*, contrasts.arg = CC) now warns about invalid
|
||
contrasts.args.
|
||
|
||
* Performance of substr() and substring() has been improved.
|
||
|
||
* stopifnot() has been simplified thanks to Suharto Anggono's
|
||
proposals to become considerably faster for cheap expressions.
|
||
|
||
* The default 'user agent' has been changed when accessing http://
|
||
and https:// sites using libcurl. (A site was found which caused
|
||
libcurl to infinite-loop with the previous default.)
|
||
|
||
* sessionInfo() now also contains RNGkind() and prints it when it
|
||
differs from the default; based on a proposal and patch by Gabe
|
||
Becker in PR#17535. Also, RNGversion(getRversion()) works
|
||
directly.
|
||
|
||
* library() and require() now allow more control over handling
|
||
search path conflicts when packages are attached. The policy is
|
||
controlled by the new conflicts.policy option.
|
||
|
||
* barplot() gets a formula method, thanks to a patch proposal by
|
||
Arni Magnusson in PR#17521.
|
||
|
||
* pmax() and pmin(x) now also work for long vectors, thanks to
|
||
Suharto Anggono's PR#17533.
|
||
|
||
* bxp() now warns when omitting duplicated arguments.
|
||
|
||
* New hcl.colors() function to provide wide range of HCL-based
|
||
colour palettes with much better perceptual properties than the
|
||
existing RGB/HSV-based palettes like rainbow().
|
||
|
||
Also a new hcl.pals() function to list available palette names
|
||
for hcl.colors().
|
||
|
||
Contributed by Achim Zeileis.
|
||
|
||
* The default colours for image() and filled.contour() are now
|
||
based on hcl.colors().
|
||
|
||
* The palette-generating functions rainbow(), gray.colors(), etc.
|
||
get a new rev argument to facilitate reversing the order of
|
||
colors.
|
||
|
||
* New str2lang() and str2expression() as streamlined versions of
|
||
parse(text=., keep.source=FALSE) allow to abstract typical call
|
||
constructions, e.g., in formula manipulations. (Somewhat
|
||
experimental)
|
||
|
||
* Add update_PACKAGES() for incrementally updating a package
|
||
repository index, instead of rebuilding the index from scratch.
|
||
Thanks to Gabe Becker in PR#17544 for the patch, based on part of
|
||
his switchr package.
|
||
INSTALLATION on a UNIX-ALIKE:
|
||
|
||
* The options selected for the C++ compiler default to the C++11
|
||
standard if supported, otherwise to the C++98 standard.
|
||
|
||
* Visibility macros such as C_VISIBILITY can now be user-set
|
||
(including to empty), e.g. in config.site.
|
||
|
||
* Macro FCLIBS, which has sometimes been needed on Solaris, has
|
||
been renamed to FCLIBS_XTRA.
|
||
|
||
* Macro F77 is always set to the value of FC, so the latter should
|
||
be set to user-select the Fortran compiler for both fixed-form
|
||
and free-form Fortran. In particular, gfortran is now the first
|
||
choice for F77, not f95.
|
||
|
||
Macros FFLAGS and FCFLAGS remain distinct to allow for a compiler
|
||
which needs a flag to select free- or fixed-form Fortran (most
|
||
use the source-file extension to choose: .f is fixed-form and
|
||
.f90 and .f95 are free-form).
|
||
|
||
If only one of them is set, its value is used for both.
|
||
|
||
* The special-casing of CFLAGS, CXXFLAGS and FFLAGS for Intel
|
||
compilers on Linux has been removed: we do not have recent
|
||
experience but the generic defaults now chosen are the same as
|
||
those previously special-cased for x86_64.
|
||
|
||
If necessary, override the defaults on the configure command line
|
||
or in file config.site.
|
||
|
||
* Long-untested configure support for HP-UX and very old versions
|
||
of Linux has been removed.
|
||
|
||
* configure --with-blas (without specifying a value) includes
|
||
OpenBLAS in its search (before ATLAS and a generic BLAS). This
|
||
follows recent versions of the ax_blas autoconf macro.
|
||
|
||
* The configure macro MAKEINFO has been updated to TEXI2ANY.
|
||
|
||
* Support for make install-strip has been enhanced.
|
||
|
||
PACKAGE INSTALLATION:
|
||
|
||
* Source package installation is by default 'staged': the package
|
||
is installed into a temporary location under the final library
|
||
directory and moved into place once the installation is complete.
|
||
The benefit is that partially-installed packages are hidden from
|
||
other R sessions.
|
||
|
||
The overall default is set by environment variable
|
||
R_INSTALL_STAGED. R CMD INSTALL has new options --staged-install
|
||
and --no-staged-install, and packages can use the StagedInstall
|
||
field in their DESCRIPTION file to opt out. (That opt-out is a
|
||
temporary measure which may be withdrawn in future.)
|
||
Staged installation requires either --pkglock or --lock, one of
|
||
which is used by default.
|
||
|
||
* The interpretation of source code with extension .f is changing.
|
||
Previously this denoted FORTRAN 77 code, but current compilers no
|
||
longer have a FORTRAN 77 mode and interpret it as 'fixed-form'
|
||
Fortran 90 (or later where supported) code. Extensions .f90 and
|
||
.f95 continue to indicate 'free-form' Fortran code.
|
||
|
||
Legal FORTRAN 77 code is also legal fixed-form Fortran 9x;
|
||
however this change legitimizes the use of later features, in
|
||
particular to replace features marked 'obsolescent' in Fortran 90
|
||
and 'deleted' in Fortran 2018 which gfortran 8.x and later warn
|
||
about.
|
||
|
||
* Packages containing files in the src directory with extensions
|
||
.f90 or .f95 are now linked using the C or C++ compiler rather
|
||
than the Fortran 9x compiler. This is consistent with fixed-form
|
||
Fortran code and allows mixing of C++ and free-form Fortran on
|
||
most platforms.
|
||
|
||
Consequentially, a package which includes free-form Fortran 9x
|
||
code which uses OpenMP should include SHLIB_OPENMP_CFLAGS (or the
|
||
CXXFLAGS version if they also include C++ code) in PKG_LIBS
|
||
rather than SHLIB_OPENMP_FCFLAGS - fortunately on almost all
|
||
current platforms they are the same flag.
|
||
|
||
* Macro PKG_FFLAGS will be used for the compilation of both
|
||
fixed-form and free-form Fortran code unless PKG_FCFLAGS is also
|
||
set (in src/Makevars or src/Makevars.win).
|
||
|
||
* The make macro F_VISIBILITY is now preferred for both fixed-form
|
||
and free-form Fortran, for use in src/Makevars and similar.
|
||
|
||
* R CMD INSTALL gains a new option --strip which (where supported)
|
||
strips installed shared object(s): this can also be achieved by
|
||
setting the environment variable _R_SHLIB_STRIP_ to a true value.
|
||
|
||
The new option --strip-lib attempts stripping of static and
|
||
shared libraries installed under lib.
|
||
|
||
These are most useful on platforms using GNU binutils (such as
|
||
Linux) and compiling with -g flags.
|
||
|
||
* There is more support for installing UTF-8-encoded packages in a
|
||
strict Latin-1 locale (and probably for other Latin locales):
|
||
non-ASCII comments in R code (and NAMESPACE files) are worked
|
||
around better.
|
||
UTILITIES:
|
||
|
||
* R CMD check now optionally checks makefiles for correct and
|
||
portable use of the SHLIB_OPENMP_*FLAGS macros.
|
||
|
||
* R CMD check now evaluates \Sexpr{} expressions (including those
|
||
in macros) before checking the contents of Rd files and so
|
||
detects issues both in evaluating the expressions and in the
|
||
expanded contents.
|
||
|
||
* R CMD check now lists missing packages separated by commas and
|
||
with regular quotes such as to be useful as argument in calling
|
||
install.packages(c(..)); from a suggestion by Marcel Ramos.
|
||
|
||
* tools::Rd2latex() now uses UTF-8 as its default output encoding.
|
||
|
||
* R CMD check now checks line endings of files with extension .hpp
|
||
and those under inst/include. The check now includes that a
|
||
non-empty file is terminated with a newline.
|
||
|
||
R CMD build will correct line endings in such files.
|
||
|
||
* R CMD check now tries re-building all vignettes rather than
|
||
stopping at the first error: whilst doing so it adds 'bookmarks'
|
||
to the log. By default (see the 'R Internals' manual) it
|
||
re-builds each vignette in a separate process.
|
||
|
||
It now checks for duplicated vignette titles (also known as
|
||
'index entries'): they are used as hyperlinks on CRAN package
|
||
pages and so do need to be unique.
|
||
|
||
* R CMD check has more comprehensive checks on the data directory
|
||
and the functioning of data() in a package.
|
||
|
||
* R CMD check now checks autoconf-generated configure files have
|
||
their corresponding source files, including optionally attempting
|
||
to regenerate them on platforms with autoreconf.
|
||
|
||
* R CMD build has a new option --compression to select the
|
||
compression used for the tarball.
|
||
|
||
* R CMD build now removes src/*.mod files on all platforms.
|
||
|
||
C-LEVEL FACILITIES:
|
||
|
||
* New pointer protection C functions R_PreserveInMSet and
|
||
R_ReleaseFromMSet have been introduced to replace UNPROTECT_PTR,
|
||
which is not safe to mix with UNPROTECT (and with
|
||
PROTECT_WITH_INDEX). Intended for use in parsers only.
|
||
|
||
* NAMEDMAX has been raised to 7 to allow further protection of
|
||
intermediate results from (usually ill-advised) assignments in
|
||
arguments to BUILTIN functions. Properly written package code
|
||
should not be affected.
|
||
|
||
* R_unif_index is now considered to be part of the C API.
|
||
|
||
* R_GetCurrentEnv() allows C code to retrieve the current
|
||
environment.
|
||
|
||
DEPRECATED AND DEFUNCT:
|
||
|
||
* Argument compressed of untar() is deprecated - it is only used
|
||
for external tar commands which increasingly for extraction
|
||
auto-detect compression and ignore their zjJ flags.
|
||
|
||
* var(f) and hence sd(f) now give an error for factor arguments;
|
||
they gave a deprecation warning since R 3.2.3, PR#16564.
|
||
|
||
* Package tools' vignetteDepends() has been deprecated (it called a
|
||
function deprecated since Feb 2016), being partly replaced by
|
||
newly exported vignetteInfo().
|
||
|
||
* The f77_f2c script has been removed: it no longer sufficed to
|
||
compile the .f files in R.
|
||
|
||
* The deprecated legacy support of make macros such as CXX1X has
|
||
been removed: use the CXX11 forms instead.
|
||
|
||
* Make macro F77_VISIBILITY is deprecated in favour of
|
||
F_VISIBILITY.
|
||
|
||
* Make macros F77, FCPIFCPLAGS and SHLIB_OPENMP_FCFLAGS are
|
||
deprecated in favour of FC, FPICFLAGS and SHLIB_OPENMP_FFLAGS
|
||
respectively.
|
||
|
||
* $.data.frame had become an expensive version of the default
|
||
method, so has been removed. (Thanks to Radford Neal for picking
|
||
this up and to Duncan Murdoch for providing a patch.)
|
||
|
||
BUG FIXES:
|
||
|
||
* replayPlot(r) now also works in the same R session when r has
|
||
been "reproduced" from serialization, typically after saving to
|
||
and reading from an RDS file.
|
||
* substr() and substring() now signal an error when the input is
|
||
invalid UTF-8.
|
||
|
||
* file.copy() now works also when its argument to is of length
|
||
greater than one.
|
||
|
||
* mantelhaen.test() no longer suffers from integer overflow in
|
||
largish cases, thanks to Ben Bolker's PR#17383.
|
||
|
||
* Calling setGeneric("foo") in a package no longer fails when the
|
||
enclosing environment of the implicit generic foo() is
|
||
.GlobalEnv.
|
||
|
||
* untar(file("<some>.tar.gz"), *) now gives a better error message,
|
||
suggesting to use gzfile() instead.
|
||
|
||
* Method dispatch uses more relevant environments when looking up
|
||
class definitions.
|
||
|
||
* The documentation for identify() incorrectly claimed that the
|
||
indices of identified points were returned in the order that the
|
||
points were selected. identify() now has a new argument order to
|
||
allow the return value to include the order in which points were
|
||
identified; the documentation has been updated. Reported by
|
||
Richard Rowe and Samuel Granjeaud.
|
||
|
||
* order(...., decreasing=c(TRUE, FALSE)) could fail in some cases.
|
||
Reported from StackOverflow via Karl Nordstr"om.
|
||
|
||
* User macros in Rd files now accept empty and multi-line
|
||
arguments.
|
||
|
||
* Changes in print.*(), thanks to Lionel Henry's patches in
|
||
PR#17398:
|
||
|
||
* Printing lists, pairlists or attributes containing calls with
|
||
S3 class no longer evaluate those.
|
||
|
||
* Printing S4 objects within lists and pairlists dispatches
|
||
with show() rather than print(), as with auto-printing.
|
||
|
||
* The indexing tags (names or [[<n>]]) of recursive data
|
||
structures are now printed correctly in complex cases.
|
||
|
||
* Arguments supplied to print() are now properly forwarded to
|
||
methods when printing lists, pairlists or attributes
|
||
containing S3 objects.
|
||
|
||
* The print parameters are now preserved when printing S3
|
||
objects or deparsing symbols and calls. Previously, printing
|
||
lists containing S3 objects or expressions would reset these
|
||
parameters.
|
||
|
||
* Printing lists, pairlists or attributes containing functions
|
||
now uses srcref attributes if present.
|
||
|
||
* Calling install.packages() with a length zero pkgs argument now
|
||
is a no-op (PR#17422).
|
||
|
||
* unlist(x) now returns a correct factor when x is a nested list
|
||
with factor leaves, fixing PR#12572 and PR#17419.
|
||
|
||
* The documentation help(family) gives more details about the aic
|
||
component, thanks to Ben Bolker's prompting.
|
||
|
||
* The documentation for attributes and `attributes<-` now gives x
|
||
as name of the first and main argument which the implementation
|
||
has been requiring, fixing PR#17434. For consistency, the first
|
||
argument name is also changed from obj to x for
|
||
`mostattributes<-`.
|
||
|
||
* strwidth() now uses par("font") as default font face (PR#17352).
|
||
|
||
* plot(<table>, log="x") no longer warns about log.
|
||
|
||
* The print() method for "htest" objects now formats the test
|
||
statistic and parameter directly and hence no longer rounds to
|
||
units _before_ the decimal point. Consequently, printing of
|
||
t.test() results with a small number of digits now shows
|
||
non-large df's to the full precision (PR#17444).
|
||
|
||
* kruskal.test() and fligner.test() no longer erroneously insist on
|
||
numeric g group arguments (PR#16719).
|
||
|
||
* Printing a news db via the browser now does a much better job
|
||
(PR#17433).
|
||
|
||
* print.aov() missed column names in the multivariate case due to
|
||
misspelling (reported by Chris Andrews).
|
||
|
||
* axis() now creates valid at locations also for small subnormal
|
||
number ranges in log scale plots.
|
||
|
||
* format.POSIXlt() now also recycles the zone and gmtoff list
|
||
components to full length when needed, and its internal C code
|
||
detects have_zone in more cases. In some cases, this changes its
|
||
output to become compatible with format.POSIXct().
|
||
|
||
* On Windows, detectCores() in package parallel now detects
|
||
processors in all processor groups, not just the group R is
|
||
running in (impacts particularly systems with more than 64
|
||
logical processors). Reported by Arunkumar Srinivasan.
|
||
|
||
* On Windows, socketSelect() would hang with more than 64 sockets,
|
||
and hence parallel::clusterApplyLB() would hang with more than 64
|
||
workers. Reported by Arunkumar Srinivasan.
|
||
|
||
* as(1L, "double") now does coerce (PR#17457).
|
||
|
||
* lm.influence(), influence.measures(), rstudent() etc now work
|
||
(more) correctly for multivariate models ("mlm"), thanks to
|
||
(anonymous) stackoverflow remarks.
|
||
|
||
* sample.int(2.9, *, replace=TRUE) again behaves as documented and
|
||
as in R < 3.0.0, namely identically to sample.int(2, ..).
|
||
|
||
* Fixes to convertColor() for chromatic adaptation; thanks to
|
||
Brodie Gaslam PR#17473.
|
||
|
||
* Using \Sexpr[stage=install]{..} to create an Rd section no longer
|
||
gives a warning in R CMD check; problem originally posted by
|
||
G'abor Cs'ardi, then reported as PR#17479 with a partial patch by
|
||
Duncan Murdoch.
|
||
|
||
* Parse data now include a special node for equal assignment.
|
||
|
||
* split.default() no longer relies on [[<-(), so it behaves as
|
||
expected when splitting an object by a factor with the empty
|
||
string as one of its levels. Thanks to Brad Friedman for the
|
||
report.
|
||
|
||
* Line numbers in messages about .Rd files are now more reliable,
|
||
thanks to a patch from Duncan Murdoch.
|
||
|
||
* In the numeric method for all.equal(), a numeric scale argument
|
||
is now checked to be positive and allowed to be of length > 1.
|
||
(The latter worked originally and with a warning in recent
|
||
years).
|
||
|
||
* Deferred string conversions now record the OutDec option setting
|
||
when not equal to the default. Reported by Michael Sannella.
|
||
|
||
* When y is numeric and f a factor, plot(y ~ f) nicely uses "y" and
|
||
"f" as y- and x-labels. The more direct boxplot(y ~ f) now does
|
||
too. The new argument ann = FALSE may be used to suppress these.
|
||
|
||
* Subassignment to no/empty rows of a data frame is more consistent
|
||
and typically a no-op in all cases instead of sometimes an error;
|
||
part of Emil Bode's PR#17483.
|
||
|
||
* Calls like formatC(*, zero.print = "< 0.001") no longer give an
|
||
error and are further improved via new optional argument
|
||
replace.zero. Reported by David Hugh-Jones.
|
||
|
||
* methods::formalArgs("<fn>") now finds the same function as
|
||
formals("<fn>"), fixing Emil Bode's PR#17499.
|
||
|
||
* The methods package better handles duplicated class names across
|
||
packages.
|
||
|
||
* The default method of seq() now avoids integer overflow, thanks
|
||
to the report and "cumsum" patch of Suharto Anggono's PR#17497.
|
||
|
||
* sub() no longer loses encodings for non-ASCII replacements
|
||
(PR#17509).
|
||
|
||
* Fix for rotated raster image on X11 device. (Partial fix for
|
||
PR#17148; thanks to Mikko Korpela).
|
||
|
||
* formula(model.frame(frml, ..)) now returns frml in all cases,
|
||
thanks to Bill Dunlap. The previous behavior is available as
|
||
DF2formula(<model.frame>).
|
||
|
||
* ar.ols() also returns scalar var.pred in univariate case
|
||
(PR#17517).
|
||
|
||
* normalizePath() now treats NA path as non-existent and normalizes
|
||
it to NA. file.access() treats NA file name as non-existent.
|
||
file.edit() and connection functions such as file() now treat NA
|
||
file names as errors.
|
||
|
||
* The internal regularize.values() auxiliary of approx(),
|
||
splinefun() etc now warns again when there are ties and the
|
||
caller did not specify ties. Further, it no longer duplicates x
|
||
and y unnecessarily when x is already sorted (PR#17515).
|
||
|
||
* strtoi("", base) now gives NA on all platforms, following its
|
||
documentation. Reported by Michael Chirico.
|
||
|
||
* In the definition of an S4 class, prototype elements are checked
|
||
against the slots of the class, with giving a prototype for an
|
||
undefined slot now being an error. (Reported by Bill Dunlap.)
|
||
|
||
* From setClassUnion(), if environment variable
|
||
_R_METHODS_SHOW_CHECKSUBCLASSES is set to true, the internal
|
||
.checkSubclasses() utility prints debugging info to see where it
|
||
is used.
|
||
|
||
* max.col(m) with an m of zero columns now returns integer NA
|
||
(instead of 1).
|
||
|
||
* axTicks() no longer returns small "almost zero" numbers (in
|
||
exponential format) instead of zero, fixing Ilario Gelmetti's
|
||
PR#17534.
|
||
|
||
* isSymmetric(matrix(0, dimnames=list("A","b"))) is FALSE again, as
|
||
always documented.
|
||
|
||
* The cairo_pdf graphics device (and other Cairo-based devices) now
|
||
clip correctly to the right and bottom border.
|
||
|
||
There was an off-by-one-pixel bug, reported by Lee Kelvin.
|
||
|
||
* as.roman(3) <= 2:4 and all other comparisons now work, as do
|
||
group "Summary" function calls such as max(as.roman(sample(20)))
|
||
and as.roman(NA). (Partly reported by Bill Dunlap in PR#17542.)
|
||
|
||
* reformulate("x", response = "sin(y)") no longer produces extra
|
||
back quotes, PR#17359, and gains new optional argument env.
|
||
|
||
* When reading console input from stdin with re-encoding (R
|
||
--encoding=enc < input) the code on a Unix-alike now ensures that
|
||
each converted input line is terminated with a newline even if
|
||
re-encoding fails.
|
||
|
||
* as.matrix.data.frame() now produces better strings from logicals,
|
||
thanks to PR#17548 from Gabe Becker.
|
||
|
||
* The S4 generic signature of rowSums(), rowMeans(), colSums() and
|
||
colMeans() is restricted to "x".
|
||
|
||
* match(x, tab) now works for long _character_ vectors x, thanks to
|
||
PR#17552 by Andreas Kersting.
|
||
|
||
* Class unions are unloaded when their namespace is unloaded
|
||
(PR#17531, adapted from a patch by Brodie Gaslam).
|
||
|
||
* selectMethod() is robust to ANY-truncation of method signatures
|
||
(thanks to Herve Pages for the report).
|
||
|
||
-------------------------------------------------------------------
|
||
Mon Mar 11 09:00:15 UTC 2019 - Detlef Steuer <detlef.steuer@gmx.de>
|
||
|
||
- CHANGES IN R 3.5.3:
|
||
|
||
INSTALLATION on a UNIX-ALIKE:
|
||
|
||
* Detection of flags for C++98/11/14/17 has been improved: in
|
||
particular if CXX??STD is set, it is tried first with no
|
||
additional flags.
|
||
|
||
PACKAGE INSTALLATION:
|
||
|
||
* New macro F_VISIBILITY as an alternative to F77_VISIBILITY. This
|
||
will become the preferred form in R 3.6.0.
|
||
|
||
BUG FIXES:
|
||
|
||
* writeLines(readLines(fnam), fnam) now works as expected, thanks
|
||
to Peter Meissner's PR#17528.
|
||
|
||
* setClassUnion() no longer warns, but uses message() for now, when
|
||
encountering "non local" subclasses of class members.
|
||
|
||
* stopifnot(exprs = T) no longer fails.
|
||
|
||
-------------------------------------------------------------------
|
||
Tue Jan 15 20:46:55 UTC 2019 - Todd R <toddrme2178@gmail.com>
|
||
|
||
- Add architecture-independent package directory.
|
||
Taken from the Fedora version of R.
|
||
- Add RPM macros to ease installation of R packages.
|
||
- Fix building on older versions of openSUSE.
|
||
|
||
-------------------------------------------------------------------
|
||
Wed Dec 19 10:29:07 UTC 2018 - Detlef Steuer <detlef.steuer@gmx.de>
|
||
|
||
- CHANGES IN R 3.5.2:
|
||
|
||
PACKAGE INSTALLATION:
|
||
|
||
* New macro CXX_VISIBILITY analogous to C_VISIBILITY (which several
|
||
packages have been misusing for C++ code) for the default C++
|
||
compiler (but not necessarily one used for non-default C++
|
||
dialects like C++14).
|
||
|
||
TESTING:
|
||
|
||
* The random number generator tests in tests/p-r-random-tests.R no
|
||
longer fail occasionally as they now randomly sample from
|
||
"certified" random seeds.
|
||
|
||
BUG FIXES:
|
||
|
||
* The "glm" method of drop1() miscalculated the score test
|
||
(test="Rao") when the model contained an offset.
|
||
|
||
* Linear multiple empty models such as lm(y ~ 0) now have a
|
||
correctly dimensioned empty coefficient matrix; reported by Brett
|
||
Presnell.
|
||
|
||
* vcov(<empty mlm>) and hence confint() now work (via a consistency
|
||
change in summary.lm()).
|
||
|
||
* confint(<multiple lm()>) now works correctly; reported on R-devel
|
||
by Steven Pav.
|
||
|
||
* quade.test() now also works correctly when its arguments are not
|
||
yet sorted along groups, fixing PR#15842.
|
||
|
||
* Installation on a Unix-alike tries harder to link to the pthread
|
||
library where required (rather than relying on OpenMP to provide
|
||
it: configuring with --disable-openmp was failing on some Linux
|
||
systems).
|
||
|
||
* The data.frame method for print(x) is fast now also for large
|
||
data frames x and got an optional argument max, thanks to
|
||
suggestions by Juan Telleria.
|
||
|
||
* hist() no longer integer overflows in very rare cases, fixing
|
||
PR#17450.
|
||
|
||
* untar() ignored a character compressed argument: however many
|
||
external tar programs ignore the flags which should have been set
|
||
and automagically choose the compression type, and if appropriate
|
||
gzip or bzip2 compression would have been chosen from the magic
|
||
header of the tarball.
|
||
|
||
* zapsmall(x) now works for more "number-like" objects.
|
||
|
||
* The tools-internal function called from R CMD INSTALL now gets a
|
||
warnOption = 1 argument and only sets options(warn = warnOption)
|
||
when that increases the warning level (PR#17453).
|
||
|
||
* Analogously, the tools-internal function called from R CMD check
|
||
gets a warnOption = 1 argument and uses the larger of that and
|
||
getOption("warn"), also allowing to be run with increased warning
|
||
level.
|
||
|
||
* Parse data now have deterministic parent nodes (PR#16041).
|
||
|
||
* Calling match() with length one x and POSIXlt table gave a
|
||
segfault (PR#17459).
|
||
|
||
* Fork clusters could hang due to a race condition in cluster
|
||
initialization (makeCluster()).
|
||
|
||
* nextn(n) now also works for larger n and no longer loops
|
||
infinitely for e.g, n <- 214e7.
|
||
|
||
* cooks.distance() and rstandard() now work correctly for multiple
|
||
linear models ("mlm").
|
||
|
||
* polym() and corresponding lm() prediction now also work for a
|
||
boundary "vector" case fixing PR#17474, reported by Alexandre
|
||
Courtiol.
|
||
|
||
* With a very large number of variables terms() could segfault
|
||
(PR#17480).
|
||
|
||
* cut(rep(0, 7)) now works, thanks to Joey Reid and Benjamin Tyner
|
||
(PR#16802).
|
||
|
||
* download.file(*, method = "curl", cacheOK = FALSE) should work
|
||
now on Windows, thanks to Kevin Ushey's patch in PR#17323.
|
||
|
||
* duplicated(<dataframe with 'f'>) now works, too, thanks to
|
||
Andreas Kersting's PR#17485; ditto for anyDuplicated().
|
||
|
||
* legend(*, cex = 1:2) now works less badly.
|
||
|
||
* The print() method for POSIXct and POSIXlt now correctly obeys
|
||
getOption("max.print"), fixing a long-standing typo, and it also
|
||
gets a corresponding optional max argument.
|
||
|
||
* Unserialization of raw vectors serialized in ASCII representation
|
||
now works correctly.
|
||
|
||
* <data frame>[TRUE, <new>] <- list(c1, c2) now works correctly,
|
||
thanks to Suharto Anggono's PR#15362 and Emil Bode's patch in
|
||
PR#17504.
|
||
|
||
* seq.int(*, by=by, length=n) no longer wrongly "drops fractional
|
||
parts" when by is integer, thanks to Suharto Anggono's report
|
||
PR#17506.
|
||
|
||
* Buffering is disabled for file() connections to non-regular files
|
||
(like sockets), as well as fifo() and pipe() connections. Fixes
|
||
PR#17470, reported by Chris Culnane.
|
||
|
||
-------------------------------------------------------------------
|
||
Mon Jul 2 08:24:31 UTC 2018 - detlef.steuer@gmx.de
|
||
|
||
- CHANGES IN R 3.5.1 :
|
||
|
||
BUG FIXES:
|
||
|
||
* file("stdin") is no longer considered seekable.
|
||
|
||
* dput() and dump() are no longer truncating when
|
||
options(deparse.max.lines = *) is set.
|
||
|
||
* Calls with an S3 class are no longer evaluated when printed,
|
||
fixing part of PR#17398, thanks to a patch from Lionel Henry.
|
||
|
||
* Allow file argument of Rscript to include space even when it is
|
||
first on the command line.
|
||
|
||
* callNextMethod() uses the generic from the environment of the
|
||
calling method. Reported by Herv'e Pag`es with well documented
|
||
examples.
|
||
|
||
* Compressed file connections are marked as blocking.
|
||
|
||
* optim(*, lower = c(-Inf, -Inf)) no longer warns (and switches the
|
||
method), thanks to a suggestion by John Nash.
|
||
|
||
* predict(fm, newdata) is now correct also for models where the
|
||
formula has terms such as splines::ns(..) or stats::poly(..),
|
||
fixing PR#17414, based on a patch from Duncan Murdoch.
|
||
|
||
* simulate.lm(glm(*, gaussian(link = <non-default>))) has been
|
||
corrected, fixing PR#17415 thanks to Alex Courtiol.
|
||
|
||
* unlist(x) no longer fails in some cases of nested empty lists.
|
||
Reported by Steven Nydick.
|
||
|
||
* qr.coef(qr(<all 0, w/ colnames>)) now works. Reported by Kun
|
||
Ren.
|
||
|
||
* The radix sort is robust to vectors with >1 billion elements (but
|
||
long vectors are still unsupported). Thanks to Matt Dowle for the
|
||
fix.
|
||
|
||
* Terminal connections (e.g., stdin) are no longer buffered. Fixes
|
||
PR#17432.
|
||
|
||
* deparse(x), dput(x) and dump() now respect c()'s argument names
|
||
recursive and use.names, e.g., for x <- setNames(0, "recursive"),
|
||
thanks to Suharto Anggono's PR#17427.
|
||
|
||
* Unbuffered connections now work with encoding conversion.
|
||
Reported by Stephen Berman.
|
||
|
||
* .Renviron on Windows with Rgui is again by default searched for
|
||
in user documents directory when invoked _via_ the launcher icon.
|
||
Reported by Jeroen Ooms.
|
||
|
||
* printCoefmat() now also works with explicit right=TRUE.
|
||
|
||
* print.noquote() now also works with explicit quote=FALSE.
|
||
|
||
* The default method for pairs(.., horInd=*, verInd=*) now gets the
|
||
correct order, thanks to reports by Chris Andrews and Gerrit
|
||
Eichner. Additionally, when horInd or verInd contain only a
|
||
subset of variables, all the axes are labeled correctly now.
|
||
|
||
* agrep("..|..", .., fixed=FALSE) now matches when it should,
|
||
thanks to a reminder by Andreas Kolter.
|
||
|
||
* str(ch) now works for more invalid multibyte strings.
|
||
|
||
-------------------------------------------------------------------
|
||
Mon Apr 23 08:32:02 UTC 2018 - detlef.steuer@gmx.de
|
||
|
||
- CHANGES IN R 3.5.0:
|
||
|
||
SIGNIFICANT USER-VISIBLE CHANGES:
|
||
|
||
* All packages are by default byte-compiled on installation. This
|
||
makes the installed packages larger (usually marginally so) and
|
||
may affect the format of messages and tracebacks (which often
|
||
exclude .Call and similar).
|
||
|
||
NEW FEATURES:
|
||
|
||
* factor() now uses order() to sort its levels, rather than
|
||
sort.list(). This allows factor() to support custom vector-like
|
||
objects if methods for the appropriate generics are defined. It
|
||
has the side effect of making factor() succeed on empty or
|
||
length-one non-atomic vector(-like) types (e.g., "list"), where
|
||
it failed before.
|
||
|
||
* diag() gets an optional names argument: this may require updates
|
||
to packages defining S4 methods for it.
|
||
|
||
* chooseCRANmirror() and chooseBioCmirror() no longer have a
|
||
useHTTPS argument, not needed now all R builds support https://
|
||
downloads.
|
||
|
||
* New summary() method for warnings() with a (somewhat
|
||
experimental) print() method.
|
||
|
||
* (methods package.) .self is now automatically registered as a
|
||
global variable when registering a reference class method.
|
||
|
||
* tempdir(check = TRUE) recreates the tempdir() directory if it is
|
||
no longer valid (e.g. because some other process has cleaned up
|
||
the /tmp directory).
|
||
|
||
* New askYesNo() function and "askYesNo" option to ask the user
|
||
binary response questions in a customizable but consistent way.
|
||
(Suggestion of PR#17242.)
|
||
|
||
* New low level utilities ...elt(n) and ...length() for working
|
||
with ... parts inside a function.
|
||
|
||
* isTRUE() is more tolerant and now true in
|
||
|
||
x <- rlnorm(99)
|
||
isTRUE(median(x) == quantile(x)["50%"])
|
||
|
||
New function isFALSE() defined analogously to isTRUE().
|
||
|
||
* The default symbol table size has been increased from 4119 to
|
||
49157; this may improve the performance of symbol resolution when
|
||
many packages are loaded. (Suggested by Jim Hester.)
|
||
|
||
* line() gets a new option iter = 1.
|
||
|
||
* Reading from connections in text mode is buffered, significantly
|
||
improving the performance of readLines(), as well as scan() and
|
||
read.table(), at least when specifying colClasses.
|
||
|
||
* order() is smarter about picking a default sort method when its
|
||
arguments are objects.
|
||
|
||
* available.packages() has two new arguments which control if the
|
||
values from the per-session repository cache are used (default
|
||
true, as before) and if so how old cached values can be to be
|
||
used (default one hour).
|
||
|
||
These arguments can be passed from install.packages(),
|
||
update.packages() and functions calling that: to enable this
|
||
available.packages(), packageStatus() and download.file() gain a
|
||
... argument.
|
||
|
||
* packageStatus()'s upgrade() method no longer ignores its ...
|
||
argument but passes it to install.packages().
|
||
|
||
* installed.packages() gains a ... argument to allow arguments
|
||
(including noCache) to be passed from new.packages(),
|
||
old.packages(), update.packages() and packageStatus().
|
||
|
||
* factor(x, levels, labels) now allows duplicated labels (not
|
||
duplicated levels!). Hence you can map different values of x to
|
||
the same level directly.
|
||
|
||
* Attempting to use names<-() on an S4 derivative of a basic type
|
||
no longer emits a warning.
|
||
|
||
* The list method of within() gains an option keepAttrs = FALSE for
|
||
some speed-up.
|
||
|
||
* system() and system2() now allow the specification of a maximum
|
||
elapsed time ('timeout').
|
||
|
||
* debug() supports debugging of methods on any object of S4 class
|
||
"genericFunction", including group generics.
|
||
|
||
* Attempting to increase the length of a variable containing NULL
|
||
using length()<- still has no effect on the target variable, but
|
||
now triggers a warning.
|
||
|
||
* type.convert() becomes a generic function, with additional
|
||
methods that operate recursively over list and data.frame
|
||
objects. Courtesy of Arni Magnusson (PR#17269).
|
||
|
||
* lower.tri(x) and upper.tri(x) only needing dim(x) now work via
|
||
new functions .row() and .col(), so no longer call as.matrix() by
|
||
default in order to work efficiently for all kind of matrix-like
|
||
objects.
|
||
|
||
* print() methods for "xgettext" and "xngettext" now use
|
||
encodeString() which keeps, e.g. "\n", visible. (Wish of
|
||
PR#17298.)
|
||
|
||
* package.skeleton() gains an optional encoding argument.
|
||
|
||
* approx(), spline(), splinefun() and approxfun() also work for
|
||
long vectors.
|
||
|
||
* deparse() and dump() are more useful for S4 objects, dput() now
|
||
using the same internal C code instead of its previous imperfect
|
||
workaround R code. S4 objects now typically deparse perfectly,
|
||
i.e., can be recreated identically from deparsed code.
|
||
|
||
dput(), deparse() and dump() now print the names() information
|
||
only once, using the more readable (tag = value) syntax, notably
|
||
for list()s, i.e., including data frames.
|
||
|
||
These functions gain a new control option "niceNames" (see
|
||
.deparseOpts()), which when set (as by default) also uses the
|
||
(tag = value) syntax for atomic vectors. On the other hand,
|
||
without deparse options "showAttributes" and "niceNames", names
|
||
are no longer shown also for lists. as.character(list( c (one =
|
||
1))) now includes the name, as as.character(list(list(one = 1)))
|
||
has always done.
|
||
|
||
m:n now also deparses nicely when m > n.
|
||
|
||
The "quoteExpressions" option, also part of "all", no longer
|
||
quote()s formulas as that may not re-parse identically.
|
||
(PR#17378)
|
||
|
||
* If the option setWidthOnResize is set and TRUE, R run in a
|
||
terminal using a recent readline library will set the width
|
||
option when the terminal is resized. Suggested by Ralf Goertz.
|
||
|
||
* If multiple on.exit() expressions are set using add = TRUE then
|
||
all expressions will now be run even if one signals an error.
|
||
|
||
* mclapply() gets an option affinity.list which allows more
|
||
efficient execution with heterogeneous processors, thanks to
|
||
Helena Kotthaus.
|
||
|
||
* The character methods for as.Date() and as.POSIXlt() are more
|
||
flexible _via_ new arguments tryFormats and optional: see their
|
||
help pages.
|
||
|
||
* on.exit() gains an optional argument after with default TRUE.
|
||
Using after = FALSE with add = TRUE adds an exit expression
|
||
before any existing ones. This way the expressions are run in a
|
||
first-in last-out fashion. (From Lionel Henry.)
|
||
|
||
* On Windows, file.rename() internally retries the operation in
|
||
case of error to attempt to recover from possible anti-virus
|
||
interference.
|
||
|
||
* Command line completion on :: now also includes lazy-loaded data.
|
||
|
||
* If the TZ environment variable is set when date-time functions
|
||
are first used, it is recorded as the session default and so will
|
||
be used rather than the default deduced from the OS if TZ is
|
||
subsequently unset.
|
||
|
||
* There is now a [ method for class "DLLInfoList".
|
||
|
||
* glm() and glm.fit get the same singular.ok = TRUE argument that
|
||
lm() has had forever. As a consequence, in glm(*, method =
|
||
<your_own>), user specified methods need to accept a singular.ok
|
||
argument as well.
|
||
|
||
* aspell() gains a filter for Markdown (.md and .Rmd) files.
|
||
|
||
* intToUtf8(multiple = FALSE) gains an argument to allow surrogate
|
||
pairs to be interpreted.
|
||
|
||
* The maximum number of DLLs that can be loaded into R e.g. _via_
|
||
dyn.load() has been increased up to 614 when the OS limit on the
|
||
number of open files allows.
|
||
|
||
* Sys.timezone() on a Unix-alike caches the value at first use in a
|
||
session: _inter alia_ this means that setting TZ later in the
|
||
session affects only the _current_ time zone and not the _system_
|
||
one.
|
||
|
||
Sys.timezone() is now used to find the system timezone to pass to
|
||
the code used when R is configured with --with-internal-tzcode.
|
||
|
||
* When tar() is used with an external command which is detected to
|
||
be GNU tar or libarchive tar (aka bsdtar), a different
|
||
command-line is generated to circumvent line-length limits in the
|
||
shell.
|
||
|
||
* system(*, intern = FALSE), system2() (when not capturing output),
|
||
file.edit() and file.show() now issue a warning when the external
|
||
command cannot be executed.
|
||
|
||
* The "default" ("lm" etc) methods of vcov() have gained new
|
||
optional argument complete = TRUE which makes the vcov() methods
|
||
more consistent with the coef() methods in the case of singular
|
||
designs. The former (back-compatible) behavior is given by
|
||
vcov(*, complete = FALSE).
|
||
|
||
* coef() methods (for lm etc) also gain a complete = TRUE optional
|
||
argument for consistency with vcov().
|
||
For "aov", both coef() and vcov() methods remain back-compatibly
|
||
consistent, using the _other_ default, complete = FALSE.
|
||
|
||
* attach(*, pos = 1) is now an error instead of a warning.
|
||
|
||
* New function getDefaultCluster() in package parallel to get the
|
||
default cluster set via setDefaultCluster().
|
||
|
||
* str(x) for atomic objects x now treats both cases of is.vector(x)
|
||
similarly, and hence much less often prints "atomic". This is a
|
||
slight non-back-compatible change producing typically both more
|
||
informative and shorter output.
|
||
|
||
* write.dcf() gets optional argument useBytes.
|
||
|
||
* New, partly experimental packageDate() which tries to get a valid
|
||
"Date" object from a package DESCRIPTION file, thanks to
|
||
suggestions in PR#17324.
|
||
|
||
* tools::resaveRdaFiles() gains a version argument, for use when
|
||
packages should remain compatible with earlier versions of R.
|
||
|
||
* ar.yw(x) and hence by default ar(x) now work when x has NAs,
|
||
mostly thanks to a patch by Pavel Krivitsky in PR#17366. The
|
||
ar.yw.default()'s AIC computations have become more efficient by
|
||
using determinant().
|
||
|
||
* New warnErrList() utility (from package nlme, improved).
|
||
|
||
* By default the (arbitrary) signs of the loadings from princomp()
|
||
are chosen so the first element is non-negative.
|
||
|
||
* If --default-packages is not used, then Rscript now checks the
|
||
environment variable R_SCRIPT_DEFAULT_PACKAGES. If this is set,
|
||
then it takes precedence over R_DEFAULT_PACKAGES. If default
|
||
packages are not specified on the command line or by one of these
|
||
environment variables, then Rscript now uses the same default
|
||
packages as R. For now, the previous behavior of not including
|
||
methods can be restored by setting the environment variable
|
||
R_SCRIPT_LEGACY to yes.
|
||
|
||
* When a package is found more than once, the warning from
|
||
find.package(*, verbose=TRUE) lists all library locations.
|
||
|
||
* POSIXt objects can now also be rounded or truncated to month or
|
||
year.
|
||
|
||
* stopifnot() can be used alternatively via new argument exprs
|
||
which is nicer and useful when testing several expressions in one
|
||
call.
|
||
|
||
* The environment variable R_MAX_VSIZE can now be used to specify
|
||
the maximal vector heap size. On macOS, unless specified by this
|
||
environment variable, the maximal vector heap size is set to the
|
||
maximum of 16GB and the available physical memory. This is to
|
||
avoid having the R process killed when macOS over-commits memory.
|
||
|
||
* sum(x) and sum(x1,x2,..,x<N>) with many or long logical or
|
||
integer vectors no longer overflows (and returns NA with a
|
||
warning), but returns double numbers in such cases.
|
||
|
||
* Single components of "POSIXlt" objects can now be extracted and
|
||
replaced via [ indexing with 2 indices.
|
||
|
||
* S3 method lookup now searches the namespace registry after the
|
||
top level environment of the calling environment.
|
||
|
||
* Arithmetic sequences created by 1:n, seq_along, and the like now
|
||
use compact internal representations via the ALTREP framework.
|
||
Coercing integer and numeric vectors to character also now uses
|
||
the ALTREP framework to defer the actual conversion until first
|
||
use.
|
||
|
||
* Finalizers are now run with interrupts suspended.
|
||
|
||
* merge() gains new option no.dups and by default suffixes the
|
||
second of two duplicated column names, thanks to a proposal by
|
||
Scott Ritchie (and Gabe Becker).
|
||
|
||
* scale.default(x, center, scale) now also allows center or scale
|
||
to be "numeric-alike", i.e., such that as.numeric(.) coerces them
|
||
correctly. This also eliminates a wrong error message in such
|
||
cases.
|
||
|
||
* par*apply and par*applyLB gain an optional argument chunk.size
|
||
which allows to specify the granularity of scheduling.
|
||
|
||
* Some as.data.frame() methods, notably the matrix one, are now
|
||
more careful in not accepting duplicated or NA row names, and by
|
||
default produce unique non-NA row names. This is based on new
|
||
function .rowNamesDF(x, make.names = *) <- rNms where the logical
|
||
argument make.names allows to specify _how_ invalid row names
|
||
rNms are handled. .rowNamesDF() is a "workaround" compatible
|
||
default.
|
||
|
||
* R has new serialization format (version 3) which supports custom
|
||
serialization of ALTREP framework objects. These objects can
|
||
still be serialized in format 2, but less efficiently.
|
||
Serialization format 3 also records the current native encoding
|
||
of unflagged strings and converts them when de-serialized in R
|
||
running under different native encoding. Format 3 comes with new
|
||
serialization magic numbers (RDA3, RDB3, RDX3). Format 3 can be
|
||
selected by version = 3 in save(), serialize() and saveRDS(), but
|
||
format 2 remains the default for all serialization and saving of
|
||
the workspace. Serialized data in format 3 cannot be read by
|
||
versions of R prior to version 3.5.0.
|
||
|
||
* The "Date" and "date-time" classes "POSIXlt" and "POSIXct" now
|
||
have a working `length<-` method, as wished in PR#17387.
|
||
|
||
* optim(*, control = list(warn.1d.NelderMead = FALSE)) allows to
|
||
turn off the warning when applying the default "Nelder-Mead"
|
||
method to 1-dimensional problems.
|
||
|
||
* matplot(.., panel.first = .) etc now work, as log becomes
|
||
explicit argument and ... is passed to plot() unevaluated, as
|
||
suggested by Sebastian Meyer in PR#17386.
|
||
|
||
* Interrupts can be suspended while evaluating an expression using
|
||
suspendInterrupts. Subexpression can be evaluated with
|
||
interrupts enabled using allowInterrupts. These functions can be
|
||
used to make sure cleanup handlers cannot be interrupted.
|
||
|
||
* R 3.5.0 includes a framework that allows packages to provide
|
||
alternate representations of basic R objects (ALTREP). The
|
||
framework is still experimental and may undergo changes in future
|
||
R releases as more experience is gained. For now, documentation
|
||
is provided in <URL:
|
||
https://svn.r-project.org/R/branches/ALTREP/ALTREP.html>.
|
||
|
||
UTILITIES:
|
||
|
||
* install.packages() for source packages now has the possibility to
|
||
set a 'timeout' (elapsed-time limit). For serial installs this
|
||
uses the timeout argument of system2(): for parallel installs it
|
||
requires the timeout utility command from GNU coreutils.
|
||
|
||
* It is now possible to set 'timeouts' (elapsed-time limits) for
|
||
most parts of R CMD check _via_ environment variables documented
|
||
in the 'R Internals' manual.
|
||
|
||
* The 'BioC extra' repository which was dropped from Bioconductor
|
||
3.6 and later has been removed from setRepositories(). This
|
||
changes the mapping for 6-8 used by setRepositories(ind=).
|
||
|
||
* R CMD check now also applies the settings of environment
|
||
variables _R_CHECK_SUGGESTS_ONLY_ and _R_CHECK_DEPENDS_ONLY_ to
|
||
the re-building of vignettes.
|
||
|
||
* R CMD check with environment variable _R_CHECK_DEPENDS_ONLY_ set
|
||
to a true value makes test-suite-management packages available
|
||
and (for the time being) works around a common omission of
|
||
rmarkdown from the VignetteBuilder field.
|
||
|
||
INSTALLATION on a UNIX-ALIKE:
|
||
|
||
* Support for a system Java on macOS has been removed - install a
|
||
fairly recent Oracle Java (see 'R Installation and
|
||
Administration' SSC.3.2).
|
||
|
||
* configure works harder to set additional flags in SAFE_FFLAGS
|
||
only where necessary, and to use flags which have little or no
|
||
effect on performance.
|
||
|
||
In rare circumstances it may be necessary to override the setting
|
||
of SAFE_FFLAGS.
|
||
|
||
* C99 functions expm1, hypot, log1p and nearbyint are now required.
|
||
|
||
* configure sets a -std flag for the C++ compiler for all supported
|
||
C++ standards (e.g., -std=gnu++11 for the C++11 compiler).
|
||
Previously this was not done in a few cases where the default
|
||
standard passed the tests made (e.g. clang 6.0.0 for C++11).
|
||
|
||
C-LEVEL FACILITIES:
|
||
|
||
* 'Writing R Extensions' documents macros MAYBE_REFERENCED,
|
||
MAYBE_SHARED and MARK_NOT_MUTABLE that should be used by package
|
||
C code instead NAMED or SET_NAMED.
|
||
|
||
* The object header layout has been changed to support merging the
|
||
ALTREP branch. This requires re-installing packages that use
|
||
compiled code.
|
||
|
||
* 'Writing R Extensions' now documents the R_tryCatch,
|
||
R_tryCatchError, and R_UnwindProtect functions.
|
||
|
||
* NAMEDMAX has been raised to 3 to allow protection of intermediate
|
||
results from (usually ill-advised) assignments in arguments to
|
||
BUILTIN functions. Package C code using SET_NAMED may need to be
|
||
revised.
|
||
|
||
DEPRECATED AND DEFUNCT:
|
||
|
||
* Sys.timezone(location = FALSE) is defunct, and is ignored (with a
|
||
warning).
|
||
|
||
* methods:::bind_activation() is defunct now; it typically has been
|
||
unneeded for years.
|
||
|
||
The undocumented 'hidden' objects .__H__.cbind and .__H__.rbind
|
||
in package base are deprecated (in favour of cbind and rbind).
|
||
|
||
* The declaration of pythag() in Rmath.h has been removed - the
|
||
entry point has not been provided since R 2.14.0.
|
||
|
||
BUG FIXES:
|
||
|
||
* printCoefmat() now also works without column names.
|
||
|
||
* The S4 methods on Ops() for the "structure" class no longer cause
|
||
infinite recursion when the structure is not an S4 object.
|
||
|
||
* nlm(f, ..) for the case where f() has a "hessian" attribute now
|
||
computes LL' = H + uI correctly. (PR#17249).
|
||
|
||
* An S4 method that "rematches" to its generic and overrides the
|
||
default value of a generic formal argument to NULL no longer
|
||
drops the argument from its formals.
|
||
|
||
* Rscript can now accept more than one argument given on the #!
|
||
line of a script. Previously, one could only pass a single
|
||
argument on the #! line in Linux.
|
||
|
||
* Connections are now written correctly with encoding "UTF-16LE".
|
||
(PR#16737).
|
||
|
||
* Evaluation of ..0 now signals an error. When ..1 is used and ...
|
||
is empty, the error message is more appropriate.
|
||
|
||
* (Windows mainly.) Unicode code points which require surrogate
|
||
pairs in UTF-16 are now handled. All systems should properly
|
||
handle surrogate pairs, even those systems that do not need to
|
||
make use of them. (PR#16098)
|
||
|
||
* stopifnot(e, e2, ...) now evaluates the expressions sequentially
|
||
and in case of an error or warning shows the relevant expression
|
||
instead of the full stopifnot(..) call.
|
||
|
||
* path.expand() on Windows now accepts paths specified as
|
||
UTF-8-encoded character strings even if not representable in the
|
||
current locale. (PR#17120)
|
||
|
||
* line(x, y) now correctly computes the medians of the left and
|
||
right group's x-values and in all cases reproduces straight
|
||
lines.
|
||
|
||
* Extending S4 classes with slots corresponding to special
|
||
attributes like dim and dimnames now works.
|
||
|
||
* Fix for legend() when fill has multiple values the first of which
|
||
is NA (all colours used to default to par(fg)). (PR#17288)
|
||
|
||
* installed.packages() did not remove the cached value for a
|
||
library tree that had been emptied (but would not use the old
|
||
value, just waste time checking it).
|
||
|
||
* The documentation for installed.packages(noCache = TRUE)
|
||
incorrectly claimed it would refresh the cache.
|
||
|
||
* aggregate(<data.frame>) no longer uses spurious names in some
|
||
cases. (PR#17283)
|
||
|
||
* object.size() now also works for long vectors.
|
||
|
||
* packageDescription() tries harder to solve re-encoding issues,
|
||
notably seen in some Windows locales. This fixes the citation()
|
||
issue in PR#17291.
|
||
|
||
* poly(<matrix>, 3) now works, thanks to prompting by Marc
|
||
Schwartz.
|
||
|
||
* readLines() no longer segfaults on very large files with embedded
|
||
'\0' (aka 'nul') characters. (PR#17311)
|
||
|
||
* ns() (package splines) now also works for a single observation.
|
||
interpSpline() gives a more friendly error message when the
|
||
number of points is less than four.
|
||
|
||
* dist(x, method = "canberra") now uses the correct definition; the
|
||
result may only differ when x contains values of differing signs,
|
||
e.g. not for 0-1 data.
|
||
|
||
* methods:::cbind() and methods:::rbind() avoid deep recursion,
|
||
thanks to Suharto Anggono via PR#17300.
|
||
|
||
* Arithmetic with zero-column data frames now works more
|
||
consistently; issue raised by Bill Dunlap.
|
||
|
||
Arithmetic with data frames gives a data frame for ^ (which
|
||
previously gave a numeric matrix).
|
||
|
||
* pretty(x, n) for large n or large diff(range(x)) now works better
|
||
(though it was never meant for large n); internally it uses the
|
||
same rounding fuzz (1e-10) as seq.default() - as it did up to
|
||
2010-02-03 when both were 1e-7.
|
||
|
||
* Internal C-level R_check_class_and_super() and hence
|
||
R_check_class_etc() now also consider non-direct super classes
|
||
and hence return a match in more cases. This e.g., fixes
|
||
behaviour of derived classes in package Matrix.
|
||
|
||
* Reverted unintended change in behavior of return calls in on.exit
|
||
expressions introduced by stack unwinding changes in R 3.3.0.
|
||
|
||
* Attributes on symbols are now detected and prevented; attempt to
|
||
add an attribute to a symbol results in an error.
|
||
|
||
* fisher.test(*, workspace = <n>) now may also increase the
|
||
internal stack size which allows larger problem to be solved,
|
||
fixing PR#1662.
|
||
|
||
* The methods package no longer directly copies slots (attributes)
|
||
into a prototype that is of an "abnormal" (reference) type, like
|
||
a symbol.
|
||
|
||
* The methods package no longer attempts to call length<-() on NULL
|
||
(during the bootstrap process).
|
||
|
||
* The methods package correctly shows methods when there are
|
||
multiple methods with the same signature for the same generic
|
||
(still not fully supported, but at least the user can see them).
|
||
|
||
* sys.on.exit() is now always evaluated in the right frame. (From
|
||
Lionel Henry.)
|
||
|
||
* seq.POSIXt(*, by = "<n> DSTdays") now should work correctly in
|
||
all cases and is faster. (PR#17342)
|
||
|
||
* .C() when returning a logical vector now always maps values other
|
||
than FALSE and NA to TRUE (as documented).
|
||
|
||
* Subassignment with zero length vectors now coerces as documented
|
||
(PR#17344).
|
||
Further, x <- numeric(); x[1] <- character() now signals an error
|
||
'replacement has length zero' (or a translation of that) instead
|
||
of doing nothing.
|
||
|
||
* (Package parallel.) mclapply(), pvec() and mcparallel() (when
|
||
mccollect() is used to collect results) no longer leave zombie
|
||
processes behind.
|
||
|
||
* R CMD INSTALL <pkg> now produces the intended error message when,
|
||
e.g., the LazyData field is invalid.
|
||
|
||
* as.matrix(dd) now works when the data frame dd contains a column
|
||
which is a data frame or matrix, including a 0-column matrix/d.f.
|
||
.
|
||
|
||
* mclapply(X, mc.cores) now follows its documentation and calls
|
||
lapply() in case mc.cores = 1 also in the case mc.preschedule is
|
||
false. (PR#17373)
|
||
|
||
* aggregate(<data.frame>, drop=FALSE) no longer calls the function
|
||
on <empty> parts but sets corresponding results to NA. (Thanks
|
||
to Suharto Anggono's patches in PR#17280).
|
||
|
||
* The duplicated() method for data frames is now based on the list
|
||
method (instead of string coercion). Consequently unique() is
|
||
better distinguishing data frame rows, fixing PR#17369 and
|
||
PR#17381. The methods for matrices and arrays are changed
|
||
accordingly.
|
||
|
||
* Calling names() on an S4 object derived from "environment"
|
||
behaves (by default) like calling names() on an ordinary
|
||
environment.
|
||
|
||
* read.table() with a non-default separator now supports quotes
|
||
following a non-whitespace character, matching the behavior of
|
||
scan().
|
||
|
||
* parLapplyLB and parSapplyLB have been fixed to do load balancing
|
||
(dynamic scheduling). This also means that results of
|
||
computations depending on random number generators will now
|
||
really be non-reproducible, as documented.
|
||
|
||
* Indexing a list using dollar and empty string (l$"") returns
|
||
NULL.
|
||
|
||
* Using \usage{ data(<name>, package="<pkg>") } no longer produces
|
||
R CMD check warnings.
|
||
|
||
* match.arg() more carefully chooses the environment for
|
||
constructing default choices, fixing PR#17401 as proposed by
|
||
Duncan Murdoch.
|
||
|
||
* Deparsing of consecutive ! calls is now consistent with deparsing
|
||
unary - and + calls and creates code that can be reparsed
|
||
exactly; thanks to a patch by Lionel Henry in PR#17397. (As a
|
||
side effect, this uses fewer parentheses in some other deparsing
|
||
involving ! calls.)
|
||
|
||
-------------------------------------------------------------------
|
||
Wed Mar 28 16:13:57 UTC 2018 - darin@darins.net
|
||
|
||
- added gcc-c++ build dependency
|
||
|
||
-------------------------------------------------------------------
|
||
Tue Mar 20 16:21:31 UTC 2018 - detlef.steuer@gmx.de
|
||
|
||
- Setting correctly R_UNZIPCMD
|
||
Corrects this bug: http://bugzilla.suse.com/show_bug.cgi?id=1083075
|
||
|
||
-------------------------------------------------------------------
|
||
Thu Mar 15 09:21:05 UTC 2018 - detlef.steuer@gmx.de
|
||
|
||
- upstrem updated to 3.4.4
|
||
|
||
CHANGES IN R 3.4.4:
|
||
|
||
NEW FEATURES:
|
||
|
||
* Sys.timezone() tries more heuristics on Unix-alikes and so is
|
||
more likely to succeed (especially on Linux). For the slowest
|
||
method, a warning is given recommending that TZ is set to avoid
|
||
the search.
|
||
|
||
* The version of LAPACK included in the sources has been updated to
|
||
3.8.0 (for the routines used by R, a very minor bug-fix change).
|
||
|
||
* parallel::detectCores(logical = FALSE) is ignored on Linux
|
||
systems, since the information is not available with virtualized
|
||
OSes.
|
||
|
||
INSTALLATION on a UNIX-ALIKE:
|
||
|
||
* configure will use pkg-config to find the flags to link to jpeg
|
||
if available (as it should be for the recently-released jpeg-9c
|
||
and libjpeg-turbo). (This amends the code added in R 3.3.0 as
|
||
the module name in jpeg-9c is not what that tested for.)
|
||
|
||
DEPRECATED AND DEFUNCT:
|
||
|
||
* Sys.timezone(location = FALSE) (which was a stop-gap measure for
|
||
Windows long ago) is deprecated. It no longer returns the value
|
||
of environment variable TZ (usually a location).
|
||
|
||
* Legacy support of make macros such as CXX1X is formally
|
||
deprecated: use the CXX11 forms instead.
|
||
|
||
BUG FIXES:
|
||
|
||
* power.prop.test() now warns when it cannot solve the problem,
|
||
typically because of impossible constraints. (PR#17345)
|
||
|
||
* removeSource() no longer erroneously removes NULL in certain
|
||
cases, thanks to D'enes T'oth.
|
||
|
||
* nls(`NO [mol/l]` ~ f(t)) and nls(y ~ a) now work. (Partly from
|
||
PR#17367)
|
||
|
||
* R CMD build checks for GNU cp rather than assuming Linux has it.
|
||
(PR#17370 says 'Alpine Linux' does not.)
|
||
|
||
* Non-UTF-8 multibyte character handling fixed more permanently
|
||
(PR#16732).
|
||
|
||
* sum(<large ints>, <stuff>) is more consistent. (PR#17372)
|
||
|
||
* rf() and rbeta() now also work correctly when ncp is not scalar,
|
||
notably when (partly) NA. (PR#17375)
|
||
|
||
* R CMD INSTALL now correctly sets C++ compiler flags when all
|
||
source files are in sub-directories of src.
|
||
|
||
-------------------------------------------------------------------
|
||
Mon Mar 12 20:29:28 UTC 2018 - crrodriguez@opensuse.org
|
||
|
||
- Do not buildrequire xorg-x11-devel but individual x libs.
|
||
|
||
-------------------------------------------------------------------
|
||
Thu Nov 30 10:17:27 UTC 2017 - detlef.steuer@gmx.de
|
||
|
||
- upstream updated to 3.4.3
|
||
|
||
CHANGES IN R 3.4.3:
|
||
|
||
INSTALLATION on a UNIX-ALIKE:
|
||
|
||
* A workaround has been added for the changes in location of
|
||
time-zone files in macOS 10.13 'High Sierra' and again in
|
||
10.13.1, so the default time zone is deduced correctly from the
|
||
system setting when R is configured with --with-internal-tzcode
|
||
(the default on macOS).
|
||
|
||
* R CMD javareconf has been updated to recognize the use of a Java
|
||
9 SDK on macOS.
|
||
|
||
BUG FIXES:
|
||
|
||
* raw(0) & raw(0) and raw(0) | raw(0) again return raw(0) (rather
|
||
than logical(0)).
|
||
|
||
* intToUtf8() converts integers corresponding to surrogate code
|
||
points to NA rather than invalid UTF-8, as well as values larger
|
||
than the current Unicode maximum of 0x10FFFF. (This aligns with
|
||
the current RFC3629.)
|
||
|
||
* Fix calling of methods on S4 generics that dispatch on ... when
|
||
the call contains ....
|
||
|
||
* Following Unicode 'Corrigendum 9', the UTF-8 representations of
|
||
U+FFFE and U+FFFF are now regarded as valid by utf8ToInt().
|
||
|
||
* range(c(TRUE, NA), finite = TRUE) and similar no longer return
|
||
NA. (Reported by Lukas Stadler.)
|
||
|
||
* The self starting function attr(SSlogis, "initial") now also
|
||
works when the y values have exact minimum zero and is slightly
|
||
changed in general, behaving symmetrically in the y range.
|
||
|
||
* The printing of named raw vectors is now formatted nicely as for
|
||
other such atomic vectors, thanks to Lukas Stadler.
|
||
|
||
-------------------------------------------------------------------
|
||
Fri Sep 29 07:47:28 UTC 2017 - detlef.steuer@gmx.de
|
||
|
||
- upstream update to 3.4.2
|
||
|
||
CHANGES IN R 3.4.2:
|
||
|
||
NEW FEATURES:
|
||
|
||
* Setting the LC_ALL category in Sys.setlocale() invalidates any
|
||
cached locale-specific day/month names and the AM/PM indicator
|
||
for strptime() (as setting LC_TIME has since R 3.1.0).
|
||
|
||
* The version of LAPACK included in the sources has been updated to
|
||
3.7.1, a bug-fix release.
|
||
|
||
* The default for tools::write_PACKAGES(rds_compress=) has been
|
||
changed to "xz" to match the compression used by CRAN.
|
||
|
||
* c() and unlist() are now more efficient in constructing the
|
||
names(.) of their return value, thanks to a proposal by Suharto
|
||
Anggono. (PR#17284)
|
||
|
||
UTILITIES:
|
||
|
||
* R CMD check checks for and R CMD build corrects CRLF line endings
|
||
in shell scripts configure and cleanup (even on Windows).
|
||
|
||
INSTALLATION on a UNIX-ALIKE:
|
||
|
||
* The order of selection of OpenMP flags has been changed: Oracle
|
||
Developer Studio 12.5 accepts -fopenmp and -xopenmp but only the
|
||
latter enables OpenMP so it is now tried first.
|
||
|
||
BUG FIXES:
|
||
|
||
* within(List, rm(x1, x2)) works correctly again, including when
|
||
List[["x2"]] is NULL.
|
||
|
||
* regexec(pattern, text, *) now applies as.character(.) to its
|
||
first two arguments, as documented.
|
||
|
||
* write.table() and related functions, writeLines(), and perhaps
|
||
other functions writing text to connections did not signal errors
|
||
when the writes failed, e.g. due to a disk being full. Errors
|
||
will now be signalled if detected during the write, warnings if
|
||
detected when the connection is closed. (PR#17243)
|
||
|
||
* rt() assumed the ncp parameter was a scalar. (PR#17306)
|
||
|
||
* menu(choices) with more than 10 choices which easily fit into one
|
||
getOption("width")-line no longer erroneously repeats choices.
|
||
(PR#17312)
|
||
|
||
* length()<- on a pairlist succeeds. (<URL:
|
||
https://stat.ethz.ch/pipermail/r-devel/2017-July/074680.html>)
|
||
|
||
* Language objects such as quote(("\n")) or R functions are
|
||
correctly printed again, where R 3.4.1 accidentally duplicated
|
||
the backslashes.
|
||
|
||
* Construction of names() for very large objects in c() and
|
||
unlist() now works, thanks to Suharto Anggono's patch proposals
|
||
in PR#17292.
|
||
|
||
* Resource leaks (and similar) reported by Steve Grubb fixed.
|
||
(PR#17314, PR#17316, PR#17317, PR#17318, PR#17319, PR#17320)
|
||
|
||
* model.matrix(~1, mf) now gets the row names from mf also when
|
||
they differ from 1:nrow(mf), fixing PR#14992 thanks to the
|
||
suggestion by Sebastian Meyer.
|
||
|
||
* sigma(fm) now takes the correct denominator degrees of freedom
|
||
for a fitted model with NA coefficients. (PR#17313)
|
||
|
||
* hist(x, "FD") no longer "dies" with a somewhat cryptic error
|
||
message when x has extreme outliers or IQR() zero: nclass.FD(x)
|
||
tries harder to find a robust bin width h in the latter case, and
|
||
hist.default(*, breaks) now checks and corrects a too large
|
||
breaks number. (PR#17274)
|
||
|
||
* callNextMethod() works for ... methods.
|
||
|
||
* qr.coef(qd, y) now has correct names also when qd is a complex QR
|
||
or stems from qr(*, LAPACK=TRUE).
|
||
|
||
* Setting options(device = *) to an invalid function no longer
|
||
segfaults when plotting is initiated. (PR#15883)
|
||
|
||
* encodeString(<very large string>) no longer segfaults.
|
||
(PR#15885)
|
||
|
||
* It is again possible to use configure --enable-maintainer-mode
|
||
without having installed notangle (it was required in R
|
||
3.4.[01]).
|
||
|
||
* S4 method dispatch on ... calls the method by name instead of
|
||
.Method (for consistency with default dispatch), and only
|
||
attempts to pass non-missing arguments from the generic.
|
||
|
||
* readRDS(textConnection(.)) works again. (PR#17325)
|
||
|
||
* (1:n)[-n] no longer segfaults for n <- 2.2e9 (on a platform with
|
||
enough RAM).
|
||
|
||
* x <- 1:2; tapply(x, list(x, x), function(x) "")[1,2] now
|
||
correctly returns NA. (PR#17333)
|
||
|
||
* Running of finalizers after explicit GC request moved from the R
|
||
interface do_gc to the C interface R_gc. This helps with
|
||
reclaiming inaccessible connections.
|
||
|
||
* help.search(topic) and ??topic matching topics in vignettes with
|
||
multiple file name extensions (e.g., *.md.rsp but not *.Rmd)
|
||
failed with an error when using options(help_type = "html").
|
||
|
||
* The X11 device no longer uses the Xlib backing store (PR#16497).
|
||
|
||
* array(character(), 1) now gives (a 1D array with) NA as has been
|
||
documented for a long time as in the other cases of zero-length
|
||
array initialization and also compatibly with matrix(character(),
|
||
*). As mentioned there, this also fixes PR#17333.
|
||
|
||
* splineDesign(.., derivs = 4) no longer segfaults.
|
||
|
||
* fisher.test(*, hybrid=TRUE) now (again) will use the hybrid
|
||
method when Cochran's conditions are met, fixing PR#16654.
|
||
|
||
-------------------------------------------------------------------
|
||
Thu Jul 27 08:01:11 UTC 2017 - detlef.steuer@gmx.de
|
||
|
||
- Corrected "bug" "https://bugzilla.suse.com/show_bug.cgi?id=1049503
|
||
R now installs zip and unzip, what in turn eases the installation
|
||
of packages directly from github via devtools.
|
||
|
||
-------------------------------------------------------------------
|
||
Fri Jun 30 10:40:03 UTC 2017 - detlef.steuer@gmx.de
|
||
|
||
- upstream update to 3.4.1
|
||
|
||
CHANGES IN R 3.4.1:
|
||
|
||
INSTALLATION on a UNIX-ALIKE:
|
||
|
||
* The deprecated support for PCRE versions older than 8.20 has been
|
||
removed.
|
||
|
||
BUG FIXES:
|
||
|
||
* getParseData() gave incorrect column information when code
|
||
contained multi-byte characters. (PR#17254)
|
||
|
||
* Asking for help using expressions like ?stats::cor() did not
|
||
work. (PR#17250)
|
||
|
||
* readRDS(url(....)) now works.
|
||
|
||
* R CMD Sweave again returns status = 0 on successful completion.
|
||
|
||
* Vignettes listed in .Rbuildignore were not being ignored
|
||
properly. (PR#17246)
|
||
|
||
* file.mtime() no longer returns NA on Windows when the file or
|
||
directory is being used by another process. This affected
|
||
installed.packages(), which is now protected against this.
|
||
|
||
* R CMD INSTALL Windows .zip file obeys --lock and --pkglock flags.
|
||
|
||
* (Windows only) The choose.files() function could return incorrect
|
||
results when called with multi = FALSE. (PR#17270)
|
||
|
||
* aggregate(<data.frame>, drop = FALSE) now also works in case of
|
||
near-equal numbers in by. (PR#16918)
|
||
|
||
* fourfoldplot() could encounter integer overflow when calculating
|
||
the odds ratio. (PR#17286)
|
||
|
||
* parse() no longer gives spurious warnings when extracting srcrefs
|
||
from a file not encoded in the current locale.
|
||
|
||
This was seen from R CMD check with inst/doc/*.R files, and check
|
||
has some additional protection for such files.
|
||
|
||
* print.noquote(x) now always returns its argument x (invisibly).
|
||
|
||
* Non-UTF-8 multibyte character sets were not handled properly in
|
||
source references. (PR#16732)
|
||
|
||
-------------------------------------------------------------------
|
||
Fri Apr 21 17:11:31 UTC 2017 - detlef.steuer@gmx.de
|
||
|
||
- upstream update to 3.4.0
|
||
|
||
CHANGES IN R 3.4.0:
|
||
|
||
SIGNIFICANT USER-VISIBLE CHANGES:
|
||
|
||
* (Unix-alike) The default methods for download.file() and url()
|
||
now choose "libcurl" except for file:// URLs. There will be
|
||
small changes in the format and wording of messages, including in
|
||
rare cases if an issue is a warning or an error. For example,
|
||
when HTTP re-direction occurs, some messages refer to the final
|
||
URL rather than the specified one.
|
||
|
||
Those who use proxies should check that their settings are
|
||
compatible (see ?download.file: the most commonly used forms work
|
||
for both "internal" and "libcurl").
|
||
|
||
* table() has been amended to be more internally consistent and
|
||
become back compatible to R <= 2.7.2 again. Consequently,
|
||
table(1:2, exclude = NULL) no longer contains a zero count for
|
||
<NA>, but useNA = "always" continues to do so.
|
||
|
||
* summary.default() no longer rounds, but its print method does
|
||
resulting in less extraneous rounding, notably of numbers in the
|
||
ten thousands.
|
||
|
||
* factor(x, exclude = L) behaves more rationally when x or L are
|
||
character vectors. Further, exclude = <factor> now behaves as
|
||
documented for long.
|
||
|
||
* Arithmetic, logic (&, |) and comparison (aka 'relational', e.g.,
|
||
<, ==) operations with arrays now behave consistently, notably
|
||
for arrays of length zero.
|
||
|
||
Arithmetic between length-1 arrays and longer non-arrays had
|
||
silently dropped the array attributes and recycled. This now
|
||
gives a warning and will signal an error in the future, as it has
|
||
always for logic and comparison operations in these cases (e.g.,
|
||
compare matrix(1,1) + 2:3 and matrix(1,1) < 2:3).
|
||
|
||
* The JIT ('Just In Time') byte-code compiler is now enabled by
|
||
default at its level 3. This means functions will be compiled on
|
||
first or second use and top-level loops will be compiled and then
|
||
run. (Thanks to Tomas Kalibera for extensive work to make this
|
||
possible.)
|
||
|
||
For now, the compiler will not compile code containing explicit
|
||
calls to browser(): this is to support single stepping from the
|
||
browser() call.
|
||
|
||
JIT compilation can be disabled for the rest of the session using
|
||
compiler::enableJIT(0) or by setting environment variable
|
||
R_ENABLE_JIT to 0.
|
||
|
||
* xtabs() works more consistently with NAs, also in its result no
|
||
longer setting them to 0. Further, a new logical option addNA
|
||
allows to count NAs where appropriate. Additionally, for the
|
||
case sparse = TRUE, the result's dimnames are identical to the
|
||
default case's.
|
||
|
||
* Matrix products now consistently bypass BLAS when the inputs have
|
||
NaN/Inf values. Performance of the check of inputs has been
|
||
improved. Performance when BLAS is used is improved for
|
||
matrix/vector and vector/matrix multiplication (DGEMV is now used
|
||
instead of DGEMM).
|
||
|
||
One can now choose from alternative matrix product
|
||
implementations _via_ options(matprod = ). The "internal"
|
||
implementation is not optimized for speed but consistent in
|
||
precision with other summations in R (using long double
|
||
accumulators where available). "blas" calls BLAS directly for
|
||
best speed, but usually with undefined behavior for inputs with
|
||
NaN/Inf.
|
||
|
||
* factor() now uses order() to sort its levels, not sort.list().
|
||
This makes factor() support custom vector-like objects if methods
|
||
for the appropriate generics are defined. This change has the
|
||
side effect of making factor() succeed on empty or length-one
|
||
non-atomic vector(-like) types (e.g., list), where it failed
|
||
before.
|
||
|
||
NEW FEATURES:
|
||
|
||
* User errors such as integrate(f, 0:1, 2) are now caught.
|
||
|
||
* Add signature argument to debug(), debugonce(), undebug() and
|
||
isdebugged() for more conveniently debugging S3 and S4 methods.
|
||
(Based on a patch by Gabe Becker.)
|
||
|
||
* Add utils::debugcall() and utils::undebugcall() for debugging the
|
||
function that would be called by evaluating the given expression.
|
||
When the call is to an S4 generic or standard S3 generic,
|
||
debugcall() debugs the method that would be dispatched. A number
|
||
of internal utilities were added to support this, most notably
|
||
utils::isS3stdGeneric(). (Based on a patch by Gabe Becker.)
|
||
|
||
* Add utils::strcapture(). Given a character vector and a regular
|
||
expression containing capture expressions, strcapture() will
|
||
extract the captured tokens into a tabular data structure,
|
||
typically a data.frame.
|
||
|
||
* str() and strOptions() get a new option drop.deparse.attr with
|
||
improved but _changed_ default behaviour for expressions. For
|
||
expression objects x, str(x) now may remove extraneous white
|
||
space and truncate long lines.
|
||
|
||
* str(<looooooooong_string>) is no longer very slow; inspired by
|
||
Mikko Korpela's proposal in PR#16527.
|
||
|
||
* str(x)'s default method is more "accurate" and hence somewhat
|
||
more generous in displaying character vectors; this will
|
||
occasionally change R outputs (and need changes to some
|
||
*.Rout(.save) files).
|
||
|
||
For a classed integer vector such as x <- xtabs(~ c(1,9,9,9)),
|
||
str(x) now shows both the class and "int", instead of only the
|
||
latter.
|
||
|
||
* isSymmetric(m) is much faster for large asymmetric matrices m
|
||
_via_ pre-tests and a new option tol1 (with which strict back
|
||
compatibility is possible but not the default).
|
||
|
||
* The result of eigen() now is of class "eigen" in the default case
|
||
when eigenvectors are computed.
|
||
|
||
* Zero-length date and date-time objects (of classes "POSIX[cl]?t")
|
||
now print() "recognizably".
|
||
|
||
* xy.coords() and xyz.coords() get a new setLab option.
|
||
|
||
* The method argument of sort.list(), order() and sort.int() gains
|
||
an "auto" option (the default) which should behave the same as
|
||
before when method was not supplied.
|
||
|
||
* stopifnot(E, ..) now reports differences when E is a call to
|
||
all.equal() and that is not true.
|
||
|
||
* boxplot(<formula>, *) gain optional arguments drop, sep, and
|
||
lex.order to pass to split.default() which itself gains an
|
||
argument lex.order to pass to interaction() for more flexibility.
|
||
|
||
* The plot() method for ppr() has enhanced default labels (xmin and
|
||
main).
|
||
|
||
* sample.int() gains an explicit useHash option (with a back
|
||
compatible default).
|
||
|
||
* identical() gains an ignore.srcref option which drops "srcref"
|
||
and similar attributes when true (as by default).
|
||
|
||
* diag(x, nrow = n) now preserves typeof(x), also for logical,
|
||
integer and raw x (and as previously for complex and numeric).
|
||
|
||
* smooth.spline() now allows direct specification of lambda, gets a
|
||
hatvalues() method and keeps tol in the result, and optionally
|
||
parts of the internal matrix computations.
|
||
|
||
* addNA() is faster now, e.g. when applied twice. (Part of
|
||
PR#16895.)
|
||
|
||
* New option rstandard(<lm>, type = "predicted") provides the
|
||
"PRESS"-related leave-one-out cross-validation errors for linear
|
||
models.
|
||
|
||
* After seven years of deprecation, duplicated factor levels now
|
||
produce a warning when printed and an error in levels<- instead
|
||
of a warning.
|
||
|
||
* Invalid factors, e.g., with duplicated levels (invalid but
|
||
constructable) now give a warning when printed, _via_ new
|
||
function .valid.factor().
|
||
|
||
* sessionInfo() has been updated for Apple's change in OS naming as
|
||
from '10.12' ('macOS Sierra' _vs_ 'OS X El Capitan').
|
||
|
||
Its toLatex() method now includes the running component.
|
||
|
||
* options(interrupt=) can be used to specify a default action for
|
||
user interrupts. For now, if this option is not set and the
|
||
error option is set, then an unhandled user interrupt invokes the
|
||
error option. (This may be dropped in the future as interrupt
|
||
conditions are not error conditions.)
|
||
|
||
* In most cases user interrupt handlers will be called with a
|
||
"resume" restart available. Handlers can invoke this restart to
|
||
resume computation. At the browser prompt the r command will
|
||
invoke a "resume" restart if one is available. Some read
|
||
operations cannot be resumed properly when interrupted and do not
|
||
provide a "resume" restart.
|
||
|
||
* Radix sort is now chosen by method = "auto" for sort.int() for
|
||
double vectors (and hence used for sort() for unclassed double
|
||
vectors), excluding 'long' vectors.
|
||
|
||
sort.int(method = "radix") no longer rounds double vectors.
|
||
|
||
* The default and data.frame methods for stack() preserve the names
|
||
of empty elements in the levels of the ind column of the return
|
||
value. Set the new drop argument to TRUE for the previous
|
||
behavior.
|
||
|
||
* Speedup in simplify2array() and hence sapply() and mapply() (for
|
||
the case of names and common length > 1), thanks to Suharto
|
||
Anggono's PR#17118.
|
||
|
||
* table(x, exclude = NULL) now sets useNA = "ifany" (instead of
|
||
"always"). Together with the bug fixes for this case, this
|
||
recovers more consistent behaviour compatible to older versions
|
||
of R. As a consequence, summary() for a logical vector no longer
|
||
reports (zero) counts for NA when there are no NAs.
|
||
|
||
* dump.frames() gets a new option include.GlobalEnv which allows to
|
||
also dump the global environment, thanks to Andreas Kersting's
|
||
proposal in PR#17116.
|
||
|
||
* system.time() now uses message() instead of cat() when terminated
|
||
early, such that suppressMessages() has an effect; suggested by
|
||
Ben Bolker.
|
||
|
||
* citation() supports inst/CITATION files from package source
|
||
trees, with lib.loc pointing to the directory containing the
|
||
package.
|
||
|
||
* try() gains a new argument outFile with a default that can be
|
||
modified _via_ options(try.outFile = .), useful notably for
|
||
Sweave.
|
||
|
||
* The unexported low-level functions in package parallel for
|
||
passing serialized R objects to and from forked children now
|
||
support long vectors on 64-bit platforms. This removes some
|
||
limits on higher-level functions such as mclapply() (but
|
||
returning gigabyte results from forked processes _via_
|
||
serialization should be avoided if at all possible).
|
||
|
||
* Connections now print() without error even if invalid, e.g. after
|
||
having been destroyed.
|
||
|
||
* apropos() and find(simple.words = FALSE) no longer match object
|
||
names starting with . which are known to be internal objects
|
||
(such as .__S3MethodsTable__.).
|
||
|
||
* Convenience function hasName() has been added; it is intended to
|
||
replace the common idiom !is.null(x$name) without the usually
|
||
unintended partial name matching.
|
||
|
||
* strcapture() no longer fixes column names nor coerces strings to
|
||
factors (suggested by Bill Dunlap).
|
||
|
||
* strcapture() returns NA for non-matching values in x (suggested
|
||
by Bill Dunlap).
|
||
|
||
* source() gets new optional arguments, notably exprs; this is made
|
||
use of in the new utility function withAutoprint().
|
||
|
||
* sys.source() gets a new toplevel.env argument. This argument is
|
||
useful for frameworks running package tests; contributed by Tomas
|
||
Kalibera.
|
||
|
||
* Sys.setFileTime() and file.copy(copy.date = TRUE) will set
|
||
timestamps with fractions of seconds on platforms/filesystems
|
||
which support this.
|
||
|
||
* (Windows only.) file.info() now returns file timestamps including
|
||
fractions of seconds; it has done so on other platforms since R
|
||
2.14.0. (NB: some filesystems do not record modification and
|
||
access timestamps to sub-second resolution.)
|
||
|
||
* The license check enabled by options(checkPackageLicense = TRUE)
|
||
is now done when the package's namespace is first loaded.
|
||
|
||
* ppr() and supsmu() get an optional trace argument, and ppr(..,
|
||
sm.method = ..spline) is no longer limited to sample size n <=
|
||
2500.
|
||
|
||
* The POSIXct method for print() gets optional tz and usetz
|
||
arguments, thanks to a report from Jennifer S. Lyon.
|
||
|
||
* New function check_packages_in_dir_details() in package tools for
|
||
analyzing package-check log files to obtain check details.
|
||
|
||
* Package tools now exports function CRAN_package_db() for
|
||
obtaining information about current packages in the CRAN package
|
||
repository, and several functions for obtaining the check status
|
||
of these packages.
|
||
|
||
* The (default) Stangle driver Rtangle allows annotate to be a
|
||
function and gets a new drop.evalFALSE option.
|
||
|
||
* The default method for quantile(x, prob) should now be monotone
|
||
in prob, even in border cases, see PR#16672.
|
||
|
||
* bug.report() now tries to extract an email address from a
|
||
BugReports field, and if there is none, from a Contacts field.
|
||
|
||
* The format() and print() methods for object.size() results get
|
||
new options standard and digits; notably, standard = "IEC" and
|
||
standard = "SI" allow more standard (but less common)
|
||
abbreviations than the default ones, e.g. for kilobytes. (From
|
||
contributions by Henrik Bengtsson.)
|
||
|
||
* If a reference class has a validity method, validObject will be
|
||
called automatically from the default initialization method for
|
||
reference classes.
|
||
|
||
* tapply() gets new option default = NA allowing to change the
|
||
previously hardcoded value.
|
||
|
||
* read.dcf() now consistently interprets any 'whitespace' to be
|
||
stripped to include newlines.
|
||
|
||
* The maximum number of DLLs that can be loaded into R e.g. _via_
|
||
dyn.load() can now be increased by setting the environment
|
||
variable R_MAX_NUM_DLLS before starting R.
|
||
|
||
* Assigning to an element of a vector beyond the current length now
|
||
over-allocates by a small fraction. The new vector is marked
|
||
internally as growable, and the true length of the new vector is
|
||
stored in the truelength field. This makes building up a vector
|
||
result by assigning to the next element beyond the current length
|
||
more efficient, though pre-allocating is still preferred. The
|
||
implementation is subject to change and not intended to be used
|
||
in packages at this time.
|
||
|
||
* Loading the parallel package namespace no longer sets or changes
|
||
the .Random.seed, even if R_PARALLEL_PORT is unset.
|
||
|
||
NB: This can break reproducibility of output, and did for a CRAN
|
||
package.
|
||
|
||
* Methods "wget" and "curl" for download.file() now give an R error
|
||
rather than a non-zero return value when the external command has
|
||
a non-zero status.
|
||
|
||
* Encoding name "utf8" is mapped to "UTF-8". Many implementations
|
||
of iconv accept "utf8", but not GNU libiconv (including the late
|
||
2016 version 1.15).
|
||
|
||
* sessionInfo() shows the full paths to the library or executable
|
||
files providing the BLAS/LAPACK implementations currently in use
|
||
(not available on Windows).
|
||
|
||
* The binning algorithm used by bandwidth selectors bw.ucv(),
|
||
bw.bcv() and bw.SJ() switches to a version linear in the input
|
||
size n for n > nb/2. (The calculations are the same, but for
|
||
larger n/nb it is worth doing the binning in advance.)
|
||
|
||
* There is a new option PCRE_study which controls when grep(perl =
|
||
TRUE) and friends 'study' the compiled pattern. Previously this
|
||
was done for 11 or more input strings: it now defaults to 10 or
|
||
more (but most examples need many more for the difference from
|
||
studying to be noticeable).
|
||
|
||
* grep(perl = TRUE) and friends can now make use of PCRE's
|
||
Just-In-Time mechanism, for PCRE >= 8.20 on platforms where JIT
|
||
is supported. It is used by default whenever the pattern is
|
||
studied (see the previous item). (Based on a patch from Mikko
|
||
Korpela.)
|
||
|
||
This is controlled by a new option PCRE_use_JIT.
|
||
|
||
Note that in general this makes little difference to the speed,
|
||
and may take a little longer: its benefits are most evident on
|
||
strings of thousands of characters. As a side effect it reduces
|
||
the chances of C stack overflow in the PCRE library on very long
|
||
strings (millions of characters, but see next item).
|
||
|
||
Warning: segfaults were seen using PCRE with JIT enabled on
|
||
64-bit Sparc builds.
|
||
|
||
* There is a new option PCRE_limit_recursion for grep(perl = TRUE)
|
||
and friends to set a recursion limit taking into account R's
|
||
estimate of the remaining C stack space (or 10000 if that is not
|
||
available). This reduces the chance of C stack overflow, but
|
||
because it is conservative may report a non-match (with a
|
||
warning) in examples that matched before. By default it is
|
||
enabled if any input string has 1000 or more bytes. (PR#16757)
|
||
|
||
* getGraphicsEvent() now works on X11(type = "cairo") devices.
|
||
Thanks to Frederick Eaton (for reviving an earlier patch).
|
||
|
||
* There is a new argument onIdle for getGraphicsEvent(), which
|
||
allows an R function to be run whenever there are no pending
|
||
graphics events. This is currently only supported on X11
|
||
devices. Thanks to Frederick Eaton.
|
||
|
||
* The deriv() and similar functions now can compute derivatives of
|
||
log1p(), sinpi() and similar one-argument functions, thanks to a
|
||
contribution by Jerry Lewis.
|
||
|
||
* median() gains a formal ... argument, so methods with extra
|
||
arguments can be provided.
|
||
|
||
* strwrap() reduces indent if it is more than half width rather
|
||
than giving an error. (Suggested by Bill Dunlap.)
|
||
|
||
* When the condition code in if(.) or while(.) is not of length
|
||
one, an error instead of a warning may be triggered by setting an
|
||
environment variable, see the help page.
|
||
|
||
* Formatting and printing of bibliography entries (bibentry) is
|
||
more flexible and better documented. Apart from setting
|
||
options(citation.bibtex.max = 99) you can also use
|
||
print(<citation>, bibtex=TRUE) (or format(..)) to get the BibTeX
|
||
entries in the case of more than one entry. This also affects
|
||
citation(). Contributions to enable style = "html+bibtex" are
|
||
welcome.
|
||
|
||
C-LEVEL FACILITIES:
|
||
|
||
* Entry points R_MakeExternalPtrFn and R_ExternalPtrFn are now
|
||
declared in header Rinternals.h to facilitate creating and
|
||
retrieving an R external pointer from a C function pointer
|
||
without ISO C warnings about the conversion of function pointers.
|
||
|
||
* There was an exception for the native Solaris C++ compiler to the
|
||
dropping (in R 3.3.0) of legacy C++ headers from headers such as
|
||
R.h and Rmath.h - this has now been removed. That compiler has
|
||
strict C++98 compliance hence does not include extensions in its
|
||
(non-legacy) C++ headers: some packages will need to request
|
||
C++11 or replace non-C++98 calls such as lgamma: see SS1.6.4 of
|
||
'Writing R Extensions'.
|
||
|
||
Because it is needed by about 70 CRAN packages, headers R.h and
|
||
Rmath.h still declare
|
||
|
||
use namespace std;
|
||
|
||
when included on Solaris.
|
||
|
||
* When included from C++, the R headers now use forms such as
|
||
std::FILE directly rather than including the line
|
||
|
||
using std::FILE;
|
||
|
||
C++ code including these headers might be relying on the latter.
|
||
|
||
* Headers R_ext/BLAS.h and R_ext/Lapack.h have many improved
|
||
declarations including const for double-precision complex
|
||
routines. _Inter alia_ this avoids warnings when passing 'string
|
||
literal' arguments from C++11 code.
|
||
|
||
* Headers for Unix-only facilities R_ext/GetX11Image.h,
|
||
R_ext/QuartzDevice.h and R_ext/eventloop.h are no longer
|
||
installed on Windows.
|
||
|
||
* No-longer-installed headers GraphicsBase.h, RGraphics.h,
|
||
Rmodules/RX11.h and Rmodules/Rlapack.h which had a LGPL license
|
||
no longer do so.
|
||
|
||
* HAVE_UINTPTR_T is now defined where appropriate by Rconfig.h so
|
||
that it can be included before Rinterface.h when CSTACK_DEFNS is
|
||
defined and a C compiler (not C++) is in use. Rinterface.h now
|
||
includes C header stdint.h or C++11 header cstdint where needed.
|
||
|
||
* Package tools has a new function
|
||
package_native_routine_registration_skeleton() to assist adding
|
||
native-symbol registration to a package. See its help and SS5.4.1
|
||
of 'Writing R Extensions' for how to use it. (At the time it was
|
||
added it successfully automated adding registration to over 90%
|
||
of CRAN packages which lacked it. Many of the failures were
|
||
newly-detected bugs in the packages, e.g. 50 packages called
|
||
entry points with varying numbers of arguments and 65 packages
|
||
called entry points not in the package.)
|
||
|
||
INSTALLATION on a UNIX-ALIKE:
|
||
|
||
* readline headers (and not just the library) are required unless
|
||
configuring with --with-readline=no.
|
||
|
||
* configure now adds a compiler switch for C++11 code, even if the
|
||
compiler supports C++11 by default. (This ensures that g++ 6.x
|
||
uses C++11 mode and not its default mode of C++14 with 'GNU
|
||
extensions'.)
|
||
|
||
The tests for C++11 compliance are now much more comprehensive.
|
||
For gcc < 4.8, the tests from R 3.3.0 are used in order to
|
||
maintain the same behaviour on Linux distributions with long-term
|
||
support.
|
||
|
||
* An alternative compiler for C++11 is now specified with CXX11,
|
||
not CXX1X. Likewise C++11 flags are specified with CXX11FLAGS and
|
||
the standard (e.g., -std=gnu++11 is specified with CXX11STD.
|
||
|
||
* configure now tests for a C++14-compliant compiler by testing
|
||
some basic features. This by default tries flags for the
|
||
compiler specified by CXX11, but an alternative compiler, options
|
||
and standard can be specified by variables CXX14, CXX14FLAGS and
|
||
CXX14STD (e.g., -std=gnu++14).
|
||
|
||
* There is a new macro CXXSTD to help specify the standard for C++
|
||
code, e.g. -std=c++98. This makes it easier to work with
|
||
compilers which default to a later standard: for example, with
|
||
CXX=g++6 CXXSTD=-std=c++98 configure will select commands for g++
|
||
6.x which conform to C++11 and C++14 where specified but
|
||
otherwise use C++98.
|
||
|
||
* Support for the defunct IRIX and OSF/1 OSes and Alpha CPU has
|
||
been removed.
|
||
|
||
* configure checks that the compiler specified by $CXX $CXXFLAGS is
|
||
able to compile C++ code.
|
||
|
||
* configure checks for the required header sys/select.h (or
|
||
sys/time.h on legacy systems) and system call select and aborts
|
||
if they are not found.
|
||
|
||
* If available, the POSIX 2008 system call utimensat will be used
|
||
by Sys.setFileTime() and file.copy(copy.date = TRUE). This may
|
||
result in slightly more accurate file times. (It is available on
|
||
Linux and FreeBSD but not macOS.)
|
||
|
||
* The minimum version requirement for libcurl has been reduced to
|
||
7.22.0, although at least 7.28.0 is preferred and earlier
|
||
versions are little tested. (This is to support Debian 7
|
||
'Wheezy' LTS and Ubuntu 'Precise' 12.04 LTS, although the latter
|
||
is close to end-of-life.)
|
||
|
||
* configure tests for a C++17-compliant compiler. The tests are
|
||
experimental and subject to change in the future.
|
||
|
||
INCLUDED SOFTWARE:
|
||
|
||
* (Windows only) Tcl/Tk version 8.6.4 is now included in the binary
|
||
builds. The tcltk*.chm help file is no longer included; please
|
||
consult the online help at <URL: http://www.tcl.tk/man/> instead.
|
||
|
||
* The version of LAPACK included in the sources has been updated to
|
||
3.7.0: no new routines have been added to R.
|
||
|
||
PACKAGE INSTALLATION:
|
||
|
||
* There is support for compiling C++14 or C++17 code in packages on
|
||
suitable platforms: see 'Writing R Extensions' for how to request
|
||
this.
|
||
|
||
* The order of flags when LinkingTo other packages has been changed
|
||
so their include directories come earlier, before those specified
|
||
in CPPFLAGS. This will only have an effect if non-system include
|
||
directories are included with -I flags in CPPFLAGS (and so not
|
||
the default -I/usr/local/include which is treated as a system
|
||
include directory on most platforms).
|
||
|
||
* Packages which register native routines for .C or .Fortran need
|
||
to be re-installed for this version (unless installed with
|
||
R-devel SVN revision r72375 or later).
|
||
|
||
* Make variables with names containing CXX1X are deprecated in
|
||
favour of those using CXX11, but for the time being are still
|
||
made available _via_ file etc/Makeconf. Packages using them
|
||
should be converted to the new forms and made dependent on R (>=
|
||
3.4.0).
|
||
|
||
-------------------------------------------------------------------
|
||
Tue Apr 18 08:27:14 UTC 2017 - detlef.steuer@gmx.de
|
||
|
||
- And again that ldconfig call. Newline was obviously wrong.
|
||
Hopefully correct now.
|
||
|
||
-------------------------------------------------------------------
|
||
Tue Apr 4 09:12:24 UTC 2017 - detlef.steuer@gmx.de
|
||
|
||
- Jan Engelhardt <jengelh@inai.de> asked for reverting the change
|
||
to the ldconfig call. So be it.
|
||
|
||
-------------------------------------------------------------------
|
||
Tue Mar 21 12:19:32 UTC 2017 - detlef.steuer@gmx.de
|
||
|
||
- improvements for
|
||
a) calling /sbin/ldconfig, which no longer gives a warning
|
||
b) unregistering info-pages in %preun instead of %postun
|
||
|
||
-------------------------------------------------------------------
|
||
Tue Mar 7 08:25:48 UTC 2017 - detlef.steuer@gmx.de
|
||
|
||
- a change in OBS now requires a BuildRequire: shadow for
|
||
some openSUSE releases.
|
||
|
||
-------------------------------------------------------------------
|
||
Mon Mar 6 11:36:54 UTC 2017 - detlef.steuer@gmx.de
|
||
|
||
- upstream release 3.3.3
|
||
|
||
- Most important changes
|
||
CHANGES IN R 3.3.3:
|
||
|
||
NEW FEATURES:
|
||
|
||
* Changes when redirection of a http:// URL to a https:// URL is
|
||
encountered:
|
||
|
||
* The internal methods of download.file() and url() now report
|
||
that they cannot follow this (rather than failing silently).
|
||
|
||
* (Unix-alike) download.file(method = "auto") (the default)
|
||
re-tries with method = "libcurl".
|
||
|
||
* (Unix-alike) url(method = "default") with an explicit open
|
||
argument re-tries with method = "libcurl". This covers many
|
||
of the usages, e.g. readLines() with a URL argument.
|
||
|
||
INSTALLATION on a UNIX-ALIKE:
|
||
|
||
* The configure check for the zlib version is now robust to
|
||
versions longer than 5 characters, including 1.2.11.
|
||
|
||
UTILITIES:
|
||
|
||
* Environmental variable _R_CHECK_TESTS_NLINES_ controls how R CMD
|
||
check reports failing tests (see SS8 of the 'R Internals' manual).
|
||
|
||
DEPRECATED AND DEFUNCT:
|
||
|
||
* (C-level Native routine registration.) The undocumented styles
|
||
field of the components of R_CMethodDef and R_FortranMethodDef is
|
||
deprecated.
|
||
|
||
BUG FIXES:
|
||
|
||
* vapply(x, *) now works with long vectors x. (PR#17174)
|
||
|
||
* isS3method("is.na.data.frame") and similar are correct now.
|
||
(PR#17171)
|
||
|
||
* grepRaw(<long>, <short>, fixed = TRUE) now works, thanks to a
|
||
patch by Mikko Korpela. (PR#17132)
|
||
|
||
* Package installation into a library where the package exists
|
||
_via_ symbolic link now should work wherever Sys.readlink()
|
||
works, resolving PR#16725.
|
||
|
||
* "Cincinnati" was missing an "n" in the precip dataset.
|
||
|
||
* Fix buffer overflow vulnerability in pdf() when loading an
|
||
encoding file. Reported by Talos (TALOS-2016-0227).
|
||
|
||
* getDLLRegisteredRoutines() now produces its warning correctly
|
||
when multiple DLLs match, thanks to Matt Dowle's PR#17184.
|
||
|
||
* Sys.timezone() now returns non-NA also on platforms such as
|
||
Ubuntu 14.04.5 LTS, thanks to Mikko Korpela's PR#17186.
|
||
|
||
* format(x) for an illegal "POSIXlt" object x no longer segfaults.
|
||
|
||
* methods(f) now also works for f "(" or "{".
|
||
|
||
* (Windows only) dir.create() did not check the length of the path
|
||
to create, and so could overflow a buffer and crash R.
|
||
(PR#17206)
|
||
|
||
* On some systems, very small hexadecimal numbers in hex notation
|
||
would underflow to zero. (PR#17199)
|
||
|
||
* pmin() and pmax() now work again for ordered factors and 0-length
|
||
S3 classed objects, thanks to Suharto Anggono's PR#17195 and
|
||
PR#17200.
|
||
|
||
* bug.report() did not do any validity checking on a package's
|
||
BugReports field. It now ignores an empty field, removes leading
|
||
whitespace and only attempts to open http:// and https:// URLs,
|
||
falling back to emailing the maintainer.
|
||
|
||
* Bandwidth selectors bw.ucv() and bw.SJ() gave incorrect answers
|
||
or incorrectly reported an error (because of integer overflow)
|
||
for inputs longer than 46341. Similarly for bw.bcv() at length
|
||
5793.
|
||
|
||
Another possible integer overflow is checked and may result in an
|
||
error report (rather than an incorrect result) for much longer
|
||
inputs (millions for a smooth distribution).
|
||
|
||
* findMethod() failed if the active signature had expanded beyond
|
||
what a particular package used. (Example with packages XR and
|
||
XRJulia on CRAN.)
|
||
|
||
* qbeta() underflowed too early in some very asymmetric cases.
|
||
(PR#17178)
|
||
|
||
* R CMD Rd2pdf had problems with packages with non-ASCII titles in
|
||
.Rd files (usually the titles were omitted).
|
||
|
||
-------------------------------------------------------------------
|
||
Mon Oct 31 11:50:08 UTC 2016 - detlef.steuer@gmx.de
|
||
|
||
- upstream release 3.3.2
|
||
|
||
- Most important changes
|
||
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.)
|
||
|
||
* (Windows only) R CMD SHLIB failed when a symbol in the resulting
|
||
library had the same name as a keyword in the .def file.
|
||
(PR#17130)
|
||
|
||
* pmax() and pmin() now work with (more ?) classed objects, such
|
||
as "Matrix" from the Matrix package, as documented for a long
|
||
time.
|
||
|
||
* axis(side, x = D) and hence Axis() and plot() now work correctly
|
||
for "Date" and time objects D, even when "time goes backward",
|
||
e.g., with decreasing xlim. (Reported by William May.)
|
||
|
||
* str(I(matrix(..))) now looks as always intended.
|
||
|
||
* plot.ts(), the plot() method for time series, now respects cex,
|
||
lwd and lty. (Reported by Greg Werbin.)
|
||
|
||
* parallel::mccollect() now returns a named list (as documented)
|
||
when called with wait = FALSE. (Reported by Michel Lang.)
|
||
|
||
* If a package added a class to a class union in another package,
|
||
loading the first package gave erroneous warnings about
|
||
"undefined subclass".
|
||
|
||
* c()'s argument use.names is documented now, as belonging to the
|
||
(C internal) default method. In "parallel", argument recursive
|
||
is also moved from the generic to the default method, such that
|
||
the formal argument list of base generic c() is just (...).
|
||
|
||
* rbeta(4, NA) and similarly rgamma() and rnbinom() now return
|
||
NaN's with a warning, as other r<dist>(), and as documented.
|
||
(PR#17155)
|
||
|
||
* Using options(checkPackageLicense = TRUE) no longer requires
|
||
acceptance of the licence for non-default standard packages such
|
||
as compiler. (Reported by Mikko Korpela.)
|
||
|
||
* split(<very_long>, *) now works even when the split off parts are
|
||
long. (PR#17139)
|
||
|
||
* min() and max() now also work correctly when the argument list
|
||
starts with character(0). (PR#17160)
|
||
|
||
* Subsetting very large matrices (prod(dim(.)) >= 2^31) now works
|
||
thanks to Michael Schubmehl's PR#17158.
|
||
|
||
* bartlett.test() used residual sums of squares instead of
|
||
variances, when the argument was a list of lm objects. (Reported
|
||
by Jens Ledet Jensen).
|
||
|
||
* plot(<lm>, which = *) now correctly labels the contour lines for
|
||
the standardized residuals for which = 6. It also takes the
|
||
correct p in case of singularities (also for which = 5).
|
||
(PR#17161)
|
||
|
||
* xtabs(~ exclude) no longer fails from wrong scope, thanks to
|
||
Suharto Anggono's PR#17147.
|
||
|
||
* Reference class calls to methods() did not re-analyse previously
|
||
defined methods, meaning that calls to methods defined later
|
||
would fail. (Reported by Charles Tilford).
|
||
|
||
* findInterval(x, vec, left.open = TRUE) misbehaved in some cases.
|
||
(Reported by Dmitriy Chernykh.)
|
||
|
||
-------------------------------------------------------------------
|
||
Fri Jul 1 16:17:11 UTC 2016 - toddrme2178@gmail.com
|
||
|
||
- Fix typo in Group tag.
|
||
|
||
-------------------------------------------------------------------
|
||
Tue Jun 21 09:26:17 UTC 2016 - detlef.steuer@gmx.de
|
||
|
||
- upstream release 3.3.1
|
||
|
||
- Most important changes
|
||
CHANGES IN R 3.3.1:
|
||
|
||
BUG FIXES:
|
||
|
||
* R CMD INSTALL and hence install.packages() gave an internal error
|
||
installing a package called description from a tarball on a
|
||
case-insensitive file system.
|
||
|
||
* match(x, t) (and hence x %in% t) failed when x was of length one,
|
||
and either character and x and t only differed in their Encoding
|
||
or when x and t where complex with NAs or NaNs. (PR#16885.)
|
||
|
||
* unloadNamespace(ns) also works again when ns is a 'namespace', as
|
||
from getNamespace().
|
||
|
||
* rgamma(1,Inf) or rgamma(1, 0,0) no longer give NaN but the
|
||
correct limit.
|
||
|
||
* length(baseenv()) is correct now.
|
||
|
||
* pretty(d, ..) for date-time d rarely failed when "halfmonth" time
|
||
steps were tried (PR#16923) and on 'inaccurate' platforms such as
|
||
32-bit windows or a configuration with --disable-long-double; see
|
||
comment #15 of PR#16761.
|
||
|
||
* In text.default(x, y, labels), the rarely(?) used default for
|
||
labels is now correct also for the case of a 2-column matrix x
|
||
and missing y.
|
||
* as.factor(c(a = 1L)) preserves names() again as in R < 3.1.0.
|
||
|
||
* strtrim(""[0], 0[0]) now works.
|
||
|
||
* Use of Ctrl-C to terminate a reverse incremental search started
|
||
by Ctrl-R in the readline-based Unix terminal interface is now
|
||
supported for readline >= 6.3 (Ctrl-G always worked). (PR#16603)
|
||
|
||
* diff(<difftime>) now keeps the "units" attribute, as subtraction
|
||
already did, PR#16940.
|
||
|
||
-------------------------------------------------------------------
|
||
Wed May 18 07:58:59 UTC 2016 - detlef.steuer@gmx.de
|
||
|
||
- further cleanup of spec file.
|
||
Removed unneeded explicit Requires for
|
||
libcairo2/libfreetype6/liblzma5/libreadline6
|
||
Removed removal of backup file that was meanwhile removed upstream.
|
||
|
||
-------------------------------------------------------------------
|
||
Wed May 11 14:36:53 UTC 2016 - detlef.steuer@gmx.de
|
||
|
||
- clean up of spec file after comments from Jan Engelhardt in
|
||
https://build.opensuse.org/request/show/393426
|
||
|
||
Some unneeded explicit BuildRequires removed.
|
||
|
||
-------------------------------------------------------------------
|
||
Tue May 3 13:31:13 UTC 2016 - detlef.steuer@gmx.de
|
||
|
||
- tre.patch was removed.
|
||
|
||
-------------------------------------------------------------------
|
||
Tue May 3 11:30:09 UTC 2016 - detlef.steuer@gmx.de
|
||
|
||
- and libbz2-devel needed, too.
|
||
|
||
-------------------------------------------------------------------
|
||
Tue May 3 11:00:15 UTC 2016 - detlef.steuer@gmx.de
|
||
|
||
- added BuildRequires: bzip2
|
||
for i586.
|
||
|
||
-------------------------------------------------------------------
|
||
Tue May 3 10:24:09 UTC 2016 - detlef.steuer@gmx.de
|
||
|
||
- upstream release 3.3.0
|
||
|
||
CHANGES IN R 3.3.0:
|
||
|
||
SIGNIFICANT USER-VISIBLE CHANGES:
|
||
|
||
* nchar(x, *)'s argument keepNA governing how the result for NAs in
|
||
x is determined, gets a new default keepNA = NA which returns NA
|
||
where x is NA, except for type = "width" which still returns 2,
|
||
the formatting / printing width of NA.
|
||
|
||
* All builds have support for https: URLs in the default methods
|
||
for download.file(), url() and code making use of them.
|
||
|
||
Unfortunately that cannot guarantee that any particular https:
|
||
URL can be accessed. For example, server and client have to
|
||
successfully negotiate a cryptographic protocol (TLS/SSL, ...)
|
||
and the server's identity has to be verifiable _via_ the
|
||
available certificates. Different access methods may allow
|
||
different protocols or use private certificate bundles: we
|
||
encountered a https: CRAN mirror which could be accessed by one
|
||
browser but not by another nor by download.file() on the same
|
||
Linux machine.
|
||
|
||
NEW FEATURES:
|
||
|
||
* The print method for methods() gains a byclass argument.
|
||
|
||
* New functions validEnc() and validUTF8() to give access to the
|
||
validity checks for inputs used by grep() and friends.
|
||
|
||
* Experimental new functionality for S3 method checking, notably
|
||
isS3method().
|
||
|
||
Also, the names of the R 'language elements' are exported as
|
||
character vector tools::langElts.
|
||
|
||
* str(x) now displays "Time-Series" also for matrix (multivariate)
|
||
time-series, i.e. when is.ts(x) is true.
|
||
|
||
* (Windows only) The GUI menu item to install local packages now
|
||
accepts *.tar.gz files as well as *.zip files (but defaults to
|
||
the latter).
|
||
|
||
* New programmeR's utility function chkDots().
|
||
|
||
* D() now signals an error when given invalid input, rather than
|
||
silently returning NA. (Request of John Nash.)
|
||
|
||
* formula objects are slightly more "first class": e.g., formula()
|
||
or new("formula", y ~ x) are now valid. Similarly, for "table",
|
||
"ordered" and "summary.table". Packages defining S4 classes with
|
||
the above S3/S4 classes as slots should be reinstalled.
|
||
|
||
* New function strrep() for repeating the elements of a character
|
||
vector.
|
||
|
||
* rapply() preserves attributes on the list when how = "replace".
|
||
|
||
* New S3 generic function sigma() with methods for extracting the
|
||
estimated standard deviation aka "residual standard deviation"
|
||
from a fitted model.
|
||
|
||
* news() now displays R and package news files within the HTML help
|
||
system if it is available. If no news file is found, a visible
|
||
NULL is returned to the console.
|
||
|
||
* as.raster(x) now also accepts raw arrays x assuming values in
|
||
0:255.
|
||
|
||
* Subscripting of matrix/array objects of type "expression" is now
|
||
supported.
|
||
|
||
* type.convert("i") now returns a factor instead of a complex value
|
||
with zero real part and missing imaginary part.
|
||
|
||
* Graphics devices cairo_pdf() and cairo_ps() now allow non-default
|
||
values of the cairographics 'fallback resolution' to be set.
|
||
|
||
This now defaults to 300 on all platforms: that is the default
|
||
documented by cairographics, but apparently was not used by all
|
||
system installations.
|
||
|
||
* file() gains an explicit method argument rather than implicitly
|
||
using getOption("url.method", "default").
|
||
|
||
* Thanks to a patch from Tomas Kalibera, x[x != 0] is now typically
|
||
faster than x[which(x != 0)] (in the case where x has no NAs, the
|
||
two are equivalent).
|
||
|
||
* read.table() now always uses the names for a named colClasses
|
||
argument (previously names were only used when colClasses was too
|
||
short). (In part, wish of PR#16478.)
|
||
|
||
* (Windows only) download.file() with default method = "auto" and a
|
||
ftps:// URL chooses "libcurl" if that is available.
|
||
|
||
* The out-of-the box Bioconductor mirror has been changed to one
|
||
using https://: use chooseBioCmirror() to choose a http:// mirror
|
||
if required.
|
||
|
||
* The data frame and formula methods for aggregate() gain a drop
|
||
argument.
|
||
|
||
* available.packages() gains a repos argument.
|
||
|
||
* The undocumented switching of methods for url() on https: and
|
||
ftps: URLs is confined to method = "default" (and documented).
|
||
|
||
* smoothScatter() gains a ret.selection argument.
|
||
|
||
* qr() no longer has a ... argument to pass additional arguments to
|
||
methods.
|
||
|
||
* [ has a method for class "table".
|
||
|
||
* It is now possible (again) to replayPlot() a display list
|
||
snapshot that was created by recordPlot() in a different R
|
||
session.
|
||
|
||
It is still not a good idea to use snapshots as a persistent
|
||
storage format for R plots, but it is now not completely silly to
|
||
use a snapshot as a format for transferring an R plot between two
|
||
R sessions.
|
||
|
||
The underlying changes mean that packages providing graphics
|
||
devices (e.g., Cairo, RSvgDevice, cairoDevice, tikzDevice) will
|
||
need to be reinstalled.
|
||
|
||
Code for restoring snapshots was contributed by Jeroen Ooms and
|
||
JJ Allaire.
|
||
|
||
Some testing code is available at <URL:
|
||
https://github.com/pmur002/R-display-list>.
|
||
|
||
* tools::undoc(dir = D) and codoc(dir = D) now also work when D is
|
||
a directory whose normalizePath()ed version does not end in the
|
||
package name, e.g. from a symlink.
|
||
|
||
* abbreviate() has more support for multi-byte character sets - it
|
||
no longer removes bytes within characters and knows about Latin
|
||
vowels with accents. It is still only really suitable for (most)
|
||
European languages, and still warns on non-ASCII input.
|
||
|
||
abbreviate(use.classes = FALSE) is now implemented, and that is
|
||
more suitable for non-European languages.
|
||
|
||
* match(x, table) is faster (sometimes by an order of magnitude)
|
||
when x is of length one and incomparables is unchanged, thanks to
|
||
Peter Haverty (PR#16491).
|
||
|
||
* More consistent, partly not back-compatible behavior of NA and
|
||
NaN coercion to complex numbers, operations less often resulting
|
||
in complex NA (NA_complex_).
|
||
|
||
* lengths() considers methods for length and [[ on x, so it should
|
||
work automatically on any objects for which appropriate methods
|
||
on those generics are defined.
|
||
|
||
* The logic for selecting the default screen device on OS X has
|
||
been simplified: it is now quartz() if that is available even if
|
||
environment variable DISPLAY has been set by the user.
|
||
|
||
The choice can easily be overridden _via_ environment variable
|
||
R_INTERACTIVE_DEVICE.
|
||
|
||
* On Unix-like platforms which support the getline C library
|
||
function, system(*,intern = TRUE) no longer truncates (output)
|
||
lines longer than 8192 characters, thanks to Karl Millar.
|
||
(PR#16544)
|
||
|
||
* rank() gains a ties.method = "last" option, for convenience (and
|
||
symmetry).
|
||
|
||
* regmatches(invert = NA) can now be used to extract both
|
||
non-matched and matched substrings.
|
||
|
||
* data.frame() gains argument fix.empty.names; as.data.frame.list()
|
||
gets new cut.names, col.names and fix.empty.names.
|
||
|
||
* plot(x ~ x, *) now warns that it is the same as plot(x ~ 1, *).
|
||
|
||
* recordPlot() has new arguments load and attach to allow package
|
||
names to be stored as part of a recorded plot. replayPlot() has
|
||
new argument reloadPkgs to load/attach any package names that
|
||
were stored as part of a recorded plot.
|
||
|
||
* S4 dispatch works within calls to .Internal(). This means
|
||
explicit S4 generics are no longer needed for unlist() and
|
||
as.vector().
|
||
|
||
* Only font family names starting with "Hershey" (and not "Her" as
|
||
before) are given special treatment by the graphics engine.
|
||
|
||
* S4 values are automatically coerced to vector (via as.vector)
|
||
when subassigned into atomic vectors.
|
||
|
||
* findInterval() gets a left.open option.
|
||
|
||
* The version of LAPACK included in the sources has been updated to
|
||
3.6.0, including those 'deprecated' routines which were
|
||
previously included. _Ca_ 40 double-complex routines have been
|
||
added at the request of a package maintainer.
|
||
|
||
As before, the details of what is included are in
|
||
src/modules/lapack/README and this now gives information on
|
||
earlier additions.
|
||
|
||
* tapply() has been made considerably more efficient without
|
||
changing functionality, thanks to proposals from Peter Haverty
|
||
and Suharto Anggono. (PR#16640)
|
||
|
||
* match.arg(arg) (the one-argument case) is faster; so is
|
||
sort.int(). (PR#16640)
|
||
|
||
* The format method for object_size objects now also accepts
|
||
"binary" units such as "KiB" and e.g., "Tb". (Partly from
|
||
PR#16649.)
|
||
|
||
* Profiling now records calls of the form foo::bar and some similar
|
||
cases directly rather than as calls to <Anonymous>. Contributed
|
||
by Winston Chang.
|
||
|
||
* New string utilities startsWith(x, prefix) and endsWith(x,
|
||
suffix). Also provide speedups for some grepl("^...",*) uses
|
||
(related to proposals in PR#16490).
|
||
|
||
* Reference class finalizers run at exit, as well as on garbage
|
||
collection.
|
||
|
||
* Avoid parallel dependency on stats for port choice and random
|
||
number seeds. (PR#16668)
|
||
|
||
* The radix sort algorithm and implementation from data.table
|
||
(forder) replaces the previous radix (counting) sort and adds a
|
||
new method for order(). Contributed by Matt Dowle and Arun
|
||
Srinivasan, the new algorithm supports logical, integer (even
|
||
with large values), real, and character vectors. It outperforms
|
||
all other methods, but there are some caveats (see ?sort).
|
||
|
||
* The order() function gains a method argument for choosing between
|
||
"shell" and "radix".
|
||
|
||
* New function grouping() returns a permutation that stably
|
||
rearranges data so that identical values are adjacent. The
|
||
return value includes extra partitioning information on the
|
||
groups. The implementation came included with the new radix
|
||
sort.
|
||
|
||
* rhyper(nn, m, n, k) no longer returns NA when one of the three
|
||
parameters exceeds the maximal integer.
|
||
|
||
* switch() now warns when no alternatives are provided.
|
||
|
||
* parallel::detectCores() now has default logical = TRUE on all
|
||
platforms - as this was the default on Windows, this change only
|
||
affects Sparc Solaris.
|
||
|
||
Option logical = FALSE is now supported on Linux and recent
|
||
versions of OS X (for the latter, thanks to a suggestion of Kyaw
|
||
Sint).
|
||
|
||
* hist() for "Date" or "POSIXt" objects would sometimes give
|
||
misleading labels on the breaks, as they were set to the day
|
||
before the start of the period being displayed. The display
|
||
format has been changed, and the shift of the start day has been
|
||
made conditional on right = TRUE (the default). (PR#16679)
|
||
|
||
* R now uses a new version of the logo (donated to the R Foundation
|
||
by RStudio). It is defined in .svg format, so will resize
|
||
without unnecessary degradation when displayed on HTML
|
||
pages-there is also a vector PDF version. Thanks to Dirk
|
||
Eddelbuettel for producing the corresponding X11 icon.
|
||
|
||
* New function .traceback() returns the stack trace which
|
||
traceback() prints.
|
||
|
||
* lengths() dispatches internally.
|
||
|
||
* dotchart() gains a pt.cex argument to control the size of points
|
||
separately from the size of plot labels. Thanks to Michael
|
||
Friendly and Milan Bouchet-Valat for ideas and patches.
|
||
|
||
* as.roman(ch) now correctly deals with more diverse character
|
||
vectors ch; also arithmetic with the resulting roman numbers
|
||
works in more cases. (PR#16779)
|
||
|
||
* prcomp() gains a new option rank. allowing to directly aim for
|
||
less than min(n,p) PC's. The summary() and its print() method
|
||
have been amended, notably for this case.
|
||
|
||
* gzcon() gains a new option text, which marks the connection as
|
||
text-oriented (so e.g. pushBack() works). It is still always
|
||
opened in binary mode.
|
||
|
||
* The import() namespace directive now accepts an argument except
|
||
which names symbols to exclude from the imports. The except
|
||
expression should evaluate to a character vector (after
|
||
substituting symbols for strings). See Writing R Extensions.
|
||
|
||
* New convenience function Rcmd() in package tools for invoking R
|
||
CMD tools from within R.
|
||
|
||
* New functions makevars_user() and makevars_site() in package
|
||
tools to determine the location of the user and site specific
|
||
Makevars files for customizing package compilation.
|
||
|
||
|
||
-------------------------------------------------------------------
|
||
Fri Apr 15 08:40:10 UTC 2016 - detlef.steuer@gmx.de
|
||
|
||
- CHANGES IN R 3.2.5:
|
||
|
||
BUG FIXES:
|
||
|
||
• format.POSIXlt() behaved incorrectly in R 3.2.4. E.g. the output
|
||
of format(as.POSIXlt(paste0(1940:2000,"-01-01"), tz = "CET"),
|
||
usetz = TRUE) ended in two "CEST" time formats.
|
||
|
||
• A typo in the Makefile for src/extra/xz prevented builds of
|
||
liblzma.a. (Notice that this will become unbundled in 3.3.0.)
|
||
|
||
-------------------------------------------------------------------
|
||
Thu Mar 17 09:32:01 UTC 2016 - detlef.steuer@gmx.de
|
||
|
||
- upstrem releases minorst bug fix release
|
||
NEWS: The 3.2.4 release had two annoyances which we would rather
|
||
not have in an "ultra-stable" release, designed to hang around
|
||
for the duration of the 3.3 series. One was a relatively minor
|
||
Makefile issue affecting system using R's bundled lzma library.
|
||
The other, rather more serious, affected printing and formatting
|
||
of POSIXlt objects, which would unpredictably get the Daylight
|
||
Savings Time wrong.
|
||
|
||
-------------------------------------------------------------------
|
||
Fri Mar 11 15:53:46 UTC 2016 - detlef.steuer@gmx.de
|
||
|
||
- Some version numbers of recommended packages corrected
|
||
|
||
-------------------------------------------------------------------
|
||
Fri Mar 11 15:38:35 UTC 2016 - detlef.steuer@gmx.de
|
||
|
||
- Release numbers for sub-packages improved
|
||
|
||
-------------------------------------------------------------------
|
||
Fri Mar 11 09:58:13 UTC 2016 - detlef.steuer@gmx.de
|
||
|
||
- added MakefileTypo.patch to enable building for 12.2
|
||
was a one charcter show stopper
|
||
|
||
-------------------------------------------------------------------
|
||
Thu Mar 10 12:52:04 UTC 2016 - detlef.steuer@gmx.de
|
||
|
||
- upstream release 3.2.4, only minor improvements
|
||
CHANGES IN R 3.2.4:
|
||
|
||
NEW FEATURES:
|
||
|
||
• install.packages() and related functions now give a more
|
||
informative warning when an attempt is made to install a base
|
||
package.
|
||
|
||
• summary(x) now prints with less rounding when x contains infinite
|
||
values. (Request of PR#16620.)
|
||
|
||
• provideDimnames() gets an optional unique argument.
|
||
|
||
• shQuote() gains type = "cmd2" for quoting in cmd.exe in Windows.
|
||
(Response to PR#16636.)
|
||
|
||
• The data.frame method of rbind() gains an optional argument
|
||
stringsAsFactors (instead of only depending on
|
||
getOption("stringsAsFactors")).
|
||
|
||
• smooth(x, *) now also works for long vectors.
|
||
|
||
• tools::texi2dvi() has a workaround for problems with the texi2dvi
|
||
script supplied by texinfo 6.1.
|
||
|
||
It extracts more error messages from the LaTeX logs when in
|
||
emulation mode.
|
||
|
||
UTILITIES:
|
||
|
||
• R CMD check will leave a log file build_vignettes.log from the
|
||
re-building of vignettes in the .Rcheck directory if there is a
|
||
problem, and always if environment variable
|
||
_R_CHECK_ALWAYS_LOG_VIGNETTE_OUTPUT_ is set to a true value.
|
||
|
||
DEPRECATED AND DEFUNCT:
|
||
|
||
• Use of SUPPORT_OPENMP from header Rconfig.h is deprecated in
|
||
favour of the standard OpenMP define _OPENMP.
|
||
|
||
(This has been the recommendation in the manual for a while now.)
|
||
|
||
• The make macro AWK which is long unused by R itself but recorded
|
||
in file etc/Makeconf is deprecated and will be removed in R
|
||
3.3.0.
|
||
|
||
• The C header file S.h is no longer documented: its use should be
|
||
replaced by R.h.
|
||
|
||
-------------------------------------------------------------------
|
||
Mon Mar 7 12:54:57 UTC 2016 - detlef.steuer@gmx.de
|
||
|
||
- The big split up. What was a monolithic R-base*rpm now is
|
||
divided over 30 something packages, with the following layout.
|
||
|
||
R-base-3.2.3: dummy packages, contains all of R
|
||
Use R-base, if you don´t have a good understandig what it means
|
||
to install only parts of it!
|
||
|
||
R-base-devel-3.2.3: dummy, contains R-core-devel
|
||
R-core-3.2.3: R core, no packages at all
|
||
R-core-devel-3.2.3: devel files
|
||
R-core-libs-3.2.3: contains Rlib
|
||
R-core-doc-3.2.3: all the documentation of R-core
|
||
|
||
R-core-packages-3.2.3: dummy package to load all core packages, that are
|
||
R-compiler-3.2.3,
|
||
R-datasets-3.2.3,
|
||
R-grDevices-3.2.3,
|
||
R-graphics-3.2.3,
|
||
R-grid-3.2.3,
|
||
R-methods-3.2.3,
|
||
R-parallel-3.2.3,
|
||
R-splines-3.2.3,
|
||
R-stats-3.2.3,
|
||
R-stats4-3.2.3,
|
||
R-tcltk-3.2.3,
|
||
R-tools-3.2.3,
|
||
R-utils-3.2.3.
|
||
|
||
Each of these packages may be installed alone.
|
||
|
||
R-recommended-packages-3.2.3: dummy package to load all recommeded
|
||
packages, that are
|
||
R-boot-1.3.17,
|
||
R-class-7.3.14,
|
||
R-cluster-2.0.3,
|
||
R-codetools-0.2.14,
|
||
R-foreign-0.8.66,
|
||
R-KernSmooth-2.23.15,
|
||
R-lattice-0.20.33,
|
||
R-MASS-7.3.45,
|
||
R-Matrix-1.2.3, R-Matrix-devel-1.2.3,
|
||
R-mgcv-1.8.9,
|
||
R-nlme-3.1.122,
|
||
R-nnet-7.3.11,
|
||
R-rpart-4.1.10,
|
||
R-spatial-7.3.11,
|
||
R-survival-2.38.3.
|
||
|
||
Each of these packages may be installed alone.
|
||
|
||
-------------------------------------------------------------------
|
||
Fri Dec 11 08:46:52 UTC 2015 - detlef.steuer@gmx.de
|
||
|
||
- Upstream release R-3.2.3
|
||
|
||
CHANGES IN R 3.2.3:
|
||
|
||
NEW FEATURES:
|
||
|
||
* Some recently-added Windows time zone names have been added to
|
||
the conversion table used to convert these to Olson names.
|
||
(Including those relating to changes for Russia in Oct 2014, as
|
||
in PR#16503.)
|
||
|
||
* (Windows) Compatibility information has been added to the
|
||
manifests for Rgui.exe, Rterm.exe and Rscript.exe. This should
|
||
allow win.version() and Sys.info() to report the actual Windows
|
||
version up to Windows 10.
|
||
|
||
* Windows "wininet" FTP first tries EPSV / PASV mode rather than
|
||
only using active mode (reported by Dan Tenenbaum).
|
||
|
||
* which.min(x) and which.max(x) may be much faster for logical and
|
||
integer x and now also work for long vectors.
|
||
|
||
* The 'emulation' part of tools::texi2dvi() has been somewhat
|
||
enhanced, including supporting quiet = TRUE. It can be selected
|
||
by texi2dvi = "emulation".
|
||
|
||
(Windows) MiKTeX removed its texi2dvi.exe command in Sept 2015:
|
||
tools::texi2dvi() tries texify.exe if it is not found.
|
||
|
||
* (Windows only) Shortcuts for printing and saving have been added
|
||
to menus in Rgui.exe. (Request of PR#16572.)
|
||
|
||
* loess(..., iterTrace=TRUE) now provides diagnostics for
|
||
robustness iterations, and the print() method for
|
||
summary(<loess>) shows slightly more.
|
||
|
||
* The included version of PCRE has been updated to 8.38, a bug-fix
|
||
release.
|
||
|
||
* View() now displays nested data frames in a more friendly way.
|
||
(Request with patch in PR#15915.)
|
||
|
||
INSTALLATION and INCLUDED SOFTWARE:
|
||
|
||
* The included configuration code for libintl has been updated to
|
||
that from gettext version 0.19.5.1 - this should only affect how
|
||
an external library is detected (and the only known instance is
|
||
under OpenBSD). (Wish of PR#16464.)
|
||
|
||
* configure has a new argument --disable-java to disable the checks
|
||
for Java.
|
||
|
||
* The configure default for MAIN_LDFLAGS has been changed for the
|
||
FreeBSD, NetBSD and Hurd OSes to one more likely to work with
|
||
compilers other than gcc (FreeBSD 10 defaults to clang).
|
||
|
||
* configure now supports the OpenMP flags -fopenmp=libomp (clang)
|
||
and -qopenmp (Intel C).
|
||
|
||
* Various macros can be set to override the default behaviour of
|
||
configure when detecting OpenMP: see file config.site.
|
||
|
||
* Source installation on Windows has been modified to allow for
|
||
MiKTeX installations without texi2dvi.exe. See file
|
||
MkRules.dist.
|
||
|
||
BUG FIXES:
|
||
|
||
* regexpr(pat, x, perl = TRUE) with Python-style named capture did
|
||
not work correctly when x contained NA strings. (PR#16484)
|
||
|
||
* The description of dataset ToothGrowth has been
|
||
improved/corrected. (PR#15953)
|
||
|
||
* model.tables(type = "means") and hence TukeyHSD() now support
|
||
"aov" fits without an intercept term. (PR#16437)
|
||
|
||
* close() now reports the status of a pipe() connection opened with
|
||
an explicit open argument. (PR#16481)
|
||
|
||
* Coercing a list without names to a data frame is faster if the
|
||
elements are very long. (PR#16467)
|
||
|
||
* (Unix-only) Under some rare circumstances piping the output from
|
||
Rscript or R -f could result in attempting to close the input
|
||
file twice, possibly crashing the process. (PR#16500)
|
||
|
||
* (Windows) Sys.info() was out of step with win.version() and did
|
||
not report Windows 8.
|
||
|
||
* topenv(baseenv()) returns baseenv() again as in R 3.1.0 and
|
||
earlier. This also fixes compilerJIT(3) when used in .Rprofile.
|
||
|
||
* detach()ing the methods package keeps .isMethodsDispatchOn()
|
||
true, as long as the methods namespace is not unloaded.
|
||
|
||
* Removed some spurious warnings from configure about the
|
||
preprocessor not finding header files. (PR#15989)
|
||
|
||
* rchisq(*, df=0, ncp=0) now returns 0 instead of NaN, and
|
||
dchisq(*, df=0, ncp=*) also no longer returns NaN in limit cases
|
||
(where the limit is unique). (PR#16521)
|
||
|
||
* pchisq(*, df=0, ncp > 0, log.p=TRUE) no longer underflows (for
|
||
ncp > ~60).
|
||
|
||
* nchar(x, "w") returned -1 for characters it did not know about
|
||
(e.g. zero-width spaces): it now assumes 1. It now knows about
|
||
most zero-width characters and a few more double-width
|
||
characters.
|
||
|
||
* Help for which.min() is now more precise about behavior with
|
||
logical arguments. (PR#16532)
|
||
|
||
* The print width of character strings marked as "latin1" or
|
||
"bytes" was in some cases computed incorrectly.
|
||
|
||
* abbreviate() did not give names to the return value if minlength
|
||
was zero, unlike when it was positive.
|
||
|
||
* (Windows only) dir.create() did not always warn when it failed to
|
||
create a directory. (PR#16537)
|
||
|
||
* When operating in a non-UTF-8 multibyte locale (e.g. an East
|
||
Asian locale on Windows), grep() and related functions did not
|
||
handle UTF-8 strings properly. (PR#16264)
|
||
|
||
* read.dcf() sometimes misread lines longer than 8191 characters.
|
||
(Reported by Herv'e Pag`es with a patch.)
|
||
|
||
* within(df, ..) no longer drops columns whose name start with a
|
||
".".
|
||
|
||
* The built-in HTTP server converted entire Content-Type to
|
||
lowercase including parameters which can cause issues for
|
||
multi-part form boundaries (PR#16541).
|
||
|
||
* Modifying slots of S4 objects could fail when the methods package
|
||
was not attached. (PR#16545)
|
||
|
||
* splineDesign(*, outer.ok=TRUE) (splines) is better now
|
||
(PR#16549), and interpSpline() now allows sparse=TRUE for speedup
|
||
with non-small sizes.
|
||
|
||
* If the expression in the traceback was too long, traceback() did
|
||
not report the source line number. (Patch by Kirill M"uller.)
|
||
|
||
* The browser did not truncate the display of the function when
|
||
exiting with options("deparse.max.lines") set. (PR#16581)
|
||
|
||
* When bs(*, Boundary.knots=) had boundary knots inside the data
|
||
range, extrapolation was somewhat off. (Patch by Trevor Hastie.)
|
||
|
||
* var() and hence sd() warn about factor arguments which are
|
||
deprecated now. (PR#16564)
|
||
|
||
* loess(*, weights = *) stored wrong weights and hence gave
|
||
slightly wrong predictions for newdata. (PR#16587)
|
||
|
||
* aperm(a, *) now preserves names(dim(a)).
|
||
|
||
* poly(x, ..) now works when either raw=TRUE or coef is specified.
|
||
(PR#16597)
|
||
|
||
* data(package=*) is more careful in determining the path.
|
||
|
||
* prettyNum(*, decimal.mark, big.mark): fixed bug introduced when
|
||
fixing PR#16411.
|
||
|
||
-------------------------------------------------------------------
|
||
Thu Dec 10 15:48:39 UTC 2015 - detlef.steuer@gmx.de
|
||
|
||
- Reverse the whole split. Back to the big package.
|
||
Had user reports of broken installations.
|
||
R-base, R-base-devel and R-base-libs are provided for now.
|
||
The big split will come for 3.3.0
|
||
|
||
-------------------------------------------------------------------
|
||
Wed Dec 9 10:11:26 UTC 2015 - detlef.steuer@gmx.de
|
||
|
||
- R-base was changed from a giant monolith to thirty-some packages.
|
||
There were requests to use the libs without the interpreter.
|
||
Furthermore it is now possible to use a frugal installation of R.
|
||
|
||
The following binaries are built now:
|
||
R-base-3.2.2-5.1.x86_64.rpm : A Meta-package. Use this, and it looks
|
||
just like it looked the last 10 years.
|
||
Requires base and recommended packages.
|
||
R-base-devel-3.2.2-5.1.x86_64.rpm: Just for backward compatibility.
|
||
|
||
R-core-3.2.2-5.1.x86_64.rpm
|
||
R-core-libs-3.2.2-5.1.x86_64.rpm
|
||
R-core-devel-3.2.2-5.1.x86_64.rpm : The R-core packages install
|
||
a bare-bones R. No packages inculded.
|
||
|
||
R-grid-3.2.2-5.1.x86_64.rpm
|
||
R-graphics-3.2.2-5.1.x86_64.rpm
|
||
R-grDevices-3.2.2-5.1.x86_64.rpm
|
||
R-datasets-3.2.2-5.1.x86_64.rpm
|
||
R-stats4-3.2.2-5.1.x86_64.rpm
|
||
R-methods-3.2.2-5.1.x86_64.rpm
|
||
R-tcltk-3.2.2-5.1.x86_64.rpm
|
||
R-compiler-3.2.2-5.1.x86_64.rpm
|
||
R-parallel-3.2.2-5.1.x86_64.rpm
|
||
R-splines-3.2.2-5.1.x86_64.rpm
|
||
R-stats-3.2.2-5.1.x86_64.rpm
|
||
R-utils-3.2.2-5.1.x86_64.rpm
|
||
R-tools-3.2.2-5.1.x86_64.rpm : All the base packages.
|
||
|
||
R-recommended-3.2.2-5.1.x86_64.rpm : A meta-package including all
|
||
recommended packages.
|
||
|
||
R-cluster-2.0.3-5.1.x86_64.rpm
|
||
R-nlme-3.1.121-5.1.x86_64.rpm
|
||
R-lattice-0.20.33-5.1.x86_64.rpm
|
||
R-class-7.3.13-5.1.x86_64.rpm
|
||
R-Matrix-devel-1.2.2-5.1.x86_64.rpm
|
||
R-codetools-0.2.14-5.1.x86_64.rpm
|
||
R-survival-2.38.3-5.1.x86_64.rpm
|
||
R-rpart-4.1.10-5.1.x86_64.rpm
|
||
R-MASS-7.3.43-5.1.x86_64.rpm
|
||
R-mgcv-1.8.7-5.1.x86_64.rpm
|
||
R-foreign-0.8.65-5.1.x86_64.rpm
|
||
R-nnet-7.3.10-5.1.x86_64.rpm
|
||
R-Matrix-1.2.2-5.1.x86_64.rpm
|
||
R-boot-1.3.17-5.1.x86_64.rpm
|
||
R-KernSmooth-2.23.15-5.1.x86_64.rpm
|
||
R-spatial-7.3.10-5.1.x86_64.rpm : All recommended packaged.
|
||
Note: They now have their own version
|
||
numbers, so it should be much easier to
|
||
use newer Versions of the recommended
|
||
packages.
|
||
|
||
And the source RPM for all the above.
|
||
R-base-3.2.2-5.1.src.rpm
|
||
|
||
-------------------------------------------------------------------
|
||
Wed Aug 19 08:47:27 UTC 2015 - badshah400@gmail.com
|
||
|
||
- Disable building man files for openSUSE:42.
|
||
|
||
-------------------------------------------------------------------
|
||
Mon Aug 17 14:41:24 UTC 2015 - detlef.steuer@gmx.de
|
||
|
||
- Upstream release 3.2.2
|
||
- Most important
|
||
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
|
||
mirrors).
|
||
|
||
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).
|
||
|
||
NEW FEATURES:
|
||
|
||
* 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.
|
||
|
||
C-LEVEL FACILITIES:
|
||
|
||
* 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).
|
||
|
||
BUG FIXES:
|
||
|
||
* The HTML help page links to demo code failed due to a change in R
|
||
3.2.0. (PR#16432)
|
||
|
||
* 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
|
||
"expression".
|
||
|
||
* 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
|
||
documentation.
|
||
|
||
* 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
|
||
data.
|
||
|
||
* 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.
|
||
|
||
-------------------------------------------------------------------
|
||
Thu Jun 18 11:59:24 UTC 2015 - detlef.steuer@gmx.de
|
||
|
||
- Upstream release 3.2.1
|
||
- Improvement of build: include libcurl and texlive-dvips/
|
||
texlive-hevetic
|
||
- Most important
|
||
|
||
CHANGES IN R 3.2.1:
|
||
|
||
NEW FEATURES:
|
||
|
||
* utf8ToInt() now checks that its input is valid UTF-8 and returns
|
||
NA if it is not.
|
||
|
||
* install.packages() now allows type = "both" with repos = NULL if
|
||
it can infer the type of file.
|
||
|
||
* nchar(x, *) and nzchar(x) gain a new argument keepNA which
|
||
governs how the result for NAs in x is determined. For the R
|
||
3.2.x series, the default remains FALSE which is fully back
|
||
compatible. From R 3.3.0, the default will change to keepNA = NA
|
||
and you are advised to consider this for code portability.
|
||
|
||
* news() more flexibly extracts dates from package NEWS.Rd files.
|
||
|
||
* lengths(x) now also works (trivially) for atomic x and hence can
|
||
be used more generally as an efficient replacement of sapply(x,
|
||
length) and similar.
|
||
|
||
* The included version of PCRE has been updated to 8.37, a bug-fix
|
||
release.
|
||
|
||
* diag() no longer duplicates a matrix when extracting its
|
||
diagonal.
|
||
|
||
* as.character.srcref() gains an argument to allow characters
|
||
corresponding to a range of source references to be extracted.
|
||
|
||
BUG FIXES:
|
||
|
||
* acf() and ccf() now guarantee values strictly in [-1,1] (instead
|
||
of sometimes very slightly outside). PR#15832.
|
||
|
||
* as.integer("111111111111") now gives NA (with a warning) as it
|
||
does for the corresponding numeric or negative number coercions.
|
||
Further, as.integer(M + 0.1) now gives M (instead of NA) when M
|
||
is the maximal representable integer.
|
||
|
||
* On some platforms nchar(x, "c") and nchar(x, "w") would return
|
||
values (possibly NA) for inputs which were declared to be UTF-8
|
||
but were not, or for invalid strings without a marked encoding in
|
||
a multi-byte locale, rather than give an error. Additional
|
||
checks have been added to mitigate this.
|
||
|
||
* apply(a, M, function(u) c(X = ., Y = .)) again has dimnames
|
||
containing "X" and "Y" (as in R < 3.2.0).
|
||
|
||
* (Windows only) In some cases, the --clean option to R CMD INSTALL
|
||
could fail. (PR#16178)
|
||
|
||
* (Windows only) choose.files() would occasionally include
|
||
characters from the result of an earlier call in the result of a
|
||
later one. (PR#16270)
|
||
|
||
* A change in RSiteSearch() in R 3.2.0 caused it to submit invalid
|
||
URLs. (PR#16329)
|
||
|
||
* Rscript and command line R silently ignored incomplete statements
|
||
at the end of a script; now they are reported as parse errors.
|
||
(PR#16350)
|
||
|
||
* Parse data for very long strings was not stored. (PR#16354)
|
||
|
||
* plotNode(), the workhorse of the plot method for "dendrogram"s is
|
||
no longer recursive, thanks to Suharto Anggono, and hence also
|
||
works for deeply nested dendrograms. (PR#15215)
|
||
|
||
* The parser could overflow internally when given numbers in
|
||
scientific format with extremely large exponents. (PR#16358)
|
||
|
||
* If the CRAN mirror was not set, install.packages(type = "both")
|
||
and related functions could repeatedly query the user for it.
|
||
(Part of PR#16362)
|
||
|
||
* The low-level functions .rowSums() etc. did not check the length
|
||
of their argument, so could segfault. (PR#16367)
|
||
|
||
* The quietly argument of library() is now correctly propagated
|
||
from .getRequiredPackages2().
|
||
|
||
* Under some circumstances using the internal PCRE when building R
|
||
fron source would cause external libs such as -llzma to be
|
||
omitted from the main link.
|
||
|
||
* The .Primitive default methods of the logic operators, i.e., !, &
|
||
and |, now give correct error messages when appropriate, e.g.,
|
||
for `&`(TRUE) or `!`(). (PR#16385)
|
||
|
||
* cummax(x) now correctly propagates NAs also when x is of type
|
||
integer and begins with an NA.
|
||
|
||
* summaryRprof() could fail when the profile contained only two
|
||
records. (PR#16395)
|
||
|
||
* HTML vignettes opened using vignette() did not support links into
|
||
the rest of the HTML help system. (Links worked properly when
|
||
the vignette was opened using browseVignettes() or from within
|
||
the help system.)
|
||
|
||
* arima(*, xreg = .) (for d >= 1) computes estimated variances
|
||
based on a the number of effective observations as in R version
|
||
3.0.1 and earlier. (PR#16278)
|
||
|
||
* slotNames(.) is now correct for "signature" objects (mostly used
|
||
internally in methods).
|
||
|
||
* On some systems, the first string comparison after a locale
|
||
change would result in NA.
|
||
|
||
-------------------------------------------------------------------
|
||
Thu Apr 16 14:52:43 UTC 2015 - detlef.steuer@gmx.de
|
||
|
||
- Upstream release 3.2.0
|
||
- Most important
|
||
CHANGES IN 3.2.0:
|
||
NEW FEATURES:
|
||
|
||
* anyNA() gains a recursive argument.
|
||
|
||
* When x is missing and names is not false (including the default
|
||
value), Sys.getenv(x, names) returns an object of class "Dlist"
|
||
and hence prints tidily.
|
||
|
||
* (Windows.) shell() no longer consults the environment variable
|
||
SHELL: too many systems have been encountered where it was set
|
||
incorrectly (usually to a path where software was compiled, not
|
||
where it was installed). R_SHELL, the preferred way to select a
|
||
non-default shell, can be used instead.
|
||
|
||
* Some unusual arguments to embedFonts() can now be specified as
|
||
character vectors, and the defaults have been changed
|
||
accordingly.
|
||
|
||
* Functions in the Summary group duplicate less. (PR#15798)
|
||
|
||
* (Unix-alikes.) system(cmd, input = ) now uses
|
||
'shell-execution-environment' redirection, which will be more
|
||
natural if cmd is not a single command (but requires a
|
||
POSIX-compliant shell). (Wish of PR#15508)
|
||
|
||
* read.fwf() and read.DIF() gain a fileEncoding argument, for
|
||
convenience.
|
||
|
||
* Graphics devices can add attributes to their description in
|
||
.Device and .Devices. Several of those included with R use a
|
||
"filepath" attribute.
|
||
|
||
* pmatch() uses hashing in more cases and so is faster at the
|
||
expense of using more memory. (PR#15697)
|
||
|
||
* pairs() gains new arguments to select sets of variables to be
|
||
plotted against each other.
|
||
|
||
* file.info(, extra_cols = FALSE) allows a minimal set of columns
|
||
to be computed on Unix-alikes: on some systems without
|
||
properly-configured caching this can be significantly faster with
|
||
large file lists.
|
||
|
||
* New function dir.exists() in package base to test efficiently
|
||
whether one or more paths exist and are directories.
|
||
|
||
* dput() and friends gain new controls hexNumeric and digits17
|
||
which output double and complex quantities as, respectively,
|
||
binary fractions (exactly, see sprintf("%a")) and as decimals
|
||
with up to 17 significant digits.
|
||
|
||
* save(), saveRDS() and serialize() now support ascii = NA which
|
||
writes ASCII files using sprintf("%a") for double/complex
|
||
quantities. This is read-compatible with ascii = TRUE but avoids
|
||
binary->decimal->binary conversions with potential loss of
|
||
precision. Unfortunately the Windows C runtime's lack of C99
|
||
compliance means that the format cannot be read correctly there
|
||
in R before 3.1.2.
|
||
|
||
* The default for formatC(decimal.mark =) has been changed to be
|
||
getOption("OutDec"); this makes it more consistent with format()
|
||
and suitable for use in print methods, e.g. those for classes
|
||
"density", "ecdf", "stepfun" and "summary.lm".
|
||
|
||
getOption("OutDec") is now consulted by the print method for
|
||
class "kmeans", by cut(), dendrogram(), plot.ts() and quantile()
|
||
when constructing labels and for the report from legend(trace =
|
||
TRUE).
|
||
|
||
(In part, wish of PR#15819.)
|
||
|
||
* printNum() and hence format() and formatC() give a warning if
|
||
big.mark and decimal.mark are set to the same value (period and
|
||
comma are not uncommonly used for each, and this is a check that
|
||
conventions have not got mixed).
|
||
|
||
* merge() can create a result which uses long vectors on 64-bit
|
||
platforms.
|
||
|
||
* dget() gains a new argument keep.source which defaults to FALSE
|
||
for speed (dput() and dget() are most often used for data objects
|
||
where this can make dget() many times faster).
|
||
|
||
* Packages may now use a file of common macro definitions in their
|
||
help files, and may import definitions from other packages.
|
||
|
||
* A number of macros have been added in the new share/Rd directory
|
||
for use in package overview help pages, and promptPackage() now
|
||
makes use of them.
|
||
|
||
* tools::parse_Rd() gains a new permissive argument which converts
|
||
unrecognized macros into text. This is used by
|
||
utils:::format.bibentry to allow LaTeX markup to be ignored.
|
||
|
||
* options(OutDec =) can now specify a multi-byte character, e.g.,
|
||
options(OutDec = "\u00b7") in a UTF-8 locale.
|
||
|
||
* is.recursive(x) is no longer true when x is an external pointer,
|
||
a weak reference or byte code; the first enables all.equal(x, x)
|
||
when x <- getClass(.).
|
||
|
||
* ls() (aka objects()) and as.list.environment() gain a new
|
||
argument sorted.
|
||
|
||
* The "source" attribute (which has not been added to functions by
|
||
R since before R version 2.14.0) is no longer treated as special.
|
||
|
||
* Function returnValue() has been added to give on.exit() code
|
||
access to a function's return value for debugging purposes.
|
||
|
||
* crossprod(x, y) allows more matrix coercions when x or y are
|
||
vectors, now equalling t(x) %*% y in these cases (also reported
|
||
by Radford Neal). Similarly, tcrossprod(x,y) and %*% work in
|
||
more cases with vector arguments.
|
||
|
||
* Utility function dynGet() useful for detecting cycles, aka
|
||
infinite recursions.
|
||
|
||
* The byte-code compiler and interpreter include new instructions
|
||
that allow many scalar subsetting and assignment and scalar
|
||
arithmetic operations to be handled more efficiently. This can
|
||
result in significant performance improvements in scalar
|
||
numerical code.
|
||
|
||
* apply(m, 2, identity) is now the same as the matrix m when it has
|
||
_named_ row names.
|
||
|
||
* A new function debuggingState() has been added, allowing to
|
||
temporarily turn off debugging.
|
||
|
||
* example() gets a new optional argument run.donttest and
|
||
tools::Rd2ex() a corresponding commentDonttest, with a default
|
||
such that example(..) in help examples will run \donttest code
|
||
only if used interactively (a change in behaviour).
|
||
|
||
* rbind.data.frame() gains an optional argument make.row.names, for
|
||
potential speedup.
|
||
|
||
* New function extSoftVersion() to report on the versions of
|
||
third-party software in use in this session. Currently reports
|
||
versions of zlib, bzlib, the liblzma from xz, PCRE, ICU, TRE and
|
||
the iconv implementation.
|
||
|
||
A similar function grSoftVersion() in package grDevices reports
|
||
on third-party graphics software.
|
||
|
||
Function tcltk::tclVersion() reports the Tcl/Tk version.
|
||
|
||
* Calling callGeneric() without arguments now works with primitive
|
||
generics to some extent.
|
||
|
||
* vapply(x, FUN, FUN.VALUE) is more efficient notably for large
|
||
length(FUN.VALUE); as extension of PR#16061.
|
||
|
||
* as.table() now allows tables with one or more dimensions of
|
||
length 0 (such as as.table(integer())).
|
||
|
||
* names(x) <- NULL now clears the names of call and ... objects.
|
||
|
||
* library() will report a warning when an insufficient dependency
|
||
version is masking a sufficient one later on the library search
|
||
path.
|
||
|
||
* A new plot() method for class "raster" has been added.
|
||
|
||
* New check_packages_in_dir_changes() function in package tools for
|
||
conveniently analyzing how changing sources impacts the check
|
||
results of their reverse dependencies.
|
||
|
||
* Speed-up from Peter Haverty for ls() and
|
||
methods:::.requirePackage() speeding up package loading.
|
||
(PR#16133)
|
||
|
||
* New get0() function, combining exists() and get() in one call,
|
||
for efficiency.
|
||
|
||
* match.call() gains an envir argument for specifying the
|
||
environment from which to retrieve the ... in the call, if any;
|
||
this environment was wrong (or at least undesirable) when the
|
||
definition argument was a function.
|
||
|
||
* topenv() has been made .Internal() for speedup, based on Peter
|
||
Haverty's proposal in PR#16140.
|
||
|
||
* getOption() no longer calls options() in the main case.
|
||
|
||
* Optional use of libcurl (version 7.28.0 from Oct 2012 or later)
|
||
for Internet access:
|
||
|
||
* capabilities("libcurl") reports if this is available.
|
||
|
||
* libcurlVersion() reports the version in use, and other
|
||
details of the "libcurl" build including which URL schemes it
|
||
supports.
|
||
|
||
* curlGetHeaders() retrieves the headers for http://, https://,
|
||
ftp:// and ftps:// URLs: analysis of these headers can
|
||
provide insights into the `existence' of a URL (it might for
|
||
example be permanently redirected) and is so used in R CMD
|
||
check --as-cran.
|
||
|
||
* download.file() has a new optional method "libcurl" which
|
||
will handle more URL schemes, follow redirections, and allows
|
||
simultaneous downloads of multiple URLs.
|
||
|
||
* url() has a new method "libcurl" which handles more URL
|
||
schemes and follows redirections. The default method is
|
||
controlled by a new option url.method, which applies also to
|
||
the opening of URLs _via_ file() (which happens implicitly in
|
||
functions such as read.table.)
|
||
|
||
* When file() or url() is invoked with a https:// or ftps://
|
||
URL which the current method cannot handle, it switches to a
|
||
suitable method if one is available.
|
||
|
||
* (Windows.) The DLLs internet.dll and internet2.dll have been
|
||
merged. In this version it is safe to switch (repeatedly)
|
||
between the internal and Windows internet functions within an R
|
||
session.
|
||
|
||
The Windows internet functions are still selected by flag
|
||
--internet2 or setInternet2(). This can be overridden for an
|
||
url() connection _via_ its new method argument.
|
||
|
||
download.file() has new method "wininet", selected as the default
|
||
by --internet2 or setInternet2().
|
||
|
||
* parent.env<- can no longer modify the parent of a locked
|
||
namespace or namespace imports environment. Contributed by Karl
|
||
Millar.
|
||
|
||
* New function isLoadedNamespace() for readability and speed.
|
||
|
||
* names(env) now returns all the object names of an environment
|
||
env, equivalently to ls(env, all.names = TRUE, sorted = FALSE)
|
||
and also to the names of the corresponding list,
|
||
names(as.list(env, all.names = TRUE)). Note that although
|
||
names() returns a character vector, the names have no particular
|
||
ordering.
|
||
|
||
* The memory manager now grows the heap more aggressively. This
|
||
reduces the number of garbage collections, in particular while
|
||
data or code are loaded, at the expense of slightly increasing
|
||
the memory footprint.
|
||
|
||
* New function trimws() for removing leading/trailing whitespace.
|
||
|
||
* cbind() and rbind() now consider S4 inheritance during S3
|
||
dispatch and also obey deparse.level.
|
||
|
||
* cbind() and rbind() will delegate recursively to methods::cbind2
|
||
(methods::rbind2) when at least one argument is an S4 object and
|
||
S3 dispatch fails (due to ambiguity).
|
||
|
||
* (Windows.) download.file(quiet = FALSE) now uses text rather
|
||
than Windows progress bars in non-interactive use.
|
||
|
||
* New function hsearch_db() in package utils for building and
|
||
retrieving the help search database used by help.search(), along
|
||
with functions for inspecting the concepts and keywords in the
|
||
help search database.
|
||
|
||
* New function .getNamespaceInfo(), a no-check version of
|
||
getNamespaceInfo() mostly for internal speedups.
|
||
|
||
* The help search system now takes \keyword entries in Rd files
|
||
which are not standard keywords (as given in KEYWORDS in the R
|
||
documentation directory) as concepts. For standard keyword
|
||
entries the corresponding descriptions are additionally taken as
|
||
concepts.
|
||
|
||
* New lengths() function for getting the lengths of all elements in
|
||
a list.
|
||
|
||
* New function toTitleCase() in package tools, tailored to package
|
||
titles.
|
||
|
||
* The matrix methods of cbind() and rbind() allow matrices as
|
||
inputs which have 2^31 or more elements. (For cbind(), wish of
|
||
PR#16198.)
|
||
|
||
* The default method of image() has an explicit check for a numeric
|
||
or logical matrix (which was always required).
|
||
|
||
* URLencode() will not by default encode further URLs which appear
|
||
to be already encoded.
|
||
|
||
* BIC(mod) and BIC(mod, mod2) now give non-NA numbers for arima()
|
||
fitted models, as nobs(mod) now gives the number of "used"
|
||
observations for such models. This fixes PR#16198, quite
|
||
differently than proposed there.
|
||
|
||
* The print() methods for "htest", "pairwise.htest" and
|
||
"power.htest" objects now have a digits argument defaulting to (a
|
||
function of) getOption("digits"), and influencing all printed
|
||
numbers coherently. Unavoidably, this changes the display of
|
||
such test results in some cases.
|
||
|
||
* Code completion for namespaces now recognizes all loaded
|
||
namespaces, rather than only the ones that are also attached.
|
||
|
||
* The code completion mechanism can now be replaced by a
|
||
user-specified completer function, for (temporary) situations
|
||
where the usual code completion is inappropriate.
|
||
|
||
* unzip() will now warn if it is able to detect truncation when
|
||
unpacking a file of 4GB or more (related to PR#16243).
|
||
|
||
* methods() reports S4 in addition to S3 methods; output is
|
||
simplified when the class argument is used. .S3methods() and
|
||
methods::.S4methods() report S3 and S4 methods separately.
|
||
|
||
* Higher order functions such as the apply functions and Reduce()
|
||
now force arguments to the functions they apply in order to
|
||
eliminate undesirable interactions between lazy evaluation and
|
||
variable capture in closures. This resolves PR#16093.
|
||
|
||
INSTALLATION and INCLUDED SOFTWARE:
|
||
|
||
* The \donttest sections of R's help files can be tested by
|
||
make check TEST_DONTTEST=TRUE .
|
||
|
||
* It is possible to request the use of system valgrind headers
|
||
_via_ configure option --with-system-valgrind-headers: note the
|
||
possible future incompatibility of such headers discussed in the
|
||
'R Installation and Administration' manual. (Wish of PR#16068.)
|
||
|
||
* The included version of liblzma has been updated to xz-utils
|
||
5.0.7 (minor bug fixes from 5.0.5).
|
||
|
||
* configure options --with-system-zlib, --with-system-bzlib and
|
||
--with-system-pcre are now the default. For the time being there
|
||
is fallback to the versions included in the R sources if no
|
||
system versions are found or (unlikely) if they are too old.
|
||
|
||
Linux users should check that the -devel or -dev versions of
|
||
packages zlib, bzip2/libbz2 and pcre as well as
|
||
xz-devel/liblzma-dev (or similar names) are installed.
|
||
|
||
* configure by default looks for the texi2any script from texinfo
|
||
5.1 or later, rather than the makeinfo program. (makeinfo is a
|
||
link to the Perl script texi2any in texinfo 5.x.)
|
||
|
||
* R CMD INSTALL gains an option --built-timestamp=STAMP allowing
|
||
100% reproducible package building, thanks to Dirk Eddelbuettel.
|
||
|
||
UTILITIES:
|
||
|
||
* There is support for testing the \dontrun and \donttest parts of
|
||
examples in packages.
|
||
|
||
tools::testInstalledPackage() accepts new arguments
|
||
commentDontrun = FALSE and commentDonttest = FALSE.
|
||
|
||
R CMD check gains options --run-dontrun and --run-donttest.
|
||
|
||
* The HTML generated by tools::Rd2HTML() and tools::toHTML()
|
||
methods is now 'XHTML 1.0 Strict'.
|
||
|
||
* The compiler package's utility function setCompilerOptions() now
|
||
returns the old values invisibly. The initial optimization level
|
||
can also be set with the environment variable
|
||
R_COMPILER_OPTIMIZE.
|
||
|
||
* R CMD build adds a NeedsCompilation field if one is not already
|
||
present in the DESCRIPTION file.
|
||
|
||
* R CMD check gains option --test-dir to specify an alternative set
|
||
of tests to run.
|
||
|
||
* R CMD check will now by default continue with testing after many
|
||
types of errors, and will output a summary count of errors at the
|
||
end if any have occurred.
|
||
|
||
* R CMD check now checks that the Title and Description fields are
|
||
correctly terminated.
|
||
|
||
* R CMD check --as-cran now:
|
||
|
||
* checks a README.md file can be processed: this needs pandoc
|
||
installed.
|
||
|
||
* checks the existence and accessibility of URLs in the
|
||
DESCRIPTION, CITATION, NEWS.Rd and README.md files and in the
|
||
help files (provided the build has libcurl support).
|
||
|
||
* reports non-ASCII characters in R source files when there is
|
||
no package encoding declared in the DESCRIPTION file.
|
||
|
||
* reports (apparent) S3 methods exported but not registered.
|
||
|
||
* reports overwriting registered S3 methods from
|
||
base/recommended packages. (Such methods are replaced in the
|
||
affected package for the rest of the session, even if the
|
||
replacing namespace is unloaded.)
|
||
|
||
* reports if the Title field does not appear to be in title
|
||
case (see 'Writing R Extensions': there may be false
|
||
positives, but note that technical words should be
|
||
single-quoted and will then be accepted).
|
||
|
||
Most of these checks can also be selected by environment
|
||
variables: see the 'R Internals' manual.
|
||
|
||
C-LEVEL FACILITIES:
|
||
|
||
* New C API utility logspace_sum(logx[], n).
|
||
|
||
* Entry points rbinom_mu, rnbinom_mu and rmultinom are remapped (by
|
||
default) to Rf_rbinom_mu etc. This requires packages using them
|
||
to be re-installed.
|
||
|
||
* .C(DUP = FALSE) and .Fortran(DUP = FALSE) are now ignored, so
|
||
arguments are duplicated if DUP = TRUE would do so. As their
|
||
help has long said, .Call() is much preferred.
|
||
|
||
* New entry point R_allocLD, like R_alloc but guaranteed to have
|
||
sufficient alignment for long double pointers.
|
||
|
||
* isPairList() now returns TRUE for DOTSXP.
|
||
|
||
WINDOWS BUILD CHANGES:
|
||
|
||
A number of changes to the Windows build system are in development.
|
||
The following are currently in place.
|
||
|
||
* Installation using external binary distributions of zlib, bzip2,
|
||
liblzma, pcre, libpng, jpeglib and libtiff is now required, and
|
||
the build instructions have been revised.
|
||
|
||
* A new make target rsync-extsoft has been added to obtain copies
|
||
of the external libraries from CRAN.
|
||
|
||
* Building the manuals now requires texi2any from texinfo 5.1 or
|
||
later. CRAN binary builds include the manuals, but by default
|
||
builds from source will not, and they will be accessed from CRAN.
|
||
See the comments in src/gnuwin32/MkRules.dist for how to specify
|
||
the location of texi2any.
|
||
|
||
* (Windows) Changes have been made to support an experimental
|
||
Windows toolchain based on GCC 4.9.2. The default toolchain
|
||
continues to be based on GCC 4.6.3, as the new toolchain is not
|
||
yet stable enough. A change to a new toolchain is expected
|
||
during the R 3.2.x lifetime.
|
||
|
||
PACKAGE INSTALLATION:
|
||
|
||
* (Windows) The use of macro ZLIB_LIBS in file src/Makevars.win
|
||
(which has not been documented for a long time) now requires an
|
||
external libz.a to be available (it is part of the 'goodies' used
|
||
to compile Windows binary packages). It would be simpler to use
|
||
-lz instead.
|
||
|
||
* The default for option pkgType on platforms using binary packages
|
||
is now "both", so source packages will be tried if binary
|
||
versions are not available or not up to date.
|
||
|
||
There are options for what install.packages(type = "both")
|
||
(possibly called _via_ update.packages()) will do if compilation
|
||
of a source package is desirable: see ?options (under utils).
|
||
|
||
If you intend not to accept updates as source packages, you
|
||
should use update.packages(type = "binary").
|
||
|
||
DEPRECATED AND DEFUNCT:
|
||
|
||
* download.file(method = "lynx") is defunct.
|
||
|
||
* Building R using the included versions of zlib, bzip2, xz and
|
||
PCRE is deprecated: these are frozen (bar essential bug-fixes)
|
||
and will be removed for R 3.3.0.
|
||
|
||
* The configure option --with-valgrind-instrumentation=3 has been
|
||
withdrawn, as it did not work with recent valgrind headers: it is
|
||
now treated as level 2.
|
||
|
||
* The MethodsList class in package methods had been deprecated in R
|
||
2.11.0 and is defunct now. Functions using it are defunct if
|
||
they had been deprecated in R 2.11.0, and are deprecated now,
|
||
otherwise.
|
||
|
||
BUG FIXES:
|
||
|
||
* Fixed two obscure bugs in pairlist subassignment, reported by
|
||
Radford Neal as part of pqR issue 16.
|
||
|
||
* Fixes for bugs in handling empty arguments and argument matching
|
||
by name in log().
|
||
|
||
* all.equal() gains methods for environments and refClasses.
|
||
|
||
* [<- and [[<- gain S4 data.frame methods to avoid corruption of S4
|
||
class information by the S3 methods.
|
||
|
||
* callNextMethod() should now work within a .local call when ... is
|
||
absent from formals(.local).
|
||
|
||
* dput(pairlist(x)) generates a call to the pairlist constructor
|
||
instead of the list constructor.
|
||
|
||
* Fix missing() when arguments are propagated through ... .
|
||
(PR#15707)
|
||
|
||
* eigen(m) now defaults to symmetric = TRUE even when the dimnames
|
||
are asymmetric if the matrix is otherwise symmetric. (PR#16151)
|
||
|
||
* Fix issues with forwarding ... through callGeneric() and
|
||
callNextMethod(). (PR#16141)
|
||
|
||
* callGeneric() now works after a callNextMethod().
|
||
|
||
* Subclass information is kept consistent when replacing an
|
||
ordinary S4 class with an "old class" _via_ the S4Class argument
|
||
to setOldClass(). Thus, for example, a data.frame is valid for a
|
||
list argument in the signature, and a factor is valid for vector
|
||
arguments.
|
||
|
||
* In qbeta() the inversion of pbeta() is much more sophisticated.
|
||
This works better in corner cases some of which failed completely
|
||
previously (PR#15755), or were using too many iterations.
|
||
|
||
* Auto-printing no longer duplicates objects when printing is
|
||
dispatched to a method.
|
||
|
||
* kmeans(x, k) would fail when nrow(x) >= 42949673. (Comment 6 of
|
||
PR#15364)
|
||
|
||
* 'Abbreviated' locale-specific day and month names could have been
|
||
truncated in those rare locales where there are the same as the
|
||
full names.
|
||
|
||
* An irrelevant warning message from updating subclass information
|
||
was silenced (the namespace would not be writable in this case).
|
||
|
||
-------------------------------------------------------------------
|
||
Mon Mar 9 10:26:51 UTC 2015 - detlef.steuer@gmx.de
|
||
|
||
- Upstream release 3.1.3
|
||
- Most important
|
||
CHANGES IN R 3.1.3:
|
||
|
||
NEW FEATURES:
|
||
|
||
* The internal method of download.file() can now handle files
|
||
larger than 2GB on 32-bit builds which support such files (tested
|
||
on 32-bit R running on 64-bit Windows).
|
||
|
||
* kruskal.test() warns on more types of suspicious input.
|
||
|
||
* The as.dendrogram() method for "hclust" objects gains a check
|
||
argument protecting against memory explosion for invalid inputs.
|
||
|
||
* capabilities() has a new item long.double which indicates if the
|
||
build uses a long double type which is longer than double.
|
||
|
||
* nlm() no longer modifies the callback argument in place (a new
|
||
vector is allocated for each invocation, which mimics the
|
||
implicit duplication that occurred in R < 3.1.0); note that this
|
||
is a change from the previously documented behavior. (PR#15958)
|
||
|
||
* icuSetCollate() now accepts locale = "ASCII" which uses the basic
|
||
C function strcmp and so collates strings byte-by-byte in
|
||
numerical order.
|
||
|
||
* sessionInfo() tries to report the OS version in use (not just
|
||
that compiled under, and including details of Linux
|
||
distributions).
|
||
|
||
* model.frame() (used by lm() and many other modelling functions)
|
||
now warns when it drops contrasts from factors. (Wish of
|
||
PR#16119)
|
||
|
||
* install.packages() and friends now accept the value type =
|
||
"binary" as a synonym for the native binary type on the platform
|
||
(if it has one).
|
||
|
||
* Single source or binary files can be supplied for
|
||
install.packages(type = "both") and the appropriate type and
|
||
repos = NULL will be inferred.
|
||
|
||
* New function pcre_config() to report on some of the configuration
|
||
options of the version of PCRE in use. In particular, this
|
||
reports if regular expressions using \p{xx} are supported.
|
||
|
||
* (Windows.) download.file(cacheOK = FALSE) is now supported when
|
||
internet2.dll is used.
|
||
|
||
* browseURL() has been updated to work with Firefox 36.0 which has
|
||
dropped support for the -remote interface.
|
||
|
||
INSTALLATION and INCLUDED SOFTWARE:
|
||
|
||
* The included version of PCRE has been updated to 8.36.
|
||
|
||
* configure accepts MAKEINFO=texi2any as another way to ensure
|
||
texinfo 5.x is used when both 5.x and 4.x are installed.
|
||
|
||
UTILITIES:
|
||
|
||
* R CMD check now checks the packages used in \donttest sections of
|
||
the examples are specified in the DESCRIPTION file. (These are
|
||
needed to run the examples interactively.)
|
||
|
||
* R CMD check checks for the undeclared use of GNU extensions in
|
||
Makefiles, and for Makefiles with a missing final linefeed.
|
||
|
||
R CMD build will correct line endings in all Makefiles, not just
|
||
those in the src directory.
|
||
|
||
* R CMD check notes uses of library() and require() in package
|
||
code: see the section 'Suggested packages' of 'Writing R
|
||
Extensions' for good practice.
|
||
|
||
DEPRECATED AND DEFUNCT:
|
||
|
||
* The configure option --with-valgrind-instrumentation=3 is
|
||
deprecated and will be removed in R 3.2.0.
|
||
|
||
BUG FIXES:
|
||
|
||
* (Windows.) Rscript.exe was missing a manifest specifying the
|
||
modern style for common controls (e.g., the download progress
|
||
bar).
|
||
|
||
* If a package had extra documentation files but no vignette, the
|
||
HTML help system produced an empty index page.
|
||
|
||
* The parser now gives an error if a null character is included in
|
||
a string using Unicode escapes. (PR#16046)
|
||
|
||
* qr.Q() failed on complex arguments due to pre-3.0(!) typo.
|
||
(PR#16054)
|
||
|
||
* abs() failed with named arguments when the argument was complex.
|
||
(PR#16047)
|
||
|
||
* "noquote" objects may now be used as columns in dataframes.
|
||
(PR#15997)
|
||
|
||
* Some values with extremely long names were printed incorrectly.
|
||
(PR#15999)
|
||
|
||
* Extremely large exponents on zero expressed in scientific
|
||
notation (e.g. 0.0e50000) could give NaN. (PR#15976)
|
||
|
||
* download.file() reported downloaded sizes as 0KB if less than
|
||
1MB, only for R 3.1.2 and only on big-endian platforms.
|
||
|
||
* prompt() did not escape percent signs in the automatically
|
||
generated usage section of help files.
|
||
|
||
* drop.terms() dropped some of the attributes of the object it was
|
||
working with. (PR#16029)
|
||
|
||
* (Windows.) The command completion in Rgui.exe messed up the
|
||
console. (PR#15791)
|
||
|
||
* (Windows.) The choose.files() command returned a blank string
|
||
when the user asked for a single file but cancelled the request.
|
||
(PR#16074)
|
||
|
||
* Math2 S4 group generics failed to correctly dispatch "structure"-
|
||
and "nonStructure"-derived classes.
|
||
|
||
* loadNamespace() imposed undocumented restrictions on the
|
||
versionCheck parameter. (Reported by Geoff Lee.)
|
||
|
||
* Rare over-runs detected by AddressSanitizer in substr() and its
|
||
replacement version have been avoided.
|
||
|
||
_Inter alia_ that fix gives the documented behaviour for
|
||
substr(x, 1, 2) <- "" (subsequently reported as PR#16214).
|
||
|
||
* Loading packages incorrectly defining an S4 generic followed by a
|
||
function of the same name caused an erroneous cyclic namespace
|
||
dependency error.
|
||
|
||
* Declared vignette encodings are now always passed to the vignette
|
||
engine.
|
||
|
||
* Port Tomas Kalibera's fix from R-devel that restores the
|
||
loadMethod() fast path, effectively doubling the speed of S4
|
||
dispatch.
|
||
|
||
* power.t.test() and power.prop.test() now make use of the
|
||
extendInt option of uniroot() and hence work in more extreme
|
||
cases. (PR#15792)
|
||
|
||
* If a package was updated and attached when its namespace was
|
||
already loaded, it could end up with parts from one version and
|
||
parts from the other. (PR#16120)
|
||
|
||
* tools:::.Rdconv() didn't accept --encoding= due to a typo.
|
||
(PR#16121)
|
||
|
||
* Unix-alike builds without a suitable makeinfo were documented to
|
||
link the missing HTML manuals to CRAN, but did not.
|
||
|
||
* save(*, ascii=TRUE) and load() now correctly deal with NaN's.
|
||
(PR#16137)
|
||
|
||
* split.Date() retains fractional representations while avoiding
|
||
incomplete class propagation.
|
||
|
||
* R_ext/Lapack.h had not been updated for changes made by LAPACK to
|
||
the argument lists of its (largely internal) functions dlaed2 and
|
||
dlaed3. (PR#16157)
|
||
|
||
* RShowDoc("NEWS", "txt") had not been updated for the layout
|
||
changes of R 3.1.0.
|
||
|
||
* The xtfrm() method for class "Surv" has been corrected and its
|
||
description expanded.
|
||
|
||
* mode(x) <- y would incorrectly evaluate x before changing its
|
||
mode. (PR#16215)
|
||
|
||
* besselJ(1, 2^64) and besselY(..) now signal a warning, returning
|
||
NaN instead of typically segfaulting. (Issue 3 of PR#15554)
|
||
|
||
* HTML conversion of \href markup in .Rd files did not remove the
|
||
backslash from \% and so gave an invalid URL. In a related
|
||
change, the \ escape is now required in such URLs.
|
||
|
||
-------------------------------------------------------------------
|
||
Fri Dec 12 13:16:25 UTC 2014 - sbahling@suse.com
|
||
|
||
- Remove tex(inconsolata.sty) BuildRequires for SLE_12 builds (like
|
||
older SLE releases).
|
||
|
||
-------------------------------------------------------------------
|
||
Fri Oct 31 11:59:25 UTC 2014 - detlef.steuer@gmx.de
|
||
|
||
- Upstream release 3.1.2
|
||
- Most important
|
||
CHANGES IN R 3.1.2:
|
||
|
||
NEW FEATURES:
|
||
|
||
* embedFonts() now defaults to format = "ps2write" for .ps and .eps
|
||
files. This is available in Ghostscript 9.x (since 2010) whereas
|
||
the previous default, format = "pswrite", was removed in
|
||
Ghostscript 9.10.
|
||
|
||
* For consistency with [dpqr]norm(), [dp]lnorm(sdlog = 0) model a
|
||
point mass at exp(mulog) rather than return NaN (for an error).
|
||
|
||
* capabilities() now reports if ICU is compiled in for use for
|
||
collation (it is only actually used if a suitable locale is set
|
||
for collation, and never for a C locale).
|
||
|
||
* (OS X only.) Package tcltk checks when loaded if it is linked
|
||
against the CRAN X11-based Tcl/Tk and if so that the Tcl/Tk
|
||
component and the X11 libraries are installed. This allows more
|
||
informative error messages to be given advising the installation
|
||
of the missing component or of XQuartz.
|
||
|
||
The X11() device and X11-based versions of the data editor and
|
||
viewer (invoked by edit() and View() for data frames and matrices
|
||
from command-line R) check that the X11 libraries are installed
|
||
and if not advises installing XQuartz.
|
||
|
||
* icuSetCollate() allows locale = "default", and locale = "none" to
|
||
use OS services rather than ICU for collation.
|
||
|
||
Environment variable R_ICU_LOCALE can be used to set the default
|
||
ICU locale, in case the one derived from the OS locale is
|
||
inappropriate (this is currently necessary on Windows).
|
||
|
||
* New function icuGetCollate() to report on the ICU collation
|
||
locale in use (if any).
|
||
|
||
* utils::URLencode() was updated to use unreserved and reserved
|
||
characters from RFC 3986, <URL:
|
||
http://tools.ietf.org/html/rfc3986>, instead of RFC 1738.
|
||
|
||
* unique(warnings()) and c(warnings()) are now supported.
|
||
|
||
* The Bioconductor 'version' used by setRepositories() now defaults
|
||
to 3.0. (It can be set at runtime _via_ environment variable
|
||
R_BIOC_VERSION.)
|
||
|
||
INSTALLATION and INCLUDED SOFTWARE:
|
||
|
||
* The configure script reports on the more important
|
||
capabilities/options which will not be compiled in.
|
||
|
||
More types of external BLAS are recognized by name in that
|
||
report.
|
||
|
||
* When building R as a shared library, the -L${R_HOME}/lib${R_ARCH}
|
||
flag is placed earlier in the link commands used during
|
||
installation and when packages are installed: this helps ensure
|
||
that the current build has priority if an R shared library has
|
||
already been installed by e.g. install-libR in a library
|
||
mentioned in LDFLAGS (and not in 'your system's library
|
||
directory' as documented). (Wish of PR#15790.)
|
||
|
||
* LaTeX package upquote is no longer required for R's use of
|
||
inconsolata.
|
||
|
||
* (Windows only) If both 32 and 64 bit versions of R are installed,
|
||
the bin/R.exe and bin/Rscript.exe executables now run 64 bit R.
|
||
(To run 32 bit R, overwrite these files with copies of
|
||
bin/i386/Rfe.exe.)
|
||
|
||
UTILITIES:
|
||
|
||
* Running R CMD check with _R_CHECK_DEPENDS_ONLY_ true now makes
|
||
the VignetteBuilder packages available even if they are listed in
|
||
Suggests, since they are needed to recognise and process
|
||
non-Sweave vignettes.
|
||
|
||
* R CMD check now reports empty importFrom declarations in a
|
||
NAMESPACE file, as these are common errors (writing
|
||
importFrom(Pkg) where import(Pkg) was intended).
|
||
|
||
* R CMD check now by default checks code usage directly on the
|
||
package namespace without loading and attaching the package and
|
||
its suggests and enhances. For good practice with packages in
|
||
the Suggests field, see SS1.1.3.1 of 'Writing R Extensions'. For
|
||
use of lazy-data objects in the package's own code, see ?data.
|
||
|
||
BUG FIXES:
|
||
|
||
* dmultinom() did not handle non-finite probabilities correctly.
|
||
|
||
* prettyNum(x, zero.print=*) now also works when x contains NAs.
|
||
|
||
* A longstanding bug exhibited by nlminb() on Windows was traced to
|
||
a compiler bug in gcc 4.6.3; a workaround has been put in place.
|
||
(PR#15244 and PR#15914).
|
||
|
||
* Rendering of \command in HTML versions of help pages has been
|
||
improved: this is particularly evident on the help page for
|
||
INSTALL.
|
||
|
||
* as.hexmode(x) and as.octmode(x) now behave correctly for some
|
||
numeric x, e.g., c(NA, 1) or c(1, pi).
|
||
|
||
* drop1() failed if the scope argument had no variables to drop.
|
||
(PR#15935)
|
||
|
||
* edit() (and hence fix()) failed if an object had a non-character
|
||
attribute named "source" (an attribute that had been used in R
|
||
prior to version 2.14.0).
|
||
|
||
* callGeneric() could fail if the generic had ... as a formal
|
||
argument. (PR#15937).
|
||
|
||
* Forking in package parallel called C entry point exit in the
|
||
child. This was unsafe (_exit should have been called), and
|
||
could flush stdin of the main R process (seen most often on
|
||
Solaris).
|
||
|
||
As good practice, stdout is now flushed before forking a child.
|
||
|
||
* R objects such as list(`a\b` = 1) now print correctly.
|
||
|
||
* getAnywhere("C_pbinom") now returns correctly a single object
|
||
(rather than unlisting it).
|
||
|
||
* The confint() method for nls() fits failed it these has specified
|
||
parameter limits despite using an algorithm other than "port".
|
||
(PR#15960)
|
||
|
||
* Subclassing an S4 class failed if the class required arguments to
|
||
the generator, through its initialize() method.
|
||
|
||
* removeSource() did not properly handle expressions containing
|
||
arguments that were supplied as missing, e.g. x[i,]. (PR#15957)
|
||
|
||
* as.environment(list()) now works, and as.list() of such an
|
||
environment is now the same as list().
|
||
|
||
* Several tcltk functions failed when run in unusual environments.
|
||
(PR#15970)
|
||
|
||
* options(list()) now works (trivially). (PR#15979)
|
||
|
||
* merge(<dendrogram>, ..) now works correctly for two `independent'
|
||
dendrograms (PR#15648), and still compatibly via adjust = "auto"
|
||
e.g. for two branches of an existing dendrogram.
|
||
|
||
* The plot method for "hclust" objects gets an optional argument
|
||
check; When that is true (the default) it checks more carefully
|
||
for valid input.
|
||
|
||
* (Windows only) If a user chose to install 64 bit R but not 32 bit
|
||
R, the bin/R and bin/Rscript executables failed to run.
|
||
(PR#15981)
|
||
|
||
* Various possible buffer overruns have been prevented, and missed
|
||
memory protection added. (PR#15990)
|
||
|
||
* Rscript no longer passes --args to R when there are no extra
|
||
("user") arguments.
|
||
|
||
* objects like getClass("refClass")@prototype now print() and str()
|
||
without error.
|
||
|
||
* identical() now also looks at the S4 bit.
|
||
|
||
* hist(x, breaks) is more robust in adding a small fuzz to few
|
||
breaks when some are very large. (PR#15988)
|
||
|
||
* sub() and gsub() did not handle regular expressions like "\s{2,}"
|
||
properly if the text contained NA or non-ascii elements in a
|
||
UTF-8 locale. Part of this was due to a bug in the TRE library.
|
||
(PR#16009)
|
||
|
||
* RShowDoc("NEWS") now displays the PDF version.
|
||
|
||
* Matrices and arrays with last dimension zero did not print at all
|
||
or incompletely. (PR#16012)
|
||
|
||
* plot.histogram() and hence hist() now respect the xaxs, yaxs and
|
||
lab graphics parameters. (PR#16021)
|
||
|
||
* bw.SJ(x) and other bw.*() no longer segfault when x contains
|
||
non-finite values. (PR#16024)
|
||
|
||
* R CMD Rd2pdf unintentionally ignored its --os option.
|
||
|
||
* The internal method of download.file() was not reporting file
|
||
sizes and progress correctly on files larger than 2GB (inherited
|
||
from libxml2). This is corrected for 64-bit builds (32-bit
|
||
platforms may not support such files, but where possible will be
|
||
supported in future versions of R).
|
||
|
||
* Work around a bug in OS X Yosemite where key environment
|
||
variables may be duplicated causing issues in subprocesses. The
|
||
duplicates are now removed on R startup (via Rprofile).
|
||
(PR#16042)
|
||
|
||
* Adjust X11 auto-launch detection in DISPLAY on OS X to recognize
|
||
latest XQuartz.
|
||
|
||
-------------------------------------------------------------------
|
||
Thu Jul 10 12:35:42 UTC 2014 - detlef.steuer@gmx.de
|
||
|
||
- Added Provides: R-parallel
|
||
- Upstream release 3.1.1
|
||
- Most impotant
|
||
CHANGES IN R 3.1.1:
|
||
|
||
CHANGES IN R 3.1.1:
|
||
|
||
NEW FEATURES:
|
||
|
||
* When attach() reports conflicts, it does so compatibly with
|
||
library() by using message().
|
||
|
||
* R CMD Sweave no longer cleans any files by default, compatibly
|
||
with versions of R prior to 3.1.0. There are new options
|
||
--clean, --clean=default and --clean=keepOuts.
|
||
|
||
* tools::buildVignette() and tools::buildVignettes() with clean =
|
||
FALSE no longer remove any created files. buildvignette() gains
|
||
a keep argument for more cleaning customization.
|
||
|
||
* The Bioconductor 'version' used by setRepositories() can now be
|
||
set by environment variable R_BIOC_VERSION at runtime, not just
|
||
when R is installed. (It has been stated that Bioconductor will
|
||
switch from 'version' 2.14 to 'version' 3.0 during the lifetime
|
||
of the R 3.1 series.)
|
||
|
||
* Error messages from bugs in embedded Sexpr code in Sweave
|
||
documents now report the source location.
|
||
|
||
* type.convert(), read.table() and similar read.*() functions get a
|
||
new numerals argument, specifying how numeric input is converted
|
||
when its conversion to double precision loses accuracy. The
|
||
default value, "allow.loss" allows accuracy loss, as in R
|
||
versions before 3.1.0.
|
||
|
||
* For some compilers, integer addition could overflow without a
|
||
warning. R's internal code for both integer addition and
|
||
subtraction is more robust now. (PR#15774)
|
||
|
||
* The function determining the default number of knots for
|
||
smooth.spline() is now exported, as .nknots.smspl().
|
||
|
||
* dbeta(, a,b), pbeta(), qbeta() and rbeta() are now defined also
|
||
for a = 0, b = 0, or infinite a and b (where they typically
|
||
returned NaN before).
|
||
|
||
* Many package authors report that the RStudio graphics device does
|
||
not work correctly with their package's use of dev.new(). The
|
||
new option dev.new(noRStudioGD = TRUE) replaces the RStudio
|
||
override by the default device as selected by R itself, still
|
||
respecting environment variables R_INTERACTIVE_DEVICE and
|
||
R_DEFAULT_DEVICE.
|
||
|
||
* readRDS() now returns visibly.
|
||
|
||
* Modifying internal logical scalar constants now results in an
|
||
error instead of a warning.
|
||
|
||
* install.packages(repos = NULL) now accepts http:// or ftp:// URLs
|
||
of package archives as well as file paths, and will download as
|
||
required. In most cases repos = NULL can be deduced from the
|
||
extension of the URL.
|
||
|
||
* The warning when using partial matching with the $ operator on
|
||
data frames is now only given when
|
||
options("warnPartialMatchDollar") is TRUE.
|
||
|
||
* Package help requests like package?foo now try the package foo
|
||
whether loaded or not.
|
||
|
||
* General help requests now default to trying all loaded packages,
|
||
not just those on the search path.
|
||
|
||
* Added a new function promptImport(), to generate a help page for
|
||
a function that was imported from another package (and presumably
|
||
re-exported, or help would not be needed).
|
||
|
||
INSTALLATION and INCLUDED SOFTWARE:
|
||
|
||
* configure option --with-internal-tzcode can now be used with
|
||
variable rsharedir.
|
||
|
||
* The included version of PCRE has been updated to 8.35.
|
||
|
||
* There is a new target make uninstall-libR to remove an installed
|
||
shared/static libR.
|
||
|
||
make install-libR now works if a sub-architecture is used,
|
||
although the user will need to specify libdir differently for
|
||
different sub-architectures.
|
||
|
||
* There is more extensive advice on which LaTeX packages are
|
||
required to install R or to make package manuals (as done by R
|
||
CMD check) in the 'Writing R Extensions' manual.
|
||
|
||
* Compilers/linkers were handling the visibility controls in
|
||
src/extra/xz inconsistently (and apparently in some cases
|
||
incorrectly), so it has been simplified. (PR#15327)
|
||
|
||
* (Windows) There is updated support for the use of ICU for
|
||
collation: see the 'R Installation and Administration Manual'.
|
||
|
||
BUG FIXES:
|
||
|
||
* dbinom(x, n), pbinom(), dpois(), etc, are slightly less
|
||
restrictive in checking if n is integer-valued. (Wish of
|
||
PR#15734.)
|
||
|
||
* pchisq(x, df, ncp, log.p = TRUE) is more accurate and no longer
|
||
underflows for small x and ncp < 80, e.g, for pchisq(1e-5, df =
|
||
100, ncp = 1, log = TRUE). (Based on PR#15635 and a suggestion
|
||
by Roby Joehanes.)
|
||
|
||
* The s ("step into") command in the debugger would cause R to step
|
||
into expressions evaluated there, not just into functions being
|
||
debugged. (PR#15770)
|
||
|
||
* The C code used by strptime() rejected time-zone offsets of more
|
||
than +1200 (+1245, +1300 and +1400 can occur). (PR#15768)
|
||
|
||
* (Windows only.) png(type = "cairo", antialias = "gray") was not
|
||
accepted. (PR#15760)
|
||
|
||
* Use of save(..., envir=) with named objects could fail.
|
||
(PR#15758)
|
||
|
||
* Sweave() mis-parsed Sexpr expressions that contained backslashes.
|
||
(PR#15779)
|
||
|
||
* The return value from options(foo = NULL) was not the previous
|
||
value of the option. (PR#15781)
|
||
|
||
* enc2utf8() and enc2native() did not always mark the encoding of
|
||
the return values when it was known.
|
||
|
||
* dnbinom(x, size = <large>, mu, log = TRUE) no longer underflows
|
||
to -Inf for large mu, thanks to a suggestion from Alessandro
|
||
Mammana (MPI MolGen, Berlin).
|
||
|
||
* pbeta(x, a, b, log = TRUE) no longer behaves discontinuously (in
|
||
a small x-region) because of denormalized numbers. Also,
|
||
pbeta(1-1e-12, 1e30, 1.001, log=TRUE) now terminates "in real
|
||
time".
|
||
|
||
* The "CRAN" filter (see available.packages()) no longer removes
|
||
duplicates other than of packages on CRAN, and does not fail if
|
||
there is no CRAN repository in getOption("repos").
|
||
|
||
* The device listing from dev2bitmap() and bitmap() was truncated
|
||
to 1000 characters: modern versions of GhostScript on most
|
||
platforms have many more devices.
|
||
|
||
* (Windows.) Commands such as Sys.which() and pipe() which needed
|
||
to find the full path to a command could segfault if the 'long'
|
||
path name was much longer than the 'short' path name (which
|
||
Sys.which() returns), as the behaviour of the Windows API call
|
||
had changed.
|
||
|
||
* R CMD build will fail with an error if one of the packages
|
||
specified in the VignetteBuilder field is not installed.
|
||
(Without loading those packages it cannot be ascertained which
|
||
files are intended to be vignettes. This means that the
|
||
VignetteBuilder packages have to be installed for package
|
||
checking too.) (Wish of PR#15775.)
|
||
|
||
* Misguided attempts to use chull() with non-finite points now give
|
||
an error (related to PR#15777).
|
||
|
||
* For a formula with exactly 32 variables the 32nd variable was
|
||
aliased to the intercept in some C-level computations of terms,
|
||
so that for example attempting to remove it would remove the
|
||
intercept instead (and leave a corrupt internal structure).
|
||
(PR#15735)
|
||
|
||
* anyDuplicated() silently returned wrong values when the first
|
||
duplicate was at an index which was too large to be stored in an
|
||
integer vector (although a lot of RAM and patience would have
|
||
been needed to encounter this).
|
||
|
||
* tools::Rd2ex(commentDontrun = FALSE) failed if the block had only
|
||
one line.
|
||
|
||
* Hexadecimal constants such as 0x110p-5L which were incorrectly
|
||
qualified by L were parsed incorrectly since R 3.0.0, with a
|
||
slightly garbled warning. (PR#15753)
|
||
|
||
* system() returned success on some platforms even if the system
|
||
was unable to launch a process. (PR#15796)
|
||
|
||
* (Windows Rgui console.) Unbuffered output was sometimes not
|
||
output immediately if the prompt was not on the last line of the
|
||
console.
|
||
|
||
* The built-in help server did not declare the encoding for the
|
||
DESCRIPTION or other text files to be the package encoding, so
|
||
non-ASCII characters could be displayed incorrectly.
|
||
|
||
* R is now trying harder to not cleanup child processes that were
|
||
not spawned by mcparallel() on platforms that provide information
|
||
about the source process of the SIGCHLD signal. This allows 3rd
|
||
party libraries to manage the exit status of children that they
|
||
spawn without R interfering.
|
||
|
||
* mcmapply() was only parallelizing if the number of jobs was
|
||
bigger than the number of cores. It now parallelizes if the
|
||
number of jobs is more than one.
|
||
|
||
* Auto-printing would re-evaluate its argument when trying to
|
||
dispatch to a print method. This is now avoided when possible.
|
||
|
||
* Unserializing (including load() and readRDS()) could silently
|
||
return incorrect numeric values from ASCII saves if there was a
|
||
read error.
|
||
|
||
* getParseData() could return incorrect values for the parents of
|
||
some elements. (Reported by Andrew Redd.)
|
||
|
||
* Attempting to use data frames of 2^31 or more rows with merge()
|
||
or to create a merged data frame of that size now gives a clearer
|
||
error message.
|
||
|
||
* parse() did not check its file argument was a connection if it
|
||
was not a character string, so e.g. parse(FALSE) attempted to
|
||
read from stdin.
|
||
|
||
Nor did dump() and dput().
|
||
|
||
* The "help.try.all.packages" option was ignored when the shortcut
|
||
syntax for help was used, e.g. ?foo.
|
||
|
||
* A potential segfault in string allocation has been fixed. (Found
|
||
by Radford Neal.)
|
||
|
||
* Potential memory protection errors in sort() and D() have been
|
||
fixed. (Found by Radford Neal.)
|
||
|
||
* Fixed a lack of error checking in graphics event functions.
|
||
(Found by Radford Neal; a different patch used here than the one
|
||
in pqR.)
|
||
|
||
* numericDeriv() sometimes miscalculated the gradient. (PR#15849,
|
||
reported originally by Radford Neal)
|
||
|
||
-------------------------------------------------------------------
|
||
Fri Jun 20 18:26:23 UTC 2014 - darin@darins.net
|
||
|
||
- added parallel provides
|
||
|
||
-------------------------------------------------------------------
|
||
Fri May 9 18:18:25 UTC 2014 - detlef.steuer@gmx.de
|
||
|
||
- Removed / commented out symlink to %{_bindir}/r
|
||
new package 'littler' should be used instead for packages
|
||
that need /usr/bin/r
|
||
|
||
-------------------------------------------------------------------
|
||
Thu May 1 15:29:30 UTC 2014 - darin@darins.net
|
||
|
||
- Add make dependency for Rcmd
|
||
|
||
-------------------------------------------------------------------
|
||
Tue Apr 29 15:31:15 UTC 2014 - darin@darins.net
|
||
|
||
- Created symlink to %{_bindir}/r
|
||
Many CRAN packages ship with scripts which call %{_bindir}/r,
|
||
which creates a dependency on it, this fixes that.
|
||
|
||
-------------------------------------------------------------------
|
||
Thu Apr 10 10:58:30 UTC 2014 - detlef.steuer@gmx.de
|
||
|
||
- Upstream release 3.1.0
|
||
- Most impotant
|
||
CHANGES IN R 3.1.0:
|
||
|
||
NEW FEATURES:
|
||
|
||
* type.convert() (and hence by default read.table()) returns a
|
||
character vector or factor when representing a numeric input as a
|
||
double would lose accuracy. Similarly for complex inputs.
|
||
|
||
If a file contains numeric data with unrepresentable numbers of
|
||
decimal places that are intended to be read as numeric, specify
|
||
colClasses in read.table() to be "numeric".
|
||
|
||
* tools::Rdiff(useDiff = FALSE) is closer to the POSIX definition
|
||
of diff -b (as distinct from the description in the man pages of
|
||
most systems).
|
||
|
||
* New function anyNA(), a version of any(is.na(.)) which is fast
|
||
for atomic vectors, based on a proposal by Tim Hesterberg. (Wish
|
||
of PR#15239.)
|
||
|
||
* arrayInd(*, useNames = TRUE) and, analogously, which(*, arr.ind =
|
||
TRUE) now make use of names(.dimnames) when available.
|
||
|
||
* is.unsorted() now also works for raw vectors.
|
||
|
||
* The "table" method for as.data.frame() (also useful as
|
||
as.data.frame.table()) now passes sep and base arguments to
|
||
provideDimnames().
|
||
|
||
* uniroot() gets new optional arguments, notably extendInt,
|
||
allowing to auto-extend the search interval when needed. The
|
||
return value has an extra component, init.it.
|
||
|
||
* switch(f, ...) now warns when f is a factor, as this typically
|
||
happens accidentally where the useR meant to pass a character
|
||
string, but f is treated as integer (as always documented).
|
||
|
||
* The parser has been modified to use less memory.
|
||
|
||
* The way the unary operators (+ - !) handle attributes is now more
|
||
consistent. If there is no coercion, all attributes (including
|
||
class) are copied from the input to the result: otherwise only
|
||
names, dims and dimnames are.
|
||
|
||
* colorRamp() and colorRampPalette() now allow non-opaque colours
|
||
and a ramp in opacity via the new argument alpha = TRUE.
|
||
(Suggested by Alberto Krone-Martins, but optionally as there are
|
||
existing uses which expect only RGB values.)
|
||
|
||
* grid.show.layout() and grid.show.viewport() get an optional vp.ex
|
||
argument.
|
||
|
||
* There is a new function find_gs_cmd() in the tools package to
|
||
locate a GhostScript executable. (This is an enhanced version of
|
||
a previously internal function there.)
|
||
|
||
* object.size() gains a format() method.
|
||
|
||
* There is a new family, "ArialMT", for the pdf() and postscript()
|
||
devices. This will only be rendered correctly on viewers which
|
||
have access to Monotype TrueType fonts (which are sometimes
|
||
requested by journals).
|
||
|
||
* The text and PDF news files, including NEWS and NEWS.2, have been
|
||
moved to the doc directory.
|
||
|
||
* combn(x, simplify = TRUE) now gives a factor result for factor
|
||
input x (previously user error). (Related to PR#15442.)
|
||
|
||
* Added utils::fileSnapshot() and utils::changedFiles() functions
|
||
to allow snapshots and comparison of directories of files.
|
||
|
||
* make.names(names, unique=TRUE) now tries to preserve existing
|
||
names. (Suggestion of PR#15452.)
|
||
|
||
* New functions cospi(x), sinpi(x), and tanpi(x), for more accurate
|
||
computation of cos(pi*x), etc, both in R and the C API. Using
|
||
these gains accuracy in some cases, e.g., inside lgamma() or
|
||
besselI(). (Suggested by Morten Welinder in PR#15529.)
|
||
* print.table(x, zero.print = ".") now also has an effect when x is
|
||
not integer-valued.
|
||
|
||
* There is more support to explore the system's idea of time-zone
|
||
names. Sys.timezone() tries to give the current system setting
|
||
by name (and succeeds at least on Linux, OS X, Solaris and
|
||
Windows), and OlsonNames() lists the names in the system's Olson
|
||
database. Sys.timezone(location = FALSE) gives the previous
|
||
behaviour.
|
||
|
||
* Platforms with a 64-bit time_t type are allowed to handle
|
||
conversions between the "POSIXct" and "POSIXlt" classes for
|
||
date-times outside the 32-bit range (before 1902 or after 2037):
|
||
the existing workarounds are used on other platforms. (Note that
|
||
time-zone information for post-2037 is speculative at best, and
|
||
the OS services are tested for known errors and so not used on OS
|
||
X.)
|
||
|
||
Currently time_t is usually long and hence 64-bit on Unix-alike
|
||
64-bit platforms: however it several cases the time-zone database
|
||
is 32-bit. On R for Windows it is 64-bit (for both architectures
|
||
as from this version).
|
||
|
||
* The "save.defaults" option can include a value for
|
||
compression_level. (Wish of PR#15579.)
|
||
|
||
* colSums() and friends now have support for arrays and data-frame
|
||
columns with 2^31 or more elements.
|
||
|
||
* as.factor() is faster when f is an unclassed integer vector (for
|
||
example, when called from tapply()).
|
||
|
||
* fft() now works with longer inputs, from the 12 million
|
||
previously supported up to 2 billion. (PR#15593)
|
||
|
||
* Complex svd() now uses LAPACK subroutine ZGESDD, the complex
|
||
analogue of the routine used for the real case.
|
||
|
||
* Sweave now outputs .tex files in UTF-8 if the input encoding is
|
||
declared to be UTF-8, regardless of the local encoding. The
|
||
UTF-8 encoding may now be declared using a LaTeX comment
|
||
containing the string %\SweaveUTF8 on a line by itself.
|
||
|
||
* file.copy() gains a copy.date argument.
|
||
|
||
* Printing of date-times will make use of the time-zone
|
||
abbreviation in use at the time, if known. For example, for
|
||
Paris pre-1940 this could be LMT, PMT, WET or WEST. To enable
|
||
this, the "POSIXlt" class has an optional component "zone"
|
||
recording the abbreviation for each element.
|
||
|
||
For platforms which support it, there is also a component
|
||
"gmtoff" recording the offset from GMT where known.
|
||
|
||
* (On Windows, by default on OS X and optionally elsewhere.) The
|
||
system C function strftime has been replaced by a more
|
||
comprehensive version with closer conformance to the POSIX 2008
|
||
standard.
|
||
|
||
* dnorm(x, log = FALSE) is more accurate (but somewhat slower) for
|
||
|x| > 5; as suggested in PR#15620.
|
||
|
||
* Some versions of the tiff() device have further compression
|
||
options.
|
||
|
||
* read.table(), readLines() and scan() have a new argument to
|
||
influence the treatment of embedded nuls.
|
||
|
||
* Avoid duplicating the right hand side values in complex
|
||
assignments when possible. This reduces copying of replacement
|
||
values in expressions such as Z$a <- a0 and ans[[i]] <- tmp: some
|
||
package code has relied on there being copies.
|
||
|
||
Also, a number of other changes to reduce copying of objects; all
|
||
contributed by or based on suggestions by Michael Lawrence.
|
||
|
||
* The fast argument of KalmanLike(), KalmanRun() and
|
||
KalmanForecast() has been replaced by update, which instead of
|
||
updating mod in place, optionally returns the updated model in an
|
||
attribute "mod" of the return value.
|
||
|
||
* arima() and makeARIMA() get a new optional argument SSinit,
|
||
allowing the choice of a different *s*tate *s*pace initialization
|
||
which has been observed to be more reliable close to
|
||
non-stationarity: see PR#14682.
|
||
* warning() has a new argument noBreaks., to simplify
|
||
post-processing of output with options(warn = 1).
|
||
|
||
* pushBack() gains an argument encoding, to support reading of
|
||
UTF-8 characters using scan(), read.table() and related functions
|
||
in a non-UTF-8 locale.
|
||
|
||
* all.equal.list() gets a new argument use.names which by default
|
||
labels differing components by names (if they match) rather than
|
||
by integer index. Saved R output in packages may need to be
|
||
updated.
|
||
|
||
* The methods for all.equal() and attr.all.equal() now have
|
||
argument check.attributes after ... so it cannot be partially nor
|
||
positionally matched (as it has been, unintentionally).
|
||
|
||
A side effect is that some previously undetected errors of
|
||
passing empty arguments (no object between commas) to all.equal()
|
||
are detected and reported.
|
||
|
||
There are explicit checks that check.attributes is logical,
|
||
tolerance is numeric and scale is NULL or numeric. This catches
|
||
some unintended positional matching.
|
||
|
||
The message for all.equal.numeric() reports a "scaled difference"
|
||
only for scale != 1.
|
||
|
||
* all.equal() now has a "POSIXt" method replacing the "POSIXct"
|
||
method.
|
||
|
||
* The "Date" and "POSIXt" methods of seq() allows by = "quarter"
|
||
for completeness (by = "3 months" always worked).
|
||
|
||
* file.path() removes any trailing separator on Windows, where they
|
||
are invalid (although sometimes accepted). This is intended to
|
||
enhance the portability of code written by those using POSIX file
|
||
systems (where a trailing / can be used to confine path matching
|
||
to directories).
|
||
|
||
* New function agrepl() which like grepl() returns a logical
|
||
vector.
|
||
|
||
* fifo() is now supported on Windows. (PR#15600)
|
||
|
||
* sort.list(method = "radix") now allows negative integers (wish of
|
||
PR#15644).
|
||
|
||
* Some functionality of print.ts() is now available in
|
||
.preformat.ts() for more modularity.
|
||
|
||
* mcparallel() gains an option detach = TRUE which allows execution
|
||
of code independently of the current session. It is based on a
|
||
new estranged = TRUE argument to mcfork() which forks child
|
||
processes such that they become independent of the parent
|
||
process.
|
||
|
||
* The pdf() device omits circles and text at extremely small sizes,
|
||
since some viewers were failing on such files.
|
||
|
||
* The rightmost break for the "months", "quarters" and "years"
|
||
cases of hist.POSIXlt() has been increased by a day. (Inter
|
||
alia, fixes PR#15717.)
|
||
|
||
* The handling of DF[i,] <- a where i is of length 0 is improved.
|
||
(Inter alia, fixes PR#15718.)
|
||
|
||
* hclust() gains a new method "ward.D2" which implements Ward's
|
||
method correctly. The previous "ward" method is "ward.D" now,
|
||
with the old name still working. Thanks to research and
|
||
proposals by Pierre Legendre.
|
||
|
||
* The sunspot.month dataset has been amended and updated from the
|
||
official source, whereas the sunspots and sunspot.year datasets
|
||
will remain immutable. The documentation and source links have
|
||
been updated correspondingly.
|
||
|
||
* The summary() method for "lm" fits warns if the fit is
|
||
essentially perfect, as most of the summary may be computed
|
||
inaccurately (and with platform-dependent values).
|
||
|
||
Programmers who use summary() in order to extract just a
|
||
component which will be reliable (e.g. $cov.unscaled) should wrap
|
||
their calls in suppressWarnings().
|
||
INSTALLATION and INCLUDED SOFTWARE:
|
||
|
||
* The included version of LAPACK has been updated to 3.5.0.
|
||
|
||
* There is some support for parallel testing of an installation, by
|
||
setting TEST_MC_CORES to an integer greater than one to indicate
|
||
the maximum number of cores to be used in parallel. (It is worth
|
||
specifying at least 8 cores if available.) Most of these require
|
||
a make program (such as GNU make and dmake) which supports the
|
||
$MAKE -j nproc syntax.
|
||
|
||
Except on Windows: the tests of standard package examples in make
|
||
check are done in parallel. This also applies to running
|
||
tools::testInstalledPackages().
|
||
|
||
The more time-consuming regression tests are done in parallel.
|
||
|
||
The package checks in make check-devel and make check-recommended
|
||
are done in parallel.
|
||
|
||
* More of make check will work if recommended packages are not
|
||
installed: but recommended packages remain needed for thorough
|
||
checking of an R build.
|
||
|
||
* The version of tzcode included in src/extra/tzone has been
|
||
updated. (Formerly used only on Windows.)
|
||
|
||
* The included (64-bit) time-zone conversion code and Olson
|
||
time-zone database can be used instead of the system version: use
|
||
configure option --with-internal-tzcode. This is the default on
|
||
Windows and OS X. (Note that this does not currently work if a
|
||
non-default rsharedir configure variable is used.)
|
||
|
||
(It might be necessary to set environment variable TZ on OSes
|
||
where this is not already set, although the system timezone is
|
||
deduced correctly on at least Linux, OS X and Windows.)
|
||
|
||
This option also switches to the version of strftime included in
|
||
directory src/extra/tzone.
|
||
|
||
* configure now tests for a C++11-compliant compiler by testing
|
||
some basic features. This by default tries flags for the
|
||
compiler specified by CXX, but an alternative compiler, options
|
||
and standard can be specified by variables CXX1X, CXX1XFLAGS and
|
||
CXX1XSTD (e.g. -std=gnu++11).
|
||
|
||
* R can now optionally be compiled to use reference counting
|
||
instead of the NAMED mechanism by defining SWITCH_TO_REFCNT in
|
||
Rinternals.h. This may become the default in the future.
|
||
|
||
* There is a new option --use-system-tre to use a suitable system
|
||
tre library: at present this means a version from their git
|
||
repository, after corrections. (Wish of PR#15660.)
|
||
|
||
-------------------------------------------------------------------
|
||
Thu Mar 6 10:08:59 UTC 2014 - detlef.steuer@gmx.de
|
||
|
||
- Upstream release 3.0.3
|
||
- Most important
|
||
CHANGES IN R 3.0.3:
|
||
|
||
NEW FEATURES:
|
||
|
||
* On Windows there is support for making .texi manuals using
|
||
texinfo 5.0 or later: the setting is in file
|
||
src/gnuwin32/MkRules.dist.
|
||
|
||
A packaging of the Perl script and modules for texinfo 5.2 has
|
||
been made available at <URL:
|
||
http://www.stats.ox.ac.uk/pub/Rtools/>.
|
||
|
||
* write.table() now handles matrices of 2^31 or more elements, for
|
||
those with large amounts of patience and disc space.
|
||
|
||
* There is a new function, La_version(), to report the version of
|
||
LAPACK in use.
|
||
|
||
* The HTML version of 'An Introduction to R' now has links to PNG
|
||
versions of the figures.
|
||
|
||
* There is some support to produce manuals in ebook formats. (See
|
||
doc/manual/Makefile. Suggested by Mauro Cavalcanti.)
|
||
|
||
* On a Unix-alike Sys.timezone() returns NA if the environment
|
||
variable TZ is unset, to distinguish it from an empty string
|
||
which on some OSes means the UTC time zone.
|
||
|
||
* The backtick may now be escaped in strings, to allow names
|
||
containing them to be constructed, e.g. `\``. (PR#15621)
|
||
|
||
* read.table(), readLines() and scan() now warn when an embedded
|
||
nul is found in the input. (Related to PR#15625 which was
|
||
puzzled by the behaviour in this unsupported case.)
|
||
|
||
* (Windows only.) file.symlink() works around the undocumented
|
||
restriction of the Windows system call to backslashes. (Wish of
|
||
PR#15631.)
|
||
|
||
* KalmanForecast(fast = FALSE) is now the default, and the help
|
||
contains an example of how fast = TRUE can be used in this
|
||
version. (The usage will change in 3.1.0.)
|
||
|
||
* strptime() now checks the locale only when locale-specific
|
||
formats are used and caches the locale in use: this can halve the
|
||
time taken on OSes with slow system functions (e.g. OS X).
|
||
|
||
* strptime() and the format() methods for classes "POSIXct",
|
||
"POSIXlt" and "Date" recognize strings with marked encodings:
|
||
this allows, for example, UTF-8 French month names to be read on
|
||
(French) Windows.
|
||
|
||
* iconv(to = "utf8") is now accepted on all platforms (some
|
||
implementations did already, but GNU libiconv did not: however
|
||
converted strings were not marked as being in UTF-8). The
|
||
official name, "UTF-8" is still preferred.
|
||
|
||
* available.packages() is better protected against corrupt metadata
|
||
files. (A recurring problem with Debian package shogun-r:
|
||
PR#14713.)
|
||
|
||
* Finalizers are marked to be run at garbage collection, but run
|
||
only at a somewhat safer later time (when interrupts are
|
||
checked). This circumvents some problems with finalizers running
|
||
arbitrary code during garbage collection (the known instances
|
||
being running options() and (C-level) path.expand()
|
||
re-entrantly).
|
||
|
||
-------------------------------------------------------------------
|
||
Fri Sep 27 13:20:39 UTC 2013 - detlef.steuer@gmx.de
|
||
|
||
- Removed outdated source file
|
||
|
||
-------------------------------------------------------------------
|
||
Wed Sep 25 14:01:26 UTC 2013 - detlef.steuer@gmx.de
|
||
|
||
- Upstream release 3.0.2
|
||
- Most important
|
||
CHANGES IN R 3.0.2:
|
||
|
||
NEW FEATURES:
|
||
|
||
* The NEWS files have been re-organized.
|
||
|
||
This file contains news for R >= 3.0.0: news for the 0.x.y, 1.x.y
|
||
and 2.x.y releases is in files NEWS.0, NEWS.1 and NEWS.2. The
|
||
latter files are now installed when R is installed. An HTML
|
||
version of news from 2.10.0 to 2.15.3 is available as
|
||
doc/html/NEWS.2.html.
|
||
|
||
* sum() for integer arguments now uses an integer accumulator of at
|
||
least 64 bits and so will be more accurate in the very rare case
|
||
that a cumulative sum exceeds 2^53 (necessarily summing more than
|
||
4 million elements).
|
||
|
||
* The example() and tools::Rd2ex() functions now have parameters to
|
||
allow them to ignore \dontrun markup in examples. (Suggested by
|
||
Peter Solymos.)
|
||
|
||
* str(x) is considerably faster for very large lists, or factors
|
||
with 100,000 levels, the latter as in PR#15337.
|
||
|
||
* col2rgb() now converts factors to character strings not integer
|
||
codes (suggested by Bryan Hanson).
|
||
|
||
* tail(warnings()) now works, via the new `[` method.
|
||
|
||
* There is now support for the LaTeX style file zi4.sty which has
|
||
in some distributions replaced inconsolata.sty.
|
||
|
||
* unlist(x) now typically returns all non-list xs unchanged, not
|
||
just the "vector" ones. Consequently, format(lst) now also works
|
||
when the list lst has non-vector elements.
|
||
|
||
* The tools::getVignetteInfo() function has been added to give
|
||
information about installed vignettes.
|
||
|
||
* New assertCondition(), etc. utilities in tools, useful for
|
||
testing.
|
||
|
||
* Profiling now records non-inlined calls from byte-compiled code
|
||
to BUILTIN functions.
|
||
|
||
* Various functions in stats and elsewhere that use non-standard
|
||
evaluation are now more careful to follow the namespace scoping
|
||
rules. E.g. stats::lm() can now find stats::model.frame() even
|
||
if stats is not on the search path or if some package defines a
|
||
function of that name.
|
||
|
||
* If an invalid/corrupt .Random.seed object is encountered in the
|
||
workspace it is ignored with a warning rather than giving an
|
||
error. (This allows R itself to rely on a working RNG, e.g. to
|
||
choose a random port.)
|
||
|
||
* seq() and seq.int() give more explicit error messages if called
|
||
with invalid (e.g. NaN) inputs.
|
||
|
||
* When parse() finds a syntax error, it now makes partial parse
|
||
information available up to the location of the error. (Request
|
||
of Reijo Sund.)
|
||
|
||
* Methods invoked by NextMethod() had a different dynamic parent to
|
||
the generic. This was causing trouble where S3 methods invoked
|
||
via lazy evaluation could lose track of their generic.
|
||
(PR#15267)
|
||
|
||
* Code for the negative binomial distribution now treats the case
|
||
size == 0 as a one-point distribution at zero.
|
||
|
||
* abbreviate() handles without warning non-ASCII input strings
|
||
which require no abbreviation.
|
||
|
||
* read.dcf() no longer has a limit of 8191 bytes per line. (Wish of
|
||
PR#15250.)
|
||
|
||
* formatC(x) no longer copies the class of x to the result, to
|
||
avoid misuse creating invalid objects as in PR#15303. A warning
|
||
is given if a class is discarded.
|
||
|
||
* Dataset npk has been copied from MASS to allow more tests to be
|
||
run without recommended packages being installed.
|
||
|
||
* The initialization of the regression coefficients for
|
||
non-degenerate differenced models in arima() has been changed and
|
||
in some examples avoids a local maximum. (PR#15396)
|
||
|
||
* termplot() now has an argument transform.x to control the display
|
||
of individual terms in the plot. (PR#15329)
|
||
|
||
* format() now supports digits = 0, to display nsmall decimal
|
||
places.
|
||
|
||
* There is a new read-only par() parameter called "page", which
|
||
returns a logical value indicating whether the next plot.new()
|
||
call will start a new page.
|
||
|
||
* Processing Sweave and Rd documents to PDF now renders backticks
|
||
and single quotes better in several instances, including in \code
|
||
and \samp expressions.
|
||
|
||
* utils::modifyList() gets a new argument keep.null allowing NULL
|
||
components in the replacement to be retained, instead of causing
|
||
corresponding components to be deleted.
|
||
|
||
* tools::pkgVignettes() gains argument check; if set to TRUE, it
|
||
will warn when it appears a vignette requests a non-existent
|
||
vignette engine.
|
||
|
||
-------------------------------------------------------------------
|
||
Mon Aug 26 14:19:31 UTC 2013 - schwab@suse.de
|
||
|
||
- tre.patch: Fix tre library for aarch64 where wchar_t is unsigned int
|
||
|
||
-------------------------------------------------------------------
|
||
Thu May 16 13:17:09 UTC 2013 - detlef.steuer@gmx.de
|
||
|
||
- Improved spec file: R-base-devel requires R-base
|
||
|
||
-------------------------------------------------------------------
|
||
Thu May 16 11:21:09 UTC 2013 - detlef.steuer@gmx.de
|
||
|
||
- Upstream release 3.0.1
|
||
- Most important
|
||
CHANGES IN R 3.0.1:
|
||
|
||
NEW FEATURES:
|
||
|
||
o chooseCRANmirror() and chooseBioCmirror() gain an ind argument
|
||
(like setRepositories()).
|
||
|
||
o mcparallel has a new argument mc.interactive which can modify the
|
||
interactive flag in the child process. The new default is FALSE
|
||
which makes child processes non-interactive by default (this
|
||
prevents lock-ups due to children waiting for interactive input).
|
||
|
||
o scan() now warns when end-of-file occurs within a quoted string.
|
||
|
||
o count.fields() is now consistent with scan() in its handling of
|
||
newlines in quoted strings. Instead of triggering an error, this
|
||
results in the current line receiving NA as the field count, with
|
||
the next line getting the total count of the two lines.
|
||
|
||
o The default method of image() will plot axes of the class of xlim
|
||
and ylim (and hence of x and y if there is a suitable range()
|
||
method). Based on a suggestion of Michael Sumner.
|
||
|
||
o load() now has a verbose argument for debugging support, to print
|
||
the names of objects just before loading them.
|
||
|
||
o When loading a serialized object encounters a reference to a
|
||
namespace which cannot be loaded, this is replaced by a reference
|
||
to the global environment, with a warning.
|
||
|
||
o pairs() gains a line.main option for title placement.
|
||
|
||
o The remaining instances in which serialization to a raw vector
|
||
was limited to 2GB have been unlimited on a 64-bit platform, and
|
||
in most cases serialization to a vector of more than 1GB will be
|
||
substantially faster.
|
||
|
||
- Improved spec file. Lots of commented out lines finally removed
|
||
|
||
-------------------------------------------------------------------
|
||
Wed Apr 10 07:26:36 UTC 2013 - detlef.steuer@gmx.de
|
||
|
||
- R-base.spec improved: now uses R-%{version}.tar.bz2 explicitly.
|
||
Mistake when version bumping to 3.0.0 corrected
|
||
|
||
-------------------------------------------------------------------
|
||
Wed Apr 3 18:39:35 UTC 2013 - detlef.steuer@gmx.de
|
||
|
||
- Upstream release 3.0.0
|
||
- News for package: some new translation files
|
||
- News upstream: /usr/lib/R/doc/NEWS.html
|
||
- Most important
|
||
CHANGES IN R 3.0.0:
|
||
|
||
SIGNIFICANT USER-VISIBLE CHANGES:
|
||
|
||
o Packages need to be (re-)installed under this version (3.0.0) of
|
||
R.
|
||
|
||
o There is a subtle change in behaviour for numeric index values
|
||
2^31 and larger. These never used to be legitimate and so were
|
||
treated as NA, sometimes with a warning. They are now legal for
|
||
long vectors so there is no longer a warning, and x[2^31] <- y
|
||
will now extend the vector on a 64-bit platform and give an error
|
||
on a 32-bit one.
|
||
|
||
o It is now possible for 64-bit builds to allocate amounts of
|
||
memory limited only by the OS. It may be wise to use OS
|
||
facilities (e.g. ulimit in a bash shell, limit in csh), to set
|
||
limits on overall memory consumption of an R process,
|
||
particularly in a multi-user environment. A number of packages
|
||
need a limit of at least 4GB of virtual memory to load.
|
||
|
||
64-bit Windows builds of R are by default limited in memory usage
|
||
to the amount of RAM installed: this limit can be changed by
|
||
command-line option --max-mem-size or setting environment
|
||
variable R_MAX_MEM_SIZE.
|
||
|
||
o Negative numbers for colours are consistently an error:
|
||
previously they were sometimes taken as transparent, sometimes
|
||
mapped into the current palette and sometimes an error.
|
||
|
||
-------------------------------------------------------------------
|
||
Mon Mar 18 14:38:57 UTC 2013 - schwab@suse.de
|
||
|
||
- Override LIBnn from %{_lib}
|
||
|
||
-------------------------------------------------------------------
|
||
Fri Mar 1 12:15:30 UTC 2013 - detlef.steuer@gmx.de
|
||
|
||
- There were a few new files in foreign and rpart.
|
||
Fixed now. Builds fine.
|
||
|
||
-------------------------------------------------------------------
|
||
Fri Mar 1 10:25:32 UTC 2013 - detlef.steuer@gmx.de
|
||
|
||
- Upstream release 2.15.3
|
||
- see, as usual, /usr/lib/R/doc/NEWS.html
|
||
- This is mostly a bugfix release and the final release for the
|
||
R-2.x.y series.
|
||
- Most important additions:
|
||
NEW FEATURES:
|
||
o lgamma(x) for very small x (in the denormalized range) is no
|
||
longer Inf with a warning.
|
||
o image() now sorts an unsorted breaks vector, with a warning.
|
||
o The internal methods for tar() and untar() do a slightly more
|
||
general job for 'ustar'-style handling of paths of more than 100
|
||
bytes.
|
||
o Packages compiler and parallel have been added to the reference
|
||
index (refman.pdf).
|
||
o untar(tar = "internal") has some support for pax headers as
|
||
produced by e.g. gnutar --posix (which seems prevalent on
|
||
OpenSUSE 12.2) or bsdtar --format pax, including long path and
|
||
link names.
|
||
o sQuote() and dQuote() now handle 0-length inputs. (Suggestion of
|
||
Ben Bolker.)
|
||
o summaryRprof() returns zero-row data frames rather than throw an
|
||
error if no events are recorded, for consistency.
|
||
o The included version of PCRE has been updated to 8.32.
|
||
o The tcltk namespace can now be re-loaded after unloading.
|
||
The Tcl/Tk event loop is inhibited in a forked child from package
|
||
parallel (as in e.g. mclapply()).
|
||
o parallel::makeCluster() recognizes the value random for the
|
||
environment variable R_PARALLEL_PORT: this chooses a random value
|
||
for the port and reduces the chance of conflicts when multiple
|
||
users start a cluster at the same time.
|
||
|
||
-------------------------------------------------------------------
|
||
Fri Oct 26 12:35:44 UTC 2012 - detlef.steuer@gmx.de
|
||
|
||
- Upstream release 2.15.2
|
||
- see, as usual, /usr/lib/R/doc/NEWS.html
|
||
- most relevant change for rpm are some added translation files
|
||
|
||
-------------------------------------------------------------------
|
||
Tue Jul 10 08:37:58 UTC 2012 - werner@suse.de
|
||
|
||
- Make it build with latest TeXLive 2012 with new package layout
|
||
|
||
-------------------------------------------------------------------
|
||
Fri Jun 22 14:22:25 UTC 2012 - detlef.steuer@gmx.de
|
||
|
||
- Fixed: R-base-2.15.1-48.1.x86_64.rpm: directories not owned by a package:
|
||
- /usr/lib64/R/share/locale/pl
|
||
- /usr/lib64/R/share/locale/pl/LC_MESSAGES
|
||
|
||
-------------------------------------------------------------------
|
||
Fri Jun 22 13:43:05 UTC 2012 - detlef.steuer@gmx.de
|
||
|
||
- one more forgotten file in polish translation ...
|
||
|
||
-------------------------------------------------------------------
|
||
Fri Jun 22 12:38:18 UTC 2012 - detlef.steuer@gmx.de
|
||
|
||
- spec file update to incorporate new polish translation
|
||
|
||
-------------------------------------------------------------------
|
||
Fri Jun 22 11:53:39 UTC 2012 - detlef.steuer@gmx.de
|
||
|
||
- Upstream bugfix only release 2.15.1
|
||
- see, as usual, /usr/lib/R/doc/NEWS.html
|
||
|
||
-------------------------------------------------------------------
|
||
Tue Apr 10 21:51:18 UTC 2012 - gregkh@opensuse.org
|
||
|
||
- make R-base-devel require R-base as some packages think this
|
||
dependancy is already there (i.e. some KDE packages).
|
||
|
||
-------------------------------------------------------------------
|
||
Fri Mar 30 09:26:11 UTC 2012 - detlef.steuer@gmx.de
|
||
|
||
- Upstream updated to 2.15.0
|
||
- see, as usual, /usr/lib/R/doc/NEWS.html
|
||
|
||
-------------------------------------------------------------------
|
||
Wed Feb 29 18:00:59 UTC 2012 - detlef.steuer@gmx.de
|
||
|
||
- upstream minor version increase to 2.14.2
|
||
- see, as usual, /usr/lib/R/doc/NEWS.html for details.
|
||
|
||
-------------------------------------------------------------------
|
||
Fri Feb 17 20:53:49 UTC 2012 - detlef.steuer@gmx.de
|
||
|
||
- Minor cleanup for easier automativ building of R-patched.spec
|
||
|
||
-------------------------------------------------------------------
|
||
Wed Feb 15 19:41:43 UTC 2012 - detlef.steuer@gmx.de
|
||
|
||
- changed licence string to "GPL-2.0 or GPL-3.0"
|
||
|
||
-------------------------------------------------------------------
|
||
Mon Feb 13 22:39:51 UTC 2012 - detlef.steuer@gmx.de
|
||
|
||
- uninstall rule for R.conf more than useless ... reverted.
|
||
|
||
-------------------------------------------------------------------
|
||
Mon Feb 13 21:59:13 UTC 2012 - detlef.steuer@gmx.de
|
||
|
||
- Applications like KDE's Cantor search for the R standard library
|
||
- using the library search path. However, in openSUSE's package,
|
||
- libraries are installed to %{_libdir}/R/lib, hence attempts to
|
||
- load them from these applications will fail.
|
||
- This revision adds a R.conf file to ld.so.conf.d to enable
|
||
- searching for libraries where R is installed. Once this change
|
||
- is in, applications are able to use libR.so.
|
||
- Thx to einar@heavensinferno.net for spotting this.
|
||
- Thought had done this for release of 2.14.0.
|
||
|
||
-------------------------------------------------------------------
|
||
Thu Dec 22 12:19:10 UTC 2011 - steuer@unibw-hamburg.de
|
||
|
||
- Upstream updated to 2.14.1
|
||
- see, as usual, /usr/lib/R/doc/NEWS.html for details.
|
||
- Only minor bug fixes + workaround for missing inconsolata.sty
|
||
- on older systems.
|
||
|
||
-------------------------------------------------------------------
|
||
Mon Oct 31 12:40:03 UTC 2011 - detlef.steuer@gmx.de
|
||
|
||
- merged change infor Oct 5th into working copy
|
||
|
||
-------------------------------------------------------------------
|
||
Mon Oct 31 12:34:30 UTC 2011 - detlef.steuer@gmx.de
|
||
|
||
- corrected subpackge version number in R-base-devel
|
||
|
||
-------------------------------------------------------------------
|
||
Mon Oct 31 11:12:24 UTC 2011 - detlef.steuer@gmx.de
|
||
|
||
- Upstream updated to 2.14.0
|
||
- see, as usual, /usr/lib/R/doc/NEWS.html for details.
|
||
- On system side most important, that /etc/ld.so.conf.d/R-base.conf
|
||
- was added to help third party programs, i.e. rpy2, tp link against
|
||
- R-base
|
||
|
||
-------------------------------------------------------------------
|
||
Wed Oct 5 07:13:03 UTC 2011 - detlef.steuer@gmx.de
|
||
|
||
- corrected version string for Matrix subpackage
|
||
|
||
-------------------------------------------------------------------
|
||
Tue Oct 4 14:00:04 UTC 2011 - detlef.steuer@gmx.de
|
||
|
||
- removed 4 warnings about unescaped macros in comments
|
||
|
||
-------------------------------------------------------------------
|
||
Tue Oct 4 12:13:18 UTC 2011 - detlef.steuer@gmx.de
|
||
|
||
- explicitly added some locale directories. Worked before implicitly.
|
||
|
||
-------------------------------------------------------------------
|
||
Tue Oct 4 11:10:56 UTC 2011 - detlef.steuer@gmx.de
|
||
|
||
- update to upstream version 2.13.2
|
||
- see, as usual, /usr/lib/R/doc/NEWS.html for details.
|
||
|
||
-------------------------------------------------------------------
|
||
Sat Sep 17 10:18:38 UTC 2011 - jengelh@medozas.de
|
||
|
||
- Remove redundant tags/sections from specfile
|
||
- Use %_smp_mflags for parallel build
|
||
|
||
-------------------------------------------------------------------
|
||
Fri Jul 8 19:32:45 UTC 2011 - detlef.steuer@gmx.de
|
||
|
||
- resolved some conflicts for R-base.spec after osc up -e && osc pull
|
||
|
||
-------------------------------------------------------------------
|
||
Fri Jul 8 12:51:05 UTC 2011 - detlef.steuer@gmx.de
|
||
|
||
- corrected version string in R-base.spec
|
||
|
||
-------------------------------------------------------------------
|
||
Fri Jul 8 11:51:35 UTC 2011 - detlef.steuer@gmx.de
|
||
|
||
- Upstream updated to 2.13.1. Licence change from GPLv2 to GPLv2 || GPLv3.
|
||
Packages rpart and survival now GPLed, too.
|
||
Various minor bugfixes.
|
||
See /usr/lib/R/doc/NEWS.html for details.
|
||
|
||
-------------------------------------------------------------------
|
||
Thu May 12 13:45:43 UTC 2011 - detlef.steuer@gmx.de
|
||
|
||
- Removed possible dangerous links of libraries. R`s internal
|
||
libraries now are only available in $lib/R/lib .
|
||
|
||
-------------------------------------------------------------------
|
||
Fri May 6 07:33:40 UTC 2011 - detlef.steuer@gmx.de
|
||
|
||
- Changed Licence string to GPLv2, taken from opensuse`s list aof allowed
|
||
licences, as requested from coolo
|
||
|
||
-------------------------------------------------------------------
|
||
Wed Apr 13 11:13:38 UTC 2011 - detlef.steuer@gmx.de
|
||
|
||
- Upstream update to 2.13.0; new package 'compiler'; some new language files
|
||
|
||
-------------------------------------------------------------------
|
||
Fri Mar 4 12:36:54 UTC 2011 - detlef.steuer@gmx.de
|
||
- update to 2.12.2
|
||
minor bugfixes
|
||
see /usr/lib/R/doc/html/NEWS.html for details
|
||
|
||
-------------------------------------------------------------------
|
||
Mon Jan 10 16:56:55 CET 2011 - detlef.steuer@gmx.de
|
||
|
||
- removed -n parameter from %build/%install
|
||
- removed %doc from man/info pages in files section
|
||
|
||
-------------------------------------------------------------------
|
||
Fri Dec 17 14:05:39 UTC 2010 - detlef.steuer@gmx.de
|
||
|
||
reverting mandir/infodir directiven, didn't build in some releases-
|
||
|
||
-------------------------------------------------------------------
|
||
Fri Dec 17 12:40:12 UTC 2010 - detlef.steuer@gmx.de
|
||
|
||
sorted out list of problems shown bei mrueckert-
|
||
|
||
-------------------------------------------------------------------
|
||
Mon Nov 29 20:08:31 UTC 2010 - detlef.steuer@gmx.de
|
||
|
||
Version, to be submitted to factory-
|
||
|