Skip to content

(bug) Hook build fails on pre-commit.ci due to size limits exceeded #4394

Description

@eugengi

Description

My pre-commit.ci run failed during environment initialization after installing this hook with the following error:

build of https://github.com/renovatebot/pre-commit-hooks:renovate@43.216.1@43.216.1 for node@lts exceeds tier max size 250MiB: 610.4MiB

Warning

I noticed that the build took around 1m and 45s and eventually failed. This is significant because with a warm cache, the build can be around 100ms or 3s when a new hook has been added. When installing the hook locally, it also took a significant time during the environment initialization phase.

Root Cause

The resulting pre-commit environment exceeds the maximum size allowed by pre-commit.ci (250 MiB), causing environment creation to fail before the hook can execute.

This is an incompatibility between:

  • The size of the hook's runtime/dependency footprint.
  • The environment size limits enforced by pre-commit.ci.

Impact

For users who rely on pre-commit.ci as their SSOT for CI validation, this integration failure with the target platform makes adoption questionable. This should not be the case given that this is the most developer-convenient option to config validation.

Suggestions

Compatibility with pre-commit.ci should be a goal for this hook, for the community. I believe this is what is being addressed in #4224.

Note

Reduce the hook's installation footprint or explore a lighter-weight validation mechanism.

In the meantime, this known limitation with pre-commit.ci should be documented so users avoid running it in CI. This can be accomplished by adding the following to pre-commit-config.yaml:

ci:
    ...
    skip: [renovate-config-validator]
    ...

Environment

  • Hook: renovatebot/pre-commit-hooks
  • Hook version: 43.216.1
  • Platform: pre-commit.ci

Error:

Image

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    Priority

    None yet

    Datasource

    None yet

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions