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

Add Dependabot #21092

Closed
wants to merge 2 commits into from
Closed

Add Dependabot #21092

wants to merge 2 commits into from

Conversation

ottnorml
Copy link

@ottnorml ottnorml commented Oct 5, 2023

Thank you for your contribution to OpenRA!

Please be aware that we do not have enough project maintainers to match the rate of contributions, so it may take several days before somebody is able to respond to your Pull Request.


If you need any help you can ask on Discord (https://discord.openra.net) or in the #openra IRC channel on Libera (not as active as Discord).

@Mailaender
Copy link
Member

Thanks, but internal discussion came to the conclusion that we can't just automatically update dependencies.

@Mailaender Mailaender closed this Oct 5, 2023
@abcdefg30 abcdefg30 added the hacktoberfest-accepted Label to mark PRs as accepted for the Hacktoberfest label Oct 5, 2023
@ottnorml
Copy link
Author

ottnorml commented Oct 8, 2023

First of all, thanks to @abcdefg30 for the hacktoberfest-accepted label and to @Mailaender for the reply, even though it's sad news for my PR.
I read your discussion on Discord and understand the concerns about the potential problems with updating dependencies this way. However, I think this PR adds value to the project, which is why I made changes to it. But before I go into the benefits, I would like to give an overview of the dependencies monitored by Dependabot and which of them can be updated. In total there are 30 dependencies, of which 7 can be updated at the moment, split into 4 MAJOR and 3 MINOR version updates:

Now that I have shown the extent of the dependencies, the small number of current updates, and the low probability of timely release of further updates, it is easier to estimate the effort to be expected in the future and move on to the next topic.
That would be the more common issue of updates not running smoothly that you mentioned in your discussion.

  1. Dependabot distinguishes between major, minor and patch updates resulting from the Semantic Versioning Specification.
    According to this, all stable non-major updates MUST be backward compatible, so such updates can usually be applied without hesitation. However, if this is not the case, it should be easy to notice from failed tests as the code is tested for each PR to be merged with the bleed or a prep-* branch.

  2. Major updates may contain incompatible API changes. This can lead to problems that are not easy to fix and may require time-consuming adjustments. It often helps to see the results of the code tests. This way, the introduced changes and the resulting errors can be quickly visualized and better assessed. Thanks to Dependabot's open PR, testing is done by the CI, which is convenient and saves time and effort.

  3. And as last point, I would like to mention that Dependabot regularly checks for updates and collects them into PRs depending on the type of update. It then waits for a maintainer to give it further instructions about the particular PR. For this reason, it also does NOT merge PRs on its own, but only when prompted to do so. Its command set also includes a rudimentary update management to suspend updates.
    Finally, each new PR is also a small reminder to take care of dependencies, which also helps the project along.

I hope that I could convince you with my arguments to give Dependabot a chance and just give it a try. So what can go wrong?

Many greetings

P.S.:
In order for my changes to appear, you need to reopen this PR. Otherwise, I can of course create a new PR.

@ottnorml
Copy link
Author

ottnorml commented Oct 8, 2023

P.P.S:
You can see what such PRs look like in my fork (for major updates see ottnorml#68, for minor updates see ottnorml#69).

@Mailaender
Copy link
Member

I submitted pull requests for the version bumps that make sense:
#21099
#21100
which is 2/6 of the automated ones.

Usually, they also require API changes and extensive testing. Nothing that a bot could do.

@abcdefg30
Copy link
Member

Still, there is value in getting notified of a new version. What happens when we find out that we cannot use a new version, would dependabot regularly open PRs for it? Is it possible to open an issue instead? (And just one then.)

@PunkPun
Copy link
Member

PunkPun commented Oct 12, 2023

A PR is better. The spamming issue is a separate out

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
hacktoberfest-accepted Label to mark PRs as accepted for the Hacktoberfest PR: Conceptual concerns
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants