Content-Length: 278346 | pFad | https://redirect.github.com/pre-commit/pre-commit/issues/3206

1E Global R upgrade breaks pre-commit · Issue #3206 · pre-commit/pre-commit · GitHub
Skip to content

Global R upgrade breaks pre-commit #3206

@lorenzwalthert

Description

@lorenzwalthert

search you tried in the issue tracker

break class update / 2, second upgrade

describe your issue

R is currently implemented as a second class language, i.e. global interpreter required but packages are bootstrapped by pre-commit in virtual environment with {renv}. R packages are installed for a minor version, e.g. R 4.3 and R is not referenced version-specific on the $PATH usually. Hence, updating R means you have to install all these packages again, otherwise your code just won't work (as R on the $PATH now points to the updated R version). However, pre-commit does not know you just updated R and will fail (unless you already used {renv} to update all required dependencies (e.g. for another project) and have not opted out of the {renv} cache). Currently, the clean solution seems to run pre-commit clean (for all hooks since #2338 got rejected). I wonder if other second class languages have similar characteristics. Can pre-commit recognise that the global R version changed and then just re-install that specific environment or at least give helpful error messages?

Downstream reference: lorenzwalthert/precommit#567

pre-commit --version

pre-commit 3.3.3

.pre-commit-config.yaml

repo: https://github.com/lorenzwalthert/precommit

~/.cache/pre-commit/pre-commit.log (if present)

spell-check..............................................................Failed

  • hook id: spell-check
  • exit code: 1

ℹ Using R 4.4.0 (lockfile was generated with R 4.3.3)
ℹ Using R 4.4.0 (lockfile was generated with R 4.3.3)
Error in loadNamespace(x) : there is no package called ‘precommit’
Calls: loadNamespace -> withRestarts -> withOneRestart -> doWithOneRestart
Execution halted

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions









      ApplySandwichStrip

      pFad - (p)hone/(F)rame/(a)nonymizer/(d)eclutterfier!      Saves Data!


      --- a PPN by Garber Painting Akron. With Image Size Reduction included!

      Fetched URL: https://redirect.github.com/pre-commit/pre-commit/issues/3206

      Alternative Proxies:

      Alternative Proxy

      pFad Proxy

      pFad v3 Proxy

      pFad v4 Proxy