Skip to content

Automated Dependency Updates for Pre Commit

Renovate supports updating Pre Commit dependencies.

Enabling

Pre Commit functionality is currently in beta testing so you must opt in to test it out. To enable it, add a configuration like this to either your bot config or your renovate.json:

{
  "pre-commit": {
    "enabled": true
  }
}

If you encounter any bugs, please raise a bug report. If you find that it works well, then feedback on that would be welcome too.

File Matching

By default, Renovate will check any files matching the following regular expression: (^|/)\.pre-commit-config\.yaml$.

For details on how to extend a manager's fileMatch value, please follow this link.

Additional Information

Important note: The pre-commit manager is disabled by default and must be opted into through config. Renovate's approach to version updating is not fully aligned with pre-commit upgrade and this has caused frustration for pre-commit's creator/maintainer. Attempts to work with the pre-commit project to fix these gaps have been rejected, so therefore we have chosen to disable the manager by default indefinitely. Please do not contact the pre-commit project/maintainer about any Renovate-related topic. To view a list of open issues related to the pre-commit manager in Renovate, see the filtered list using the manager:pre-commit label.

When enabled, Renovate supports updating of Git dependencies within pre-commit configuration .pre-commit-config.yaml files or other YAML files that use the same format (via fileMatch configuration). Updates are performed if the files follow the conventional format used in typical pre-commit files:

repos:
  - repo: https://github.com/pre-commit/pre-commit-hooks
    rev: v1.0.0
    hooks:
      - id: some-hook-id

To enable the pre-commit manager, add the following config:

{
  "pre-commit": {
    "enabled": true
  }
}

Alternatively, add :enablePreCommit to your extends array.

Back to top