[Rd] Library lib.loc Option Ignored for Dependencies
Martin Maechler
m@echler @ending from @t@t@m@th@ethz@ch
Sat Jul 21 18:34:26 CEST 2018
>>>>> Benjamin Tyner
>>>>> on Fri, 20 Jul 2018 19:42:09 -0400 writes:
> Here's a trick/workaround; if lib.loc is the path to your
> library, then prior to calling library(),
>> environment(.libPaths)$.lib.loc <- lib.loc
Well, that is quite a "trick" -- and potentially a pretty
dangerous one, not intended when making .libPaths a closure ....
I do think that there is a problem with R's dealing of R_LIBS
and other libPaths settings, notably when checking packages and
within that recompiling vignettes etc, where the R process
starts new versions of R via system() / system2() and then gets
to wrong .libPaths() settings,
and I personally would be very happy if we got reprex'es with
small fake packages -- possibly only easily reproducible on
unix-alikes ... so we could address this as a bug (or more than
one) to be fixed.
Notably with the 3.4.x --> 3.5.0 transition and my/our tendency
of having quite a few paths in R_LIBS / lib.loc / ... I've been
bitten by problems when the wrong version of package was taken
from the wrong library path ....
Martin
>> ------------------------------------------------------------------------
>> Good day,
>>
>> If there's a library folder of the latest R packages and
>> a particular package from it is loaded using the lib.loc
>> option, the dependencies of that package are still
>> attempted to be loaded from another folder of older
>> packages specified by R_LIBS, which may cause errors
>> about version requirements not being met. The
>> documentation of the library function doesn't explain
>> what the intended result is in such a case, but it could
>> reasonably be expected that R would also load the
>> dependencies from the user-specified lib.loc folder.
>>
>> --------------------------------------
>> Dario Strbenac University of Sydney Camperdown NSW 2050
>> Australia
More information about the R-devel
mailing list