Rev 31867 | Blame | Compare with Previous | Last modification | View Log | Download | RSS feed
Dear Emacs, please make this -*-Text-*- mode!*************************************************** ** 2.0 SERIES NEWS ** ***************************************************CHANGES IN R VERSION 2.0.1NEW FEATURESo Platform equivalence in library() is tested by a new functiontestPlatformEquivalence() which ignores the 'vendor' field andcan be customized by cognescenti.o The assignment form of split() allows recycling of vectorswithin the value list. In particular, things likesplit(x, g) <- lapply(split(x, g), mean)now workDOCUMENTATIONo Manual `Writing R Extensions' has new sections on writingportable packages and on writing new front-ends for R -- thelatter will be more comprehensive in R 2.1.0 which has newpublic header files.DEPRECATED & DEFUNCTo The aqua module in MacOS X is deprecated.o Capabilities "bzip2", "GNOME, "libz" and "PCRE" are deprecated.o The GNOME GUI on Unix-alikes is deprecated as part of R;it will be available in another form as from R 2.1.0.o The undocumented use of UseMethod() with no argument is nowformally deprecated.INSTALLATION CHANGESo Building on Alpha OSF/1 no longer forces the C flag -std1,which appears to be no longer needed. (PR#7257)o The compiler flag -mieee-fp is no longer used on i386 Linux(these days it is only passed to the linker and was onlyinvoked for compilation steps).o -D__NO_MATH_INLINES is only used on older ix86 glibc-basedsystems which need it (tested at configure time). This leads tosmall improvements in speed and accuracy on modern systems.o If makeinfo >= 4.5 is not available, warnings are given thatsome of the HTML manuals will be missing, and the index pagegiven by help.start() will link to CRAN versions of those manuals.o Files aclocal.m4 and acinclude.m4 used in maintainer buildsare not longer included in the distribution.C-LEVEL FACILITIESo It was not clear in 'Writing R Extensions' that some of theentry points in the 'Utilities' section were not declared in<R.h> (they were in <R_ext/Applic.h>). Now all the entrypoints in that section are declared in <R_ext/Utils.h>,included by <R.h>.BUG FIXESo The grid.grab() function in package grid would throw an errorif there were no viewports pushed (now returns NULL).o model.frame.default() takes row names from the responsevariable if that has suitable names and there is no 'data'argument. (This follows S but was not previously implementedin R.)o write.table() was not respecting the 'dec' argument for complexnumbers.o write.table() printed a mixture of numeric and complex numbersas all complex. (PR#7260)o R CMD INSTALL failed with versioned installs on packages whichsave images (only).o dlogis() gave NaN not 0 for large negative arguments.o Importing from another namespace was broken for versionedinstalls, incorrectly reporting something like"package 'imported_from' does not have a name space".o The GNOME interface under Linux/Unix was broken. (PR#7276)o For the jpeg/png devices under Linux/Unix, under certain rarecircumstances clipping needed to be cleared before starting anew page. (PR#7270, which has been the case since the deviceswere introduced in 1.1.0.)o First lattice plot (first grid.newpage() call) did not starta new page IF there had been a previous traditional graphicsplot (on the same device).o Using install.packages() to install the same package to morethan one library gave an incorrect warning message. (If therewere two or more such packages it might give an error.)o .packages(all.available=TRUE) returned packages with an invalidversion field in their DESCRIPTION whereas .find.packages() andpackageDescription() did not. Now all do not.o packageDescription() now correctly reports that a package doesnot exist, rather than that its DESCRIPTION file is 'missingor broken'.o 'make dist' from builddir != sourcedir was copying not linkingrecommended packages to *.tgz.o Slots in prototype objects can inherit from locally definedclasses (which were not being found correctly before).o Several fixes to the behavior of as() when there are eithercoerce= or replace= methods supplied in a call tosetIs(). Related fixes to setIs() to handle correctly previousmethods, if there were any.o splinefun(1[0], 1[0])(1) doesn't segfault anymore (PR#7290).spline() and splinefun() now also work with missing values byomiting them.o ecdf() was failing on inputs containing NAs. (Part of PR#7292)o tools:::.install_package_description was splitting the Built:field across lines on platforms with very long names.o capabilities() was wrong for the Aqua GUI on MacOS X.o Using Rprof() with a non-writable 'file' argument is now anon-fatal error and does not abort R.o binom.test() did not deparse its arguments early enough suchthat the reported data were ugly if x was a table.o Systems based on glibc, including those using R's substitute forstrptime, were handling strptime("2001", "%Y") incorrectly, insome cases crashing. R's substitute code has been corrected(but problems may remain if glibc is used). See the ?strptimefor what should happen (which is system-specific).o untrace() after trace() failed if package 'methods' was attached.(PR#7301)o summary.stepfun() was reporting for n > 6 summaries of theknots and levels as the actual values. Both print() andsummary() methods called the constant values "step heights",although they were not the heights of the steps.o is.na/is.nan() were giving spurious warnings if applied to araw vector.o is.atomic() gave incorrect result (false) for a raw vector.o rank() and order() accepted raw and list inputs, but did notgive a sensible answer (always 1:n). Similarly, partial sortsof a raw vector were accepted but did nothing.o require() without a version argument tried for an unversionedload of a package even though a versioned install was alreadyloaded. This often led to a message that a required packagewas being loaded when it was not actually being loaded.o str(<S4.object>) made use of attributes() instead of slot(),and hence didn't properly print NULL slots.o contrib.url() now handles URLs ending in '/' correctly.o str() removed any class from externalptr objects.o logLik() and hence AIC() failed or gave incorrect answerson "lm" fits with na.action = na.exclude (and perhaps otherna.actions's except na.omit and na.fail).o pmax() and pmin() sometimes used NAs in internal subassignments,and sometimes these failed.o Subassigning an expression, e.g. expr[2] <- 1, could leave aninvalid object and so cause a segfault. (PR#7326)o download/install.packages() would misbehave if there was morethan one version of a package in a repository.o sort(partial=) silently ignored some other arguments: using'decreasing' or 'index.return' or supplying a factor are nowerrors.o The ave() function had trouble if the grouping containedunused levels.o read.fwf() got confused by skip > 0 and could infinite loopunder some circumstances. (PR#7350)o upgrade(x, ask = FALSE) was broken for a "packageStatus" object.o Class "raw" had been omitted from the list of basic classes inthe "methods" package and so could not be used in S4 classes.o Function getGroupMembers(), part of the definition of S4classes, had been promised for release 2.0, but slipped through.********************************************************** ** News of 1.x.y and 2.0.0 is in file `ONEWS' ** News of 1.0.0 and earlier is in file `OONEWS' ** **********************************************************