On Thu, 10 Mar 2005, Liaw, Andy wrote:

Given the confusions that some users have regarding package bundles, I'd

Just one bundle, AFAICS.

like to suggest some changes to how package bundles are handled.

The issue seems only to arise with one bundle that was formerly a package. I think re-naming that bundle would be the most effective solution. Alternatively, bundle 'gregmisc' could contain a package 'gregmisc' (there is an example of that already in CoCo) which told users what had happened (or even loaded all the components), which would also work with a rename.


My understanding is that a package bundle is essentially a convenient way to
distribute related packages, so that users can download/install them in one
shot.  However, some users apparently get confused that one can do
install.packages("abundle") but can't do library("abundle").  I think it
might be worthwhile having library() (or it's to-be replacement(s)) do
something more informative, if the argument is the name of a bundle, instead
of a package.  Examples are:

- Give an error that says that's a package bundle, and the constituent
packages need to be loaded individually.

How can you know that? The names of bundles are not known, and indeed `gregmisc' is a perfectly good package name and gregmisc 1.x might be what was intended.


- Load all of the packages in the bundle, but issue an warning.

- (More elaborate) give a menu of packages and ask the user to choose which
one to load.

(Come to think of it, it would be nice for library() to be able to load
multiple packages in one go...)

In what order, and why, given that library() will already load all the dependencies in a sensible order?


One problem that I can see is that it seems like once a package bundle is
installed, R basically has no knowledge that the packages belong to one
bundle, other than the fact that the DESCRIPTION files of the packages have
entries that indicate that they are part of a bundle.  Are there ways to
figure out such information other than checking packageDescription() of all
installed packages?

No.

As from 2.1.0, install.packages() will install a bundle given the name of a package it contains (at least if the repositories supply the information), so there will be little need for users to know about bundles.

--
Brian D. Ripley,                  [EMAIL PROTECTED]
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

______________________________________________
R-devel@stat.math.ethz.ch mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel

Reply via email to