Hello Jason,

On Tue, May 7, 2019 at 1:15 PM <[email protected]> wrote:

> Given the relatively recent Oracle Java licensing changes you all are
> aware of, what is the plan for GOCD?
>
> Will users/clients be expected now to pay for any installation of Java
> needed for an agent?
>
> Here is a faq for those interested:
> https://www.oracle.com/technetwork/java/javase/overview/oracle-jdk-faqs.html
>
>

==== *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:

   -
   
https://blogs.oracle.com/java-platform-group/oracle-jdk-releases-for-java-11-and-later
   - https://www.oracle.com/technetwork/java/java-se-support-roadmap.html


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).
4. Oracle JDK is released under a commercial license, whereas Open JDK is
released under GPL+CPE (GPL + Classpath exception)
<http://openjdk.java.net/legal/gplv2+ce.html>

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

-- 
You received this message because you are subscribed to the Google Groups 
"go-cd" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/go-cd/CACxychGOmyVOq_ir2xK36xhrkZEnoPP1J-ZRUxd0EmXO3v6nXQ%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to