renovate
44.198.3 · 30 Oct 2026AGPL-3.0-only559.3k / weekRepositoryHomepagenpmAtom feed
35.159.7 is the newest release of 35.x.
In short
12 breaking10 new2 fixed4 internal
- breaking
Require NodeJS v18.12+
- breaking
config: Forked repos will now be processed automatically if
autodiscover=false.includeForksis removed and replaced by new optionforkProcessing - breaking
Internal checks such as
renovate/stability-dayswill no longer count as passing/green, meaning that actions such asautomergewon't occur if the only checks are Renovate internal ones. SetinternalChecksAsSuccess=trueto restore existing behavior - breaking
versioning: default versioning is now
semver-coerced, instead ofsemver - breaking
datasource/github-releases: Regex Manager configurations relying on the github-release data-source with digests will have different digest semantics. The digest will now always correspond to the underlying Git SHA of the release/version. The old behavior can be preserved by switching to the github-release-attachments datasource
- breaking
versioning: bump short ranges to version
- breaking
config:
containerbase/account used for sidecar containers instead ofrenovate/ - breaking
go: Renovate will now use go's default
GOPROXYsettings. To avoid using the public proxy, configureGOPROXY=direct
Security
3 advisories affect 35.0.0; 42.68.5 fixes them
- ModerateRenovate vulnerable to arbitrary command injection via helmv3 manager and malicious Chart.yaml fileGHSA-3f44-xw83-3pmg · 13 Jan 2026Fixed in 40.33.0
- ModerateRenovate vulnerable to arbitrary command injection via hermit manager and maliciously named dependenciesGHSA-36j9-mx87-2cff · 13 Jan 2026Fixed in 40.33.0
- ModerateRenovate vulnerable to arbitrary command injection via Gradle Wrapper and malicious `distributionUrl`GHSA-pfq2-hh62-7m96 · 13 Jan 2026Fixed in 42.68.5
Release note
Breaking changes for 35
- breaking
Require NodeJS v18.12+
- breaking
config: Forked repos will now be processed automatically if
autodiscover=false.includeForksis removed and replaced by new optionforkProcessing - breaking
Internal checks such as
renovate/stability-dayswill no longer count as passing/green, meaning that actions such asautomergewon't occur if the only checks are Renovate internal ones. SetinternalChecksAsSuccess=trueto restore existing behavior - breaking
versioning: default versioning is now
semver-coerced, instead ofsemver - breaking
datasource/github-releases: Regex Manager configurations relying on the github-release data-source with digests will have different digest semantics. The digest will now always correspond to the underlying Git SHA of the release/version. The old behavior can be preserved by switching to the github-release-attachments datasource
- breaking
versioning: bump short ranges to version
- breaking
config:
containerbase/account used for sidecar containers instead ofrenovate/ - breaking
go: Renovate will now use go's default
GOPROXYsettings. To avoid using the public proxy, configureGOPROXY=direct - breaking
datasource/npm: Package cache will include entries for up to 24 hours after the last lookup. Set
cacheHardTtlMinutes=0to revert to existing behavior - breaking
config: Renovate now defaults to applying hourly and concurrent PR limits. To revert to unlimited, configure them back to
0 - breaking
config: Renovate will now default to updating locked dependency versions. To revert to previous behavior, configure
rangeStrategy=replace - breaking
config: PyPI releases will no longer be filtered by default based on
constraints.pythoncompatibility. To retain existing functionality, setconstraintsFiltering=strict
Commentary for 35
Most of these changes will be invisible to the majority of users.
They may be "breaking" (change of behavior) but good changes of defaults to make.
The biggest change is defaulting rangeStrategy=auto to use update-lockfile instead of replace, which impacts anyone using the recommended config:base.
This will mean that you start seeing some "lockfile-only" PRs for in-range updates, such as updating package-lock.json when a range exists in package.json.
Breaking changes
- breaking
Require NodeJS v18.12+
- breaking
config: Forked repos will now be processed automatically if autodiscover=false. includeForks is removed and replaced by new option forkProcessing.
- breaking
Internal checks such as
renovate/stability-dayswill no longer count as passing/green, meaning that actions such asautomergewon't
occur if the only checks are Renovate internal ones. SetinternalChecksAsSuccess=trueto restore existing behavior. - breaking
versioning: default versioning is now
semver-coerced, instead ofsemver. - breaking
datasource/github-releases: Regex Manager configurations relying on the github-release data-source with digests will have different digest semantics. The digest
will now always correspond to the underlying Git SHA of the release/version. The old behavior can be preserved by switching to the
github-release-attachments datasource. - breaking
versioning: bump short ranges to version
- breaking
config: containerbase/ account used for sidecar containers instead of renovate/
- breaking
go: Renovate will now use go's default
GOPROXYsettings. To avoid using the public proxy, configureGOPROXY=direct. - breaking
datasource/npm: Package cache will include entries for up to 24 hours after the last lookup. Set cacheHardTtlMinutes=0 to revert to existing behavior.
- breaking
config: Renovate now defaults to applying hourly and concurrent PR limits. To revert to unlimited, configure them back to
0. - breaking
config: Renovate will now default to updating locked dependency versions. To revert to previous behavior, configure rangeStrategy=replace.
- breaking
config: PyPI releases will no longer be filtered by default based on
constraints.pythoncompatibility. To retain existing functionality, setconstraintsFiltering=strict.
Features
config: add new option
constraintsFiltering(#19992) (dcd298a), closes #19979config: default
dockerImagePrefixtocontainerbaseconfig: default to rangeStrategy=auto, prefer update-lockfile (#19942) (016e647), closes #19800
config: non-zero defaults for PR concurrent, hourly limits (#19958) (a75f9d7), closes #19800
datasource/github-releases: digest computation use git tag, not file digest (#20178) (177ffed), closes #20160 #19552
datasource/npm: default cacheHardTtlMinutes to 24 hours
- breaking
Require NodeJS v18.12+
versioning: default to semver-coerced instead of semver
Bug Fixes