Skip to content

Commit 5c11d2d

Browse files
authored
chore(renovate): optimize uv project dependency update strategy (#475)
- Add lockFileMaintenance with automerge for uv.lock - Set rangeStrategy to replace to avoid duplicate lockfile PRs - Enable automerge only for dev deps minor/patch and lockfile maintenance - Protect against 0.x breaking changes by disabling automerge - Add rebaseWhen: behind-base-branch for cleaner PR history
1 parent 6d53ed6 commit 5c11d2d

1 file changed

Lines changed: 27 additions & 12 deletions

File tree

renovate.json

Lines changed: 27 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,31 +1,46 @@
11
{
22
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
33
"extends": ["config:recommended"],
4-
"automerge": true,
4+
"rangeStrategy": "replace",
5+
"lockFileMaintenance": {
6+
"enabled": true,
7+
"automerge": true
8+
},
9+
"automerge": false,
510
"automergeType": "pr",
611
"platformAutomerge": true,
12+
"rebaseWhen": "behind-base-branch",
713
"internalChecksFilter": "strict",
814
"git-submodules": {
915
"enabled": true
1016
},
1117
"packageRules": [
1218
{
13-
"matchManagers": [
14-
"python-version",
15-
"pep621",
16-
"uv",
17-
"pip_requirements",
18-
"pip_setup",
19-
"setup-cfg"
20-
],
21-
"matchPackageNames": ["python", "python3", "cpython","requires-python"],
22-
"enabled": false
19+
"description": "Automerge dev dependency minor and patch updates",
20+
"matchDepTypes": ["dev", "dependency-groups.dev"],
21+
"matchUpdateTypes": ["minor", "patch"],
22+
"automerge": true
23+
},
24+
{
25+
"description": "Automerge lock file maintenance",
26+
"matchUpdateTypes": ["lockFileMaintenance"],
27+
"automerge": true
2328
},
2429
{
25-
"description": "Group patch and minor updates together",
30+
"description": "Group minor and patch production dependencies",
2631
"matchUpdateTypes": ["minor", "patch"],
2732
"groupName": "dependencies (minor and patch)",
2833
"groupSlug": "dependencies-minor-patch"
34+
},
35+
{
36+
"description": "Do not automerge 0.x versions (can have breaking changes)",
37+
"matchCurrentVersion": "/^0\\./",
38+
"automerge": false
39+
},
40+
{
41+
"description": "Disable Python runtime version updates",
42+
"matchPackageNames": ["python", "python3", "cpython", "requires-python"],
43+
"enabled": false
2944
}
3045
]
3146
}

0 commit comments

Comments
 (0)