Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

github: only group patch upgrades #10002

Merged
merged 1 commit into from
Dec 13, 2024
Merged

Conversation

emersion
Copy link
Member

@emersion emersion commented Dec 10, 2024

The idea behind minor-and-patch was to group all uninteresting upgrades together. Indeed, with SemVer, patch and minor upgrades are not supposed to include API breaks, and grouping these together should be a good idea in theory as explained in the GitHub docs.

However, in practice this doesn't seem to work well. First, some packages are at version 0.x.y, and minor upgrades often contain breaking changes. Unfortunately there's no way to ask dependabot to not group these unstable dependencies. Another issue is that some minor upgrades do contain some breaking changes (e.g. typescript).

Fix these issues by only grouping patch updates, which shoudl still keep the number of PRs to a reasonable number and not include any breaking upgrade.

While at it, move the group to the end of the list so that it's only used if none of the other groups match the package which need updating. Indeed, dependabot picks the first group which matches the package.

@emersion emersion requested review from Yohh and SharglutDev December 10, 2024 09:27
@emersion emersion requested review from a team as code owners December 10, 2024 09:27
@github-actions github-actions bot added area:front Work on Standard OSRD Interface modules area:ci Work on Continous Integration Pipeline Service labels Dec 10, 2024
The idea behind minor-and-patch was to group all uninteresting
upgrades together. Indeed, with SemVer, patch and minor upgrades
are not supposed to include API breaks, and grouping these
together should be a good idea in theory as explained in the
GitHub docs [1].

However, in practice this doesn't seem to work well. First, some
packages are at version 0.x.y, and minor upgrades often contain
breaking changes. Unfortunately there's no way to ask dependabot
to not group these unstable dependencies. Another issue is that
some minor upgrades do contain some breaking changes (e.g.
typescript).

Fix these issues by only grouping patch updates, which shoudl
still keep the number of PRs to a reasonable number and not
include any breaking upgrade.

While at it, move the group to the end of the list so that it's
only used if none of the other groups match the package which
need updating. Indeed, dependabot picks the first group which
matches the package [2].

[1]: https://docs.github.com/en/code-security/dependabot/dependabot-version-updates/customizing-dependency-updates#grouping-dependabot-updates-into-one-pull-request
[2]: https://docs.github.com/en/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file#groups

Signed-off-by: Simon Ser <contact@emersion.fr>
@emersion emersion force-pushed the emr/dependabot-only-group-patch branch from bcdb5fb to 53a3389 Compare December 10, 2024 09:28
@github-actions github-actions bot removed the area:front Work on Standard OSRD Interface modules label Dec 10, 2024
@emersion emersion added this pull request to the merge queue Dec 13, 2024
Merged via the queue into dev with commit 9e6a940 Dec 13, 2024
27 checks passed
@emersion emersion deleted the emr/dependabot-only-group-patch branch December 13, 2024 08:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area:ci Work on Continous Integration Pipeline Service
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants