Sync dependencies with odlparent 14.0.9#2229
Conversation
https://github.com/awaitility/awaitility/blob/master/changelog.txt JIRA:LIGHTY-369 Signed-off-by: tobias.pobocik <[email protected]>
https://checkstyle.org/releasenotes.html#Release_10.22.0 https://checkstyle.org/releasenotes.html#Release_10.23.0 JIRA:LIGHTY-369 Signed-off-by: tobias.pobocik <[email protected]>
https://junit.org/junit5/docs/5.12.1/release-notes/#release-notes-5.12.1 JIRA:LIGHTY-369 Signed-off-by: tobias.pobocik <[email protected]>
There was a problem hiding this comment.
Hello @Tobianas, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!
Summary of Changes
Hello! Gemini here, providing a summary of this pull request. The primary goal of this PR, as indicated by the title and description, is to synchronize the project's third-party dependencies with those specified in odlparent version 14.0.9. This involves updating several dependency and plugin versions defined in the project's POM files to align with the upstream parent project.
Highlights
- Dependency Synchronization: The core purpose of this PR is to bring the project's dependencies in line with
odlparentversion 14.0.9, ensuring consistency and leveraging updates from the parent project. - Updated Test Dependencies: The
junit-bomandawaitilitytest-related dependencies have been updated to newer versions. - Updated Maven Plugins: Several key Maven plugins, including
maven-failsafe-pluginandmaven-surefire-plugin(used for running tests), and thecheckstyleplugin (for code style checks), have been updated.
Changelog
- lighty-core/dependency-versions/pom.xml
- Updated
junit-bomversion from 5.12.0 to 5.12.1. - Updated
awaitilityversion from 4.2.2 to 4.3.0.
- Updated
- lighty-core/lighty-parent/pom.xml
- Updated
maven-failsafe-pluginversion from 3.5.2 to 3.5.3. - Updated
maven-surefire-pluginversion from 3.5.2 to 3.5.3. - Updated
checkstyleversion from 10.21.4 to 10.23.0.
- Updated
- lighty-examples/lighty-controller-springboot-netconf/pom.xml
- Updated
maven-surefire-pluginversion from 3.5.2 to 3.5.3.
- Updated
Using Gemini Code Assist
The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.
Invoking Gemini
You can request assistance from Gemini at any point in your pull request via creating an issue comment (i.e. comment on the pull request page) using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands.
| Feature | Command | Description |
|---|---|---|
| Code Review | /gemini review |
Performs a code review for the current pull request in its current state. |
| Pull Request Summary | /gemini summary |
Provides a summary of the current pull request in its current state. |
| Comment | @gemini-code-assist | Responds in comments when explicitly tagged, both in issue comments and review comments. |
| Help | /gemini help |
Displays a list of available commands. |
Customization
To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.
Limitations & Feedback
Gemini Code Assist is currently in preview and may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments to provide feedback.
You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.
POM file changes flow,
Versions bump, watch them grow,
Build green, code shines bright.
Footnotes
-
Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution. ↩
There was a problem hiding this comment.
Code Review
This pull request aims to synchronize dependencies with odlparent 14.0.9. The updates made to specific dependency versions (JUnit, Awaitility, Maven Surefire/Failsafe plugins, Checkstyle tool) appear to correctly reflect the versions specified in odlparent 14.0.9 based on the provided link.
However, there's a critical oversight:
The primary org.opendaylight.odlparent:odlparent BOM import in lighty-core/dependency-versions/pom.xml (line 29) has not been updated from 14.0.8 to 14.0.9. This is essential for a true synchronization, as it ensures that all managed dependencies and plugin management configurations from odlparent are correctly inherited from version 14.0.9.
Without updating this main BOM import:
- The project is not fully synchronized with
odlparent 14.0.9. - Other transitive dependencies or managed versions defined in
odlparent 14.0.9but not explicitly updated in this PR will be missed, still coming from14.0.8. - Related
odlparentartifacts, such as:org.opendaylight.odlparent:checkstyle:jar(used bymaven-checkstyle-plugininlighty-core/lighty-parent/pom.xmlline 205)org.opendaylight.odlparent:spotbugs:jar(used byspotbugs-maven-plugininlighty-core/lighty-parent/pom.xmlline 222)
are still explicitly set to version14.0.8. These should also be updated to14.0.9to align with the intended parent POM version and use the corresponding configurations (e.g., checkstyle rules).
This PR only updates a subset of dependencies manually to versions found in odlparent 14.0.9, rather than achieving the sync by updating the parent POM import. This fundamental update is necessary to achieve the stated goal of the PR comprehensively.
Summary of Findings
- Incomplete ODL Parent Synchronization: The primary
org.opendaylight.odlparent:odlparentBOM import inlighty-core/dependency-versions/pom.xmlhas not been updated to14.0.9from14.0.8. This is critical for achieving a full synchronization withodlparent 14.0.9and ensuring all managed dependencies and configurations are correctly inherited. - Related ODL Parent Artifact Versions: Artifacts like
org.opendaylight.odlparent:checkstyleandorg.opendaylight.odlparent:spotbugs(used as plugin dependencies inlighty-core/lighty-parent/pom.xml) are still at version14.0.8. These should be updated to14.0.9to align with the targetodlparentversion. - Checkstyle Version Management Consistency: The explicit update of
com.puppycrawl.tools:checkstyleto10.23.0inlighty-core/lighty-parent/pom.xmlis correct forodlparent 14.0.9. However, it highlights an inconsistency with the existing comment about matchingdependencyManagementbecause the underlyingodlparentBOM (which provides this management) is still14.0.8. Updating the main BOM would resolve this.
Merge Readiness
This pull request aims to synchronize dependencies with odlparent 14.0.9, and the individual version bumps are consistent with this goal. However, due to the critical issue of not updating the main org.opendaylight.odlparent:odlparent BOM import from 14.0.8 to 14.0.9 in lighty-core/dependency-versions/pom.xml, the synchronization is incomplete.
I recommend that this critical issue, along with updating related odlparent artifact versions (like odlparent:checkstyle and odlparent:spotbugs), be addressed before this PR is merged. This will ensure a comprehensive and correct synchronization with odlparent 14.0.9. I am not authorized to approve pull requests; please ensure further review and approval after these changes are made.
| <artifactId>checkstyle</artifactId> | ||
| <!-- This should match the dependency management on com.puppycrawl.tools:checkstyle above --> | ||
| <version>10.21.4</version> | ||
| <version>10.23.0</version> |
There was a problem hiding this comment.
This update changes the com.puppycrawl.tools:checkstyle version (used as a dependency by maven-checkstyle-plugin) to 10.23.0. This version aligns with what is specified in odlparent 14.0.9, which is good.
However, there's a nuance regarding the comment on the preceding line (194): <!-- This should match the dependency management on com.puppycrawl.tools:checkstyle above -->.
Currently, the project imports org.opendaylight.odlparent:odlparent:pom:14.0.8 (in lighty-core/dependency-versions/pom.xml), which manages com.puppycrawl.tools:checkstyle at version 10.21.4.
By explicitly setting the version here to 10.23.0, you are correctly using the newer version intended by odlparent 14.0.9, but it means this version overrides the (older) managed version. This makes the comment on line 194 potentially less clear or accurate if "dependency management above" refers to the effective managed version from the 14.0.8 BOM.
For full consistency and to ensure the project truly syncs with odlparent 14.0.9:
- The
org.opendaylight.odlparent:odlparentBOM import inlighty-core/dependency-versions/pom.xmlshould be updated to14.0.9(as highlighted in the general PR feedback). - This would ensure
com.puppycrawl.tools:checkstyleis managed at10.23.0by default, making the comment on line 194 accurate without needing an explicit version here (or this explicit version would match the new managed version). - Additionally, the
org.opendaylight.odlparent:checkstyleartifact dependency (currently on line 205, version14.0.8) should be updated to14.0.9to use the checkstyle rules corresponding toodlparent 14.0.9.
While this specific version change to 10.23.0 is correct in isolation for the tool, the broader context of the odlparent synchronization (especially updating the main BOM import) is crucial.
Sync dependencies with odlparent 14.0.9
Sync third-party dependencies with odlparent 14.0.9.
opendaylight/odlparent@v14.0.8...v14.0.9