Bump JaCoCo to 0.8.13, override Byte Buddy to 1.17.5 for JDK 25 tests#783
Open
Divyansh-db wants to merge 2 commits intomainfrom
Open
Bump JaCoCo to 0.8.13, override Byte Buddy to 1.17.5 for JDK 25 tests#783Divyansh-db wants to merge 2 commits intomainfrom
Divyansh-db wants to merge 2 commits intomainfrom
Conversation
The code-generator's `mvn --errors clean test` post-generate step on
JDK 25 was failing in two waves:
1. JaCoCo 0.8.10 (pinned in root pom) cannot instrument JDK 25 class
file format (version 69), throwing IllegalClassFormatException on
every JDK class the surefire JVM loads. Bump to 0.8.13.
2. Mockito 4.11 transitively pulls Byte Buddy ~1.12 which only
supports class file format up to Java 20. Tests that mock anything
fail with "Java 25 (69) is not supported by the current version of
Byte Buddy". Override the transitive via dependencyManagement to
1.17.5, which supports JDK 25 and stays Java 8 compatible.
Mockito itself stays at 4.11 because 5.x raises the floor to JRE 11,
which would break the JDK 8 row in the unit-tests CI matrix.
Verified `mvn clean test` passes 1325/1325 tests on JDK 8, 11, and 25.
Lockfile regenerated.
Co-authored-by: Isaac
Three CI failures from the prior commit, all unrelated to the actual JDK 25 fix: - fmt: sortpom alphabetized the new <bytebuddy.version> property in databricks-sdk-java/pom.xml. Pure reordering, no semantic change. - check-lock: my regenerated lockfile contained URLs from my dev box's Maven proxy (maven-proxy.dev.databricks.com). The committed lockfile on main uses public Maven Central URLs (repo.maven.apache.org/maven2), same convention as `make fix-lockfile` enforces for the JFrog mirror. Rewrote the 89 occurrences in the child lockfile to match. - check-next-changelog: added an Internal Changes entry noting the JaCoCo and Byte Buddy bumps. Co-authored-by: Isaac
Contributor
|
If integration tests don't run automatically, an authorized user can run them manually by following the instructions below: Trigger: Inputs:
Checks will be approved automatically on success. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The code-generator's
mvn --errors clean testpost-generate step on JDK 25 was failing in two waves:JaCoCo 0.8.10 (pinned in root pom) cannot instrument JDK 25 class file format (version 69), throwing IllegalClassFormatException on every JDK class the surefire JVM loads. Bump to 0.8.13.
Mockito 4.11 transitively pulls Byte Buddy ~1.12 which only supports class file format up to Java 20. Tests that mock anything fail with "Java 25 (69) is not supported by the current version of Byte Buddy". Override the transitive via dependencyManagement to 1.17.5, which supports JDK 25 and stays Java 8 compatible.
Mockito itself stays at 4.11 because 5.x raises the floor to JRE 11, which would break the JDK 8 row in the unit-tests CI matrix.
Verified
mvn clean testpasses 1325/1325 tests on JDK 8, 11, and 25.Lockfile regenerated.
Co-authored-by: Isaac
Summary
Why
What changed
Interface changes
Behavioral changes
Internal changes
How is this tested?