Skip to content

Commit b0ac3d1

Browse files
committed
Use a new grouping strategy for dependabot updates
We group patch updates as they should always work. We also group minor updates, as it works too for most libraries, typically except libraries that don't have a stable release yet (v0.x.x branch), so we make some exceptions for them. Major updates and dependencies excluded by the above groups are still managed, but they'll create one PR per dependency, as breaking is expected so it might need manual intervention. Finally we group some dependencies that are related to each other, and usually need to be updated together. Signed-off-by: Leandro Lucarella <[email protected]>
1 parent 429378b commit b0ac3d1

File tree

1 file changed

+28
-17
lines changed

1 file changed

+28
-17
lines changed

.github/dependabot.yml

Lines changed: 28 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -13,31 +13,42 @@ updates:
1313
versioning-strategy: auto
1414
# Allow up to 10 open pull requests for updates to dependency versions
1515
open-pull-requests-limit: 10
16-
# We group production and development ("optional" in the context of
17-
# pyproject.toml) dependency updates when they are patch and minor updates,
18-
# so we end up with less PRs being generated.
19-
# Major updates are still managed, but they'll create one PR per
20-
# dependency, as major updates are expected to be breaking, it is better to
21-
# manage them individually.
22-
# We exclude the `frequenz-repo-config` package from grouping as this
23-
# dependency is still under development (at branch v0.x.x), so minor
24-
# changes typically introduce breaking changes (and patch updates can
25-
# potentially too according to semver).
16+
# We group patch updates as they should always work.
17+
# We also group minor updates, as it works too for most libraries,
18+
# typically except libraries that don't have a stable release yet (v0.x.x
19+
# branch), so we make some exceptions for them.
20+
# Major updates and dependencies excluded by the above groups are still
21+
# managed, but they'll create one PR per dependency, as breaking is
22+
# expected so it might need manual intervention.
23+
# Finally we group some dependencies that are related to each other, and
24+
# usually need to be updated together.
2625
groups:
27-
required:
28-
dependency-type: "production"
26+
patch:
2927
update-types:
30-
- "minor"
3128
- "patch"
3229
exclude-patterns:
33-
- "frequenz-repo-config*"
34-
optional:
35-
dependency-type: "development"
30+
# pydoclint has shipped breaking changes in patch updates often
31+
- "pydoclint"
32+
minor:
3633
update-types:
3734
- "minor"
38-
- "patch"
3935
exclude-patterns:
4036
- "frequenz-repo-config*"
37+
- "markdown-callouts"
38+
- "mkdocs-gen-files"
39+
- "mkdocs-literate-nav"
40+
- "mkdocstrings*"
41+
- "pydoclint"
42+
- "pymdownx-superfence-filter-lines"
43+
# We group repo-config updates as it uses optional dependencies that are
44+
# considered different dependencies otherwise, and will create one PR for
45+
# each if we don't group them.
46+
repo-config:
47+
patterns:
48+
- "frequenz-repo-config*"
49+
mkdocstrings:
50+
patterns:
51+
- "mkdocstrings*"
4152

4253
- package-ecosystem: "github-actions"
4354
directory: "/"

0 commit comments

Comments
 (0)