remotes icon indicating copy to clipboard operation
remotes copied to clipboard

Remotes selects incompatible bioconductor version on R 4.4.0: uses 3.18 instead of 3.19

Open naikymen opened this issue 1 year ago • 3 comments

Hi!

It was apparently decided that bioc 3.19 shouldn't be mapped to R 4.4.0: https://github.com/r-lib/remotes/blob/5b7eb08f70ecc4f885f2c75330ce77f87e7dd14e/R/bioc-standalone.R#L117

However, this can result in bioc version 3.18 being selected, and it is not compatible with R 4.4.0.

This may be because R_BIOC_VERSION is not set in my environment, and because it is not in the version map.

image

It can be observed that this is the case:

image

However, if I copy-paste the source (https://github.com/r-lib/remotes/blob/main/R/bioc-standalone.R) to a script (source.zip) and source it, the correct version pops up:

image

What may be going on?

For context see: https://github.com/Bioconductor/S4Vectors/issues/123

naikymen avatar Jun 03 '24 23:06 naikymen

I think that this is fixed with https://github.com/r-lib/remotes/commit/041e67b43c7909ace5f4233aea5a03366654e5ac but has not been released to CRAN yet; installing remotes from GitHub would return the correct version of Bioconductor.

mtmorgan avatar Jun 04 '24 16:06 mtmorgan

Thats great!

Perhaps it would be nice if remotes grabbed the bioc version from BiocManager::version() instead (i.e. if it is installed).

naikymen avatar Jun 04 '24 16:06 naikymen

Note that this can use utils::download.file, but download.file is not in the NAMESPACE. This is also a problem for the 'pkgcache' package, which has a copy-paste version of the same code.

mtmorgan avatar Jun 18 '24 17:06 mtmorgan

As already discussed, this is fixed on main, but the CRAN release of remotes still has

remotes:::bioconductor$.internal$builtin_map$`4.4` == package_version("3.18")

Since R 4.4 uses Bioconductor 3.20, typical 4.4 users will encounter errors when attempting to install any package that has uninstalled Bioconductor dependencies.

jeff-mandell avatar Feb 06 '25 03:02 jeff-mandell