diff options
author | ryoon <ryoon@pkgsrc.org> | 2015-09-29 14:55:45 +0000 |
---|---|---|
committer | ryoon <ryoon@pkgsrc.org> | 2015-09-29 14:55:45 +0000 |
commit | f0dcc4d8c3c9cd25fbb173fc84186075ffb211c6 (patch) | |
tree | 0f4b4f664887cd4e51a530fc4951ec6e99ec8083 /lang | |
parent | 8ca6c1e87156876821e5dd2a71e5578846bf8346 (diff) | |
download | pkgsrc-f0dcc4d8c3c9cd25fbb173fc84186075ffb211c6.tar.gz |
Update to 1.8.60
Changelog:
From: https://www.java.com/en/download/faq/release_changes.xml
Java 8 Update 60 (8u60)
Release Highlights
IANA Data 2015e
JDK 8u60 contains IANA time zone data version 2015e. For more information, refer to Timezone Data Versions in the JRE Software.
Bug Fix: dns_lookup_realm should be false by default
The dns_lookup_realm setting in Kerberos' krb5.conf file is by default false. See 8080637.
Bug Fix: Disable RC4 cipher suites
RC4-based TLS ciphersuites (e.g. TLS_RSA_WITH_RC4_128_SHA) are now considered compromised and should no longer be used (see RFC 7465). Accordingly, RC4-based TLS ciphersuites have been deactivated by default in the Oracle JSSE implementation by adding "RC4" to "jdk.tls.disabledAlgorithms" security property, and by removing them from the default enabled ciphersuites list. These cipher suites can be reactivated by removing "RC4" form "jdk.tls.disabledAlgorithms" security property in the java.security file or by dynamically calling Security.setProperty(), and also readding them to the enabled ciphersuite list using the SSLSocket/SSLEngine.setEnabledCipherSuites() methods. You can also use the -Djava.security.properties command line option to override the jdk.tls.disabledAlgorithms security property. For example:
java -Djava.security.properties=my.java.security ...
where my.java.security is a file containing the property without RC4:
jdk.tls.disabledAlgorithms=SSLv3
Even with this option set from commandline, the RC4 based ciphersuites need to be re-added to the enabled ciphersuite list by using the SSLSocket/SSLEngine.setEnabledCipherSuites() methods. See 8076221.
Bug Fix: Support keystore type detection for JKS and PKCS12 keystores
Keystore Compatibility Mode: To aid interoperability, the Java keystore type JKS now supports keystore compatibility mode by default. This mode enables JKS keystores to access both JKS and PKCS12 file formats. To disable keystore compatibility mode set the Security property keystore.type.compat to the string value false. See 8062552.
Bug Fix: Deprecate Unsafe monitor methods in JDK 8u release
The methods monitorEnter, monitorExit and tryMonitorEnter on sun.misc.Unsafe are marked as deprecated in JDK 8u60 and will be removed in a future release. These methods are not used within the JDK itself and are very rarely used outside of the JDK. See 8069302.
Bug Fix: Extract JFR recording from the core file using SA
DumpJFR is a Serviceability Agent based tool that can be used to extract Java Flight Recorder(JFR) data from the core files and live Hotspot processes. DumpJFR can be used in one of the following methods:
Attach DumpJFR to a live process:
java -cp $JAVA_HOME/lib/sa-jdi.jar sun.jvm.hotspot.tools.DumpJFR <pid>
Attach DumpJFR to a core file:
java -cp $JAVA_HOME/lib/sa-jdi.jar sun.jvm.hotspot.tools.DumpJFR <java> <core>
DumpJFR tool dumps the JFR data to a file called recording.jfr in the current working folder. See 8065301 (not public).
Bug Fix: Local variables named 'enum' lead to spurious compiler crashes
The javac parser is incorrectly parsing local variables with name 'enum'; this results in spurious failures when a program containing such local variables is compiled with a 'source' flag corresponding to a release in which the enum construct is not available (such as '-source 1.4'). See 8069181.
Java Development Kit for ARM Release 8u60
This release includes Java Development Kit for ARM Release 8u60 (JDK 8u60 for ARM). For ARM device support information, see JDK for ARM Downloads page. For system requirements, installation instructions and troubleshooting tips, see Installation Instructions page.
Limitation: Native Memory Tracking support is limited in JDK for ARM. The java command line option XX:NativeMemoryTracking=detail is not supported for ARM targets (an error message is displayed to user). Instead, use the following option:
XX:NativeMemoryTracking=summary
Documentation Updates due to Nashorn Enhancements
JDK 8u60 includes new enhancements to Nashorn. As a result the following documentation changes should be read in conjunction with the current Nashorn documentation:
Addition: In the previous section, we mentioned that every JavaScript object when exposed to Java APIs implements the java.util.Map interface. This is true even for JavaScript arrays. However, this behavior is often not desired or expected when the Java code expects JSON-parsed objects. Java libraries that manipulate JSON-parsed objects usually expect arrays to expose the java.util.List interface instead. If you need to expose your JavaScript objects so that arrays are exposed as lists and not maps, you can use the Java.asJSONCompatible(obj) function, where obj is the root of your JSON object tree.
Correction: The caution mentioned at the end of Mapping Data Types section, is no longer applicable. Nashorn ensures that internal JavaScript strings are converted to java.lang.String when exposed externally.
Correction: The statement in the section Mapping Data Types, that mentions "For example, arrays must be explicitly converted,..." is not correct. Arrays are automatically converted to Java array types, such as java.util.List, java.util.Collection, java.util.Queue and java.util.Deque and so on.
Changes in Deployment Rule Set v1.2
JDK 8u60 implements Deployment Rule Set (DRS) 1.2, which includes the following changes:
Add "checksum" element as sub element of "id" which can allow unsigned jars to be identified by the SHA-256 checksum of the uncompressed form of a jar:
The "checksum" element will match only unsigned jars, and the given hash will be compared only against the uncompressed form of the jar.
The "checksum" element (similar to "certificate" element) has two arguments "hash" and "algorithm", however, unlike "certificate" element, the only supported value for "algorithm" is "SHA-256". Any other value provided will be ignored.
Allow "message" element to apply to all rule types, where previously it only applied to a block rule:
In a run rule, a message sub element will cause a message dialog to be displayed where without a run rule, the default behavior would be to show certificate or unsigned dialog. The message will be displayed in the message dialog.
In a default rule, the message will only be displayed if the default action is to block. In such a case the message will be included in the block dialog.
Echo "customer" blocks in the Java Console, trace files, and Java Usage Tracker records.
Previous to DRS 1.2, "customer" elements could be included (with any sub-elements) in the ruleset.xml file. This element and all its sub elements are ignored. In DRS 1.2, the elements are still functionally ignored. However:
When parsing the ruleset.xml file, all "customer" blocks will be echoed to the Java Console and deployment trace file (if Console and Tracing are enabled).
When using a rule, all "customer" records included within that rule will be added to the Java Usage Tracker (JUT) record (if JUT is enabled).
As a result of the above changes, the DTD for DRS 1.2 is as follows:
<!ELEMENT ruleset (rule*)>
<!ATTRIBUTE ruleset href CDATA #IMPLIED>
<!ATTRIBUTE ruleset version CDATA #REQUIRED>
<!ELEMENT rule (id, action)>
<!ELEMENT id (certificate?) (checksum?) >
<!ATTRIBUTE id title CDATA #IMPLIED>
<!ATTRIBUTE id location CDATA #IMPLIED>
<!ELEMENT certificate EMPTY>
<!ATTLIST certificate algorithm CDATA #IMPLIED>
<!ATTLIST certificate hash CDATA #REQUIRED>
<!ELEMENT checksum EMPTY>
<!ATTLIST checksum algorithm CDATA #IMPLIED>
<!ATTLIST checksum hash CDATA #REQUIRED>
<!ELEMENT action (message?)>
<!ATTRIBUTE permission (run | block | default) #REQUIRED>
<!ATTRIBUTE version CDATA #IMPLIED>
<!ATTRIBUTE force (true|false) "false">
<!ELEMENT message (#PCDATA)>
<!ATTLIST message locale CDATA #IMPLIED>
Java Expiration Date
The expiration date for 8u60 is October 20, 2015. Java expires whenever a new release with security vulnerability fixes becomes available. For systems unable to reach the Oracle Servers, a secondary mechanism expires this JRE (version 8u60) on November 20, 2015. After either condition is met (new release becoming available or expiration date reached), Java will provide additional warnings and reminders to users to update to the newer version.
Bug Fixes
For a list of bug fixes included in this release, see JDK 8u60 Bug Fixes page.
Diffstat (limited to 'lang')
-rw-r--r-- | lang/openjdk8/Makefile | 7 | ||||
-rw-r--r-- | lang/openjdk8/PLIST | 3 | ||||
-rw-r--r-- | lang/openjdk8/distinfo | 12 | ||||
-rw-r--r-- | lang/openjdk8/patches/patch-hotspot_src_share_vm_ci_ciTypeFlow.cpp | 14 | ||||
-rw-r--r-- | lang/openjdk8/patches/patch-hotspot_src_share_vm_interpreter_interpreterRuntime.cpp | 21 | ||||
-rw-r--r-- | lang/openjdk8/patches/patch-jdk_src_solaris_native_java_net_net__util__md.c | 8 |
6 files changed, 14 insertions, 51 deletions
diff --git a/lang/openjdk8/Makefile b/lang/openjdk8/Makefile index ce8ec447f2f..b65488ad511 100644 --- a/lang/openjdk8/Makefile +++ b/lang/openjdk8/Makefile @@ -1,8 +1,7 @@ -# $NetBSD: Makefile,v 1.20 2015/08/27 19:03:59 joerg Exp $ +# $NetBSD: Makefile,v 1.21 2015/09/29 14:55:45 ryoon Exp $ -DISTNAME= openjdk-1.8.51-20150806 -PKGNAME= openjdk8-1.8.51 -PKGREVISION= 1 +DISTNAME= openjdk-1.8.60-20150929 +PKGNAME= openjdk8-1.8.60 CATEGORIES= lang MASTER_SITES= ${MASTER_SITE_LOCAL:=openjdk7/} EXTRACT_SUFX= .tar.xz diff --git a/lang/openjdk8/PLIST b/lang/openjdk8/PLIST index 976026df49a..bbd8b716578 100644 --- a/lang/openjdk8/PLIST +++ b/lang/openjdk8/PLIST @@ -1,4 +1,4 @@ -@comment $NetBSD: PLIST,v 1.4 2015/05/05 17:07:39 abs Exp $ +@comment $NetBSD: PLIST,v 1.5 2015/09/29 14:55:45 ryoon Exp $ bin/openjdk8-jar bin/openjdk8-java bin/openjdk8-javac @@ -397,6 +397,7 @@ java/openjdk8/jre/lib/currency.data java/openjdk8/jre/lib/ext/cldrdata.jar java/openjdk8/jre/lib/ext/dnsns.jar java/openjdk8/jre/lib/ext/localedata.jar +java/openjdk8/jre/lib/ext/jaccess.jar java/openjdk8/jre/lib/ext/meta-index java/openjdk8/jre/lib/ext/nashorn.jar java/openjdk8/jre/lib/ext/sunec.jar diff --git a/lang/openjdk8/distinfo b/lang/openjdk8/distinfo index 7daaf9f853d..22e11a64240 100644 --- a/lang/openjdk8/distinfo +++ b/lang/openjdk8/distinfo @@ -1,4 +1,4 @@ -$NetBSD: distinfo,v 1.27 2015/09/24 22:54:28 tnn Exp $ +$NetBSD: distinfo,v 1.28 2015/09/29 14:55:45 ryoon Exp $ SHA1 (openjdk7/bootstrap-jdk-1.7.76-freebsd-10-amd64-20150301.tar.xz) = 7408f52d3bbe35c2b14bbd3215cbf60f1335d334 RMD160 (openjdk7/bootstrap-jdk-1.7.76-freebsd-10-amd64-20150301.tar.xz) = 24f1577b5fc86d137f070aedb4610c8c89e45815 @@ -33,9 +33,9 @@ Size (openjdk7/bootstrap-jdk7u60-bin-dragonfly-3.6-amd64-20140719.tar.bz2) = 379 SHA1 (openjdk7/bootstrap-jdk7u60-bin-dragonfly-3.8-amd64-20140719.tar.bz2) = 29bd7aa925941933b2da671340e1d325d9603e5d RMD160 (openjdk7/bootstrap-jdk7u60-bin-dragonfly-3.8-amd64-20140719.tar.bz2) = b13d0e42839fb746d41f9001e488162b47803140 Size (openjdk7/bootstrap-jdk7u60-bin-dragonfly-3.8-amd64-20140719.tar.bz2) = 37883700 bytes -SHA1 (openjdk7/openjdk-1.8.51-20150806.tar.xz) = 585abe036f6a2f76e17d9b4a24a755be6a9fc8c8 -RMD160 (openjdk7/openjdk-1.8.51-20150806.tar.xz) = 9630e0c5ec8982a4aa45b238e6846c06981a8fa9 -Size (openjdk7/openjdk-1.8.51-20150806.tar.xz) = 54540072 bytes +SHA1 (openjdk7/openjdk-1.8.60-20150929.tar.xz) = 171ae2c474cd461b122f52715ab6de271cb63dd5 +RMD160 (openjdk7/openjdk-1.8.60-20150929.tar.xz) = 777f24a019ea36845e7d430c573c8fefbebafbe7 +Size (openjdk7/openjdk-1.8.60-20150929.tar.xz) = 54881852 bytes SHA1 (patch-aa) = fd07ea984cb0127b56a9b591c21c8d4f236fd9fc SHA1 (patch-al) = f65f739805c2ef471a4de10d6da42e86c5561b8c SHA1 (patch-an) = fce4da00762770c1c0592bd225bf73e875252178 @@ -81,8 +81,6 @@ SHA1 (patch-hotspot_src_os_solaris_dtrace_jhelper.d) = e4321382dc95fe9e363abc8c8 SHA1 (patch-hotspot_src_os_solaris_vm_decoder__solaris.cpp) = 3be8a96525ead1df18a40b18dccfad4ef2765d47 SHA1 (patch-hotspot_src_os_solaris_vm_os__solaris.cpp) = c8840633681c01d4a911e32e8d79060fbbdc506e SHA1 (patch-hotspot_src_os_solaris_vm_perfMemory__solaris.cpp) = 589bf0707023b9f799caf2cafe5aeba89af46b05 -SHA1 (patch-hotspot_src_share_vm_ci_ciTypeFlow.cpp) = 2d827ade6fcf0ba08fcd0390472cda17772bc0c5 -SHA1 (patch-hotspot_src_share_vm_interpreter_interpreterRuntime.cpp) = d2eaaae414810ab460ced512fdfc07385d60f4b8 SHA1 (patch-hotspot_src_share_vm_oops_klass.hpp) = 2a728aa8fb04976195ebf58549a544b97e56b329 SHA1 (patch-hotspot_src_share_vm_opto_library__call.cpp) = 4654248e3fdf9a1be8ef5563e50b12dcd59aa1aa SHA1 (patch-hotspot_src_share_vm_opto_node.cpp) = aacb4e03f62f1a6f9b38de39a966c318b70b1293 @@ -108,7 +106,7 @@ SHA1 (patch-jdk_src_solaris_native_com_sun_media_sound_PLATFORM__API__BsdOS__ALS SHA1 (patch-jdk_src_solaris_native_java_lang_UNIXProcess__md.c) = 2596d03c4a2e0d978aabfd4b170b0dd1d6260c6d SHA1 (patch-jdk_src_solaris_native_java_lang_java__props__md.c) = 672c9a044936cb11cc91e9a3e550dc69ef665209 SHA1 (patch-jdk_src_solaris_native_java_net_NetworkInterface.c) = 3409e21ec151e407053fd510760c8b082f1beda5 -SHA1 (patch-jdk_src_solaris_native_java_net_net__util__md.c) = c404a3520f82b8cc5eb906725aa2bc7f27cad801 +SHA1 (patch-jdk_src_solaris_native_java_net_net__util__md.c) = c51d6b0687011a54c27e6253cad33d8f8cc27124 SHA1 (patch-jdk_src_solaris_native_sun_awt_X11Color.c) = cf0f8218e0088b677cd66fd5bc0d575ab08b710f SHA1 (patch-jdk_test_Makefile) = 36430647c444dea491ae0c916c6ad7b1a3607ec6 SHA1 (patch-jdk_test_java_beans_Introspector_4168475_Test4168475.java) = 5fb2dd92820afcca5a04956d81e5244840b513f7 diff --git a/lang/openjdk8/patches/patch-hotspot_src_share_vm_ci_ciTypeFlow.cpp b/lang/openjdk8/patches/patch-hotspot_src_share_vm_ci_ciTypeFlow.cpp deleted file mode 100644 index eb8fb3957a3..00000000000 --- a/lang/openjdk8/patches/patch-hotspot_src_share_vm_ci_ciTypeFlow.cpp +++ /dev/null @@ -1,14 +0,0 @@ -$NetBSD: patch-hotspot_src_share_vm_ci_ciTypeFlow.cpp,v 1.1 2015/06/13 14:55:52 tnn Exp $ - -compile.hpp:807:22: error: inline function 'Compile::locate_node_notes' is not defined [-Werror,-Wundefined-inline] - ---- hotspot/src/share/vm/ci/ciTypeFlow.cpp.orig 2015-06-13 14:19:09.000000000 +0000 -+++ hotspot/src/share/vm/ci/ciTypeFlow.cpp -@@ -36,6 +36,7 @@ - #include "interpreter/bytecodes.hpp" - #include "memory/allocation.inline.hpp" - #include "opto/compile.hpp" -+#include "opto/node.hpp" - #include "runtime/deoptimization.hpp" - #include "utilities/growableArray.hpp" - diff --git a/lang/openjdk8/patches/patch-hotspot_src_share_vm_interpreter_interpreterRuntime.cpp b/lang/openjdk8/patches/patch-hotspot_src_share_vm_interpreter_interpreterRuntime.cpp deleted file mode 100644 index 808096515e5..00000000000 --- a/lang/openjdk8/patches/patch-hotspot_src_share_vm_interpreter_interpreterRuntime.cpp +++ /dev/null @@ -1,21 +0,0 @@ -$NetBSD: patch-hotspot_src_share_vm_interpreter_interpreterRuntime.cpp,v 1.1 2015/06/13 23:57:25 tnn Exp $ - -Fix build with jdk-zero-vm option: - -interpreterRuntime.cpp:412:25: error: no member named 'remove_activation_entry' in 'Interpreter' - return Interpreter::remove_activation_entry(); - ---- hotspot/src/share/vm/interpreter/interpreterRuntime.cpp.orig 2015-06-10 10:31:51.000000000 +0000 -+++ hotspot/src/share/vm/interpreter/interpreterRuntime.cpp -@@ -407,7 +407,11 @@ IRT_ENTRY(address, InterpreterRuntime::e - // during deoptimization so the interpreter needs to skip it when - // the frame is popped. - thread->set_do_not_unlock_if_synchronized(true); -+#ifdef CC_INTERP -+ return (address) -1; -+#else - return Interpreter::remove_activation_entry(); -+#endif - } - - // Need to do this check first since when _do_not_unlock_if_synchronized diff --git a/lang/openjdk8/patches/patch-jdk_src_solaris_native_java_net_net__util__md.c b/lang/openjdk8/patches/patch-jdk_src_solaris_native_java_net_net__util__md.c index 4f4bf030ca0..d737ddf8c18 100644 --- a/lang/openjdk8/patches/patch-jdk_src_solaris_native_java_net_net__util__md.c +++ b/lang/openjdk8/patches/patch-jdk_src_solaris_native_java_net_net__util__md.c @@ -1,8 +1,8 @@ -$NetBSD: patch-jdk_src_solaris_native_java_net_net__util__md.c,v 1.1 2015/02/08 08:41:25 tnn Exp $ +$NetBSD: patch-jdk_src_solaris_native_java_net_net__util__md.c,v 1.2 2015/09/29 14:55:45 ryoon Exp $ ---- jdk/src/solaris/native/java/net/net_util_md.c.orig 2015-02-02 15:37:12.000000000 +0000 +--- jdk/src/solaris/native/java/net/net_util_md.c.orig 2015-09-28 21:01:39.000000000 +0000 +++ jdk/src/solaris/native/java/net/net_util_md.c -@@ -92,9 +92,9 @@ void setDefaultScopeID(JNIEnv *env, stru +@@ -96,9 +96,9 @@ void setDefaultScopeID(JNIEnv *env, stru static jfieldID ni_defaultIndexID; if (ni_class == NULL) { jclass c = (*env)->FindClass(env, "java/net/NetworkInterface"); @@ -13,4 +13,4 @@ $NetBSD: patch-jdk_src_solaris_native_java_net_net__util__md.c,v 1.1 2015/02/08 + CHECK_NULL_RETURN(c, 0); ni_defaultIndexID = (*env)->GetStaticFieldID( env, c, "defaultIndex", "I"); - ni_class = c; + CHECK_NULL(ni_defaultIndexID); |