<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: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="mso-ligatures:none">Welcome to the OpenJDK Quality Outreach summer update!<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">Everything is on track for the General Availability of Java 25 on September 16 as the JDK 25 Release Candidate builds (RC1 - builds 35) are now available[1]. If you haven't done so yet, please start testing
 your project(s) using JDK 26 early-access builds and let us know the results.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">Changing topics, the JVM Language Summit (JVMLS) was held last week in Santa Clara (California). JVMLS is a unique event that brings together Java and JVM architects and OpenJDK developers to discuss the
 evolution and future directions of the platform. The first JVMLS video has just been published, with more to follow. To stay informed about the latest developments, keep an eye on this JVMLS playlist[2].<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">[1] <a href="https://mail.openjdk.org/pipermail/jdk-dev/2025-August/010296.html">
<span style="color:#467886">https://mail.openjdk.org/pipermail/jdk-dev/2025-August/010296.html</span></a><o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">[2] <a href="https://www.youtube.com/playlist?list=PLX8CzqL3ArzUOgZpIX6GsoRhPbnij-sco">
<span style="color:#467886">https://www.youtube.com/playlist?list=PLX8CzqL3ArzUOgZpIX6GsoRhPbnij-sco</span></a><o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none"># JDK 25<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">The JDK 25 early-access builds 35 are available[3], and are provided under the GNU General Public License v2, with the Classpath Exception. The Release Notes are available here[4]. For more details on Java
 25, please refer to the “Topics of Interest” section below.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">## JEPs Integrated into JDK 25:<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- JEP 470: PEM Encodings of Cryptographic Objects (Preview)<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- JEP 502: Stable Values (Preview)<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- JEP 503: Remove the 32-bit x86 Port<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- JEP 505: Structured Concurrency (5th Preview)<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- JEP 506: Scoped Values<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- JEP 507: Primitive Types in Patterns, instanceof, and switch (3rd Preview)<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- JEP 508: Vector API (1Oth Incubator)<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- JEP 509: JFR CPU-Time Profiling (Experimental)<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- JEP 510: Key Derivation Function API<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- JEP 511: Module Import Declarations<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- JEP 512: Compact Source Files and Instance Main Methods<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- JEP 513: Flexible Constructor Bodies<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- JEP 514: Ahead-of-Time Command-Line Ergonomics<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- JEP 515: Ahead-of-Time Method Profiling<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- JEP 518: JFR Cooperative Sampling<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- JEP 519: Compact Object Headers<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- JEP 520: JFR Method Timing & Tracing<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- JEP 521: Generational Shenandoah<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">## Changes in Recent JDK 25 Builds of Interest:<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- JDK-8359596: Behavior change when both -Xlint:options and -Xlint:-options flags are given [Reported by Apache Lucene]<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- JDK-8356698: JFR: @Contextual
