<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Windows-1252">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
{font-family:"Cambria Math";
panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
{font-family:Calibri;
panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
{font-family:Aptos;
panose-1:2 11 0 4 2 2 2 2 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin:0cm;
font-size:11.0pt;
font-family:"Aptos",sans-serif;
mso-ligatures:standardcontextual;
mso-fareast-language:EN-US;}
span.EmailStyle17
{mso-style-type:personal-compose;
font-family:"Aptos",sans-serif;
color:windowtext;}
.MsoChpDefault
{mso-style-type:export-only;
font-size:11.0pt;
mso-fareast-language:EN-US;}
@page WordSection1
{size:612.0pt 792.0pt;
margin:72.0pt 72.0pt 72.0pt 72.0pt;}
div.WordSection1
{page:WordSection1;}
--></style>
</head>
<body lang="en-BE" link="#467886" vlink="#96607D" style="word-wrap:break-word">
<div class="WordSection1">
<div>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">Welcome to the latest OpenJDK Quality Outreach update!<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">Java 22 was just released along with JavaFX 22 [1][2]. Thank you to all the projects who contributed to those releases by testing and providing
feedback using their respective early-access builds. And to celebrate that, the Java DevRel Team hosted a +4h live-stream with guests such as Brian Goetz, Viktor Klang, Alan Bateman, etc. You can watch the launch stream replay here [3].<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">The JDK 23 schedule is now known [4] with rampdown starting early June and general availability sets for mid-September. So far, 2 JEPs have been
targeted to JDK 23:<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">- JEP 455: Primitive Types in Patterns, instanceof, and switch (Preview) [5]<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">- JEP 466: Class-File API (2nd Preview) [6]<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">The focus should now be shifted to testing your project(s) on JDK 23. And don't forget that the Oracle setup-java github action [7] supports, amongst
others, the latest OpenJDK 23 Early-Access builds. So, JDK 23 EA testing is literally one pipeline away.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">[1]
<a href="https://mail.openjdk.org/pipermail/jdk-dev/2024-March/008827.html"><span style="color:#0563C1">https://mail.openjdk.org/pipermail/jdk-dev/2024-March/008827.html</span></a><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">[3]
<a href="https://jdk.java.net/javafx22/"><span style="color:#0563C1">https://jdk.java.net/javafx22/</span></a><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">[3]
<a href="https://www.youtube.com/live/AjjAZsnRXtE?feature=shared&t=278"><span style="color:#0563C1">https://www.youtube.com/live/AjjAZsnRXtE?feature=shared&t=278</span></a><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">[4]
<a href="https://openjdk.org/projects/jdk/23/"><span style="color:#0563C1">https://openjdk.org/projects/jdk/23/</span></a><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">[5]
<a href="https://openjdk.org/jeps/455"><span style="color:#0563C1">https://openjdk.org/jeps/455</span></a><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">[6]
<a href="https://openjdk.org/jeps/466"><span style="color:#0563C1">https://openjdk.org/jeps/466</span></a><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">[7]
<a href="https://github.com/oracle-actions/setup-java"><span style="color:#0563C1">https://github.com/oracle-actions/setup-java</span></a><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">## Heads-up: JDK 20-23: Support for Unicode CLDR Version 42<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">The JDK update to CLDR version 42 included a change where regular spaces in date/time formats (and some other formatted values) were replaced with
(narrow) non-breaking spaces. This lead to issues for existing code that relied on parsing such strings. To address that, JDK 23 allows loose matching of spaces when parsing date/time strings. Loose matching is performed in the lenient parsing style for both
date/time parsers in `java.time.format` and `java.text` packages. In the default strict parsing style, those spaces are considered distinct as before.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">Please read this updated heads-up [9] for details on how to configure strict/lenient parsing in the `java.time.format` (strict by default) and
`java.text` (lenient by default) packages.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">[9]
<a href="https://inside.java/2024/03/29/quality-heads-up/"><span style="color:#0563C1">https://inside.java/2024/03/29/quality-heads-up/</span></a><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">## Heads-up: macOS 14 users running on Apple silicon systems should update directly to macOS 14.4.1
<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">An issue introduced by macOS 14.4 caused some Java processes, regardless of the Java version, to terminate unexpectedly on Apple silicon (AArch64).
On March 25 Apple released macOS 14.4.1 and indicated on their support site that it addresses this issue. Oracle can confirm that after applying macOS 14.4.1 we are unable to reproduce the problem. So, Java users on macOS 14 running on Apple silicon systems
should skip macOS 14.4 and update directly to macOS 14.4.1.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">More details can be found on
<a href="https://blogs.oracle.com/java/post/java-on-macos-14-4"><span style="color:#0563C1">https://blogs.oracle.com/java/post/java-on-macos-14-4</span></a><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">## JDK 23 Early-Access Builds<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">The JDK 23 EA builds 16 are available [10], and are provided under the GNU General Public License v2, with the Classpath Exception. The Release
Notes [11] are also available.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">### Changes in recent JDK 23 builds that may be of interest:<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">- JDK-8324774: Add DejaVu web fonts (reported by AssertJ)<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">- JDK-8327385: Add JavaDoc option to exclude web fonts from generated documentation (reported by AssertJ)<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">- JDK-8328638: Fallback option for POST-only OCSP requests<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">- JDK-8320362: Load anchor certificates from Keychain keystore<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">- JDK-8327875: ChoiceFormat should advise throwing UnsupportedOperationException for unused methods<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">- JDK-8296244: Alternate implementation of user-based authorization Subject APIs that doesn’t depend on Security Manager APIs<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">- JDK-8327818: Implement Kerberos debug with sun.security.util.Debug<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">- JDK-7036144: GZIPInputStream readTrailer uses faulty available() test for end-of-stream<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">- JDK-8319251: Change LockingMode default from LM_LEGACY to LM_LIGHTWEIGHT<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">- JDK-8327651: Rename DictionaryEntry members related to protection domain<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">- JDK-8321408: Add Certainly roots R1 and E1<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">- JDK-8164094: javadoc allows to create a @link to a non-existent method<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">- JDK-8325496: Make TrimNativeHeapInterval a product switch<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">- JDK-8174269: Remove COMPAT locale data provider from JDK<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">- JDK-8322750: Test "api/java_awt/interactive/SystemTrayTests.html" failed because …<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">- JDK-8139457: Relax alignment of array elements
<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">- JDK-8256314: JVM TI GetCurrentContendedMonitor is implemented incorrectly<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">- JDK-8326908: DecimalFormat::toPattern throws OutOfMemoryError when pattern is empty string<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">- JDK-8247972: incorrect implementation of JVM TI GetObjectMonitorUsage<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">- JDK-8325580: Remove "alternatives --remove" call from Java rpm installer<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">- JDK-8326838: JFR: Native mirror events<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">- JDK-8326106: Write and clear stack trace table outside of safepoint<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">- JDK-8323183: ClassFile API performance improvements<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">- JDK-8324829: Uniform use of synchronizations in NMT<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">- JDK-8326586: Improve Speed of System.map<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">- JDK-8318761: MessageFormat pattern support for CompactNumberFormat, ListFormat, and DateTimeFormatter<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">- JDK-8265372: Simplify PKCS9Attribute<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">- JDK-8317431: Implement simpler Comparator when building certification paths<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">- JDK-8327093: Add truncate function to BitMap API<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">Note: A more detailed list of changes can be found here [12].<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">[10]
<a href="https://jdk.java.net/23/"><span style="color:#0563C1">https://jdk.java.net/23/</span></a><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">[11]
<a href="https://jdk.java.net/23/release-notes"><span style="color:#0563C1">https://jdk.java.net/23/release-notes</span></a><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">[12]
<a href="https://github.com/openjdk/jdk/compare/jdk-23+10...jdk-23+16"><span style="color:#0563C1">https://github.com/openjdk/jdk/compare/jdk-23+10...jdk-23+16</span></a><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">## JavaFX 23 Early-Access Builds<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">These are early access builds of the JavaFX 23 Runtime built from openjdk/jfx [13]. These builds enable JavaFX application developers to build
and test their applications with JavaFX 23 on JDK 23. Although these builds are designed to work with JDK 23, they are also known to work with JDK 17 and later versions.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">
<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">The latest early access builds of JavaFX 23 Builds 10 (2024/3/26) are available [14], under the GNU General Public License, version 2, with the
Classpath Exception.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">[13]
<a href="https://github.com/openjdk/jfx"><span style="color:#0563C1">https://github.com/openjdk/jfx</span></a><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">[14]
<a href="https://jdk.java.net/javafx23/"><span style="color:#0563C1">https://jdk.java.net/javafx23/</span></a><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">## Topics of Interest:<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">- The Arrival of Java 22<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB"><a href="https://inside.java/2024/03/19/the-arrival-of-java-22/"><span style="color:#0563C1">https://inside.java/2024/03/19/the-arrival-of-java-22/</span></a><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">- JDK 22 Release Notes Review (video)<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB"><a href="https://inside.java/2024/03/14/newscast-65/"><span style="color:#0563C1">https://inside.java/2024/03/14/newscast-65/</span></a><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">- Java 22 in 2 Minutes<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB"><a href="https://inside.java/2024/03/21/sip095/"><span style="color:#0563C1">https://inside.java/2024/03/21/sip095/</span></a><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">- (Dirty?) Tricks in Java 22<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB"><a href="https://inside.java/2024/02/29/newscast-64/"><span style="color:#0563C1">https://inside.java/2024/02/29/newscast-64/</span></a><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">- JDK 22 Security Enhancements<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB"><a href="https://seanjmullan.org/blog/2024/03/20/jdk22"><span style="color:#0563C1">https://seanjmullan.org/blog/2024/03/20/jdk22</span></a><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">- Java 17 to 21 - A Showcase of JDK Security Enhancements<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB"><a href="https://inside.java/2024/03/03/jfokus-jdk-security-changes/"><span style="color:#0563C1">https://inside.java/2024/03/03/jfokus-jdk-security-changes/</span></a><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">- Netflix - Bending Pause Times to Your Will with Generational ZGC<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB"><a href="https://netflixtechblog.com/bending-pause-times-to-your-will-with-generational-zgc-256629c9386b"><span style="color:#0563C1">https://netflixtechblog.com/bending-pause-times-to-your-will-with-generational-zgc-256629c9386b</span></a><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">- MethodHandle Primer<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB"><a href="https://jornvernee.github.io/methodhandles/2024/01/19/methodhandle-primer.html"><span style="color:#0563C1">https://jornvernee.github.io/methodhandles/2024/01/19/methodhandle-primer.html</span></a><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">- Pruning Dead Exception Handlers<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB"><a href="https://jornvernee.github.io/hotspot/jit/2024/02/16/prune-dead-exception-handlers.html"><span style="color:#0563C1">https://jornvernee.github.io/hotspot/jit/2024/02/16/prune-dead-exception-handlers.html</span></a><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">- Update on String Templates (JEP 459)<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB"><a href="https://mail.openjdk.org/pipermail/amber-spec-experts/2024-March/004010.html"><span style="color:#0563C1">https://mail.openjdk.org/pipermail/amber-spec-experts/2024-March/004010.html</span></a><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">- The State of OpenJDK<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB"><a href="https://inside.java/2024/02/23/fosdem2024-openjdk-state/"><span style="color:#0563C1">https://inside.java/2024/02/23/fosdem2024-openjdk-state/</span></a><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">- Project Wakefield - The JDK Wayland Desktop on Linux<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB"><a href="https://inside.java/2024/03/24/openjdk-wakefield/"><span style="color:#0563C1">https://inside.java/2024/03/24/openjdk-wakefield/</span></a><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">- Project Leyden - Capturing Lightning in a Bottle<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB"><a href="https://inside.java/2024/02/28/leyden/"><span style="color:#0563C1">https://inside.java/2024/02/28/leyden/</span></a><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">- jlink - Java's Custom Runtime Builder<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB"><a href="https://inside.java/2024/02/25/jlink-stackwalker/"><span style="color:#0563C1">https://inside.java/2024/02/25/jlink-stackwalker/</span></a><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">- Modern Java in Action<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB"><a href="https://inside.java/2024/03/09/jfokus-modern-java-action/"><span style="color:#0563C1">https://inside.java/2024/03/09/jfokus-modern-java-action/</span></a><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">- New Java Platform Extension for VS Code Release<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB"><a href="https://inside.java/2024/03/27/vscode-extension-update/"><span style="color:#0563C1">https://inside.java/2024/03/27/vscode-extension-update/</span></a><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">~<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">That's it for this instalment. And don't forget to ping me if you encounter issues with JDK 23 EA builds.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB"><o:p> </o:p></span></p>
</div>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;mso-ligatures:none;mso-fareast-language:EN-GB">--David</span><o:p></o:p></p>
</div>
</body>
</html>