@@ -13,40 +13,50 @@ 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.
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 breakage 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.
2225 groups :
23- required :
24- dependency-type : " production"
26+ patch :
2527 update-types :
26- - " minor"
2728 - " patch"
2829 exclude-patterns :
29- - " frequenz-client-microgrid* "
30- optional :
31- dependency-type : " development "
30+ # pydoclint has shipped breaking changes in patch updates often
31+ - " pydoclint "
32+ minor :
3233 update-types :
3334 - " minor"
34- - " patch"
35- in-devel-patch :
35+ exclude-patterns :
36+ - " async-solipsism"
37+ - " frequenz-client-microgrid"
38+ - " frequenz-repo-config*"
39+ - " markdown-callouts"
40+ - " mkdocs-gen-files"
41+ - " mkdocs-literate-nav"
42+ - " mkdocstrings*"
43+ - " pydoclint"
44+ - " pytest-asyncio"
45+ # We group repo-config updates as it uses optional dependencies that are
46+ # considered different dependencies otherwise, and will create one PR for
47+ # each if we don't group them.
48+ repo-config :
3649 patterns :
37- - " frequenz-client-microgrid *"
38- dependency-type : " production "
39- update-types :
40- - " patch "
50+ - " frequenz-repo-config *"
51+ mkdocstrings :
52+ patterns :
53+ - " mkdocstrings* "
4154 ignore :
4255 # Upgrade to time-machine 2.13.0+ breaks our tests. See:
4356 # https://github.com/frequenz-floss/frequenz-sdk-python/issues/832
4457 - dependency-name : " time-machine"
4558 versions : [">=2.13.0"]
46- # Upgrading to 0.16.0+ needs a lot of changes in the code. See:
47- # https://github.com/frequenz-floss/frequenz-sdk-python/issues/844
48- - dependency-name : " frequenz-api-microgrid"
49- versions : [">=0.16.0"]
59+
5060
5161
5262 - package-ecosystem : " github-actions"
0 commit comments