[R-pkg-devel] install.packages() seems not to select the latest suitable version

Adelchi Azzalini @zz@||n| @end|ng |rom @t@t@un|pd@|t
Thu Jul 30 16:30:30 CEST 2020


Many thanks for your detailed explanations/annotations.

Adelchi

> On 28 Jul 2020, at 13:21, Dirk Eddelbuettel <edd using debian.org> wrote:
> 
> 
> Hi Adelchi,
> 
> On 28 July 2020 at 11:46, Adelchi Azzalini wrote:
> | When I updated package mnormt to version 2.0.0 in June (now at 2.0.1), 
> | at the stage of --as-cran checking, there was a compilation error,  
> | which was overcome by setting the 
> | 
> | Depends:	R (≥ 4.0.0)
> | 
> | With this option, all worked fine.
> | 
> | However, shortly afterwards, complaints started coming, 
> | either from users or from maintainers of packages making use of mnormt,
> | because this high version dependence causes troubles to some people,
> | such as those using Debian installations, currently at a much lower 
> | R version.
> 
> You can point those users to a) the r-sig-debian list and b) the Debian
> directory at CRAN as we have always had "backports" of the current R to older
> Debian releases---thanks to the work by Johannes Ranke "backporting" whatever
> my current Debian packages of R are.
> 
> Moreover, you can also point them at `apt install r-cran-mnormt` -- I have
> maintained your package within Debian since 2007 (!!) and continue to do so
> giving Debian (and Ubuntu) users the choice between a distro binary and
> installation from CRAN source. 
> 
> | At the time I select that dependence value, I relied on the fact that
> | install.packages() selected the most recent suitable version of a package,
> | given the existing R installation. I expected that people without
> | R 4.0.0 would have the older version of mnormt, 1.5-7, installed.
> | As my memory goes (and the memory of other people too), this was 
> | the working in the past, but apparently not any more. 
> 
> I don't think that is quite correct. The CRAN repo is always set up for the
> currently released version, and may allow constraints such 'R (>= 4.0.0)'
> imposing the current (major) release.
> 
> There is no recent change in this behavior.
> 
> | For instance, this is a passage from a specific user:
> |  
> | "install.packages() used tp just install the most recent available 
> | for your current version of R.  In the past it might have done just that, 
> | but that's clearly not the case currently."
> 
> Yes and no. I don't think this correctly stated. `install.packages()` always
> picks the most recent version, but this may also require running _the
> current_ R release.  I disagree about "not the case currently" -- no change
> as stated above.
> 
> | Can anyone clarify the reason of this (apparent? real?) change?
> | ...and possibly indicate a way who people with lower R version (and perhaps
> | limited R expertise) can install the older version of mnormt, 1.5-7, 
> | without much hassle?
> 
> "Versioned" installs were never supported by `install.packages()`.
> 
> But one could always download an older version to a local file, and point
> install.packages() at that file (and setting 'repos=NULL'), or use `R CMD
> INSTALL` directly. No change there either.
> 
> Dirk
> 
> -- 
> https://dirk.eddelbuettel.com | @eddelbuettel | edd using debian.org



More information about the R-package-devel mailing list