-
Notifications
You must be signed in to change notification settings - Fork 42
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Use container based builds by default? #143
Comments
Yeah, I was thinking about that, too. Not easy, though, because you cannot do I guess once |
@gaborcsardi we should be working on getting R to be a first class language then! |
@hadley, Yep, @craigcitro will do that soon: https://twitter.com/GaborCsardi/status/542712472155983873 FWIW, I have binary builds for many R versions and R-devel (hourly) at https://github.com/metacran/r-builder/releases Using these it is easier to get rid of sudo, the bigger pieces still installed by TeX is a really a beast, but I guess we can just pull this from a binary as well, and then cache it. @krlmlr worked on this if I remember well. I am kind of ambivalent about caching, btw., it makes the build much faster, but it also introduces a lot of potential errors if you do not start from a clean state. Anyway, caching tex, gfortran, etc. is probably fine. Maybe the R binaries are also fine. Caching the R library directory is more risky imho. |
I have prepared both R and TeXlive binaries in two GitHub repos for running on Snap CI, but this is CentOS. It should be easy to port these to Travis/Ubuntu. To take advantage of the cache, there needs to be some mechanism to detect that the cached binaries are out of date. Git offers this -- if R or TeXlive are already cached, a simple |
@krlmlr I think the git repo is elegant, but it might be overkill. Unless you prune older files, it will be huge soon, because you are storing binaries. (I guess, I might be wrong.) I am also not sure about Github's policy about storing essentially binaries in the repos.... An alternative solution is simply using a hash. The hash of the tarball can be included in the file name, and then if it is newer than the cached version, then we can download it. |
I think the cache will be most important for r packages, as other big dependencies should be included in top level language support. @gaborcsardi is right that it's easy to cause a lot of problems with caching, so it probably shouldn't be the default. But it will be useful for packages with many deps like dplyr and devtools. |
Ideally yes. But if Travis keeps relying on Ubuntu 12.x, then we need to install a newer TexLive, which might not be possible at the top level. Anyway, this is too speculative. We'll see. |
sudo: false
The text was updated successfully, but these errors were encountered: