Files
renovate/lib/modules/platform/local
Jamie Tanna f932d52fbd feat(platform): get all branch update dates in a more performant manner (#44582)
* feat(platform): get all branch update dates in a more performant manner

When Renovate is working on a repository with many /potential/ branches,
as well as some actually created branches, it's possible for the
calculation for `commitHourlyLimit` to end up taking significant time.

This can lead to a less performant job generally, but can sometimes lead
to the Renovate job failing to complete, and then timing out when
executed by a job runner.

To handle this, we can instead use use `git for-each-ref` to look up
each Git ref (remotely) and request the commit date, which leads to a
much more performant lookup.

Co-authored-by: Claude Sonnet 5 <jamie.tanna+claude-code@mend.io>

* fixup! feat(platform): get all branch update dates in a more performant manner

Co-authored-by: Claude Sonnet 5 <jamie.tanna+claude-code@mend.io>

* fixup! Merge remote-tracking branch 'origin/HEAD' into wip/commit-hourly-slow

---------

Co-authored-by: Claude Sonnet 5 <jamie.tanna+claude-code@mend.io>
2026-07-21 13:17:58 +00:00
..

Local

With the "local" platform you can perform dry runs of Renovate against the local file system. This can be handy when testing a new Renovate configuration for example.

Usage

Run the renovate --platform=local command in the directory you want Renovate to run in. In this mode, Renovate defaults to dryRun=lookup. You can override this by passing --dry-run=extract to stop after the extract phase. Other dryRun values (such as full) are not supported on the local platform and fall back to lookup.

Avoid giving "repositories" arguments, as this command can only run in a single directory, and it can only run in the current working directory.

You may run the command above on "plain" directories, or "Git directories". You don't need to provide any config, as the command will run with or without "repo config".

The command doesn't do any "compare" - or before and after analysis - if you want to test a new config then you must manually compare.

Limitations

  • local> presets can't be resolved. Normally these would point to the local platform such as GitHub, but in the case of running locally, it does not exist
  • baseBranchPatterns are ignored
  • Branch creation is not supported