This week’s Java Digest for October 24, 2022 features OpenJDK news, JDK 20 release schedule, Build 20-loom+20-34, Spring Integration 6.0-RC1, Spring Tools 4.16.1, GraalVM 22.3, Open Liberty 22.0.0.11 and 22.0 .0.12-beta, Eclipse Vert.x 3.9.14, Apache TomEE 8.0.13, JReleaser 1.3.0, Hibernate Search 5.11.11 and 5.10.13, intermediate versions PrimeFaces , JDKMon 17.0.37 and EclipseCon 2022.
OpenJDK
JEP 434, Foreign Function & Memory API (Second Preview), was promoted from its Draft 8293649 at Candidate status last week. This JEP, under the aegis of Project Panama, is evolving: JEP 424, Foreign Function & Memory API (Preview), delivered in JDK 19; JEP 419, Foreign Function & Memory API (Second Incubator), delivered in JDK 18; and JEP 412, Foreign Function & Memory API (Incubator), shipped in JDK 17. It proposes to incorporate improvements based on feedback and provide a second preview in JDK 20. Updates include: MemorySegment
and MemoryAddress
interfaces are now unified, ie memory addresses are modeled by zero-length memory segments; and sealed it MemoryLayout
the interface has been improved for ease of use with JEP 427, Pattern Matching for switch (Third Preview).
PEC Draft 8295817Virtual Threads (Second Preview), was promoted to Submitted status last week. This JEP, also under the auspices of Project Loom, offers a second preview of JEP 425, Virtual Threads (Preview), shipped in JDK 19, to allow time for additional feedback and experience as this feature progresses. It is important to note that there are no changes in this preview except for a small number of APIs from JEP 425 which have been made permanent in JDK 19 and therefore not offered in this second preview.
Likewise, JEP Draft 8296037Structured Concurrency (Second Incubator), was promoted Submitted status. This JEP, also under the auspices of the Loom project, proposes to reincubate this functionality of the JEP 428, Structured Concurrency (Incubator), delivered in JDK 19, in JDK 20 to allow time for feedback and feedback additional experience. The only change is an update StructuredTaskScope
to support inheritance of scoped values ​​by threads created in a task scope. This streamlines the sharing of immutable data between threads.
JDK 20
Version 21 of the JDK 20 early access builds was also made available last week, with updates to version 20 that include fixes to various issues. Further details on this release can be found in the release notes.
Mark Reinhold, Chief Architect, Java Platform Group at Oracle, officially announced the JDK 20 release schedule as follows:
- Rampdown Phase One (mainline fork): December 8, 2022
- Second phase of slowdown: January 19, 2023
- Initial release candidate: February 9, 2023
- Candidate for the final version: February 23, 2023
- General availability: March 21, 2023
For JDK 20, developers are encouraged to report bugs through the Java Bug Database.
Project loom
Version 20-loom+20-34 of Project Loom early access builds has been released to the Java community and is based on version 20 of JDK 20 early access builds.
spring frame
On the road to Spring Integration 6.0.0, the first release candidate was made available with support for: RabbitMQ Streams, Kotlin Coroutines, and polyglot GraalVM JavaScript calls. This release also includes the removal of Spring Data for Apache Geode. More details about this release can be found in the release notes.
Spring Tools 4.16.1 for Eclipse, Visual Studio Code and Theia has been released with early access builds available for Spring Tools 4 on Eclipse 2022-12 milestones. Developers planning to upgrade from Spring Tools 4.15.3 should follow this migration guide due to a major update in m2e
2.0 ships with Eclipse 2022-09. You can find more details about this version in the release notes.
GraalVM
Oracle Labs released GraalVM 22.3 with: support for JDK 19 and jlink
; and updates to native image monitoring and developer experience. As announced at JavaOne, the GraalVM CE Java code will be part of OpenJDK. This is the last feature release of 2022. More details about this release can be found in the release notes and this YouTube video. InfoQ will follow with more detailed news.
open freedom
IBM has promoted Open Liberty 22.0.0.11 from its beta to provide: JDK 19 support and distributed security caching so that multiple Liberty servers can share caches using a JCache provider . This release also fixes CVE-2022-24839, a vulnerability in Nokogiri (Rubygem), a fork of the old org.cyberneko.html
which raises a OutOfMemoryError
exception when parsing malformed HTML markup.
Open Liberty 22.0.0.12-beta has also been released and supports six new Jakarta EE 10 specifications: Jakarta Batch 2.1, Jakarta XML Web Services 4.0, Jakarta Server Pages 3.1, Jakarta Standard Tag Library 3.0, Jakarta Messaging 3.1 and Jakarta WebSocket 2.1 . . Two updated specifications are also supported in the next release of MicroProfile 6.0: JWT Propagation 2.1 and MicroProfile Metrics 5.0.
Eclipse Vert.x
Eclipse Vert.x 3.9.14 has been released and comes with dependency upgrades to GraphQL Java 19.2, Netty 4.1.84.Final, Protocol Buffers Java 3.21.7 and Jackson Databind which fixes CVE-2022-42003, a denial of service vulnerability in Jackson Databind. The 3.9 release train is expected to reach end of life by the end of 2022, so developers are encouraged to upgrade to Vert.x 4.x. You can find more details about this version in the release notes.
Apache Software Foundation
Apache TomEE 8.0.13 has been released with: an example on how to work with property providers; and dependency upgrades which include Jakarta Faces 2.3.18, MyFaces 2.3.10, Hibernate Integration 5.6.9.Final, BatchEE 1.0.2, Tomcat 9.0.68 and SnakeYAML 1.33. More details about this release can be found in the release notes.
JReleaser
Version 1.3.0 of JReleaser, a Java utility that streamlines the creation of project releases, has been released with: a new WorkflowListener
extension that reacts to workflow events; an option to install additional native image components; and support for deploying JARs and POMs to Maven-compatible repositories. Further details on this release can be found in the changelog.
Hibernate
Hibernate Search versions 5.11.11.Final and 5.10.13.Final have been released and provide dependency upgrades to Hibernate ORM versions 5.4.33.Final and 5.3.28.Final, respectively. Version 5.10.13 also provides a fix for a ClassCastException
be discarded when creating a FullTextSession
interface of a EntityManager
interface created by Spring Boot 2.4.0+ and Spring Framework 5.3+.
PrimeFaces
PrimeFaces, an open source UI component library vendor, has provided point releases of PrimeFaces 7.0.30, 8.0.22, 10.0.17, 11.0.9, and 12.0.1. New features and improvements include: implement a IN
matching mode, i.e., filterMatchMode="in"
for the JpaLazyDataModel
to classify; and make sure the emptyLabel
attribute when using SelectCheckboxMenu
the class does not display text.
PrimeVue 3.18.0 has also been released and offers: accessibility improvements to all menu components; template support for FileUpload
; and a reagent Paginator
. More details about this release can be found in the changelog.
JDKMyName
Version 17.0.37 of JDKMon, a tool that monitors and updates installed JDKs, was released to the Java community last week. Created by Gerrit Grunwald, Principal Engineer at Azul, this new release comes with a fix for detecting GraalVM builds.
EclipseCon
EclipseCon 2022 was held last week at the Forum am Schlosspark in Ludwigsburg, Germany, with speakers from the Java community presenting topics including Java, The Open Source Way, Cloud Native Technologies, and All Things Quality & Security. The conference included the annual community day that precedes the conference.
#Java #News #Summary #OpenJDK #Updates #JDK #Release #Schedule #GraalVM #JReleaser #1.3.0