Drop source/target compatibility back to Java 11 LTS#10153
Merged
chadlwilson merged 1 commit intogocd:masterfrom Feb 7, 2022
Merged
Drop source/target compatibility back to Java 11 LTS#10153chadlwilson merged 1 commit intogocd:masterfrom
chadlwilson merged 1 commit intogocd:masterfrom
Conversation
This was increased to Java 13 in GoCD 21.2.0 in commit d72a92d - this change decreases it back because requiring versions of the JDK that are not LTS, and are out of even active security patching is not so friendly given the current maintenance support for GoCD. Furthermore, some JVM versions such as Java 16 and 17 made changes that were somewhat time consuming to ensure compatibility with, especially due to some of the older libraries/frameworks GoCD is still packaged with. We were left in the state for the last 10 months where there was no supported and fully patched Java version that GoCD would run with (Java 13/14/15 were all EOL, 16/17 weren't compatible) Furthermore this can cause some challenges for plugins because the go-plugin-api jar also this version (maybe we should version it separately?) and that makes it messy for folks to build a GoCD plugin against the latest API jar, but running against an LTS Java version without knowing all the details about which server version used which target Java version, and whether changing the plugin API version matters. We can announce a new policy later if necessary, and look at whether we should run certain tests against 2 LTS versions (we don't seem to actually run tests except with the target packaged Java version currently)
fbfd50f to
c1e45d3
Compare
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.
This was increased to Java 13 in GoCD 21.2.0 in commit d72a92d - this change decreases it back because requiring versions of the JDK that are not LTS, and are out of even active security patching is not so friendly given the current maintenance support for GoCD. Furthermore, some JVM versions such as Java 16 and 17 made changes that were somewhat time consuming to ensure compatibility with, especially due to some of the older libraries/frameworks GoCD is still packaged with. We were left in the state for the last 10 months where there was no supported and fully patched Java version that GoCD would run with (Java 13/14/15 were all EOL, 16/17 weren't compatible)
Furthermore this can cause some challenges for plugins because the go-plugin-api jar also this version (maybe we should version it separately?) and that makes it messy for folks to build a GoCD plugin against the latest API jar, but running against an LTS Java version without knowing all the details about which server version used which target Java version, and whether changing the plugin API version matters.
We can announce a new policy later if necessary, and look at whether we should run certain tests against 2 LTS versions (we don't seem to actually run tests except with the target packaged Java version currently)
Tasks