[Rd] install.packages("C", dep=TRUE) does not always install indirect dependencies
Seth Falcon
sfalcon at fhcrc.org
Fri Jun 9 06:38:51 CEST 2006
Duncan Murdoch <murdoch at stats.uwo.ca> writes:
>> conditions are satisfied:
>> - Package C depends on B which in turns depends on A but
>> the Depends field in C doesn't list A.
>> - Package B is already installed but not package A (e.g.
>> the user did 'install.packages("B", dep=FALSE)').
>> Then 'install.packages("C", dep=TRUE)' will not install A.
>> May be this is the desired behavior, I don't know. Personally, I would
>> think of 'install.packages("C", dep=TRUE)' as a reliable way to get every
>> packages that C directly or indirectly relies on installed.
>
> This seems rather unreasonable. If a user asked not to install B's
> dependencies, and A is not listed as a dependency of C, then I don't
> think a request to install C and its dependencies should install A.
I see your point, but the unreasonable-ness kinda works both ways: If
a user asked to install C and _all_ its dependencies, then I think
that request should do that :-)
> Perhaps the installation of B without dependencies was a mistake? I
> think an argument could be made that dependencies=TRUE should be the
> default (as it is when using the corresponding menu item in the Windows
> GUI).
Installing dependencies seems like a reasonable default to me. Having
the flexibility to not install dependencies is nice, but I imagine for
a majority of users they install a package in order to use it, and
mostly you can't use a package unless you have its dependencies
installed.
+ seth
More information about the R-devel
mailing list