-
Notifications
You must be signed in to change notification settings - Fork 74
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
Test with Java 21 #230
Test with Java 21 #230
Conversation
Bumps [aws-java-sdk-ec2](https://github.com/jenkinsci/aws-java-sdk-plugin) from 1.12.70 to 1.12.447-382.vda_68e2007233. - [Release notes](https://github.com/jenkinsci/aws-java-sdk-plugin/releases) - [Changelog](https://github.com/jenkinsci/aws-java-sdk-plugin/blob/master/CHANGELOG.md) - [Commits](https://github.com/jenkinsci/aws-java-sdk-plugin/commits) --- updated-dependencies: - dependency-name: org.jenkins-ci.plugins.aws-java-sdk:aws-java-sdk-ec2 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com>
Bumps [bom-2.361.x](https://github.com/jenkinsci/bom) from 1766.v0b_f2a_f7d0b_1d to 2102.v854b_fec19c92. - [Release notes](https://github.com/jenkinsci/bom/releases) - [Commits](https://github.com/jenkinsci/bom/commits) --- updated-dependencies: - dependency-name: io.jenkins.tools.bom:bom-2.361.x dependency-type: direct:production ... Signed-off-by: dependabot[bot] <support@github.com>
Bumps [plugin](https://github.com/jenkinsci/plugin-pom) from 4.53 to 4.65. - [Release notes](https://github.com/jenkinsci/plugin-pom/releases) - [Changelog](https://github.com/jenkinsci/plugin-pom/blob/master/CHANGELOG.md) - [Commits](jenkinsci/plugin-pom@plugin-4.53...4.65) --- updated-dependencies: - dependency-name: org.jenkins-ci.plugins:plugin dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com>
…v854b_fec19c92' into test-with-java-21
…to test-with-java-21
…s-java-sdk-ec2-1.12.447-382.vda_68e2007233' into test-with-java-21
Java 21 released Sep 19, 2023. We'd like to announce full support for Java 21 in early October and would like the most used plugins to be compiling and testing with Java 21. The acceptance test harness and plugin bill of materials tests are already passing with Java 21. This is a further step to improve plugin readiness for use with Java 21 and for development with Java 21. Java 11 will be unsupported by Eclipse Temurin and some other Java providers in October 2024. We'll need to move past Java 11 by that time. It does not change the supported Java version or the byte code that is being generated.
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.
It does not change the supported Java version or the byte code that is being generated.
What would be the bytecode version of the release artifacts? I guess that would still be 11 (as set in https://github.com/jenkinsci/plugin-pom/blob/587d52ab4a35a3243b550c64fa7035f6c379921e/pom.xml#L61, right)
Jenkinsfile
Outdated
[platform: 'linux', jdk: 11], | ||
[platform: 'windows', jdk: 17], |
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.
What's the rationale behind this? Why 17 on Windows (and not 11, for example)?
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.
Thanks for asking. There are several reasons why this change chooses to test with Java 21 and Java 17 without testing Java 11 on ci.jenkins.io.
- Java 11 byte code is generated by the Java 17 and Java 21 compilers due to the configuration of the plugin parent pom. Java 11 byte code is thus being tested with Java 17 and Java 21 runtimes
- Java 11 compilation and test is performed for this plugin at least once a week in the plugin compatibility tests that are part of the Jenkins plugin bill of materials. The 200+ plugins included in the plugin bill of materials are acting as "safety checks" in case there is some surprise due to not compiling with Java 11 on ci.jenkins.io . Many of the plugins in the plugin BOM enabled this pattern 4-6 weeks ago. We've seen no failures due to the removal of Java 11 compilation and test on ci.jenkins.io
- It is important to keep infrastructure costs as low as we can for ci.jenkins.io . Testing only one Windows configuration and one Linux configuration is a way of reducing those infrastructure costs. Choosing Java 17 and Java 21 improves the JDK coverage and assures that we're "looking forward"
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.
test with Java 21 and Java 17 without testing Java 11 on ci.jenkins.io
Then you forgot to remove the Java 11 configuration entry there in the Jenkinsfile
?
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.
Then you forgot to remove the Java 11 configuration entry there in the
Jenkinsfile
?
Thanks for catching that. Fixed in a26f4c1
That's correct. The ci.jenkins.io jobs compile and test but don't release new versions of the plugin. New releases are performed with Java 11 using the continuous delivery process. |
Test with Java 21
Java 21 released Sep 19, 2023. We'd like to announce full support for Java 21 in early October and would like the most used plugins to be compiling and testing with Java 21.
The acceptance test harness and plugin bill of materials tests are already passing with Java 21. This is a further step to improve plugin readiness for use with Java 21 and for development with Java 21.
Java 11 will be unsupported by Eclipse Temurin and some other Java providers in October 2024. We'll need to move past Java 11 by that time. It does not change the supported Java version or the byte code that is being generated.
Also updates the parent pom to 4.74 (most recent) and the plugin bill of materials to the most recent version.
Supersedes the following pull requests:
Testing done
Confirmed tests pass with Java 21.
Submitter checklist