Minimizes ordering changes and comment movement by changing the first outdated BOM instead of removing and adding
Always updates an outdated BOM if present, even if there are no included plugins
What's your motivation?
Spent some time triaging why a BOM was left out of sync with a jenkins.version property after running a recipe. I think this better aligns with expected behavior.
I also considered removing an unused BOM, but then we'd have a recipe called AddPluginsBom that may only remove a BOM. I thought this would be more confusing than updating.
Anyone you would like to review specifically?
Using PR so release notes are easy to generate.
Checklist
[x] I've added unit tests to cover both positive and negative cases
[x] I've added the license header to any new files through ./gradlew licenseFormat
[x] I've used the IntelliJ auto-formatter on affected files
[x] I've updated the documentation (if applicable)
What's changed?
The
AddPluginsBom
recipe has two new features:What's your motivation?
Spent some time triaging why a BOM was left out of sync with a
jenkins.version
property after running a recipe. I think this better aligns with expected behavior.I also considered removing an unused BOM, but then we'd have a recipe called AddPluginsBom that may only remove a BOM. I thought this would be more confusing than updating.
Anyone you would like to review specifically?
Using PR so release notes are easy to generate.
Checklist
./gradlew licenseFormat