grimbough / bioc-actions

GitHub Actions for developing and maintaining Bioconductor packages
MIT License
11 stars 3 forks source link

Using "next" vs. "devel" R version for Bioconductor devel #13

Closed lambdamoses closed 1 year ago

lambdamoses commented 1 year ago

Hi, sorry for troubling you again. My codecov action failed because while I want to test my package on Bioconductor 3.17, the setup-bioc action downloaded R 4.2.3 and caused the error when installing packages from Bioc 3.17: https://github.com/pachterlab/voyager/actions/runs/4560494661/jobs/8045499105

I looked at the source code of both setup-bioc and setup-r. The culprit is that your csv file indicating which version of R to use for each version of Bioconductor says "next" for 3.17. And the "next" made setup-r get this URL: https://api.r-hub.io/rversions/r-next-macos, which as of writing gives:

{"version":"4.2.3","date":null,"nickname":"Shortstop Beagle","type":"patched","URL":"https://mac.r-project.org/high-sierra/last-success/R-4.2-branch-x86_64.pkg"}

And that's what made setup-r download R 4.2.3 while it should download 4.3.0.

My question is, is there a reason why you use "next" instead of "devel" for Bioconductor devel?

grimbough commented 1 year ago

You can see I made the change from devel to next only a few days ago (https://github.com/grimbough/bioc-actions/commit/0bea647121ee2973a4dad6fadd231d5dcc603f0e).

As we approach the release of a new version of R, the versioning gets weird. As of last week, R-devel transitioned to R-4.4.0, while R release stays as R-4.2.3. To get a version of R-4.3 you now need to use the alpha/beta/pre-release version (the name will change as we get closer to the release day).

At the moment this is what r-next is supposed to reference. If we use r-devel then it gets R-4.4 and BiocManager complains that R is too new. Unfortunately there's a lag in creating those pre-release version on Mac. If you go to https://mac.r-project.org/ you'll see there simply isn't a version of R-4.3 available. I'm not sure there's currently any way to install R-4.3 on Mac using the r-lib/setup-r action - which is annoying. Hopefully a version will appear soon, that API will update, and your CI will start working again.

It does work on Windows and Linux if you want a short term fix. The coverage stats should be the same on any platform.

lambdamoses commented 1 year ago

Ah, I see. Thanks for the info! Yeah, that's annoying. The reason why I chose Mac is that it takes too long to compile the dependencies from source for Linux and I don't personally use Windows.