There’s no “leaving users in the lurch” by requiring JDK upgrades. If users are using containers (pretty much everyone i talk to) then the JDK is included, versions don’t matter.
If not, every modern Linux distro supports multiple installed JDKS. Again, not a problem. So far the only convincing argument I’ve heard is that we need overlapping versions because of in-JVM dtests. Which is a shame, but sounds unavoidable without a massive change that I’m sure nobody is interested in. Let’s not pretend like we’re doing this for the users though, they aren’t getting any benefit from it. Jon On Tue, May 20, 2025 at 8:12 AM Josh McKenzie <jmcken...@apache.org> wrote: > This came up in the release versioning thread and we punted to its own > thread. > > *Topic: How do we want to handle JDK version support in C* releases?* > > Oracle LTS policy here: > https://www.oracle.com/java/technologies/java-se-support-roadmap.html > > My first rough thoughts: > > 1. Any given C* release will only support 2 JDK / JRE at any given time > 2. We only change JDK support on MAJOR releases (i.e. not patch) > 3. When we add support for a new JDK, we drop support for the older in > that release > 1. Every consecutive release *must share support for a runtime JDK > version with one version older* (this allows for live upgrades, CI, > etc). So if we take a long time releasing C* and multiple JDK's rev, we > don't jump from [11,17] supported to [21,23] and leave users in a lurch > on > the straddle > 4. We confirm C* builds on both supported JDK's > 5. We run all test suites against all supported JDK's for a release > (yet more incentive to clean up slow tests..) > 6. Language level support will be constrained to oldest JDK supported > 7. We make an effort to support the latest LTS JDK on any given C* > release (i.e. 21 now, 25 next major when it goes LTS Sep of this year) > > The major downside I can think of with the above is operators will need to > verify a new JDK maximally once every 2-3 years as older LTS support is > dropped. > > What am I not thinking of? What are other downsides with the above > proposal? > >