diff --git a/.gitignore b/.gitignore index 19deb2a..d5bcfd0 100644 --- a/.gitignore +++ b/.gitignore @@ -286,3 +286,4 @@ /openjdk-shenandoah-jdk8u-shenandoah-jdk8u382-b01-4curve.tar.xz /openjdk-shenandoah-jdk8u-shenandoah-jdk8u382-b04-4curve.tar.xz /openjdk-shenandoah-jdk8u-shenandoah-jdk8u382-b05-4curve.tar.xz +/openjdk-shenandoah-jdk8u-shenandoah-jdk8u392-b01.tar.xz diff --git a/.java-1.8.0-openjdk.metadata b/.java-1.8.0-openjdk.metadata new file mode 100644 index 0000000..3df79e3 --- /dev/null +++ b/.java-1.8.0-openjdk.metadata @@ -0,0 +1 @@ +7ae2cba67467825b2c2a5fec7aea041865023002 tapsets-icedtea-3.15.0.tar.xz diff --git a/NEWS b/NEWS index 305d2cf..8302c23 100644 --- a/NEWS +++ b/NEWS @@ -3,6 +3,35 @@ Key: JDK-X - https://bugs.openjdk.java.net/browse/JDK-X CVE-XXXX-YYYY: https://cve.mitre.org/cgi-bin/cvename.cgi?name=XXXX-YYYY +New in release OpenJDK 8u392 (2023-10-17): +=========================================== +Live versions of these release notes can be found at: + * https://bit.ly/openjdk8u392 + +* Other changes + - JDK-8139348: Deprecate 3DES and RC4 in Kerberos + - JDK-8200468: Port the native GSS-API bridge to Windows + - JDK-8205399: Set node color on pinned HashMap.TreeNode deletion + - JDK-8253269: The CheckCommonColors test should provide more info on failure + - JDK-8309122: Bump update version of OpenJDK: 8u392 + - JDK-8309143: [8u] fix archiving inconsistencies in GHA + - JDK-8310026: [8u] make java_lang_String::hash_code consistent across platforms + +Notes on individual issues: +=========================== + +security-libs/org.ietf.jgss:krb5: + +JDK-8139348: Deprecate 3DES and RC4 in Kerberos +=============================================== +The `des3-hmac-sha1` and `rc4-hmac` Kerberos encryption types (etypes) +are now deprecated and disabled by default. To re-enable them, you +can either enable all weak crypto (which also includes `des-cbc-crc` +and `des-cbc-md5`) by setting `allow_weak_crypto = true` in the +`krb5.conf` configuration file or explicitly list all the preferred +encryption types using the `default_tkt_enctypes`, +`default_tgs_enctypes`, or `permitted_enctypes` settings. + New in release OpenJDK 8u382 (2023-07-18): =========================================== Live versions of these release notes can be found at: diff --git a/discover_trees.sh b/discover_trees.sh new file mode 100755 index 0000000..8c31278 --- /dev/null +++ b/discover_trees.sh @@ -0,0 +1,54 @@ +#!/bin/sh + +# Copyright (C) 2020 Red Hat, Inc. +# Written by Andrew John Hughes . +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see . + +TREE=${1} + +if test "x${TREE}" = "x"; then + TREE=${PWD} +fi + +if [ -e ${TREE}/nashorn/.hg -o -e ${TREE}/nashorn/merge.changeset ] ; then + NASHORN="nashorn" ; +fi + +if [ -e ${TREE}/corba/.hg -o -e ${TREE}/corba/merge.changeset ] ; then + CORBA="corba"; +fi + +if [ -e ${TREE}/jaxp/.hg -o -e ${TREE}/jaxp/merge.changeset ] ; then + JAXP="jaxp"; +fi + +if [ -e ${TREE}/jaxws/.hg -o -e ${TREE}/jaxws/merge.changeset ] ; then + JAXWS="jaxws"; +fi + +if [ -e ${TREE}/langtools/.hg -o -e ${TREE}/langtools/merge.changeset ] ; then + LANGTOOLS="langtools"; +fi + +if [ -e ${TREE}/jdk/.hg -o -e ${TREE}/jdk/merge.changeset ] ; then + JDK="jdk"; +fi + +if [ -e ${TREE}/hotspot/.hg -o -e ${TREE}/hotspot/merge.changeset ] ; then + HOTSPOT="hotspot"; +fi + +SUBTREES="${CORBA} ${JAXP} ${JAXWS} ${LANGTOOLS} ${NASHORN} ${JDK} ${HOTSPOT}"; +echo ${SUBTREES} diff --git a/generate_source_tarball.sh b/generate_source_tarball.sh index b03b0a9..3c31664 100755 --- a/generate_source_tarball.sh +++ b/generate_source_tarball.sh @@ -4,7 +4,6 @@ # Example: # When used from local repo set REPO_ROOT pointing to file:// with your repo # If your local repo follows upstream forests conventions, it may be enough to set OPENJDK_URL -# If you want to use a local copy of patch PR3822, set the path to it in the PR3822 variable # # In any case you have to set PROJECT_NAME REPO_NAME and VERSION. eg: # PROJECT_NAME=openjdk @@ -22,13 +21,6 @@ SCRIPT_DIR=$(dirname $0) JCONSOLE_JS_PATCH_DEFAULT=${SCRIPT_DIR}/jconsole-plugin.patch -if [ ! "x$PR3822" = "x" ] ; then - if [ ! -f "$PR3822" ] ; then - echo "You have specified PR3822 as $PR3822 but it does not exist. Exiting" - exit 1 - fi -fi - if [ "x${JCONSOLE_JS_PATCH}" != "x" ] ; then if [ ! -f "${JCONSOLE_JS_PATCH}" ] ; then echo "You have specified the jconsole.js patch as ${JCONSOLE_JS_PATCH} but it does not exist. Exiting."; @@ -42,8 +34,6 @@ set -e OPENJDK_URL_DEFAULT=https://github.com COMPRESSION_DEFAULT=xz -# Corresponding IcedTea version -ICEDTEA_VERSION=3.0 if [ "x$1" = "xhelp" ] ; then echo -e "Behaviour may be specified by setting the following variables:\n" @@ -54,7 +44,6 @@ if [ "x$1" = "xhelp" ] ; then echo "COMPRESSION - the compression type to use (optional; defaults to ${COMPRESSION_DEFAULT})" echo "FILE_NAME_ROOT - name of the archive, minus extensions (optional; defaults to PROJECT_NAME-REPO_NAME-VERSION)" echo "REPO_ROOT - the location of the Git repository to archive (optional; defaults to OPENJDK_URL/PROJECT_NAME/REPO_NAME)" - echo "PR3822 - the path to the PR3822 patch to apply (optional; downloaded if unavailable)" echo "JCONSOLE_JS_PATCH - the path to a patch to fix non-availiability of jconsole.js (optional; defaults to ${JCONSOLE_JS_PATCH_DEFAULT})" echo "BOOT_JDK - the bootstrap JDK to satisfy the configure run" exit 1; @@ -139,7 +128,6 @@ echo -e "\tOPENJDK_URL: ${OPENJDK_URL}" echo -e "\tCOMPRESSION: ${COMPRESSION}" echo -e "\tFILE_NAME_ROOT: ${FILE_NAME_ROOT}" echo -e "\tREPO_ROOT: ${REPO_ROOT}" -echo -e "\tPR3822: ${PR3822}" echo -e "\tJCONSOLE_JS_PATCH: ${JCONSOLE_JS_PATCH}" echo -e "\tBOOT_JDK: ${BOOT_JDK}" @@ -147,9 +135,9 @@ mkdir "${FILE_NAME_ROOT}" pushd "${FILE_NAME_ROOT}" echo "Cloning ${VERSION} root repository from ${REPO_ROOT}" -git clone -b ${VERSION} ${REPO_ROOT} openjdk +git clone -b ${VERSION} ${REPO_ROOT} ${VERSION} -pushd openjdk +pushd ${VERSION} # UnderlineTaglet.java has a BSD license with a field-of-use restriction, making it non-Free if [ -d langtools ] ; then @@ -162,28 +150,6 @@ if [ -d jdk ]; then # jconsole.js has a BSD license with a field-of-use restriction, making it non-Free echo "Removing jconsole-plugin file with non-Free license" rm -vf jdk/src/share/demo/scripting/jconsole-plugin/src/resources/jconsole.js - echo "Removing EC source code we don't build" - rm -vf jdk/src/share/native/sun/security/ec/impl/ec2.h - rm -vf jdk/src/share/native/sun/security/ec/impl/ec2_163.c - rm -vf jdk/src/share/native/sun/security/ec/impl/ec2_193.c - rm -vf jdk/src/share/native/sun/security/ec/impl/ec2_233.c - rm -vf jdk/src/share/native/sun/security/ec/impl/ec2_aff.c - rm -vf jdk/src/share/native/sun/security/ec/impl/ec2_mont.c - rm -vf jdk/src/share/native/sun/security/ec/impl/ecp_192.c - rm -vf jdk/src/share/native/sun/security/ec/impl/ecp_224.c - - echo "Syncing EC list with NSS" - if [ "x$PR3822" = "x" ] ; then - # get pr3822.patch (from https://github.com/icedtea-git/icedtea) in the ${ICEDTEA_VERSION} branch - # Do not push it or publish it - wget -O pr3822.patch https://github.com/icedtea-git/icedtea/raw/${ICEDTEA_VERSION}/patches/pr3822-4curve.patch - echo "Applying ${PWD}/pr3822.patch" - git apply --stat --apply -v -p1 pr3822.patch - rm pr3822.patch - else - echo "Applying ${PR3822}" - git apply --stat --apply -v -p1 $PR3822 - fi; fi echo "Patching out use of jconsole.js" @@ -196,28 +162,28 @@ popd # Generate .src-rev so build has knowledge of the revision the tarball was created from mkdir build pushd build -sh ${PWD}/../openjdk/configure --with-boot-jdk=${BOOT_JDK} +sh ${PWD}/../${VERSION}/configure --with-boot-jdk=${BOOT_JDK} make store-source-revision popd rm -rf build # Remove commit checks -echo "Removing $(find openjdk -name '.jcheck' -print)" -find openjdk -name '.jcheck' -print0 | xargs -0 rm -r +echo "Removing $(find ${VERSION} -name '.jcheck' -print)" +find ${VERSION} -name '.jcheck' -print0 | xargs -0 rm -r # Remove history and GHA -echo "find openjdk -name '.hgtags'" -find openjdk -name '.hgtags' -exec rm -v '{}' '+' -echo "find openjdk -name '.hgignore'" -find openjdk -name '.hgignore' -exec rm -v '{}' '+' -echo "find openjdk -name '.gitattributes'" -find openjdk -name '.gitattributes' -exec rm -v '{}' '+' -echo "find openjdk -name '.gitignore'" -find openjdk -name '.gitignore' -exec rm -v '{}' '+' -echo "find openjdk -name '.git'" -find openjdk -name '.git' -exec rm -rv '{}' '+' -echo "find openjdk -name '.github'" -find openjdk -name '.github' -exec rm -rv '{}' '+' +echo "find ${VERSION} -name '.hgtags'" +find ${VERSION} -name '.hgtags' -exec rm -v '{}' '+' +echo "find ${VERSION} -name '.hgignore'" +find ${VERSION} -name '.hgignore' -exec rm -v '{}' '+' +echo "find ${VERSION} -name '.gitattributes'" +find ${VERSION} -name '.gitattributes' -exec rm -v '{}' '+' +echo "find ${VERSION} -name '.gitignore'" +find ${VERSION} -name '.gitignore' -exec rm -v '{}' '+' +echo "find ${VERSION} -name '.git'" +find ${VERSION} -name '.git' -exec rm -rv '{}' '+' +echo "find ${VERSION} -name '.github'" +find ${VERSION} -name '.github' -exec rm -rv '{}' '+' echo "Compressing remaining forest" if [ "X$COMPRESSION" = "Xxz" ] ; then @@ -225,8 +191,8 @@ if [ "X$COMPRESSION" = "Xxz" ] ; then else SWITCH=czf fi -TARBALL_NAME=${FILE_NAME_ROOT}-4curve.tar.${COMPRESSION} -tar --exclude-vcs -$SWITCH ${TARBALL_NAME} openjdk +TARBALL_NAME=${FILE_NAME_ROOT}.tar.${COMPRESSION} +tar --exclude-vcs -$SWITCH ${TARBALL_NAME} ${VERSION} mv ${TARBALL_NAME} .. popd diff --git a/java-1.8.0-openjdk-portable.specfile b/java-1.8.0-openjdk-portable.specfile index caf4cd3..5c762e7 100644 --- a/java-1.8.0-openjdk-portable.specfile +++ b/java-1.8.0-openjdk-portable.specfile @@ -264,11 +264,22 @@ # New Version-String scheme-style defines %global majorver 8 +# Define version of OpenJDK 8 used +%global project openjdk +%global repo shenandoah-jdk8u +%global openjdk_revision jdk8u392-b01 +%global shenandoah_revision shenandoah-%{openjdk_revision} +# Define IcedTea version used for SystemTap tapsets and desktop file +%global icedteaver 3.15.0 +# Define current Git revision for the FIPS support patches +%global fipsver 6d1aade0648 +# Define current Git revision for the cacerts patch +%global cacertsver 8139f2361c2 # Standard JPackage naming and versioning defines %global origin openjdk %global origin_nice OpenJDK -%global top_level_dir_name %{origin} +%global top_level_dir_name %{shenandoah_revision} # Settings for local security configuration %global security_file %{top_level_dir_name}/jdk/src/share/lib/security/java.security-%{_target_os} @@ -287,38 +298,22 @@ %global oj_vendor_bug_url https://bugzilla.redhat.com/enter_bug.cgi?product=Fedora&component=%{component}&version=%{fedora} %else %if 0%{?rhel} -%global oj_vendor_bug_url https://bugzilla.redhat.com/enter_bug.cgi?product=Red%20Hat%20Enterprise%20Linux%20%{rhel}&component=%{component} +%global oj_vendor_bug_url https://access.redhat.com/support/cases/ %else %global oj_vendor_bug_url https://bugzilla.redhat.com/enter_bug.cgi %endif %endif %endif -# note, following three variables are sedded from update_sources if used correctly. Hardcode them rather there. -%global shenandoah_project openjdk -%global shenandoah_repo shenandoah-jdk8u -%global openjdk_revision jdk8u382-b05 -%global shenandoah_revision shenandoah-%{openjdk_revision} -# Define old aarch64/jdk8u tree variables for compatibility -%global project %{shenandoah_project} -%global repo %{shenandoah_repo} -%global revision %{shenandoah_revision} -# Define IcedTea version used for SystemTap tapsets and desktop file -%global icedteaver 3.15.0 -# Define current Git revision for the FIPS support patches -%global fipsver 6d1aade0648 -# Define current Git revision for the cacerts patch -%global cacertsver 8139f2361c2 - # e.g. aarch64-shenandoah-jdk8u212-b04-shenandoah-merge-2019-04-30 -> aarch64-shenandoah-jdk8u212-b04 -%global version_tag %(VERSION=%{revision}; echo ${VERSION%%-shenandoah-merge*}) +%global version_tag %(VERSION=%{shenandoah_revision}; echo ${VERSION%%-shenandoah-merge*}) # eg # jdk8u60-b27 -> jdk8u60 or # aarch64-jdk8u60-b27 -> aarch64-jdk8u60 (dont forget spec escape % by %%) %global whole_update %(VERSION=%{version_tag}; echo ${VERSION%%-*}) # eg jdk8u60 -> 60 or aarch64-jdk8u60 -> 60 %global updatever %(VERSION=%{whole_update}; echo ${VERSION##*u}) # eg jdk8u60-b27 -> b27 %global buildver %(VERSION=%{version_tag}; echo ${VERSION##*-}) -%global rpmrelease 2 +%global rpmrelease 1 # Define milestone (EA for pre-releases, GA ("fcs") for releases) # Release will be (where N is usually a number starting at 1): # - 0.N%%{?extraver}%%{?dist} for EA releases, @@ -436,10 +431,10 @@ URL: http://openjdk.java.net/ # OpenJDK 8u, the aarch64 port and Shenandoah # To regenerate, use: # VERSION=%%{shenandoah_revision} -# FILE_NAME_ROOT=%%{shenandoah_project}-%%{shenandoah_repo}-${VERSION} +# FILE_NAME_ROOT=%%{project}-%%{repo}-${VERSION} # REPO_ROOT= generate_source_tarball.sh -# where the source is obtained from http://hg.openjdk.java.net/%%{project}/%%{repo} -Source0: %{shenandoah_project}-%{shenandoah_repo}-%{shenandoah_revision}-4curve.tar.xz +# where the source is obtained from http://github.com/%%{project}/%%{repo} +Source0: %{project}-%{repo}-%{shenandoah_revision}.tar.xz # Custom README for -src subpackage Source2: README.md @@ -813,6 +808,7 @@ if [ $prioritylength -ne 7 ] ; then fi # For old patches ln -s %{top_level_dir_name} jdk8 +ln -s %{top_level_dir_name} openjdk cp %{SOURCE2} . @@ -1500,14 +1496,21 @@ done %{_jvmdir}/%{miscportablearchive}.sha256sum %changelog +* Fri Sep 29 2023 Andrew Hughes - 1:1.8.0.392.b01-1 +- Update to shenandoah-jdk8u392-b01 (GA) +- Update release notes for shenandoah-8u392-b01. +- Update generate_tarball.sh to be closer to upstream vanilla script inc. no more ECC removal +- Update bug URL for RHEL to point to the Red Hat customer portal +- Change top_level_dir_name to use the VCS tag, matching new upstream release style tarball + * Fri Jul 14 2023 Andrew Hughes - 1:1.8.0.382.b05-2 - Re-enable SystemTap support and perform only substitutions possible without final NVR available - Include tapsets in the miscellaneous tarball - Drop unused globals for tapset installation * Fri Jul 14 2023 Andrew Hughes - 1:1.8.0.382.b05-1 -- Update to shenandoah-jdk8u372-b05 (GA) -- Update release notes for shenandoah-8u372-b05. +- Update to shenandoah-jdk8u382-b05 (GA) +- Update release notes for shenandoah-8u382-b05. - ** This tarball is embargoed until 2023-07-18 @ 1pm PT. ** * Fri Jul 07 2023 Andrew Hughes - 1:1.8.0.382.b04-0.1.ea diff --git a/java-1.8.0-openjdk.spec b/java-1.8.0-openjdk.spec index d111a6a..1b80c55 100644 --- a/java-1.8.0-openjdk.spec +++ b/java-1.8.0-openjdk.spec @@ -303,7 +303,11 @@ # New Version-String scheme-style defines %global majorver 8 - +# Define version of OpenJDK 8 used +%global project openjdk +%global repo shenandoah-jdk8u +%global openjdk_revision jdk8u392-b01 +%global shenandoah_revision shenandoah-%{openjdk_revision} # Define IcedTea version used for SystemTap tapsets and desktop file %global icedteaver 3.15.0 # Define current Git revision for the FIPS support patches @@ -314,7 +318,7 @@ # Standard JPackage naming and versioning defines %global origin openjdk %global origin_nice OpenJDK -%global top_level_dir_name %{origin} +%global top_level_dir_name %{shenandoah_revision} # Settings for local security configuration %global security_file %{top_level_dir_name}/jdk/src/share/lib/security/java.security-%{_target_os} @@ -333,35 +337,24 @@ %global oj_vendor_bug_url https://bugzilla.redhat.com/enter_bug.cgi?product=Fedora&component=%{name}&version=%{fedora} %else %if 0%{?rhel} -%global oj_vendor_bug_url https://bugzilla.redhat.com/enter_bug.cgi?product=Red%20Hat%20Enterprise%20Linux%20%{rhel}&component=%{name} +%global oj_vendor_bug_url https://access.redhat.com/support/cases/ %else %global oj_vendor_bug_url https://bugzilla.redhat.com/enter_bug.cgi %endif %endif %endif -# note, following three variables are sedded from update_sources if used correctly. Hardcode them rather there. -%global shenandoah_project openjdk -%global shenandoah_repo shenandoah-jdk8u -%global openjdk_revision jdk8u382-b05 -%global shenandoah_revision shenandoah-%{openjdk_revision} -# Define old aarch64/jdk8u tree variables for compatibility -%global project %{shenandoah_project} -%global repo %{shenandoah_repo} -%global revision %{shenandoah_revision} - - # e.g. aarch64-shenandoah-jdk8u212-b04-shenandoah-merge-2019-04-30 -> aarch64-shenandoah-jdk8u212-b04 -%global version_tag %(VERSION=%{revision}; echo ${VERSION%%-shenandoah-merge*}) +%global version_tag %(VERSION=%{shenandoah_revision}; echo ${VERSION%%-shenandoah-merge*}) # eg # jdk8u60-b27 -> jdk8u60 or # aarch64-jdk8u60-b27 -> aarch64-jdk8u60 (dont forget spec escape % by %%) %global whole_update %(VERSION=%{version_tag}; echo ${VERSION%%-*}) # eg jdk8u60 -> 60 or aarch64-jdk8u60 -> 60 %global updatever %(VERSION=%{whole_update}; echo ${VERSION##*u}) # eg jdk8u60-b27 -> b27 %global buildver %(VERSION=%{version_tag}; echo ${VERSION##*-}) -%global rpmrelease 2 +%global rpmrelease 1 # Settings used by the portable build -%global portablerelease 2 +%global portablerelease 1 %global portablesuffix el8 %global portablebuilddir /builddir/build/BUILD @@ -1403,10 +1396,10 @@ URL: http://openjdk.java.net/ # OpenJDK 8u, the aarch64 port and Shenandoah # To regenerate, use: # VERSION=%%{shenandoah_revision} -# FILE_NAME_ROOT=%%{shenandoah_project}-%%{shenandoah_repo}-${VERSION} +# FILE_NAME_ROOT=%%{project}-%%{repo}-${VERSION} # REPO_ROOT= generate_source_tarball.sh -# where the source is obtained from http://hg.openjdk.java.net/%%{project}/%%{repo} -Source0: %{shenandoah_project}-%{shenandoah_repo}-%{shenandoah_revision}-4curve.tar.xz +# where the source is obtained from http://github.com/%%{project}/%%{repo} +Source0: %{project}-%{repo}-%{shenandoah_revision}.tar.xz # Release notes Source7: NEWS @@ -1940,6 +1933,7 @@ if [ $prioritylength -ne 7 ] ; then fi # For old patches ln -s %{top_level_dir_name} jdk8 +ln -s %{top_level_dir_name} openjdk # replace outdated configure guess script # @@ -2882,9 +2876,18 @@ cjc.mainProgram(args) %endif %changelog +* Fri Sep 29 2023 Andrew Hughes - 1:1.8.0.392.b01-1 +- Update to shenandoah-jdk8u392-b01 (GA) +- Update release notes for shenandoah-8u392-b01. +- Sync the copy of the portable specfile with the latest update +- Update generate_tarball.sh to be closer to upstream vanilla script inc. no more ECC removal +- Update bug URL for RHEL to point to the Red Hat customer portal +- Change top_level_dir_name to use the VCS tag, matching new upstream release style tarball +- Related: RHEL-12209 + * Wed Jul 19 2023 Andrew Hughes - 1:1.8.0.382.b05-2 -- Update to shenandoah-jdk8u372-b05 (GA) -- Update release notes for shenandoah-8u372-b05. +- Update to shenandoah-jdk8u382-b05 (GA) +- Update release notes for shenandoah-8u382-b05. - Sync the copy of the portable specfile with the latest update - Add note at top of spec file about rebuilding - Use tapsets from the misc tarball on portable builds diff --git a/openjdk_news.sh b/openjdk_news.sh index 560b356..386aa53 100755 --- a/openjdk_news.sh +++ b/openjdk_news.sh @@ -18,8 +18,8 @@ OLD_RELEASE=$1 NEW_RELEASE=$2 -SUBDIR=$3 -REPO=$4 +REPO=$3 +SUBDIR=$4 SCRIPT_DIR=$(dirname ${0}) if test "x${SUBDIR}" = "x"; then diff --git a/sources b/sources index 024a7f3..ec2e44e 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ SHA512 (tapsets-icedtea-3.15.0.tar.xz) = c752a197cb3d812d50c35e11e4722772be40096c81d2a57933e0d9b8a3c708b9c157b8108a4e33a06ca7bb81648170994408c75d6f69d5ff12785d0c31009671 -SHA512 (openjdk-shenandoah-jdk8u-shenandoah-jdk8u382-b05-4curve.tar.xz) = 630471974a292884f8ce59dc068379ff5e3012d93fa1d8edc3e3712e78f4daf277c2a2f47db354f381d0a2ec741fd0d08127a78120de35ae32c3b6597e972df3 +SHA512 (openjdk-shenandoah-jdk8u-shenandoah-jdk8u392-b01.tar.xz) = 447231b0b20d12db0509a8654742fef5cd85e6fc896e6d77edbc56f1b8bfacb9fad16fc06b12b8db397fb0c3f0ed92643ce9f785b3e59fa2a2dd23bebc4755b3