Hello David,
On 2018-03-07 21:35, David Holmes wrote:
On 8/03/2018 7:24 AM, Erik Joelsson wrote:
When we bumped the feature version from 10 to 11, we forgot to also
update the required versions of the boot and build jdk. This is an
easy mistake to do, so we should make sure it is easy and intuitive
to do the update at the same time as updating the version number.
We didn't forget to do it at all! It isn't yet possible to update the
Boot JDK as you note below so it was left alone.
First of all, this is not an attack or critique on the version change
effort for 11. What I'm trying to say is that the process is too
complicated and error prone, and I'm trying to make it simpler. We
weren't able to update the requirement for the boot JDK version to be
N-1 (i.e. 10), but in configure we need to accept both N-1 and N as
valid JDK versions. When bumping the JDK feature version we do need to
update the configure check to also accept JDK version N (i.e. 11 in this
case). With this change, updating the complete set of acceptable boot
jdk versions becomes more obvious and easier to find.
In the future, there will be two types of updates needed. When the JDK
version is bumped, that number needs to be added to the set of
acceptable boot JDK versions. Since that set is now explicitly listed in
the same file, remembering to do so should be easy enough. When JDK N-1
is released, version N-2 needs to be removed from the set (along with
making sure we switch to using the newly released JDK N-1 as boot
everywhere).
As for the Build JDK ... I don't know what that is defined to be ??
The build JDK is supposed to be the same as the current JDK version. I
completely understand that this is not well known. I also forgot about
it during the version bump process. This is why I'm making this change
to have the build JDK version automatically derived so we don't need to
worry about it in the future.
/Erik
David
-----
This patch changes the check for build jdk to simply compare with the
current VERSION_FEATURE. This should always be the correct requirement.
The check for boot jdk is a bit more complicated. I initially thought
we could calculate it automatically from VERSION_FEATURE-1, but until
that version is actually released, we need to also allow
VERSION_FEATURE-2. Because of this we will still require manual
updating of this setting over time. So instead I moved the set of
acceptable boot JDK versions to the version_numbers file. This should
make it easy enough to spot and update when changing the
DEFAULT_VERSION_FEATURE value.
I also updated the build documentation regarding boot JDKs to explain
temporary N-2 situation. While at it, I also updated the part about
where to get JDK binaries since you can now download OpenJDK builds
directly from jdk.java.net.
Bug: https://bugs.openjdk.java.net/browse/JDK-8199266
Webrev: http://cr.openjdk.java.net/~erikj/8199266/webrev.01/
/Erik