[R-SIG-Mac] R4.0 toolchain for GitHub Actions

Patrick Schratz p@tr|ck@@chr@tz @end|ng |rom gm@||@com
Sat Apr 4 09:59:18 CEST 2020


Porting this discussion about the future R 4.0 toolchain on GitHub Actions (GHA) to the mailing list.
GHA will be the new standard regarding CI for the R community in the foreseeable future since the tidyverse is moving there with full power and the community usually follows.

Even leaving the tidyverse out, Jim (in cc since I don’t know if he is in the list) maintains the installers for R which will be used by everyone, even if one deviates from the general tidyverse templates (like {tic} does).

The discussion is about whether these installers try to mimic the CRAN toolchain (system clang and SDK 10.13 (?)) or go a different way.
There are many options as we have seen in prior discussions about the compilers on this mailing list. However, most are restricted by the fact that there is only Catalina (10.15) available as the base system for the runners. While the tidyverse wants to use binaries mainly, the toolchain installed should also be able to have a robust source installation behavior: One might want to test on R-devel for which there are no binaries - or test in general if source installations works.

Now if the GHA toolchain deviates from CRAN one might get different results when testing on GHA and when uploading to CRAN. This might cause confusion.
Installing custom compilers and linking such in .R/Makevars is tedious to set up and requires download time and bandwidth for each run.
So we should think in detail about how to proceed here and also how to communicate the setup to the users.
Users do not browse the source code by default and check with compilers are used, which CFLAGS are set and so on. They just “hope” that they can trust the setup and that things “will just work”, on the CI and on CRAN then.
For whatever will be decided in the end: I wish that the reasons for the final setup are communicated top-level.

Let’s discuss this here as a community: Simon as the one responsible for the CRAN toolchain and Jim who implements the R installer for GHA. It would be great if we could find a consensus for R 4.0 that everyone agrees on rather than being sad afterwards that no-one can do anything about how things are (and how others have chosen their toolchain).
The possibility for change is there now due to the major version bump and we should take advantage of it.

Best, Patrick

	[[alternative HTML version deleted]]

More information about the R-SIG-Mac mailing list