problem with update.packages (PR#13161)
The error is on installed.packages(): you have a faulty package installed.
On Tue, 14 Oct 2008, Dirk Eddelbuettel wrote:
On 14 October 2008 at 10:09, Prof Brian Ripley wrote: | On Tue, 14 Oct 2008, Peter Dalgaard wrote: | | > edd at debian.org wrote: | >> On 14 October 2008 at 09:39, Simon Blomberg wrote: | >> | Hi, is anyone else getting this error? Could this be a bug?: | >> | | > update.packages(ask=FALSE) | >> | Error in read.dcf(pkgpath, fields = fields) : | Line starting 'unix; | >> ...' is malformed! | >> | | > sessionInfo() | >> | R version 2.8.0 RC (2008-10-12 r46696) | x86_64-pc-linux-gnu | >> Confirmed in plain R using the same package built this morning from last | >> night's tarball from Denmark: Running update.packages() yields: | >> | >>> update.packages() | >> --- Please select a CRAN mirror for use in this session --- | >> Loading Tcl/Tk interface ... done | >> Error in read.dcf(pkgpath, fields = fields) : | >> Line starting 'unix; ...' is malformed! | >> | >> | >> OTOH I don't have a problem running my 'update.r' script (included in | >> littler as | >> /usr/share/doc/littler/examples/update.r) which just downloaded / upgraded | >> ten packages. It is equivalent to calling | >>> repos <- "http://cran.r-project.org" | >>> lib.loc <- "/usr/local/lib/R/site-library" | >>> update.packages(repos=repos, ask=FALSE, lib.loc=lib.loc) | >> | >> and that sequence also works in plain R. Could someone please dig into | >> update.packages() ? | >> Dirk | > | > Hmm, some of us are wary of running update.packages() in non-production | > versions. Is the problem perhaps originating in getCRANmirors() or | > chooseCRANmirror()? | | (Neither of those read DCF files: my expectation is that this is | available.packages() reading a DCF file downloaded from a CRAN mirror.) | | I do use update.packages() daily on pre-2.8.0 and I have not seen a | problem. (I keep a separate package installation for test versions.) | | Can we please have some useful debugging info, e.g. the result of | traceback() and which CRAN mirror is being used? I suspect a problem with | downloading PACKAGES.gz resulting in a corrupt file (possibly because it | was corrupt on the mirror). Quite possible. This is a fresh failure picking the 'US (MI)' mirror:
update.packages()
--- Please select a CRAN mirror for use in this session --- Loading Tcl/Tk interface ... done Error in read.dcf(pkgpath, fields = fields) : Line starting 'unix; ...' is malformed!
traceback()
6: read.dcf(pkgpath, fields = fields)
5: .readPkgDesc(lib, fields)
4: installed.packages(lib.loc = lib.loc)
3: NROW(instPkgs)
2: old.packages(lib.loc = lib.loc, contriburl = contriburl, method = method,
available = available, checkBuilt = checkBuilt)
1: update.packages()
But if I then re-run chooseCRANmirror() and pick Austria, it still fails:
chooseCRANmirror() update.packages()
Error in read.dcf(pkgpath, fields = fields) : Line starting 'unix; ...' is malformed!
yielding the same traceback. Dirk -- Three out of two people have difficulties with fractions.
Brian D. Ripley, ripley at stats.ox.ac.uk Professor of Applied Statistics, http://www.stats.ox.ac.uk/~ripley/ University of Oxford, Tel: +44 1865 272861 (self) 1 South Parks Road, +44 1865 272866 (PA) Oxford OX1 3TG, UK Fax: +44 1865 272595