general: Test packrat for keep reproducible R environments
02.08.2019: created repo https://git.mpi-cbg.de/bioinfo/renvs_test
Right now every time there is an update to an R package, or R itself, some dependencies are also silently updated and some scripts might stop working. This is particular critical for BioC packages which undergo frequent version updates that are hard to track.
In general terms it would also be good to keep a frozen set of R packages for long-running projects, and if possible to share upon publication.
Packrat should solve some of these issues:
- Isolated: Installing a new or updated package for one project won’t break your other projects, and vice versa. That’s because packrat gives each project its own private package library.
- Portable: Easily transport your projects from one computer to another, even across different platforms. Packrat makes it easy to install the packages your project depends on.
- Reproducible: Packrat records the exact package versions you depend on, and ensures those exact versions are the ones that get installed wherever you go.
Things to test:
- how long does it take to install a full set of typical packages for a project. Use
cores
option ininstall.packages
. - how large is the resulting folder
- can the project snapshot be recreated on a different computer (Ideally a different OS).
Things needed:
a. A list of packages (see old projects, sessionInfo logs) b. Find out how to install these in the course of a workflow?
Update 18.07.2019 TODO:
- test going back to an older package version. Steps:
- install an R package, old version, perhaps using
install_github
from an old commit. - Create snapshot
- Install up-to-date package version
- Go revert to old version
- install an R package, old version, perhaps using
I should also test, if at all possible, with a BioC
package.