computorg / template-computo-R

Computo template and documentation for R users
https://computorg.github.io/template-computo-R/
6 stars 6 forks source link

Required dependencies that are not explicitly loaded #5

Open gdurif opened 1 month ago

gdurif commented 1 month ago

Sometimes, some R packages are necessary for some code to work but not explicitly loaded in any notebook/scripts (for instance packages listed as dependency in Suggests field).

Example:

So even after doing renv::install("this-package"), {this-package} will not be added to the renv.lock file as long as library(this-package) is not called somewhere.

It is possible to use renv::record("this-package") to manually add it to the renv.lock file but it will be removed by the next snapshot.

Per https://github.com/rstudio/renv/issues/1018 the solution is to add a file deps.R containing as much library(.) call to load this type of required package that are never loaded, e.g.

library(yaml)
library(farff)
gdurif commented 1 month ago

I will modify the template to document this specific case.