Age | Commit message (Collapse) | Author | Files | Lines |
|
Approved by wiz@
Upstream changes:
CHANGES IN R VERSION 2.15.1:
NEW FEATURES:
o source() now uses withVisible() rather than
.Internal(eval.with.vis). This sometimes alters tracebacks
slightly.
o install.packages("pkg_version.tgz") on Mac OS X now has sanity
checks that this is actually a binary package (as people have
tried it with incorrectly named source packages).
o splineDesign() and spline.des() in package splines have a new
option sparse which can be used for efficient construction of a
sparse B-spline design matrix (_via_ Matrix).
o norm() now allows type = "2" (the 'spectral' or 2-norm) as well,
mainly for didactical completeness.
o pmin() and pmax()) now also work when one of the inputs is of
length zero and others are not, returning a zero-length vector,
analogously to, say, +.
o colorRamp() (and hence colorRampPalette()) now also works for the
boundary case of just one color when the ramp is flat.
o qqline() has new optional arguments distribution, probs and
qtype, following the example of lattice's panel.qqmathline().
o .C() gains some protection against the misuse of character vector
arguments. (An all too common error is to pass character(N),
which initializes the elements to "", and then attempt to edit
the strings in-place, sometimes forgetting to terminate them.)
o Calls to the new function globalVariables() in package utils
declare that functions and other objects in a package should be
treated as globally defined, so that CMD check will not note
them.
o print(packageDescription(*)) trims the Collate field by default.
o The included copy of zlib has been updated to version 1.2.7.
o A new option "show.error.locations" has been added. When set to
TRUE, error messages will contain the location of the most recent
call containing source reference information. (Other values are
supported as well; see ?options.)
o The NA warning messages from e.g. pchisq() now report the call to
the closure and not that of the .Internal.
o Added Polish translations by <c5><81>ukasz Daniel.
PERFORMANCE IMPROVEMENTS:
o In package parallel, makeForkCluster() and the multicore-based
functions use native byte-order for serialization (deferred from
2.15.0).
o lm.fit(), lm.wfit(), glm.fit() and lsfit() do less copying of
objects, mainly by using .Call() rather than .Fortran().
o .C() and .Fortran() do less copying: arguments which are raw,
logical, integer, real or complex vectors and are unnamed are not
copied before the call, and (named or not) are not copied after
the call. Lists are no longer copied (they are supposed to be
used read-only in the C code).
o tabulate() makes use of .C(DUP = FALSE) and hence does not copy
bin. (Suggested by Tim Hesterberg.) It also avoids making a
copy of a factor argument bin.
o Other functions (often or always) doing less copying include
cut(), dist(), the complex case of eigen(), hclust(), image(),
kmeans(), loess(), stl() and svd(LINPACK = TRUE).
o There is less copying when using primitive replacement functions
such as names(), attr() and attributes().
DEPRECATED AND DEFUNCT:
o The converters for use with .C() (see ?getCConverterDescriptions)
are deprecated: use the .Call() interface instead. There are no
known examples (they were never fully documented).
UTILITIES:
o For R CMD check, a few people have reported problems with
junctions on Windows (although they were tested on Windows 7, XP
and Server 2008 machines and it is unknown under what
circumstances the problems occur). Setting the environment
variable R_WIN_NO_JUNCTIONS to a non-empty value (e.g. in
~/.R/check.Renviron) will force copies to be used instead.
INSTALLATION:
o R CMD INSTALL with _R_CHECK_INSTALL_DEPENDS_ set to a true value
(as done by R CMD check --as-cran) now restricts the packages
available when lazy-loading as well as when test-loading (since
packages such as ETLUtils and agsemisc had top-level calls to
library() for undeclared packages).
This check is now also available on Windows.
C-LEVEL FACILITIES:
o C entry points mkChar and mkCharCE now check that the length of
the string they are passed does not exceed 2^31-1 bytes: they
used to overflow with unpredictable consequences.
o C entry points R_GetCurrentSrcref and R_GetSrcFilename have been
added to the API to allow debuggers access to the source
references on the stack.
WINDOWS-SPECIFIC CHANGES:
o Windows-specific changes will now be announced in this file
(NEWS). Changes up and including R 2.15.0 remain in the CHANGES
file.
o There are two new environment variables which control the
defaults for command-line options.
If R_WIN_INTERNET2 is set to a non-empty value, it is as if
--internet2 was used.
If R_MAX_MEM_SIZE is set, it gives the default memory limit if
--max-mem-size is not specified: invalid values being ignored.
BUG FIXES:
o lsfit() lost the names from the residuals.
o More cases in which merge() could create a data frame with
duplicate column names now give warnings. Cases where names
specified in by match multiple columns are errors.
o Nonsense uses such as seq(1:50, by = 5) (from package plotrix)
and seq.int(1:50, by = 5) are now errors.
o The residuals in the 5-number summary printed by summary() on an
"lm" object are now explicitly labelled as weighted residuals
when non-constant weights are present. (Wish of PR#14840.)
o tracemem() reported that all objects were copied by .C() or
.Fortran() whereas only some object types were ever copied.
It also reported and marked as copies _some_ transformations such
as rexp(n, x): it no longer does so.
o The plot() method for class "stepfun" only used the optional xval
argument to compute xlim and not the points at which to plot (as
documented). (PR#14864)
o Names containing characters which need to be escaped were not
deparsed properly. (PR#14846)
o Trying to update (recommended) packages in R_HOME/library without
write access is now dealt with more gracefully. Further, such
package updates may be skipped (with a warning), when a newer
installed version is already going to be used from .libPaths().
(PR#14866)
o hclust() is now fast again (as up to end of 2003), with a
different fix for the "median"/"centroid" problem. (PR#4195).
o get_all_vars() failed when the data came entirely from vectors in
the global environment. (PR#14847)
o R CMD check with _R_CHECK_NO_RECOMMENDED_ set to a true value (as
done by the --as-cran option) could issue false errors if there
was an indirect dependency on a recommended package.
o formatC() uses the C entry point str_signif which could write
beyond the length allocated for the output string.
o Missing default argument added to implicit S4 generic for
backsolve(). (PR#14883)
o Some bugs have been fixed in handling load actions that could
fail to export assigned items or generate spurious warnings in
CMD check on loading.
o For tiff(type = "windows"), the numbering of per-page files
except the last was off by one.
o On Windows, loading package stats (which is done for a default
session) would switch line endings on stdout and stderr from CRLF
to LF. This affected Rterm and R CMD BATCH.
o On Windows, the compatibility function x11() had not kept up with
changes to windows(), and issued warnings about bad parameters.
(PR#14880)
o On Windows, the Sys.glob() function did not handle UNC paths as
it was designed to try to do. (PR#14884)
o In package parallel, clusterApply() and similar failed to handle
a (pretty pointless) length-1 argument. (PR#14898)
o Quartz Cocoa display reacted asynchronously to dev.flush() which
means that the redraw could be performed after the plot has been
already modified by subsequent code. The redraw is now done
synchronously in dev.flush() to allow animations without sleep
cycles.
o Source locations reported in traceback() were incorrect when
byte-compiled code was on the stack.
o plogis(x, lower = FALSE, log.p = TRUE) no longer underflows early
for large x (e.g. 800).
o ?Arithmetic's "1 ^ y and y ^ 0 are 1, _always_" now also applies
for integer vectors y.
o X11-based pixmap devices like png(type = "Xlib") were trying to
set the cursor style, which triggered some warnings and hangs.
o Code executed by the built-in HTTP server no longer allows other
HTTP clients to re-enter R until the current worker evaluation
finishes, to prevent cascades.
o The plot() and Axis() methods for class "table" now respect
graphical parameters such as cex.axis. (Reported by Martin
Becker.)
o Under some circumstances package.skeleton() would give out
progress reports that could not be translated and so were
displayed by question marks. Now they are always in English.
(This was seen for CJK locales on Windows, but may have occurred
elsewhere.)
o The evaluator now keeps track of source references outside of
functions, e.g. when source() executes a script.
o The replacement method for window() now works correctly for
multiple time series of class "mts". (PR#14925)
o is.unsorted() gave incorrect results on non-atomic objects such
as data frames. (Reported by Matthew Dowle.)
o The value returned by tools::psnice() for invalid pid values was
not always NA as documented.
o Closing an X11() window while locator() was active could abort
the R process.
o getMethod(f, sig) produced an incorrect error message in some
cases when f was not a string).
o Using a string as a "call" in an error condition with
options(showErrorCalls=TRUE) could cause a segfault. (PR#14931)
o The string "infinity" allowed by C99 was not accepted as a
numerical string value by e.g. scan() and as.character().
(PR#14933)
o In legend(), setting some entries of lwd to NA was inconsistent
(depending on the graphics device) in whether it would suppress
those lines; now it consistently does so. (PR#14926)
o by() failed for a zero-row data frame. (Reported by Weiqiang
Qian)
o Yates correction in chisq.test() could be bigger than the terms
it corrected, previously leading to an infinite test statistic in
some corner cases which are now reported as NaN.
o xgettext() and related functions sometimes returned items that
were not strings for translation. (PR#14935)
o plot(<lm>, which=5) now correctly labels the factor level
combinations for the special case where all h[i,i] are the same.
(PR#14837)
CHANGES IN R VERSION 2.15.0:
SIGNIFICANT USER-VISIBLE CHANGES:
o The behaviour of unlink(recursive = TRUE) for a symbolic link to
a directory has changed: it now removes the link rather than the
directory contents (just as rm -r does).
On Windows it no longer follows reparse points (including
junctions and symbolic links).
NEW FEATURES:
o Environment variable RD2DVI_INPUTENC has been renamed to
RD2PDF_INPUTENC.
o .Deprecated() becomes a bit more flexible, getting an old
argument.
o Even data-only packages without R code need a namespace and so
may need to be installed under R 2.14.0 or later.
o assignInNamespace() has further restrictions on use apart from at
top-level, as its help page has warned. Expect it to be disabled
from programmatic use in the future.
o system() and system2() when capturing output report a non-zero
status in the new "status" attribute.
o kronecker() now has an S4 generic in package methods on which
packages can set methods. It will be invoked by X %x% Y if
either X or Y is an S4 object.
o pdf() accepts forms like file = "|lpr" in the same way as
postscript().
o pdf() accepts file = NULL. This means that the device does NOT
create a PDF file (but it can still be queried, e.g., for font
metric info).
o format() (and hence print()) on "bibentry" objects now uses
options("width") to set the output width.
o legend() gains a text.font argument. (Suggested by Tim Paine,
PR#14719.)
o nchar() and nzchar() no longer accept factors (as integer
vectors). (Wish of PR#6899.)
o summary() behaves slightly differently (or more precisely, its
print() method does). For numeric inputs, the number of NAs is
printed as an integer and not a real. For dates and datetimes,
the number of NAs is included in the printed output (the latter
being the wish of PR#14720).
The "data.frame" method is more consistent with the default
method: in particular it now applies zapsmall() to
numeric/complex summaries.
o The number of items retained with options(warn = 0) can be set by
options(nwarnings=).
o There is a new function assignInMyNamespace() which uses the
namespace of the function it is called from.
o attach() allows the default name for an attached file to be
overridden.
o bxp(), the work horse of boxplot(), now uses a more sensible
default xlim in the case where at is specified differently from
1:n, see the discussion on R-devel, <URL:
https://stat.ethz.ch/pipermail/r-devel/2011-November/062586.html>.
o New function paste0(), an efficient version of paste(*, sep=""),
to be used in many places for more concise (and slightly more
efficient) code.
o Function setClass() in package methods now returns, invisibly, a
generator function for the new class, slightly preferred to
calling new(), as explained on the setClass help page.
o The "dendrogram" method of str() now takes its default for
last.str from option str.dendrogram.last.
o New simple fitted() method for "kmeans" objects.
o The traceback() function can now be called with an integer
argument, to display a current stack trace. (Wish of PR#14770.)
o setGeneric() calls can be simplified when creating a new generic
function by supplying the default method as the def argument.
See ?setGeneric.
o serialize() has a new option xdr = FALSE which will use the
native byte-order for binary serializations. In scenarios where
only little-endian machines are involved (these days, close to
universal) and (un)serialization takes an appreciable amount of
time this may speed up noticeably transferring data between
systems.
o The internal (un)serialization code is faster for long vectors,
particularly with XDR on some platforms. (Based on a suggested
patch by Michael Spiegel.)
o For consistency, circles with zero radius are omitted by points()
and grid.circle(). Previously this was device-dependent, but
they were usually invisible.
o NROW(x) and NCOL(x) now work whenever dim(x) looks appropriate,
e.g., also for more generalized matrices.
o PCRE has been updated to version 8.30.
o The internal R_Srcref variable is now updated before the browser
stops on entering a function. (Suggestion of PR#14818.)
o There are 'bare-bones' functions .colSums(), .rowSums(),
.colMeans() and .rowMeans() for use in programming where ultimate
speed is required.
o The formerly internal function .package_dependencies() from
package tools for calculating (recursive) (reverse) dependencies
on package databases has been renamed to package_dependencies()
and is now exported.
o There is a new function optimHess() to compute the (approximate)
Hessian for an optim() solution if hessian = TRUE was forgotten.
o .filled.contour() is a 'bare-bones' function to add a
filled-contour rectangular plot to an already prepared plot
region.
o The stepping in debugging and single-step browsing modes has
changed slightly: now left braces at the start of the body are
stepped over for if statements as well as for for and while
statements. (Wish of PR#14814.)
o library() no longer warns about a conflict with a function from
package:base if the function has the same code as the base one
but with a different environment. (An example is Matrix::det().)
o When deparsing very large language objects, as.character() now
inserts newlines after each line of approximately 500 bytes,
rather than truncating to the first line.
o New function rWishart() generates Wishart-distributed random
matrices.
o Packages may now specify actions to be taken when the package is
loaded (setLoadActions()).
o options(max.print = Inf) and similar now give an error (instead
of warnings later).
o The "difftime" replacement method of units tries harder to
preserve other attributes of the argument. (Wish of PR#14839.)
o poly(raw = TRUE) no longer requires more unique points than the
degree. (Requested by John Fox.)
PACKAGE parallel:
o There is a new function mcmapply(), a parallel version of
mapply(), and a wrapper mcMap(), a parallel version of Map().
o A default cluster can be registered by the new function
setDefaultCluster(): this will be used by default in functions
such as parLapply().
o clusterMap() has a new argument .scheduling to allow the use of
load-balancing.
o There are new load-balancing functions parLapplyLB() and
parSapplyLB().
o makePSOCKCluster() has a new option useXDR = FALSE which can be
used to avoid byte-shuffling for serialization when all the nodes
are known to be little-endian (or all big-endian).
PACKAGE INSTALLATION:
o Non-ASCII vignettes without a declared encoding are no longer
accepted.
o C/C++ code in packages is now compiled with -NDEBUG to mitigate
against the C/C++ function assert being called in production use.
Developers can turn this off during package development with
PKG_CPPFLAGS = -UNDEBUG.
o R CMD INSTALL has a new option --dsym which on Mac OS X (Darwin)
dumps the symbols alongside the .so file: this is helpful when
debugging with valgrind (and especially when installing packages
into R.framework). [This can also be enabled by setting the
undocumented environment variable PKG_MAKE_DSYM, since R 2.12.0.]
o R CMD INSTALL will test loading under all installed
sub-architectures even for packages without compiled code, unless
the flag --no-multiarch is used. (Pure R packages can do things
which are architecture-dependent: in the case which prompted
this, looking for an icon in a Windows R executable.)
o There is a new option install.packages(type = "both") which tries
source packages if binary packages are not available, on those
platforms where the latter is the default.
o The meaning of install.packages(dependencies = TRUE) has changed:
it now means to install the essential dependencies of the named
packages plus the Suggests, but only the essential dependencies
of dependencies. To get the previous behaviour, specify
dependencies as a character vector.
o R CMD INSTALL --merge-multiarch is now supported on OS X and
other Unix-alikes using multiple sub-architectures.
o R CMD INSTALL --libs-only now by default does a test load on
Unix-alikes as well as on Windows: suppress with --no-test-load.
UTILITIES:
o R CMD check now gives a warning rather than a note if it finds
inefficiently compressed datasets. With bzip2 and xz compression
having been available since R 2.10.0, it only exceptionally makes
sense to not use them.
The environment variable _R_CHECK_COMPACT_DATA2_ is no longer
consulted: the check is always done if _R_CHECK_COMPACT_DATA_ has
a true value (its default).
o Where multiple sub-architectures are to be tested, R CMD check
now runs the examples and tests for all the sub-architectures
even if one fails.
o R CMD check can optionally report timings on various parts of the
check: this is controlled by environment variable
_R_CHECK_TIMINGS_ documented in 'Writing R Extensions'. Timings
(in the style of R CMD BATCH) are given at the foot of the output
files from running each test and the R code in each vignette.
o There are new options for more rigorous testing by R CMD check
selected by environment variables - see the 'Writing R
Extensions' manual.
o R CMD check now warns (rather than notes) on undeclared use of
other packages in examples and tests: increasingly people are
using the metadata in the DESCRIPTION file to compute information
about packages, for example reverse dependencies.
o The defaults for some of the options in R CMD check (described in
the 'R Internals' manual) have changed: checks for unsafe and
.Internal() calls and for partial matching of arguments in R
function calls are now done by default.
o R CMD check has more comprehensive facilities for checking
compiled code and so gives fewer reports on entry points linked
into .so/.dll files from libraries (including C++ and Fortran
runtimes).
Checking compiled code is now done on FreeBSD (as well as the
existing supported platforms of Linux, Mac OS X, Solaris and
Windows).
o R CMD build has more options for --compact-vignettes: see R CMD
build --help.
o R CMD build has a new option --md5 to add an MD5 file (as done by
CRAN): this is used by R CMD INSTALL to check the integrity of
the distribution.
If this option is not specified, any existing (and probably
stale) MD5 file is removed.
DEPRECATED AND DEFUNCT:
o R CMD Rd2dvi is now defunct: use R CMD Rd2pdf.
o Options such --max-nsize, --max-vsize and the function
mem.limits() are now defunct. (Options --min-nsize and
--min-vsize remain available.)
o Use of library.dynam() without specifying all the first three
arguments is now disallowed.
Use of an argument chname in library.dynam() including the
extension .so or .dll (which was never allowed according to the
help page) is defunct. This also applies to
library.dynam.unload() and to useDynLib directives in NAMESPACE
files.
o The internal functions .readRDS() and .saveRDS() are now defunct.
o The off-line help() types "postscript" and "ps" are defunct.
o Sys.putenv(), replaced and deprecated in R 2.5.0, is finally
removed.
o Some functions/objects which have been defunct for five or more
years have been removed completely. These include .Alias(),
La.chol(), La.chol2inv(), La.eigen(), Machine(), Platform(),
Version, codes(), delay(), format.char(), getenv(), httpclient(),
loadURL(), machine(), parse.dcf(), printNoClass(), provide(),
read.table.url(), restart(), scan.url(), symbol.C(), symbol.For()
and unix().
o The ENCODING argument to .C() is deprecated. It was intended to
smooth the transition to multi-byte character strings, but can be
replaced by the use of iconv() in the rare cases where it is
still needed.
INSTALLATION:
o Building with a positive value of --with-valgrind-instrumentation
now also instruments logical, complex and raw vectors.
C-LEVEL FACILITIES:
o Passing R objects other than atomic vectors, functions, lists and
environments to .C() is now deprecated and will give a warning.
Most cases (especially NULL) are actually coding errors. NULL
will be disallowed in future.
.C() now passes a pairlist as a SEXP to the compiled code. This
is as was documented, but pairlists were in reality handled
differently as a legacy from the early days of R.
o call_R and call_S are deprecated. They still exist in the
headers and as entry points, but are no longer documented and
should not be used for new code.
BUG FIXES:
o str(x, width) now obeys its width argument also for function
headers and other objects x where deparse() is applied.
o The convention for x %/% 0L for integer-mode x has been changed
from 0L to NA_integer_. (PR#14754)
o The exportMethods directive in a NAMESPACE file now exports S4
generics as necessary, as the extensions manual said it does.
The manual has also been updated to be a little more informative
on this point.
It is now required that there is an S4 generic (imported or
created in the package) when methods are to be exported.
o Reference methods cannot safely use non-exported entries in the
namespace. We now do not do so, and warn in the documentation.
o The namespace import code was warning when identical S4 generic
functions were imported more than once, but should not (reported
by Brian Ripley, then Martin Morgan).
o merge() is no longer allowed (in some ways) to create a data
frame with duplicate column names (which confused PR#14786).
o Fixes for rendering raster images on X11 and Windows devices when
the x-axis or y-axis scale is reversed.
o getAnywhere() found S3 methods as seen from the utils namespace
and not from the environment from which it was called.
o selectMethod(f, sig) would not return inherited group methods
when caching was off (as it is by default).
o dev.copy2pdf(out.type = "cairo") gave an error. (PR#14827)
o Virtual classes (e.g., class unions) had a NULL prototype even if
that was not a legal subclass. See ?setClassUnion.
o The C prototypes for zdotc and zdotu in R_ext/BLAS.h have been
changed to the more modern style rather than that used by f2c.
(Patch by Berwin Turlach.)
o isGeneric() produced an error for primitives that can not have
methods.
o .C() or .Fortran() had a lack-of-protection error if the
registration information resulted in an argument being coerced to
another type.
o boxplot(x=x, at=at) with non finite elements in x and non integer
at could not generate a warning but failed.
o heatmap(x, symm=TRUE, RowSideColors=*) no longer draws the colors
in reversed order.
o predict(<ar>) was incorrect in the multivariate case, for p >= 2.
o print(x, max=m) is now consistent when x is a "Date"; also the
"reached ... max.print .." messages are now consistently using
single brackets.
o Closed the <li> tag in pages generated by Rd2HTML(). (PR#14841.)
o Axis tick marks could go out of range when a log scale was used.
(PR#14833.)
o Signature objects in methods were not allocated as S4 objects
(caused a problem with trace() reported by Martin Morgan).
|
|
Fixes Solaris 64-bit build.
|
|
CHANGES IN R VERSION 2.14.2:
NEW FEATURES:
o The internal untar() (as used by default by R CMD INSTALL) now
knows about some pax headers which bsdtar (e.g., the default tar
for Mac OS >= 10.6) can incorrectly include in tar files, and
will skip them with a warning.
o Function compactPDF() in package tools now takes the default for
argument gs_quality from environment variable GS_QUALITY: there
is a new value "none", the ultimate default, which prevents
GhostScript being used in preference to qpdf just because
environment variable R_GSCMD is set. If R_GSCMD is unset or set
to "", the function will try to find a suitable GhostScript
executable.
o For consistency with the logLik() method, nobs() for "nls" files
now excludes observations with zero weight. (Reported by Berwin
Turlach.)
UTILITIES:
o R CMD check now reports by default on licenses not according to
the description in 'Writing R Extensions'.
o R CMD check has a new option --as-cran to turn on most of the
customizations that CRAN uses for its incoming checks.
PACKAGE INSTALLATION:
o R CMD INSTALL will now no longer install certain file types from
inst/doc: these are almost certainly mistakes and for some
packages are wasting a lot of space.
+ BUG FIXES
CHANGES IN R VERSION 2.14.1:
NEW FEATURES:
o parallel::detectCores() is now able to find the number of
physical cores (rather than CPUs) on Sparc Solaris.
It can also do so on most versions of Windows; however the
default remains detectCores(logical = TRUE) on that platform.
o Reference classes now keep a record of which fields are locked.
$lock() with no arguments returns the names of the locked fields.
o HoltWinters() reports a warning rather than an error for some
optimization failures (where the answer might be a reasonable
one).
o tools::dependsOnPkg() now accepts the shorthand dependencies =
"all".
o parallel::clusterExport() now allows specification of an
environment from which to export.
o The quartz() device now does tilde expansion on its file
argument.
o Option print in Sweave's RweaveLatex() driver now emulates
auto-printing rather than printing (which can differ for an S4
object by calling show() rather than print()).
o filled.contour() now accepts infinite values: previously it might
have generated invalid graphics files (e.g. containing NaN
values).
+ BUG FIXES
|
|
Based on patch by Petr Pisar <ppisar@redhat.com>
|
|
DragonFly has the same math limitations as NetBSD, so it needs the same fix.
|
|
changes to many to list - see NEWS file in distribution for details.
|
|
* R CMD INSTALL checks if dependent packages are available early on
* in the installation of source packages, thereby giving clearer
error messages.
* R CMD INSTALL --build now names the file in the format used
for Mac OS X binary files on that platform.
* BIC() in package stats4 now also works with multiple fitted models,
analogously to AIC().
* Use of file extension .C for C++ code in packages is now
deprecated: it has caused problems for some 'make's on
case-insensitive file systems (although it currently works
with the recommended toolkits).
* The C function mkCharLenCE now no longer reads past 'len' bytes
(unlikely to be a problem except in user code).
* On systems without any default LD_LIBRARY_PATH (not even
/usr/local/lib), [DY]LIB_LIBRARY_PATH is now set without a trailing colon.
* More efficient utf8ToInt() on long multi-byte strings with
many multi-byte characters.
* aggregate.ts() gave platform-depedent results due to rounding
error for ndeltat != 1.
* package.skeleton() sometimes failed to fix filenames for .R or
.Rd files to start with an alphanumeric.
|
|
* Packages must have been installed under R >= 2.10.0, as the
current help system is the only one now supported.
* A port to 64-bit Windows is now available as well as binary package
repositiories: see the 'R Administration and Installation Manual'.
* Argument matching for primitive functions is now done in the same way
as for interpreted functions except for the deliberate exceptions
call switch .C .Fortran .Call .External
all of which use positional matching for their first argument,
and also some internal-use-only primitives.
* The default device for command-line R at the console on Mac OS X
is now quartz() and not X11().
New features
* The 'open' modes for connections are now interpreted more consistently.
* R CMD INSTALL now uses the internal untar() in package utils.
* help(try.all.packages = TRUE) is much faster.
* R CMD check has a new option '--timings' to record per-example timings
in file <pkg>.Rcheck/<pkg>-Ex.timings.
* The TRE library has been updated to version 0.8.0 (minor bugfixes).
More...
|
|
* The PCRE library has been updated to version 8.00.
* R CMD INSTALL has new options --no-R, --no-libs, --no-data,
--no-help, --no-demo, --no-exec, and --no-inst to suppress
installation of the specified part of the package.
* The documented line-length limit of 4095 bytes when reading
from the console now also applies also to parse(file="")
(which previously had a limit of around 1024 bytes).
* A Bioconductor mirror can be set for use by setRepositories()
via the option "BioC_mirror".
* Double-clicking in a tk_select.list() list box now selects the item
and closes the list box (as happens on the Windows select.list() widget).
* configure will be able to find a usable libtiff in some rare
circumstances where it did not previously (where libtiff
needed to be linked explicitly against -ljpeg).
* Making refman.pdf works around a problem with the indexing
with hyperref 6.79d and later.
* The 'extended' argument is deprecated in strsplit(), grep(),
grepl(), sub(), gsub(), regexpr() and gregexpr() (not just the
value extended = FALSE) and will be removed in R 2.11.0.
* bug fixes
|
|
* Package help is now converted from Rd by the R-based converters
that were first introduced in 2.9.0.
* HTML help is now generated dynamically using an HTTP server
running in the R process and listening on the loopback interface.
* polygon(), pdf() and postscript() now have a parameter
'fillOddEven' (default FALSE), which controls the mode used for
polygon fills of self-intersecting shapes.
* New debugonce() function; further,
getOption("deparse.max.lines") is now observed when debugging.
* plot() methods for "stepfun" and hence "ecdf" no longer plot
points by default for n >= 1000.
* [g]sub(*, perl=TRUE) now also supports '\E' in order to *end*
\U and \L case changes, thanks to a patch from Bill Dunlap.
* factor(), `levels<-`(), etc, now ensure that the resulting factor
levels are unique (as was always the implied intention). Factors
with duplicated levels are still constructible by low-level means,
but are now declared illegal.
* New print() (S3) method for class "function", also used for
auto-printing. Further, .Primitive functions now print and
auto-print identically.
* The print() and toLatex() methods for class "sessionInfo" now
show the locale in a nicer format and have arguments to
suppress locale information.
* In addition to previously only round(), there are other 'Math'
group (S3) methods for 'difftime', such as floor(), signif(), abs(), etc.
* For completeness, old.packages() and available.packages() allow
'type' to be specified (you could always specify 'available'
or 'contriburl').
* More...
|
|
NEW FEATURES
o sprintf() returns elements of the result in UTF-8 when the
format or any character input has a corresponding element
declared as UTF-8. Similarly for paste(), elements of the
result are in UTF-8 when any input to that element is declared
as UTF-8.
o axis() has new arguments 'col.ticks' and 'lwd.ticks' to allow
the colour and line width of ticks to be set separately from
that of the line (e.g. to set one or the other to transparent
or zero width).
o legend() has a new argument 'box.col' to set the colour of the
enclosing box.
o legend() gains a 'xpd' argument to make it easier to place a
legend in the margins or outer margins.
o stripchart() now passes '...' to title() (as well as to
plot.default() and axis()). (Wish of PR#12202)
o help.search() has new argument 'searchEngine' to go
directly to the search form: this is needed by users of
Firefox 3 to workaround a bug in interpreting the search
results pages.
+ BUG FIXES
2.7.1 NEW FEATURES
o tools::texi2dvi() has a new argument 'texinputs' to allow the
TeX and bibtex input paths to be specified (even on MiKTeX).
o dev.copy2pdf() gains an 'out.type' argument to allow it to be
used with cairo_pdf() or quartz(type = "pdf").
o poly() has additional checks against user error (as in PR#11243).
o The Mac OS quartz() device draws contiguous lines much faster.
o A field containing just a sign is no longer regarded as numeric
(it was on all platforms in 2.7.0, but not on most in earlier
versions of R). Similarly, '.' is now always non-numeric.
o CITATION files are now read in Latin-1: quite a few were
failing if used in a multibyte locale such as UTF-8.
o The DESCRIPTION file of a package can specify an 'OS_type' field
as either 'unix' or 'windows' to confine installation to that
OS type.
o HoltWinters() now uses optimize() rather than optim for
one-parameter problems which should be more reliable (PR#11469).
o axis() now respects the setting of par("xpd") when clipping.
o The 'factor' method of format() now preserves names, dims and
dimnames in the same way as for character and numeric inputs.
(PR#11512)
o read.DIF(*, transpose=TRUE) now allows to correctly read DIF files
produced by some versions of Excel.
DEPRECATED & DEFUNCT
o The use of unserialize() on character strings is deprecated:
that was a format used in R < 2.4.0.
o The use of embedded nuls in character strings is deprecated:
They will no longer be allowed in R 2.8.0.
UTILITIES
o R CMD check checks for possible check directories in the
sources -- in mid-2008 there were about 20 examples on CRAN.
o R CMD build tries harder to clean up the inst/doc directory
from the remnants of earlier builds.
It also removes any directories with extension .Rcheck, and
files .DS_Store and ._* (created by tar on Mac OS X under some
circumstances: it now sets environment variables to ask for
such files not to be created by that tar.)
+ BUG FIXES
|
|
|
|
SIGNIFICANT USER-VISIBLE CHANGES
o The default graphics device in non-interactive use is now
pdf() rather than postscript(). [PDF viewers are now
more widely available than PostScript viewers.]
The default width and height for pdf() and bitmap() have been
changed to 7 (inches) to match the screen devices.
o Most users of the X11() device will see a new device that has
different fonts, anti-aliasing of lines and fonts and
supports semi-transparent colours.
o Considerable efforts have been made to make the default output
from graphics devices as similar as possible (and in
particular close to that from postscript/pdf). Many devices
were misinterpreting 'pointsize' in some way, for example as
being in device units (pixels) rather than in points.
o Packages which include graphics devices need to be re-installed
for this version of R, with recently updated versions.
+ New features and bug fixes.
|
|
Changes are basically bugfixes.
pkgsrc changes:
Don't bother patching configure.ac - it was only part of the changes
being made to configure so don't pretend you could use it to regerate
configure.
Use -fPIC rather than -fpic for NetBSD powerpc. Should fix PR 38032.
|
|
patch-ac that altered the order in which the terminal library for
readline was detected. The termcap.buildlink3.mk file (included
indirectly by readline/buildlink3.mk) will do the right thing by
itself.
+ Modify the pkg-index.tmpl INSTALL script fragment: we can just use
${PKG_PREFIX} instead of substituting for @PREFIX@ everywhere. Also
refactor the commands to rebuild the package index into a shell
function and give some indication to the user what is happening.
+ Remove chown operation in post-install that was basically
cargo-culted from the very first version of R imported into pkgsrc.
It's not necessary.
+ Support user-destdir installation.
Bump the PKGREVISION to 2.
|
|
Many new features, changes and bug fixes. See lib/R/doc/NEWS for details.
|
|
remove conditional PLIST entry no longer required. Bump PKGREVISION.
|
|
pkgsrc changes: no longer automatically generate the PLIST.
use (de)install templates for handling updating the index files
when adding/removing R packages.
Changes 2.4.1
This is a maintenance release and fixes a number of mostly minor bugs.
Changes 2.4.0
This release has many new features. One important aspect is that S4
classes now have their own internal type, and S4 method dispatch has
been completely revised to using cached generic functions, giving
substantial performance improvements. As a consequence, all packages
depending on "methods" need to be reinstalled.
|
|
This version contains several minor fixups and removes a couple of bad
bugs such as NA-handling of mean() for integer vectors.
Changes 2.3.0
This version contains several changes and additions, mostly incremental.
|
|
|
|
fixes build on Solaris.
|
|
USER-VISIBLE CHANGES
o options("expressions") has been reduced to 1000: the limit
of 5000 introduced in 2.1.0 was liable to give crashes from C
stack overflow.
NEW FEATURES
o Use of 'pch' (e.g. in points) in the symbol font 5 is now
interpreted in the single-byte encoding used by that font.
Similarly, strwidth now recognizes that font 5 has a different
encoding from that of the locale. (These are likely to affect
the answer only in MBCS locales such as UTF-8.)
o The URW font metrics have been updated to versions from late
2002 which cover more glyphs, including Cyrillic.
o New postscript encodings for CP1250 (Windows East European),
ISO Latin-7 (8859-13, Latvian, Lithuanian and Maori), Cyrillic
(8859-5), KOI8-R, KOI8-U and CP1251.
o configure has more support for the Intel and Portland Group
compilers on ix86 and x86_64 Linux.
o R CMD INSTALL will clean up if interrupted (e.g. by ctrl-C from
the keyboard).
o There is now a comprehensive French translation of the messages,
thanks to Philippe Grosjean.
DEPRECATED & DEFUNCT
o The undocumented use of atan() with two arguments is deprecated:
instead use atan2() (as documented).
o The 'vfont' argument of axis() and mtext() is deprecated
(it currently warns and does nothing).
o The function mauchley.test() is deprecated (was a misspelling)
and replaced by mauchly.test()
Many BUG FIXES
|
|
in log1p(). From R svn. Should fix build on NetBSD-1.6.2.
|
|
Changes:
This version contains several changes and additions, mostly incremental.
|
|
|
|
- this uses libtool, tell the framework so
- don't declare alloca on DragonFly, it conflicts with system headers
- patch libtool.m4 fragment for DrgaonFly
|
|
minor bug fixes.
|
|
too many changes to list here
...still doesn't work within TEXmacs
|
|
|
|
normal operation as the binary is always called from a wrapper script
that sets LD_LIBRARY_PATH.
|
|
Changes 2.0.1:
This is a maintenance version mainly to fix a number of minor bugs and
issues. Some rather nasty bugs were Windows-specific.
Changes 2.0.0:
Many things have changed since 1.0. The R language has acquired namespaces,
exception handling constructs, formal methods and classes, much improved
garbage collection, generalized I/O via connection objects, and
considerable improvements in the graphics area. The user workspace has been
reorganized, and so has the set of packages that ship with R. Several
"recommended packages" deemed indispensable in a statistical system are
bundled. In addition, there has been a large number of more specific new
functions, tweaks, and bugfixes.
|
|
CHANGES IN R VERSION 1.9.1
NEW FEATURES
o as.Date() now has a method for "POSIXlt" objects.
o mean() has a method for "difftime" objects and so summary()
works for such objects.
o legend() has a new argument 'pt.cex'.
o plot.ts() has more arguments, particularly 'yax.flip'.
o heatmap() has a new 'keep.dendro' argument.
o The default barplot method now handles vectors and 1-d arrays
(e.g., obtained by table()) the same, and uses grey instead of
heat color palettes in these cases. (Also fixes PR#6776.)
o nls() now looks for variables and functions in its formula in
the environment of the formula before the search path, in the
same way lm() etc look for variables in their formulae.
DEPRECATED & DEFUNCT
o Support for non-IEEE-754 arithmetic (which has been untested
for some time) will be removed in the next full release.
o Direct use of R INSTALL|REMOVE|BATCH|COMPILE|SHLIB is
deprecated: use R CMD instead.
o The gnome/GNOME graphics device is deprecated and will be
removed in the next full release.
Plus Bug Fixes.
|
|
building even though it uses INSTALL_DATA on them so set SHAREMODE=644
rather than have to patch an ever increasing number of files.
Idea from Julio M. Merino Vidal.
|
|
USER-VISIBLE CHANGES
o Underscore '_' is now allowed in syntactically valid names, and
make.names() no longer changes underscores. Very old code
that makes use of underscore for assignment may now give
confusing error messages.
o Package 'base' has been split into packages 'base', 'graphics',
'stats' and 'utils'. All four are loaded in a default
installation, but the separation allows a 'lean and mean'
version of R to be used for tasks such as building indices.
Packages ctest, eda, modreg, mva, nls, stepfun and ts have been
merged into stats, and lqs has been returned to MASS. In all
cases a stub has been left that will issue a warning and ensure
that the appropriate new home is loaded. All the time series
datasets have been moved to package stats. Sweave has been
moved to utils.
Package mle has been moved to stats4 which will become the
central place for statistical S4 classes and methods
distributed with base R. Package mle remains as a stub.
Users may notice that code in .Rprofile is run with only the
new base loaded and so functions may now not be found. For
example, ps.options(horizontal = TRUE) should be preceded by
library(graphics) or called as graphics::ps.options or,
better, set as a hook -- see ?setHook.
o There has been a concerted effort to speed up the startup of
an R session: it now takes about 2/3rds of the time of 1.8.1.
o A warning is issued at startup in a UTF-8 locale, as currently R
only supports single-byte encodings.
plus many new features and bug fixes.
|
|
src/modules/x11/dataentry.c
explicitly unset NeedFunctionPrototypes, which can no longer safely be done in recent
X11 sources (as _Xconst is only defined if this is set, yet is used everywhere).
|
|
make dependency on libbz2 explicit
Fixes build on Solaris 8.
|
|
Closes PR pkg/23760
|
|
Changes since 1.6.2
Many new features.
Language changes.
Additional standard package 'mle'.
Some old features deprecated or defunct.
Many many bug fixes.
Update to 1.8.0 from Ray Brownrigg in private communication, cleaned up
and updated to 1.8.1 by me.
|
|
CHANGES IN R VERSION 1.6.2
BUG FIXES
o plot.stepfun() now obeys a `ylim=.' specification.
o removeClass() does a better job of removing inheritance
information.
o setIs() will not allow mismatched representations between two
classes (without an explicit coerce method).
o The code underlying polygon drawing contained a memory leak.
This showed up in persp, but did not affect other graphics
functions. It is now possible to draw big DEMs.
o logLik.nls() gave wrong df.
o rbind() with a mixture of data frames and matrices treated the
matrices as vectors.
o stripchart(method="stack") was not handling missing values.
o Arithmetic functions such as log() lost the object bit from
classed objects if coercion was needed.
o exp_rand would go into an infinite loop if unif_rand returned 0.
o formatC(x, format="fg") could return exponential format if
rounding pushed x over a positive power of 10.
o attr(x, foo) used partial matching for `foo' (even though not
documented to do so), and failed to find `foo' if there were
two or more partial matches before the exact match in the list
of attributes.
o Rdconv now creates direct HTML hyperlinks when linking to
documentation in the same package. The code now ensures that
links which can be resolved within the package are so resolved,
even when there are possible resolutions in other packages.
o If readBin(what=character()) is used incorrectly on a file which
does not contain C-style character strings, warnings (usually
many) are now given.
o Building libR.so with the zlib in the R sources was not
finding the local zlib headers.
o system(intern=TRUE) has an undocumented line length limit of
119 chars both on Unix and Windows. The limit is now 8096 and
documented. On Unix (only) every 120th character used to be
discarded.
o plot.POSIX[cl]t were not passing graphics parameters on to
axis.POSIXct.
o On some HP-UX systems, installed scripts were not executable
when using the BSD-compatible install system program found by
configure. We now always use install-sh on HP-UX.
o c() was converting NA names to "NA": now proper NA strings are
used wherever possible.
o A typo was causing segfaults when using data.entry under SuSE.
|
|
Pkgsrc changes:
Now builds the libR.so and provides a buildlink2.mk for packages that want
to use it. From suggestions from Kent Polk.
Recommended library set is now included in the base package.
Changes:
CHANGES IN R VERSION 1.6.1
NEW FEATURES
o Added a few "trivial and obviously missing" functions to tcltk:
tkchooseDirectory, tkpopup, tkdialog, tkread
o barplot() has a new argument `axis.lty', which if set to 1
allows the pre-1.6.0 behaviour of plotting the axis and tick
marks for the categorical axis. (This was apparently not
intentional, but axis() used to ignore lty=0.)
The argument `border' is no longer ".NotYetUsed".
CHANGES IN R VERSION 1.6.0
USER-VISIBLE CHANGES
o The default colour palette now has "grey" instead of "white"
in location 8. See palette().
o grid(nx) behaves differently (but the same as in R versions <= 0.64).
NEW FEATURES
o Preparations for name space support:
o The objects created in the methods package to represent
classes, generic functions, method definitions, and
inheritance relations now themselves belong to true classes. In
particular, the "classRepresentation" objects follow the description
in "Programming with Data" (section 7.6).
o Other additions and changes to the methods package:
o New methods ([[, print, str) and extended plot() method
(incl. logical `horiz') for "dendrogram" class.
o sprintf() now checks the agreement between formats and object
types, and handles special values (NA, Inf, ...) correctly.
o chol() now uses a tolerance for non-positive-definiteness and
so should give more consistent results across platforms.
o New function agrep() for approximate (fuzzy) string matching.
o help.search() can now use both approximate (fuzzy) and regular
expression matching. By default, if the pattern to be matched
consists of only alphanumeric characters, whitespace or a dash,
approximate matching is used.
o axis() has three new optional arguments `col', `lty', and `lwd'
all for drawing the axis line and tick marks.
o Function vcov() (formerly in MASS), a generic function to
return the variance-covariance matrix of the parameter
estimates of a fitted model.
o duplicated() and unique() have methods for matrices and arrays
(based on ideas from Jens Oehlschl<E4>gel).
o Internally memory sizes and counts of cons cells are now stored
in unsigned longs. This allows memory limits to be set and
objects created in the range 2-4Gb on 32-bit platforms, and
allows 64-bit platforms to use much larger amounts of memory.
o Command-line flags to set memory can now use the suffix `G'
for gigabytes. The setting of maximum vsize is now only
limited by the platform's address space.
o All warning and error messages are truncated to a length set
by options(warning.length=), defaulting to 1000. (Previously
most (but not quite all) were truncated at 8192 characters.)
o [dpqr]gamma() check for shape parameter > 0.
o as.POSIX[cl]t can now convert logical NAs.
o All installed packages (even those shipped with R) are
given a `Built' field in the DESCRIPTION file.
o as.data.frame() now coerces logical matrices into logical
columns (rather than factors).
o [[<-.data.frame no longer coerces character replacement values
to factor. This is consistent with using $ to replace and
with S4.
o library() attempts to detect improperly installed packages, so
as from this version an installed package must have a
DESCRIPTION file and that file must have been stamped with a
`Built:' line (which was introduced in 1.2.0). Under
Unix-alikes, the platform is checked against that used for
installation.
o print.factor() has new arguments `max.levels' (with a smart default)
and `width'. print.ordered() is no longer needed.
o RNGkind() has an additional option for normal random generators:
"Inversion".
o data.frame() recycles factors and "AsIs" objects as well as
atomic vectors.
o rect() accepts additional graphics parameters through a ...
argument (in the same way as polygon).
o strwidth/strheight() now coerce their first argument in exactly
the same way text() does, so a wider range of inputs is allowed.
o prompt()'s default and data.frame methods have a new 3rd argument
`name' allowing them to used more easily in scripts and loops.
o rgb() has a new `maxColorValue' argument, allowing r,g,b in [0,M],
particularly in {0:255}, efficiently and non-error-prone.
o summaryRprof() provides the functionality of R CMD Rprof in R
code, though more slowly.
o pdf() now uses PDF not R code for clipping, which ensures that
partially visible text strings are (partially) shown.
o Each R session uses a per-session temporary directory which
is removed at normal termination. The directory name is given
by the tempdir() function, and filenames returned by
tempfile() will be within that directory.
o help.start() on Unix now uses a .R subdirectory of the
per-session temporary directory and not ~/.R. A side effect
is that ~/.R is now never deleted by R.
o cbind/rbind() used to ignore all zero-length vectors, an
undocumented quirk for S-compatibility. This caused problems
when combining zero-extent matrices and zero-length vectors, and
now zero-length vectors are ignored unless the result would
have zero rows/columns.
o plot.spec(x) now also works for other x than AR and Pgram results.
o New functions La.chol() and La.chol2inv() for Cholesky
decomposition and inverse of positive definite matrices using
Lapack.
o Changes to the tcltk package
o New function axTicks() returning tick mark locations like axis().
o grid() has a more sensible default behavior. Tick axis alignment
only happens when no numbers of grid cells are specified. New
arguments lwd and equilogs; nx/ny = NA for not drawing, see ?grid.
o installed.packages() has a new argument `priority'.
o termplot() uses factor levels rather than 1,2,3... for x-axis.
o The trace() function has been robustified and a new function
tracingState() added to turn tracing temporarily on and off.
o New cophenetic() in "mva" as utility for hierarchical clustering.
o p.adjust() has two new methods, 'Hommel' and 'FDR', contributed
by Gordon Smyth <smyth@wehi.edu.au>.
o stars() now has add and plot arguments.
and lots of bug fixes.
|
|
User-Visible Changes
o XDR support is now guaranteed to be available, so the default
save format will always be XDR binary files, and it is safe to
distribute data in that format. (We are unaware of any
platform that did not support XDR in recent versions of R.)
gzfile() is guaranteed to be available, so the preferred
method to distribute sizeable data objects is now via
save(compress = TRUE).
o pie() replaces piechart() and defaults to using pastel colours.
o formatC has new arguments (see below) and formatC(*, d = <dig>)
is no longer valid and must be written as formatC(*, digits = <dig>).
o Missingness of character strings is treated much more
consistently, and the character string "NA" can be used as a
non-missing value.
o summary.factor() now uses a stable sort, so the output will
change where there are ties in the frequencies.
Plus lots of new features and many bug fixes.
|
|
to the fortran compiler). Also mark as not for older netbsd-alpha systems
as this is an IEEE-754 infected program (hi ross!).
|
|
|
|
to it. From PR# pkg/15773 from Ray Brownrigg.
|
|
by me.
Changes and bug fixes from 1.3.1 are numerous. See the NEWS file in
the distribution for details.
|
|
to depend on auto* tools at build-time. This fixes pkg/14916 by Brook
Milligan <brook@biology.nmsu.edu>.
|
|
version in pkgsrc. There are many, many bugfixes, better compliance with
S3/S4, and many additional statistical analysis functions added to the
base library. There is also an improved (faster) garbage collector and
support for dynamically sizing the memory used by R. The full summary of
changes may be found on the R Project website.
|
|
|
|
|
|
+ move the patch digest/checksum values from files/patch-sum to distinfo
|