rocker-org / rocker-versioned2

Run current & prior versions of R using docker. rocker/r-ver, rocker/rstudio, rocker/shiny, rocker/tidyverse, and so on.
https://rocker-project.org
GNU General Public License v2.0
419 stars 181 forks source link

MRAN is getting shutdown #593

Open b-rodrigues opened 1 year ago

b-rodrigues commented 1 year ago

Container image name

No response

Container image digest

No response

What operating system related to this question?

No response

System information

No response

Question

Hi,

you might have heard that MRAN is getting shutdown this year. I wanted to ask if there's something in the works regarding the older images from the rocker-version repo (I wanted to open this issue there, but it is now read only). For example:

https://github.com/rocker-org/rocker-versioned/blob/1920e7cfc757bad02d041a0bddec1a18b1ebc4c1/r-ver/3.4.4.Dockerfile#L118

We can see that MRAN is used to download packages at a fixed date. There might be the possibility to change everything to the Posit package manager?

Cheers

eitsupi commented 1 year ago

Thank you for your concern for the Rocker Project.

We are no longer using MRAN as there are no longer any builds from that repository. So there was no intention (at least for me) to do any work on it.

@cboettig Any thoughts?

cboettig commented 1 year ago

@b-rodrigues Correct, prior to the existence of RSPM (now the Posit package manager) we used MRAN (any rocker-versioned tags from R 3.x -- rather fortunately, 4.0, the creation of RSPM, and the release of Ubuntu LTS 20.04 all occurred at about the same time, so we migrated from debian:stable to ubuntu LTS releases and from MRAN to RSPM, all concurrently with the switch from 3.x series to the 4.x series). So we haven't depended on MRAN for nearly three years now..

It does look like RSPM snapshots go back to October 2017, (though not with daily snapshots) which does get you back into the 3.x range but not all the way through the rocker stack (I think our MRAN snapshot goes back to 2014 https://github.com/rocker-org/rocker-versioned/blob/1920e7cfc757bad02d041a0bddec1a18b1ebc4c1/r-ver/3.1.0.Dockerfile#L10), and rocker is older than that.

I don't think we will undertake backporting to the 3.x images. The pre-built versions of those images should already have the dependencies they shipped with installed, though users will not easily be able to add additional packages. Users have alternatives to manually construct old environments (e.g. I believe specific archived versions of packages can be installed directly from CRAN's archive, e.g. with remotes::install_version).

There's also the r-base series and binary package installs from debian.

We may want to think about at least making sure the 3.x series prebuilt images persist -- I believe Docker's new policy is to not retain images if no one has pulled one for n months? @noamross @eitsupi @eddelbuettel may know better.

eitsupi commented 1 year ago

We may want to think about at least making sure the 3.x series prebuilt images persist

I agree that it would be worthwhile to have the versions of the packages recorded at that time. Perhaps the same thing can be done with reporting jobs in this repository (whether or not they are done in this repository).

I don't think DockerHub will remove images that are pulled regularly.

cboettig commented 1 year ago

right. I think we floated the idea of a cron job to pull the 3.x image tags... (there's a lot of them and I doubt that many are actively used). Additionally / alternately might want to port them over to another container repository -- I'm not up to speed on current policies for github container storage or some of the other popular players.