revdepcheck icon indicating copy to clipboard operation
revdepcheck copied to clipboard

Problem accessing bioconductor during `revdep_check()`

Open willgearty opened this issue 1 year ago • 12 comments

I'm trying to run revdep_check() in a github action, but I'm running into this error:

Error: Error: (converted from warning) unable to access index for repository https://bioconductor.org/packages/3.17/data/annotation/bin/macosx/big-sur-x86_64/contrib/4.3: cannot open URL 'https://bioconductor.org/packages/3.17/data/annotation/bin/macosx/big-sur-x86_64/contrib/4.3/PACKAGES'

I get the same error when I try with a windows runner:

Error: Error: (converted from warning) unable to access index for repository https://bioconductor.org/packages/3.17/data/annotation/bin/windows/contrib/4.3: cannot open URL 'https://bioconductor.org/packages/3.17/data/annotation/bin/windows/contrib/4.3/PACKAGES'

I'd appreciate any advice you might have, thanks.

willgearty avatar Mar 22 '24 13:03 willgearty

The weird thing is, I ran this exact same github action for a different R package two weeks ago without any problems, and that other R package has bioconductor dependencies as well.

willgearty avatar Mar 22 '24 13:03 willgearty

I also had no problems running revdep_check() locally.

willgearty avatar Mar 22 '24 13:03 willgearty

Same issue here on Windows and Mac (local and gh actions).

When running revdep_check() on Linux (local and gh-action) doesn’t happen, so my guess is that something changed in the Bioconductor server setup for binaries (as the error urls suggests).

dieghernan avatar Mar 23 '24 05:03 dieghernan

Same issue here. Note that this is also the case when I use bioc = FALSE

etiennebacher avatar Mar 25 '24 15:03 etiennebacher

In the meantime, I have a fork where I disabled most of the things that were related to Bioconductor:

pak::pak("etiennebacher/revdepcheck")

It seems to work fine, but of course this won't check for revdep failures on Bioconductor.

etiennebacher avatar Mar 26 '24 11:03 etiennebacher

@gaborcsardi any thoughts?

willgearty avatar Apr 02 '24 14:04 willgearty

Try setting the R_BIOC_VERSION env var to 3.18.

gaborcsardi avatar Apr 02 '24 14:04 gaborcsardi

That did it, thanks! Shouldn't revdepcheck always be using the most recent version of bioconductor?

willgearty avatar Apr 02 '24 14:04 willgearty

You always need to use the one that is appropriate for the current R version. Which used to be 3.17, but now it is 3.18, and Bioconductor deleted their 3.17 repository, I don't really understand why.

gaborcsardi avatar Apr 02 '24 15:04 gaborcsardi

Try setting the R_BIOC_VERSION env var to 3.18.

This solves my issue in GH Actions:

https://github.com/dieghernan/nominatimlite/actions/runs/8537095790

Full action code: https://github.com/dieghernan/nominatimlite/blob/main/.github/workflows/revdepcheck.yaml

dieghernan avatar Apr 03 '24 10:04 dieghernan

If not already done, please handle this internally in the revdepcheck package so that users are not flummoxed by this bioconductor problem. At the minimum, you could use Sys.getenv ("R_BIOC_VERSION") to generate a warning or error that would be comprehensible instead of making maintainers google for this error.

Checking reverse dependencies is now a big part of CRAN submission / verification, that I am also surprised that revdepcheck is not on CRAN

friendly avatar May 06 '24 16:05 friendly