<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- JDK-8351594: JFR: Rate-limited sampling of Java events
<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- JDK-8241678: Remove PerfData sampling via StatSampler
<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- JDK-8356870: HotSpotDiagnosticMXBean.dumpThreads and jcmd Thread.dump_to_file updates
<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- JDK-8350689: Turn on timestamp and thread metadata by default for java.security.debug
<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- JDK-8354450: A File should be invalid if an element of its name sequence ends with a space
<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- JDK-8350880: (zipfs) Add support for read-only zip file systems
<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- JDK-8341346: Add support for exporting TLS Keying Material
<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- JDK-8345431: Improve jar --validate to detect duplicate or invalid entries
<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- JDK-8359170: Added 4 New Root Certificates from Sectigo Limited<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- JDK-8358590: JFR: Include min and max in MethodTiming event<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- JDK-8228773: URLClassLoader constructors should include API note warning that the parent should not be null<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- JDK-8356049: Need a simple way to play back a sound clip<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- JDK-8357955: java.lang.classfile.Signature.ArrayTypeSig.of IAE not thrown for dims > 255<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- JDK-8359729: Remove the multiplex protocol from the RMI specification<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">Note: A more exauhstive list of changes can be found here[5].<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">[3] <a href="https://jdk.java.net/25/">
<span style="color:#467886">https://jdk.java.net/25/</span></a><o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">[4] <a href="https://jdk.java.net/25/release-notes">
<span style="color:#467886">https://jdk.java.net/25/release-notes</span></a><o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">[5] <a href="https://github.com/openjdk/jdk/compare/jdk-25+25...jdk-25+35">
<span style="color:#467886">https://github.com/openjdk/jdk/compare/jdk-25+25...jdk-25+35</span></a><o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none"># JDK 26<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">The JDK 26 early-access builds 10 are available[6] and are provided under the GNU General Public License v2, with the Classpath Exception. The release notes are available here[7].<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">## Changes in Recent JDK 26 Builds of Interest:<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- JDK-8361380: ARM32: Atomic stubs should be in pre-universe [Reported by JaCoCo]<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- JDK-8359170: Add 2 TLS and 2 CS Sectigo roots
<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- JDK-8359809: AttributeList, RoleList and UnresolvedRoleList should never accept other types of Object
<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- JDK-8268406: Deallocate jmethodID native memory
<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- JDK-8314180: Disable XPath in XML Signatures
<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- JDK-8330940: Impossible to create a socket backlog greater than 200 on Windows 8+
<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- JDK-8357653: Inner classes of type parameters emitted as raw types in signatures
<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- JDK-8347114: JMXServiceURL should require an explicit protocol
<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- JDK-8309399: JVMTI spec needs to clarify when OPAQUE_FRAME is thrown for reasons other than a native method
<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- JDK-8361212: Remove AffirmTrust root CAs
<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- JDK-8353925: Remove Sun Microsystems JCE Code Signing Root CA
<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- JDK-8361964: Remove outdated algorithms from requirements and add PBES2 algorithms
<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- JDK-8332623: Remove setTTL()/getTTL() methods from DatagramSocketImpl/MulticastSocket and MulticastSocket.send(DatagramPacket, byte)<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- JDK-8359760: Remove the jdk.jsobject module 
<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- JDK-8356557: Update CodeSource::implies API documentation and deprecate java.net.SocketPermission class for removal
<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- JDK-8310932: [win] Install the JDK in a per-release directory pointed to by a shared junction<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- JDK-8359956: Support algorithm constraints and certificate checks in SunX509 key manager<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- JDK-8359395: XML signature generation does not support user provided SecureRandom
<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- JDK-8356645: Javac should utilize new ZIP file system read-only access mode<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">Note: A complete list of changes can be found here[8].<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">[6] <a href="https://jdk.java.net/26/">
<span style="color:#467886">https://jdk.java.net/26/</span></a><o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">[7] <a href="https://jdk.java.net/26/release-notes">
<span style="color:#467886">https://jdk.java.net/26/release-notes</span></a><o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">[8] <a href="https://github.com/openjdk/jdk/compare/jdk-26+1...jdk-26+10">
<span style="color:#467886">https://github.com/openjdk/jdk/compare/jdk-26+1...jdk-26+10</span></a><o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none"># Topics of Interest<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- Java 25 Encodes PEM<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none"><a href="https://inside.java/2025/06/19/newscast-93/"><span style="color:#467886">https://inside.java/2025/06/19/newscast-93/</span></a><o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- JDK 25: Just Be Lazy<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none"><a href="https://inside.java/2025/07/29/just-be-lazy/"><span style="color:#467886">https://inside.java/2025/07/29/just-be-lazy/</span></a><o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- JDK 25: A Sneak Peek at the Stable Values API<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none"><a href="https://inside.java/2025/07/22/javaone-stablevalues/"><span style="color:#467886">https://inside.java/2025/07/22/javaone-stablevalues/</span></a><o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- Java 25 is ALSO no LTS Version<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none"><a href="https://inside.java/2025/07/03/newscast-94/"><span style="color:#467886">https://inside.java/2025/07/03/newscast-94/</span></a><o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- JVMLS: The not-so-final word on `final`<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none"><a href="https://inside.java/2025/08/12/jvmls-final-to-immutable/"><span style="color:#467886">https://inside.java/2025/08/12/jvmls-final-to-immutable/</span></a><o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- HTTP/3 in Java<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none"><a href="https://inside.java/2025/07/31/newscast-96/"><span style="color:#467886">https://inside.java/2025/07/31/newscast-96/</span></a><o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- Project Leyden's AOT / Shifting Java Startup into High Gear<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none"><a href="https://inside.java/2025/06/29/javaone-leyden-aot/"><span style="color:#467886">https://inside.java/2025/06/29/javaone-leyden-aot/</span></a><o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- Java Security Evolution - Out with the Old, In with the New<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none"><a href="https://inside.java/2025/07/20/javaone-security/"><span style="color:#467886">https://inside.java/2025/07/20/javaone-security/</span></a><o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- Java GPGPU Enablement: Are We There Yet?<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none"><a href="https://inside.java/2025/07/14/javaone-hat/"><span style="color:#467886">https://inside.java/2025/07/14/javaone-hat/</span></a><o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- Podcast “Deprecations & Removals” with Stuart Marks<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none"><a href="https://inside.java/2025/07/28/podcast-039/"><span style="color:#467886">https://inside.java/2025/07/28/podcast-039/</span></a><o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- Podcast “Integrity by Default” with Ron Pressler<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none"><a href="https://inside.java/2025/06/24/podcast-038/"><span style="color:#467886">https://inside.java/2025/06/24/podcast-038/</span></a><o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- A New Model for Java Object Initialization<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none"><a href="https://inside.java/2025/07/27/javaone-object-initialization/"><span style="color:#467886">https://inside.java/2025/07/27/javaone-object-initialization/</span></a><o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- ZGC: Paving the GC On-Ramp<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none"><a href="https://inside.java/2025/07/10/javaone-zgc/"><span style="color:#467886">https://inside.java/2025/07/10/javaone-zgc/</span></a><o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- Marshalling: Data-Oriented Serialization<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none"><a href="https://inside.java/2025/07/08/javaone-marshalling/"><span style="color:#467886">https://inside.java/2025/07/08/javaone-marshalling/</span></a><o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- Interconnecting Java and Native Code with the FFM API<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none"><a href="https://inside.java/2025/06/14/javaone-ffm/"><span style="color:#467886">https://inside.java/2025/06/14/javaone-ffm/</span></a><o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- FFM vs. Unsafe. Safety (Sometimes) Has a Cost<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none"><a href="https://inside.java/2025/06/12/ffm-vs-unsafe/"><span style="color:#467886">https://inside.java/2025/06/12/ffm-vs-unsafe/</span></a><o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">- Java Gets a JSON API<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none"><a href="https://inside.java/2025/07/17/newscast-95/"><span style="color:#467886">https://inside.java/2025/07/17/newscast-95/</span></a><o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">~<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="mso-ligatures:none">That’s it for now. If you run into any issues while testing your projects with the latest JDK 26 early-access builds, don’t hesitate to reach out. The end of summer is going to be exciting and busy with
 the Java 25 launch coming up, so stay tuned!</span><span lang="EN-US" style="mso-ligatures:none"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="mso-ligatures:none"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="mso-ligatures:none">PS: If you no longer wish to receive OpenJDK Quality Outreach updates, please let me know.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="mso-ligatures:none"><o:p> </o:p></span></p>
</div>
<p class="MsoNormal"><span style="mso-ligatures:none">--David</span><o:p></o:p></p>
</div>
</body>
</html>