-
Notifications
You must be signed in to change notification settings - Fork 9
chore(deps) : Upgrade to spring 4 #2079
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
base: main
Are you sure you want to change the base?
Conversation
WalkthroughUpdates CI and project Java version to 25, upgrades Spring Boot parent to 4.0.0-M3, adjusts dependencies (AspectJ, WebMVC, OpenTelemetry, kotlin-reflect), fixes a Jackson import in tests, adds a VSCode launch entry, fixes Grafana datasource YAML structure, and changes Grafana credentials in the README. Changes
Estimated code review effort🎯 4 (Complex) | ⏱️ ~45 minutes Possibly related PRs
Poem
Pre-merge checks and finishing touches✅ Passed checks (3 passed)
✨ Finishing touches🧪 Generate unit tests
📜 Recent review detailsConfiguration used: CodeRabbit UI Review profile: CHILL Plan: Pro 📒 Files selected for processing (1)
🚧 Files skipped from review as they are similar to previous changes (1)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
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.
Actionable comments posted: 1
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (3)
.github/workflows/boot-strategy-plugin.yml
(1 hunks)boot-strategy-plugin/pom.xml
(5 hunks)boot-strategy-plugin/src/test/java/com/example/plugin/strategyplugin/StrategyPluginApplicationTests.java
(1 hunks)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (2)
- GitHub Check: Codacy Static Code Analysis
- GitHub Check: Run Unit & Integration Tests
🔇 Additional comments (8)
.github/workflows/boot-strategy-plugin.yml (1)
39-39
: LGTM! Java version upgraded to 25.The GraalVM setup now uses Java 25, which aligns with the project-wide upgrade to Spring Boot 4.0.0-M3 and Java 25 in the pom.xml.
boot-strategy-plugin/pom.xml (7)
8-8
: Spring Boot 4.0.0-M3 is a milestone release.The upgrade to Spring Boot 4.0.0-M3 is a significant step forward. Note that this is a milestone (pre-release) version, which may contain breaking changes and is not recommended for production use until a stable release is available.
56-60
: Clarify the kotlin-reflect dependency comment.The comment states "to be removed when SB4 is supported," but this PR is already upgrading to Spring Boot 4.0.0-M3. Please clarify:
- Is this dependency needed as a temporary workaround for a milestone release issue?
- Should the comment reference a specific Spring Boot 4 GA (General Availability) version?
- Is there a GitHub issue or documentation explaining why kotlin-reflect is required?
69-72
: LGTM! OpenTelemetry starter added.The
spring-boot-starter-opentelemetry
dependency has been added, which will provide auto-configuration for OpenTelemetry integration alongside the existing tracing dependencies.
132-132
: Approve bump to google-java-format 1.28.0 It supports Java 25 syntax when run on JDK ≥ 25 (minimum runtime Java 17).
16-16
: Upgrade to Java 25 approved. Java 25 reached GA on September 16, 2025 and is a Long-Term Support release.
39-39
: Approve AOP starter rename
The rename fromspring-boot-starter-aop
tospring-boot-starter-aspectj
is documented in the Spring Boot 4 migration guide. Confirm whether you require AspectJ weaving (keep this starter) or only proxy-based AOP (remove it), then run tests to verify AOP behavior.
47-47
: Replace spring-boot-starter-web with spring-boot-starter-webmvc per Spring Boot 4 migration guide
This update aligns with the official migration guidance. Verify your dependency tree (MVC starters no longer auto-included) and run your web tests to confirm functionality.
import org.springframework.http.MediaType; | ||
import org.springframework.http.ProblemDetail; | ||
import org.springframework.web.client.RestClient; | ||
import tools.jackson.databind.JsonNode; |
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.
🛠️ Refactor suggestion | 🟠 Major
🧩 Analysis chain
LGTM! Jackson 3.x package migration.
The import has been correctly updated from com.fasterxml.jackson.databind.JsonNode
to tools.jackson.databind.JsonNode
to align with Jackson 3.x, which is included in Spring Boot 4.0.0-M3.
Verify that all other Jackson imports across the codebase have been migrated to the new tools.jackson
package:
🏁 Script executed:
#!/bin/bash
# Description: Find any remaining imports from the old com.fasterxml.jackson package.
# Search for old Jackson imports that should be migrated
rg -n "import com\.fasterxml\.jackson\." --type=java
Length of output: 16871
Migrate all remaining Jackson imports to tools.jackson
Detected numerous import com.fasterxml.jackson.*
statements across tests and main sources (e.g., scheduler, r2dbc, jpa, graphql modules). Update all to tools.jackson.*
to complete the Jackson 3.x migration.
🤖 Prompt for AI Agents
In
boot-strategy-plugin/src/test/java/com/example/plugin/strategyplugin/StrategyPluginApplicationTests.java
around line 16, replace the existing Jackson import with the tools.jackson
package (e.g., change import com.fasterxml.jackson.* to import tools.jackson.*);
update this file's import to tools.jackson.databind.JsonNode and then search the
repository for any remaining com.fasterxml.jackson imports and replace them with
the corresponding tools.jackson.* equivalents, re-run the build/tests to ensure
no remaining compilation errors and fix any updated package/API differences.
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.
Actionable comments posted: 1
🧹 Nitpick comments (1)
boot-strategy-plugin/ReadMe.md (1)
28-28
: Wrap Grafana URL to satisfy markdownlint.markdownlint (MD034) dislikes bare URLs. Converting this to a Markdown link keeps the change lint-clean.
Apply this diff:
-* Grafana: http://localhost:3000/ (admin/admin) +* Grafana: [http://localhost:3000/](http://localhost:3000/) (admin/admin)
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (3)
.vscode/launch.json
(1 hunks)boot-strategy-plugin/ReadMe.md
(1 hunks)boot-strategy-plugin/platform/grafana/provisioning/datasources/datasource.yml
(1 hunks)
🧰 Additional context used
🪛 markdownlint-cli2 (0.18.1)
boot-strategy-plugin/ReadMe.md
28-28: Bare URL used
(MD034, no-bare-urls)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
- GitHub Check: Codacy Static Code Analysis
🔇 Additional comments (1)
.vscode/launch.json (1)
295-304
: Nice addition for local debugging.Matching the existing launch format keeps tooling consistent; no issues spotted.
Summary by CodeRabbit
New Features
Bug Fixes
Chores