-
Notifications
You must be signed in to change notification settings - Fork 17
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鈥檒l occasionally send you account related emails.
Already on GitHub? Sign in to your account
R improvements #93
Comments
If there's specific ones to add that seems fine, building all of them doesn't seem productive though (for instance I don't think a linter will need generalized fortran extensions, hopefully).
The only persistent state which is kept between runs is inside the environment directory. Additionally runs are run as an unprivileged user which does not have write permission to the
I don't really want to bump this up, it's already quite long and any increase here significantly increases my risk from a cost and abuse perspective.
yeahhhh that's not really going to work so well. those'll probably just be unsupported (?). It seems a little bit weird to build docs as part of pre-commit -- I'd usually leave that to a testing phase |
Ok, thanks for the explanations. I found ways to work around these limitations except for the system dependencies. |
Except one problem:
E.g. in https://results.pre-commit.ci/run/github/186313720/1632590538.J-B6BzAhSkSCbs91JsIBUQ. This pops up randomly I feel, i.e. not in every run. You set RENV_PATHS_ROOT in the Dockerfile so the root of the cache will be there. And then renv probably wants to use it (I guess not a problem because during running hooks it does not want to install packages) or at least ensure the directory exists. I think we should rather disable the cache altogether with |
I wonder if that's disabling the cache also seems fine 馃憤 |
Seems like you are right, I need to further investigate thread/process safety with {renv}, as I can't create a run with |
To my knowledge, I just completed the first ever pre-commit.ci run with R 馃帀 (https://results.pre-commit.ci/run/github/403327126/1631911523.jRvhF2_RSR-hbEgpnbu7DA). There are a few things to improve though:
--without-recommended-packages
, I think we should not do that because some recommended packages are hard to build from source (when initializing the environment) and have system dependencies, and it won't add much to the size of the image to include it./opt/R
. Unit tests should cover this, so I might submit a PR.additional_dependencies:
. In particular, my {roxygen2} hook requires the user to specify all runtime dependencies of his package asadditional_dependencies:
because {roxygen2} requires them (to generate the docs). There are tools in R to install these system dependencies, but they rely onapt
and hence don't put the installed packages into/opt/R
. We can also postpone this for now I think.The text was updated successfully, but these errors were encountered: