Add v3 r and rstudio images with R 4.5.3 and updated packages#195
Add v3 r and rstudio images with R 4.5.3 and updated packages#195remlapmot wants to merge 18 commits into
Conversation
Add v3 dependencies for httpgd via unigd
Remove parglm from v3 as no longer on CRAN. parglm was archived on CRAN on 2026-01-29. I believe that fastglm is its closest replacement on CRAN on the v3 CRAN_DATE.
Only run `just check` for v2 and v3 since packages.toml does not exist for v1 Allow for v3 in else condition Protect against v#/pkg.lock file not existing on first run
And pass version to `just check` in CI
Use MAJOR_VERSION instead of hardcoded v2 Create .local_pkg_dir object as a hidden object - as its name begins with a dot. Convert local-packages-README.md to Rmd to pass version Delete typo Amends for v3 when writing package list
Add MAJOR_VERSION ENV for rprofile-site-append-2.R Ensure MAJOR_VERSION is available to R and rstudio-server
Amend hardcoded v2 to use MAJOR_VERSION environment variable In tests/test-loading-packages.R issue a more informative message (which will likely reveal which runtime system dependency package is missing) if a package fails to load
Since OpenBLAS (which includes its own LAPACK) is typically 4–6× faster for linear algebra operations than the reference netlib BLAS/LAPACK that Debian ships by default.
|
@remlapmot Many thanks for this. Everything looks good, and I've triggered the CI runs on the branch. I want to double-check the replacement of |
|
Thanks Becky As far as I know After releasing opensafely launch rstudiowill invoke I have checked that when the opensafely exec r:v3opensafely launch rstudio:v3You can test this locally by building the two images from this branch then retagging e.g., just build v3
just build-rstudio v3
docker tag r:v3 ghcr.io/opensafely-core/r:v3
docker tag rstudio:v3 ghcr.io/opensafely-core/rstudio:v3then running those commands. |
|
Hi Becky PR updated. Good news. I have actually taken over maintainership of the parglm package myself and yesterday I got it reinstated on CRAN, so I have added included it the v3 image. Also,
|
|
Awesome, thanks @remlapmot |
5819c08 to
e409b80
Compare
To after when parglm was reinstated on CRAN. And when fastglm had been bumped to 0.1.0 and parglm to 0.1.9.
Paging @bloodearnest
R 4.5.3, which according to the R-Core team will be the last patch release of R 4.5 https://stat.ethz.ch/pipermail/r-announce/2026/000718.html, was released last week on the 11th March. So I'd say it makes sense to have v3 r and rstudio images including that - which is what this does (and the v2 image is about 1 year old now - which is my personal limit for R related stuff).
The v3 additions are essentially a copy of what we do for v2 with the updated R and updated
CRAN_DATE:CRAN_DATEgets us the current versions of the packages notably including ggplot2 version 4.MAJOR_VERSIONenv var.I think the only notable difference is that on the new v3CRAN_DATEthe parglm R package is no longer available on CRAN https://cran.r-project.org/package=parglm, and the parglm GitHub repo has been untouched for 5 years https://github.com/boennecd/parglm, so in v3 I have replaced parglm with the fastglm package https://cran.r-project.org/package=fastglm.sessionInfo()this is reported in the following linesAs usual there was a nice summary of what's new in R 4.5 by Jumping Rivers https://www.jumpingrivers.com/blog/whats-new-r45/.
I don't believe I touched anything to do with v1 - so its epic 2hr build should still run. I have run the v2 and v3 r and rstudio builds and tests locally.
Maybe the opensafely CLI would need checking to see if it allows r:v3 and rstudio:v3?
Also - remember I have no permissions - so I can't formally 'request review' - and you'll have to trigger CI builds etc.