-
Notifications
You must be signed in to change notification settings - Fork 169
Add Jackson packages grouping to Renovate configuration and fix gitignore #2237
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 Jackson packages grouping to Renovate configuration and fix gitignore #2237
Conversation
Co-authored-by: trask <[email protected]>
This will combine future Jackson dependency updates (jackson-bom, jackson-core, jackson-databind, etc.) into a single PR instead of separate PRs like #2227 and #2228. Co-authored-by: trask <[email protected]>
Co-authored-by: trask <[email protected]>
| { | ||
| groupName: 'jackson packages', | ||
| matchPackageNames: [ | ||
| 'com.fasterxml.jackson{/,}**', |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
So this feels like copypasta (it's even in the docs), but maybe I'm missing something and I am willing to use this as a moment to learn.
Java doesn't use the forward slash in package names, so why does this glob include a forward slash?
My understanding of the brace expansion is that com.fasterxml.jackson{/,}** simply expands to com.fasterxml.jackson/** com.fasterxml.jackson**. Right?
So we don't need that first one, and the second one is probably overkill. Jackson packages are just in com.fasterxml.jackson so I'd prefer that this just tighen up to com.fasterxml.jackson. If there are other packages in the future that we want to add, we can do that then.
| 'com.fasterxml.jackson{/,}**', | |
| 'com.fasterxml.jackson', |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
com.fasterxml.jackson.core:jackson-databind is in com.fasterxml.jackson.core
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can we still be explicit then and avoid the forward slash thinger?
| 'com.fasterxml.jackson{/,}**', | |
| 'com.fasterxml.jackson', | |
| 'com.fasterxml.jackson.core', |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
looking into the question about {/,}... I'm not sure (other than it's the pattern we use elsewhere in this file)...
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
yeah, from the Renovate logs, it looks like
"packageName": "com.fasterxml.jackson.core:jackson-databind"
can I make a follow-up PR to fix this since copilot did its job here based on our current pattern?
This PR adds a grouping rule to the Renovate configuration to combine Jackson dependency updates into a single PR instead of creating separate PRs for each Jackson package. Also removes build-scan.txt file and adds it to .gitignore to prevent Gradle build scan URLs from being committed.
Problem
Currently, Renovate creates separate PRs for different Jackson packages, as seen in:
com.fasterxml.jackson.core:jackson-databindto v2.20.0com.fasterxml.jackson:jackson-bomto v2.20.0This creates unnecessary review overhead when Jackson releases new versions that affect multiple packages simultaneously.
Solution
Added a new package rule to group all
com.fasterxml.jackson{/,}**packages together:This follows the existing pattern used for other grouped packages like
spotless packages,errorprone packages, andhipparchus packages.Additional Changes
build-scan.txtfile which contained Gradle build scan URLs that should not be committedbuild-scan.txtto.gitignoreto prevent future accidental commits of build scan filesImpact
The pattern
com.fasterxml.jackson{/,}**will match all Jackson packages currently used in the project, including:com.fasterxml.jackson:jackson-bomcom.fasterxml.jackson.core:jackson-corecom.fasterxml.jackson.core:jackson-databind💬 Share your feedback on Copilot coding agent for the chance to win a $200 gift card! Click here to start the survey.