==== DISCLAIMER: I am not a lawyer. This does not constitute not legal advice. You should consult your legal counsel. ====
Yes, we were supposed to mention this as a part of the release notes of 19.3, but missed it. You're right: Because of all the changes around the JVM, we've had to make some changes in our support for different versions of Java. Other relevant FAQs are:
The main aspects of these decisions from Oracle which apply are:
1. There will be a new major release of Java every 6 months.
2. Security updates will be provided only a few times within that timeframe (twice, I believe).
3. A new (non-LTS) release of Java supersedes the previous version (and it becomes "unsupported" by Oracle).
Given all of this, and the fact that GoCD bundles the JRE in certain cases (Windows and Mac OS), we wanted to make sure that we were compliant and weren't causing anyone any undue distress. Based on conversations with our legal counsel, we believe that it is safe to bundle OpenJDK with GoCD.
Given the 6-month release cycle and the lack of security updates, GoCD will support the last 3 versions of JRE. This will mean that users can use (approximately) an 18 month-old JVM. The rationale is that upgrading JVM versions
on agents may be painful for sysadmins that don’t have automation in
place, or there’s too much regulatory overhead. The compiler target will be adjusted
every 6 months when a new Java release is out. The compiler target will
be (LATEST_VERSION - 2). For example: if the current GA Java version is 15, the compiler target will be set to 13. The main reason is that it's not feasible to keep up with more than three releases of Java at the same time, ensuring tests have run on all of them. Also, those releases do not get security updates and it's unsafe to recommend them.
The impact for sysadmins: Java 13 is expected to be out in about 5-6 months from today, around
the same time this policy kicks in. This will mean that in the GoCD
release 6 months from now, GoCD will support Java 11, 12, 13 only. If this is not already obvious: Support for java 8, 9, 10 will be completely dropped in 6 months from now.
There are others who have thought about this more deeply (/cc Ketan). So, this post might be corrected (both technically and legally). Please don't use this as an official statement. My preference is for us to make a blog post about this and mention it on the mailing list, as the official stance.
==== DISCLAIMER: I am not a lawyer. This does not constitute not legal advice. You should consult your legal counsel. ====
Regards,
Aravind