Evgeny, Marc,
The Release Candidates of JDK 18 have been released [1]. At this stage, only P1 issues will be evaluated [2]. And with the JDK 18 General Availability sets for March 22nd, it is now time to shift the focus to JDK 19. I'd like to thank those of you who have already provided feedback on the early Early Builds of JDK 19. Feedback is always extremely useful, even more, when it comes early in the development cycle.
[1]
https://mail.openjdk.java.net/pipermail/jdk-dev/2022-February/006404.html[2]
https://openjdk.java.net/jeps/3JDK 18 Release CandidateThe Release Candidate builds of JDK 18 are now available [3], and are provided under the GNU General Public License v2, with the Classpath Exception. The Release Notes are available here [4].
[3]
https://jdk.java.net/18/[4]
https://jdk.java.net/18/release-notesJDK 19 Early-Access buildsJDK 19 Early-Access builds 11 are now available [5], and are provided under the GNU General Public License v2, with the Classpath Exception. The Release Notes are available here [6].
[5]
https://jdk.java.net/19/[6]
https://jdk.java.net/19/release-notesRecent changes that maybe of interest:
* JDK-8278067: Make HttpURLConnection default keep alive timeout configurable
* JDK-8281000: ClassLoader::registerAsParallelCapable throws NPE if caller is null
* JDK-8282279: Interpret case-insensitive string locale independently
* JDK-8176706: Support CLDR's Additional (Skeleton) Date-Time Formats
* JDK-5041655: (ch) FileLock: negative param and overflow issues
* JDK-8255266: Update Public Suffix List to 3c213aa
* JDK-8280958: G1/Parallel: Unify marking code structure
* JDK-8072070: Improve interpreter stack banging
* JDK-8277175: Add a parallel multiply method to BigInteger
* JDK-8278947: Support for array constants in constant table
* JDK-8281462: Annotation toString output for enum not reusable for source input
* JDK-8281175: Add a -providerPath option to jarsigner
* JDK-8277795: ldap connection timeout not honoured under contention
* JDK-8279842: HTTPS Channel Binding support for Java GSS/Kerberos
* JDK-8280744: Allow SuppressWarnings to be used in all declaration contexts
* JDK-8272984: javadoc support for reproducible builds
* JDK-8272317: jstatd has dependency on Security Manager which needs to be removed
New Project Loom Early-Access buildsProject Loom Early-Access builds19-loom+4-115 (2022/2/13) are available [7] with the related Javadoc [8].
These EA builds are based on JDK 19 (jdk-19+9). In those builds, the APIs for Structured Concurrency and Scope Locals have been moved into the `jdk.incubator.concurrent` incubator module. Note that the module name may change later. To use those APIs, simply use `--add-modules jdk.incubator.concurrent` at compile and runtime.
Those EA builds are provided under the GNU General Public License, version 2, with the Classpath Exception and are produced for the purpose of gathering feedback. Use for any other purpose is at your own risk. Proper feedback should be sent to the `loom-dev` mailing list [9].
[7]
https://jdk.java.net/loom/[8]
https://download.java.net/java/early_access/loom/docs/api/[9]
https://mail.openjdk.java.net/mailman/listinfo/loom-dev Topics of Interest * JDK 18 - Card Table Card Size Shenanigans
https://tschatzl.github.io/2022/02/15/card-table-card-size.html* Compiled & Tested Code In Javadoc - Inside Java Newscast #20
https://inside.java/2022/02/10/insidejava-newscast-020/* New candidate JEP: 423: Region Pinning for G1
https://mail.openjdk.java.net/pipermail/jdk-dev/2022-February/006368.html* Refactoring Java 8 code with Java 17 new features - JEP Café #9
https://inside.java/2022/02/01/jepcafe9/As always, let us know if you find any issues while testing your projects on the latest JDK Early Access builds. Thanks for your support!
--David