master
 1{
 2  "$schema": "https://docs.renovatebot.com/renovate-schema.json",
 3  "extends": [
 4    "config:recommended",
 5    "group:allNonMajor"
 6  ],
 7  "regexManagers": [
 8    {
 9      "fileMatch": [
10        "(^|/)rust-toolchain\\.toml$",
11        "(^|/)rust-toolchain$"
12      ],
13      "matchStrings": [
14        "channel\\s*=\\s*\"(?<currentValue>.*)\""
15      ],
16      "depNameTemplate": "rust",
17      "datasourceTemplate": "docker",
18      "packageNameTemplate": "docker.io/library/rust",
19      "versioningTemplate": "docker"
20    },
21    {
22      "fileMatch": [
23        "(^|/)\\.python-version$"
24      ],
25      "matchStrings": [
26        "^(?<currentValue>.+)$"
27      ],
28      "depNameTemplate": "python",
29      "datasourceTemplate": "docker",
30      "packageNameTemplate": "docker.io/library/python",
31      "versioningTemplate": "docker"
32    },
33    {
34      "fileMatch": [
35        "(^|/)[Dd]ockerfile$",
36        "(^|/)[Dd]ockerfile\\.[a-zA-Z0-9-]+$"
37      ],
38      "matchStrings": [
39        "FROM ghcr\\.io/astral-sh/uv:(?<currentValue>python\\d+\\.\\d+-bookworm-slim)"
40      ],
41      "depNameTemplate": "ghcr.io/astral-sh/uv",
42      "datasourceTemplate": "docker",
43      "versioningTemplate": "regex:^python(?<major>\\d+)\\.(?<minor>\\d+)-bookworm-slim$"
44    }
45  ],
46  "packageRules": [
47    {
48      "matchManagers": [
49        "gomod",
50        "dockerfile"
51      ],
52      "matchPackageNames": [
53        "go",
54        "golang",
55        "docker.io/library/golang"
56      ],
57      "groupName": "go version",
58      "separateMinorPatch": true,
59      "rangeStrategy": "bump",
60      "commitMessageTopic": "go",
61      "commitMessageExtra": "to {{{newVersion}}}"
62    },
63    {
64      "matchPackageNames": [
65        "rust",
66        "docker.io/library/rust"
67      ],
68      "groupName": "rust version",
69      "separateMinorPatch": true,
70      "rangeStrategy": "bump",
71      "commitMessageTopic": "rust",
72      "commitMessageExtra": "to {{{newVersion}}}"
73    },
74    {
75      "matchPackageNames": [
76        "python",
77        "docker.io/library/python",
78        "ghcr.io/astral-sh/uv"
79      ],
80      "groupName": "python version",
81      "separateMinorPatch": true,
82      "rangeStrategy": "bump",
83      "commitMessageTopic": "python",
84      "commitMessageExtra": "to {{{newVersion}}}"
85    },
86    {
87      "description": "Force Python minor versioning for pyproject.toml",
88      "matchPackageNames": [
89        "python",
90        "docker.io/library/python"
91      ],
92      "matchFiles": [
93        "pyproject.toml"
94      ],
95      "extractVersion": "^(?<version>\\d+\\.\\d+)"
96    }
97  ]
98}