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
406 stars 168 forks source link

Newer RStudio version is needed for R 4.1.0 #163

Closed pteetor closed 3 years ago

pteetor commented 3 years ago

Note: All version information cited here is as of 2021-05-23.

I am wondering about the version of RStudio needed for R 4.1.0. It appears to me that the rocker build for 4.1.0 is using the latest version of RStudio which is 1.4.1106.

However, the RStudio site says the preview version, 1.4.1714, adds support for the R 4.1.0 graphics engine; hence, I wonder if that version (or higher) is appropriate.

Latest RStudio Server version: https://www.rstudio.com/products/rstudio/download-server/debian-ubuntu/

Preview version: https://www.rstudio.com/products/rstudio/download/preview/ - with "Support for the upcoming R 4.1.0 release"

cboettig commented 3 years ago

yeah, good question!

Typically we've always had latest mean latest stable version of R, RStudio, and associated packages. But since the versions don't get locked until the next release, these are rolling anyway, and maybe we could be a bit squishy and do rstudio preview for now. This would only be awkward if the preview still isn't stable by the time we lock the 4.1.0 tag...

Note that it should be not too hard to upgrade an existing container anyway. e.g. docker exec into your current 4.1.0 container and just re-run the install script with the new env var:

RSTUDIO_VERSION=preview /rocker_scripts/install_rstudio.sh

should do it.

But for this case, I'm tempted to jump the gun like you say and just roll up to preview as the default. Will leave this open and see if we get any objections or support before we run it. (particularly if this also fixes the mac issues we see, e.g. in #144 ?)

eddelbuettel commented 3 years ago

Yep. Tricky as being sticky with releases (generally) wins, unless it doesn't as in this case with its small binary (graphics) API change snuck in with R 4.1.0. Maybe time to break the rules for once. But hey lucky me doesn't own any Dockerfiles with rstdudi so you get call that one all by yourself :)

(I am also minorly confused by their lingo between releases, previews and nightlies. FWIW my box is now at 1.5.46 for server and desktop.)

cboettig commented 3 years ago

yeah, hopefully I can find if someone can test if this also resolves the issue on ARM-based macs (as suggested in the release notes). I'm not quite up-to-speed on what the graphics device changes in question are in 4.1.0, seemed like minor cairo stuff in the R release notes? But having rocker/rstudio not be broken on a popular platform would be a bigger win....

pteetor commented 3 years ago

Speaking of "broken on a popular platform", this Reddit note from RStudio motivated me to report this issue in the first place. It says:

You can still use older releases of RStudio with R 4.1, but ... you may experience crashes when plotting due to the graphics engine change.

The note also mentions that

This preview release is stable for day-to-day work; it is undergoing final certification checks and should be available as the official release in just a few weeks.

which gives some hope that our limbo state (can't run stable RStudio and stable R simultaneously) will be resolved, uh, pretty soon.

eddelbuettel commented 3 years ago

Yes. I forgot the details but I think it is a Paul Murrell-driven very internal bit which, sadly, requires rebuilds of packages using graphics. Johannes reminded us too on r-sig-debian. AFAIK affects packages implementing devices, so it may hit ggplot2 via ragg inside RStudio (complete guess of mine here...).

eddelbuettel commented 3 years ago

Random twitter find (as I still glance at #rstats in tweetdeck):

image

So if M1 is desired, maybe nightlies it is?

eitsupi commented 3 years ago

From #164, GitHubActions will automatically write the RStudio version in the Dockerfile of rocker/rstudio. The current version is 1.4.1717 in rocker/rstudio:4.1.0, which was released recently. https://github.com/rocker-org/rocker-versioned2/blob/e9dd8bd57b928891bef054d610985b80b40ba3a0/dockerfiles/Dockerfile_rstudio_4.1.0#L9

cboettig commented 3 years ago

Done, new version is now available.