[prev in list] [next in list] [prev in thread] [next in thread]
List: ant-dev
Subject: Re: [External] : Re: JDK 20 EAb22, ZenGC EA builds, JavaFX 20 EAb5 and several heads-ups!
From: David Delabassee <david.delabassee () oracle ! com>
Date: 2022-12-13 13:07:21
Message-ID: 434772c1-2572-840a-1a83-e39135aa007c () oracle ! com
[Download RAW message or body]
Thanks Jaikiran!
--David
On 11/12/2022 07:36, Jaikiran Pai wrote:
> Hello David,
>
> We have been a bit slow recently in running the Ant testsuite and
> responding to the EA releases. I found some time today and triggered a
> run against the latest JDK 20 EA available at
> https://urldefense.com/v3/__https://jdk.java.net/20/__;!!ACWV5N9M2RV99hQ!MwKgX2_Q0eX2thpLw1JMsqTcvx1iOj5NNJPHfaxIq50W-FEwQHCxtZOQsCjLWdAE497i3-UIQtHUDOery8aZ-QA$ \
> which is (build 20-ea+27-2213). That has exposed a new failure in the
> javadoc generation against the Ant project. I've filed
> https://bugs.openjdk.org/browse/JDK-8298525 with the details.
>
> -Jaikiran
>
> On 07/11/22 1:47 pm, David Delabassee wrote:
> > Greetings,
> >
> > With JavaOne in Las Vegas, last month was epically busy! It was great
> > to finally have the ability to meet and discuss the Quality Outreach
> > program with some of you... face-to-face!
> >
> > This installment of the newsletter is packed as we have several
> > heads-ups, including new Early-Access builds being made available.
> > The JDK 20 schedule has been proposed [1]. The next major milestone
> > is Rampdown Phase One which should happen in just a month on December
> > 8! The next few weeks will be particularly interesting as we will see
> > which from the candidate JEPs recently announced (see 'Topics of
> > Interest' section below) will be proposed to target JDK 20 [2]. And
> > given that JDK 20 is getting closer, we are eagerly waiting for your
> > test feedback on your projects running with the latest JDK 20 EA builds.
> >
> > [1] https://mail.openjdk.org/pipermail/jdk-dev/2022-October/007108.html
> > [2] https://openjdk.org/projects/jdk/20/
> >
> >
> > ### Heads-up - JDK 20: `java.net.URL` parsing fix & behavior change
> >
> > Before JDK 20, some of the parsing/validation performed by the JDK
> > built-in `URLStreamHander` implementations were delayed until
> > `URL::openConnection` or `URLConnection::connect` was called.
> > Starting JDK 20, some of these parsing/validations are now performed
> > early, i.e. within URL constructors.
> >
> > An exception caused by a malformed URL that would have been delayed
> > until the connection was opened or connected may starting JDK 20,
> > throw a `MalformedURLException` at URL construction time.
> >
> > We suggest testing your project(s) against this change. And for those
> > who want to rely on the old behavior, a new system property has been
> > introduced to revert, on the command line, to the previous behavior.
> >
> > For more details, please see JBS-8293590 [3] and the release notes [4].
> >
> > [3] https://bugs.openjdk.org/browse/JDK-8293590
> > [4] https://bugs.openjdk.org/browse/JDK-8295750
> >
> >
> > ### Heads-up - JDK 20: Thread.stop(), Thread.suspend() and
> > Thread.resume() degradation
> >
> > The ability to stop, suspend, or resume a thread with the
> > corresponding Thread.stop(), Thread.suspend() or Thread.resume()
> > methods have been removed in JDK 20. Those methods have been degraded
> > to throw a UOE exception (UnsupportedOperationException).
> >
> > Using those methods was inherently unsafe. That is also why they were
> > deprecated since JDK 1.2 (1998!) and were flagged 'forRemoval' in
> > previous features release.
> >
> > We do not expect this behavior change to cause any issues on
> > well-maintained codebase.
> >
> > For more details please check JDK-8289610 [5], JDK-8249627 [6], and
> > the Java Thread Primitive Deprecation FAQ [7].
> >
> > [5] https://bugs.openjdk.org/browse/JDK-8289610
> > [6] https://bugs.openjdk.org/browse/JDK-8249627
> > [7]
> > https://docs.oracle.com/en/java/javase/19/docs/api/java.base/java/lang/doc-files/threadPrimitiveDeprecation.html
> >
> >
> > ### Heads-up - JDK 20: Deprecate and disable the legacy parallel
> > class loading workaround for non-parallel-capable class loaders.
> >
> > Prior to JDK 7, custom class loaders using non-hierarchical class
> > delegation model were prone to deadlock. A workaround was added in
> > the HotSpot VM (JDK 6) to allow parallel class loading for
> > non-parallel-capable class loaders to avoid deadlocks.
> >
> > Parallel-capable class loaders were introduced in Java SE 7 [8] to
> > support parallel class loading to implement a deadlock-free class
> > loader using a non-hierarchical class delegation model. [8] and [9]
> > describe how to migrate those class loaders depending on this
> > workaround to be multi-threaded parallel-capable class loaders.
> >
> > This workaround was intended to allow those developers to migrate to
> > the new mechanism. JDK 7 was released 11 years ago so it is now
> > expected that those deadlock-prone custom class loaders have been
> > migrated to the parallel-capable class loaders. As a consequence,
> > this workaround is removed in JDK 20 as it impedes eliminating the
> > object monitors from pinning for virtual threads.
> >
> > We suggest confirming that your codebase is not relying on this
> > legacy workaround. If it still is, you should migrate away from it
> > ASAP. Please note that the legacy behavior can be temporary
> > re-enabled using a special flag. For additional details, please check
> > [10] and [11].
> >
> > [8]
> > https://docs.oracle.com/javase/7/docs/technotes/guides/lang/cl-mt.html
> > [9] https://openjdk.org/groups/core-libs/ClassLoaderProposal.html
> > [10] https://bugs.openjdk.org/browse/JDK-8295848
> > [11] https://bugs.openjdk.org/browse/JDK-8296446
> >
> >
> > ### Heads-up - JavaFX builds
> >
> > Oracle is now publishing JavaFX builds, starting with early access
> > builds of JavaFX 20, at jdk.java.net/javafx20 [12]. Developers are
> > now able to download JavaFX and JDK builds from the same place, and
> > use jlink to create a custom JDK that includes the JavaFX modules.
> >
> > The latest JavaFX 20 EA builds (b5-2022/10/28) are now available [12]
> > along with the related javadoc [13]. These early-access builds are
> > provided under the GNU General Public License, version 2, with the
> > Classpath Exception. Feedback should be reported to the openjfx-dev
> > [14] mailing list.
> >
> > To learn more, stay tuned for an upcoming Inside Java Podcast episode
> > that will cover this in detail.
> >
> > [12]
> > https://urldefense.com/v3/__https://jdk.java.net/javafx20/__;!!ACWV5N9M2RV99hQ!MwK \
> > gX2_Q0eX2thpLw1JMsqTcvx1iOj5NNJPHfaxIq50W-FEwQHCxtZOQsCjLWdAE497i3-UIQtHUDOerHUW9v8w$ \
> > [13]
> > https://urldefense.com/v3/__https://download.java.net/java/early_access/javafx20/d \
> > ocs/api/index.html__;!!ACWV5N9M2RV99hQ!MwKgX2_Q0eX2thpLw1JMsqTcvx1iOj5NNJPHfaxIq50W-FEwQHCxtZOQsCjLWdAE497i3-UIQtHUDOerW6PPwgY$ \
> > [14] https://mail.openjdk.org/pipermail/openjfx-dev
> >
> >
> > ### Heads-up - Generational ZGC Early-Access builds
> >
> > The first Early Access builds of Generational ZGC have been published
> > at jdk.java.net/genzgc [15] and are also available via the
> > oracle-actions/setup-java GitHub action [16].
> >
> > ZGC is a low latency, i.e. sub-milliseconds, Garbage Collector. This
> > effort aims to introduce support for generations in ZGC. For more
> > information, you can check the draft JEP [17] and listen to this
> > recent Inside Java Podcast episode [18].
> >
> > We encourage you to try out GenZGC and provide feedback on the
> > zgc-dev [19] mailing list.
> >
> > [15]
> > https://urldefense.com/v3/__https://jdk.java.net/genzgc/__;!!ACWV5N9M2RV99hQ!MwKgX \
> > 2_Q0eX2thpLw1JMsqTcvx1iOj5NNJPHfaxIq50W-FEwQHCxtZOQsCjLWdAE497i3-UIQtHUDOeru7VIRV4$ \
> > [16]
> > https://urldefense.com/v3/__https://github.com/oracle-actions/setup-java__;!!ACWV5 \
> > N9M2RV99hQ!MwKgX2_Q0eX2thpLw1JMsqTcvx1iOj5NNJPHfaxIq50W-FEwQHCxtZOQsCjLWdAE497i3-UIQtHUDOerJwnVuUM$ \
> > [17] https://bugs.openjdk.org/browse/JDK-8272979
> > [18]
> > https://urldefense.com/v3/__https://inside.java/2022/06/29/podcast-024/__;!!ACWV5N \
> > 9M2RV99hQ!MwKgX2_Q0eX2thpLw1JMsqTcvx1iOj5NNJPHfaxIq50W-FEwQHCxtZOQsCjLWdAE497i3-UIQtHUDOerdrw5oWo$ \
> > [19] https://mail.openjdk.org/pipermail/zgc-dev
> >
> >
> > ## Heads-up - New Project Loom Early-Access Builds
> >
> > The latest Loom EA builds (20-loom+20-34) are now available [20].
> > These EA builds are provided under the GNU General Public License,
> > version 2, with the Classpath Exception. These EA builds include a
> > snapshot of the ScopedValue API, being developed in JEP 429 [21].
> > Feedback can be sent to the loom-dev@openjdk.org mailing list [22].
> >
> > [20]
> > https://urldefense.com/v3/__https://jdk.java.net/loom/__;!!ACWV5N9M2RV99hQ!MwKgX2_ \
> > Q0eX2thpLw1JMsqTcvx1iOj5NNJPHfaxIq50W-FEwQHCxtZOQsCjLWdAE497i3-UIQtHUDOerccThFrg$ \
> > [21] https://openjdk.org/jeps/429
> > [22] https://mail.openjdk.org/pipermail/loom-dev
> >
> >
> > ## JDK 20 Early-Access Builds
> >
> > JDK 20 Early-Access builds 22 are now available [23], and are
> > provided under the GNU General Public License v2, with the Classpath
> > Exception. The Release Notes are available here [24].
> >
> > [23]
> > https://urldefense.com/v3/__https://jdk.java.net/20/__;!!ACWV5N9M2RV99hQ!MwKgX2_Q0eX2thpLw1JMsqTcvx1iOj5NNJPHfaxIq50W-FEwQHCxtZOQsCjLWdAE497i3-UIQtHUDOery8aZ-QA$ \
> > [24]
> > https://urldefense.com/v3/__https://jdk.java.net/20/release-notes__;!!ACWV5N9M2RV9 \
> > 9hQ!MwKgX2_Q0eX2thpLw1JMsqTcvx1iOj5NNJPHfaxIq50W-FEwQHCxtZOQsCjLWdAE497i3-UIQtHUDOerrOBTKkc$ \
> >
> > ### Changes in recent builds that may be of interest:
> >
> > #### Build 22:
> > - JDK-8057113: (fs) Path should have a method to obtain the filename
> > extension
> > - JDK-8256660: Disable DTLS 1.0 by default
> > - JDK-8291336: Add ideal rule to convert floating point multiply by 2
> > into addition
> >
> > #### Build 21:
> > - JDK-8137022: Concurrent refinement thread adjustment and
> > (de-)activation suboptimal
> > - JDK-8134303: Introduce -XX:-G1UseConcRefinement
> > - JDK-8295657: SA: Allow larger object alignments
> >
> > #### Build 20:
> > - JDK-8293590: Some syntax checks performed by URL.openConnection()
> > could be performed earlier, at URL construction
> > - JDK-8290368: Introduce LDAP and RMI protocol-specific object
> > factory filters to JNDI implementation
> > - JDK-6924219: (fc spec) FileChannel.write(ByteBuffer, position)
> > behavior when file opened for append not specified
> > - JDK-8292177: InitialSecurityProperty JFR event
> > - JDK-8295173: (tz) Update Timezone Data to 2022e
> > - JDK-8292698: Improve performance of DataInputStream
> >
> > #### Build 19:
> > - JDK-8294821: Class load improvement for AES crypto engine
> > - JDK-8295013: OopStorage should derive from CHeapObjBase
> > - JDK-8283699: Improve the peephole mechanism of hotspot
> > - JDK-8289552: Make intrinsic conversions between bit representations
> > of half precision values and floats
> > - JDK-8290036: Define and specify Runtime shutdown sequence
> >
> > #### Build 18:
> > - JDK-8294609: C2: Improve inlining of methods with unloaded
> > signature classes
> > - JDK-8279283: BufferedInputStream should override transferTo
> > - JDK-8294626: Improve URL protocol lower casing
> >
> > #### Build 17:
> > - JDK-8289610: Thread.Stop changed to throw
> > UnsupportedOperationException
> > - JDK-8249627: Thread.suspend/resume changed to throw
> > UnsupportedOperationException
> > - JDK-8254711: Add java.security.Provider.getService JFR Event
> > - JDK-8294062: Improve parsing performance of j.l.c.MethodTypeDesc
> > - JDK-8255670: Improve C2's detection of modified nodes
> > - JDK-8292296: Use multiple threads to process ParallelGC deferred
> > updates
> >
> >
> > ## Topics of Interest:
> >
> > - New candidate JEP: 431: Sequenced Collections
> > https://openjdk.org/jeps/431
> >
> > - New candidate JEP: 432: Record Patterns (2nd Preview)
> > https://openjdk.org/jeps/432
> >
> > - New candidate JEP: 433: Pattern Matching for switch (4th Preview)
> > https://openjdk.org/jeps/433
> >
> > - New candidate JEP: 434: Foreign Function & Memory API (2nd Preview)
> > https://openjdk.org/jeps/434
> >
> > - New candidate JEP: 435: Asynchronous Stack Trace VM API
> > https://openjdk.org/jeps/435
> >
> > - Selectively Shifting and Constraining Computation
> > https://openjdk.org/projects/leyden/notes/02-shift-and-constrain
> >
> > - The Age of Virtual Threads
> > https://urldefense.com/v3/__https://inside.java/2022/10/13/the-age-of-virtual-thre \
> > ads/__;!!ACWV5N9M2RV99hQ!MwKgX2_Q0eX2thpLw1JMsqTcvx1iOj5NNJPHfaxIq50W-FEwQHCxtZOQsCjLWdAE497i3-UIQtHUDOerXLWHzBI$ \
> >
> > - Dissecting Memory Sessions
> > https://urldefense.com/v3/__https://inside.java/2022/11/04/unifying-memory-address \
> > es-and-memory-segments/__;!!ACWV5N9M2RV99hQ!MwKgX2_Q0eX2thpLw1JMsqTcvx1iOj5NNJPHfaxIq50W-FEwQHCxtZOQsCjLWdAE497i3-UIQtHUDOerDf5CJJU$ \
> >
> >
> > - GraalVM in OpenJDK and More JavaOne Announcements - Inside Java
> > Newscast #36
> > https://urldefense.com/v3/__https://inside.java/2022/11/03/newscast-036/__;!!ACWV5 \
> > N9M2RV99hQ!MwKgX2_Q0eX2thpLw1JMsqTcvx1iOj5NNJPHfaxIq50W-FEwQHCxtZOQsCjLWdAE497i3-UIQtHUDOery_v5Ej8$ \
> >
> > - Inside Java | JavaOne 2022 Technical Keynote
> > https://urldefense.com/v3/__https://inside.java/2022/10/24/inside-java-technical-k \
> > eynote/__;!!ACWV5N9M2RV99hQ!MwKgX2_Q0eX2thpLw1JMsqTcvx1iOj5NNJPHfaxIq50W-FEwQHCxtZOQsCjLWdAE497i3-UIQtHUDOerNx_482M$ \
> >
> > - Virtual Threads: New Foundations for High-Scale Java Applications
> > https://urldefense.com/v3/__https://www.infoq.com/articles/java-virtual-threads/__ \
> > ;!!ACWV5N9M2RV99hQ!MwKgX2_Q0eX2thpLw1JMsqTcvx1iOj5NNJPHfaxIq50W-FEwQHCxtZOQsCjLWdAE497i3-UIQtHUDOer1EyKTco$ \
> >
> >
> > ## October 2022 Critical Patch Update Released
> >
> > As part of the October 2022 CPU, we released JDK 19.0.1, JDK 17.0.5
> > LTS, JDK 11.0.17 LTS and JDK 8u351 as well as OpenJDK 19.0.1.
> >
> >
> >
> > That's it for this time. As usual, let us know if you find any issues
> > while testing your project(s) on the latest JDK early-access builds.
> > Thanks for your support!
> >
> > --David
> >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: dev-unsubscribe@ant.apache.org
> > For additional commands, e-mail: dev-help@ant.apache.org
> >
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@ant.apache.org
For additional commands, e-mail: dev-help@ant.apache.org
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic