Skip to content

Upgrade standalone Spring Core metadata readers for Java 25 - #1409

Draft
jkschneider wants to merge 3 commits into
openrewrite:mainfrom
jkschneider:java25-standalone-spring-core
Draft

jkschneider wants to merge 3 commits into
openrewrite:mainfrom
jkschneider:java25-standalone-spring-core

Conversation

@jkschneider

@jkschneider jkschneider commented Nov 3, 2026 •

Copy link
Copy Markdown
Member

Vaadin's Maven plugin compiles after Java 25 migration, but its metadata-reader tests fail because Spring Core 5.3.19's shaded ASM rejects class-file version 69.

Add an explicitly bounded Spring Core 5.3 OSS → 6.2.11 major upgrade for standalone Maven metadata readers. Require a resolved Core/JCL-only Spring graph and typed usage confined to supported implementation APIs. Refuse Spring Framework/Boot management, other Spring families, unknown parents/BOMs, mixed versions, unsupported source kinds, exposed Spring signatures, fields and unrecognized APIs. Change declaration-local versions while preserving shared properties, and refresh the Maven dependency model.

Validation: 50 actual-source tests pass independently with production compiled for Java 8 and tests on Java 25. Independent review includes generic API exposure, records, profile management and model-refresh controls. The actual resolved consumer graph contains only Spring Core/JCL 5.3.19. Running the same compiled three metadata-reader tests with Core/JCL 5.3.19 fails; substituting 6.2.11 passes all three. Full recipe replay on the original four-repository Maven scope now confirms Vaadin compiles on Java 25 and its three metadata-reader tests pass. The six-test check retains exactly three original Plexus NoSuchMethodError failures, so it is not a fully passing consumer check. Native CI passes.

@github-project-automation github-project-automation Bot moved this to In Progress in OpenRewrite Nov 3, 2026
@jkschneider
jkschneider marked this pull request as ready for review November 3, 2026 06:17
@timtebeek
timtebeek marked this pull request as draft November 3, 2026 12:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: In Progress

Development

Successfully merging this pull request may close these issues.

2 participants