This week's Java roundup for December 4th, 2023, features news highlighting: JDK 22 having moved to Rampdown Phase One; formation of the JDK 23 expert group; JEP 464, Scope Values (Second Preview) targeted for JDK 22; Spring Cloud 2023.0.0; TornadoVM 1.0.0; and JHipster Lite 1.0.0.
OpenJDK
After its review has concluded, JEP 464, Scoped Values (Second Preview), has been promoted from Proposed to Target to Targeted for JDK 22. Formerly known as Extent-Local Variables (Incubator), this JEP proposes to re-preview the API in JDK 22, without change, in order to gain additional experience and feedback from the previous round of preview, JEP 446, Scoped Values (Preview), delivered in JDK 21, and JEP 429, Scoped Values (Incubator), delivered in JDK 20. This feature enables sharing of immutable data within and across threads. This is preferred to thread-local variables, especially when using large numbers of virtual threads.
JDK 22
Build 27 of the JDK 22 early-access builds was made available this past week featuring updates from Build 26 that include fixes to various issues. More details on this build may be found in the release notes.
As per the JDK 22 release schedule, Mark Reinhold, chief architect, Java Platform Group at Oracle, formally declared that JDK 22 has entered Rampdown Phase One. This means that the main-line source repository has been forked to the JDK stabilization repository and no additional JEPs will be added for JDK 22. Therefore, the final set of 12 features for the GA release in March 2024 will include:
- JEP 423: Region Pinning for G1
- JEP 447: Statements before super(...) (Preview)
- JEP 454: Foreign Function & Memory API
- JEP 456: Unnamed Variables & Patterns
- JEP 457: Class-File API (Preview)
- JEP 458: Launch Multi-File Source-Code Programs
- JEP 459: String Templates (Second Preview)
- JEP 460: Vector API (Seventh Incubator)
- JEP 461: Stream Gatherers (Preview)
- JEP 462: Structured Concurrency (Second Preview)
- JEP 463: Implicitly Declared Classes and Instance Main Methods (Second Preview)
- JEP 464: Scoped Values (Second Preview)
For JDK 22, developers are encouraged to report bugs via the Java Bug Database.
JDK 23
JSR 398, Java SE 23, was submitted this past week to formally announce the six-member expert group for JDK 22, namely Simon Ritter (Azul Systems), Manoj Palat (Eclipse Foundation), Andrew Haley (Red Hat), Christoph Langer (SAP SE), Iris Clark (Oracle) and Brian Goetz (Oracle). Clark and Goetz will serve as the specification leads. Other notable dates at this time include a public review from June 2024 through August 2024 and the GA release in September 2024.
Build 0 and Build 1 of the JDK 23 early-access builds were also made available this past week featuring updates to resolve these initial issues. Further details on this release may be found in the release notes.
GlassFish
Eclipse GlassFish 7.0.11, the eleventh maintenance release, features bug fixes, dependency upgrades and resolutions related to web sockets not working for applications on the default context root and defects in the AdminGUI. More details on this release may be found in the release notes.
TornadoVM
TornadoVM, an open-source software technology company, has released version 1.0 of their virtual machine that ships with bug fixes and notable improvements such as: a brand new API for allocating off-heap objects and array collections using the Panama Memory Segment API; improved handling of TornadoVM's internal bytecode to avoid write-only copies from host to device; and improved default device ordering based on maximum thread size. Further details on this release may be found in the release notes and InfoQ will follow up with a more detailed news story.
Juan Fumero, research associate, Advanced Processor Technologies Research Group at The University of Manchester, introduced TornadoVM at QCon London in March 2020 and has since contributed this more recent InfoQ technical article.
Spring Framework
Spring Cloud 2023.0.0, codenamed Leyton, has been released featuring bug fixes and upgrades to sub-projects such as: Spring Cloud Commons 4.1.0; Spring Cloud Starter Build 2023.0.0; Spring Cloud Kubernetes 3.1.0; and Spring Cloud Netflix 4.1.0. This release is based on Spring Boot 3.2.0. More details on this release may be found in the release notes.
The release of Spring Tools 4.21.0 ships with: an improved experience on completions for request mappings at the class method level; an upgrade to Spring Boot 3.2 available via integration via OpenRewrite; and an upgrade to Eclipse 2023-12. Further details on this release may be found in the release notes.
Micronaut
The Micronaut Foundation has released version 4.2.1 of the Micronaut Framework featuring Micronaut Core 4.2.1 and updates to modules: Micronaut gRPC, Micronaut Test and Micronaut Logging. More details on this release may be found in the release notes.
Quarkus
Quarkus 3.6.1, the first maintenance release, ships with bug fixes, improvements in documentation and notable changes such as: make Truffle from GraalVM 23.1 work in all modes of Quarkus; disable @OidcClientFilter
annotation at runtime for improved application testing; and improved reliability when downloading builder images from Quay.io. Further details on this release may be found in the changelog.
WildFly
WildFly 30.0.1, the first maintenance release, delivers component upgrades and notable bug fixes such as: the simplest of Jakarta RESTful Web Services application failing in WildFly; clustering files containing session data is never shrunk or deleted; and an exception on Infinispan cache writes due to only instances of byte[]
are currently supported. More details on this release may be found in the release notes.
Hibernate
Hibernate Search 7.0.0.Final has been released featuring: JDK 11 as a baseline; compatibility with JDK 11, JDK 17, JDK 21, Jakarta EE, the Hibernate ORM discriminator-based multi-tenancy, Elasticsearch 8.11 and OpenSearch 2.10 and 2.11; and dependency upgrades to Hibernate ORM 6.4.0.Final and Apache Lucene 9.8.
IBM Semeru Runtime
IBM has released versions 17.0.9.0 and 11.0.21.0 of IBM Semeru Runtime, Certified Edition for Multi-Platforms. Based on Eclipse OpenJ9 0.41 and versions jdk-11.0.21+9 and jdk-17.0.9+9 of OpenJDK, this latest release contains the latest CPU and security fixes from the OpenJDK October 2023 updates. Further details on this release may be found in the release notes.
Apache Software Foundation
The release of Camel Quarkus 3.2.3, an alignment with the Apache Camel 4.0.3 and Quarkus 3.2.9.Final releases, featured no resolved issues. More details on this release may be found in the release notes.
JHipster
Versions 1.1.0 and 1.0.0 of JHipster Lite deliver: support for JDK 21, Spring Boot 3.2.0 and Spring Cloud 2023.0.0; configuration by default with YAML instead of properties; new Thymeleaf and htmx webjars modules; and many libraries upgrades. Support for JDK 17 was dropped. Further details on these releases may be found in the release notes for version 1.1.0 and version 1.0.0.
JBang
Version 0.114.0 of JBang features a move to Maven artifact resolution using MIni MAven (MIMA), a "one-shop stop reusable Java 8 library," that uses the Maven Artifact Resolver. A 20% improvement in download speed was observed as noted by Max Andersen, distinguished engineer at Red Hat and creator of JBang. More details on this release may be found in the release notes.
JakartaOne Livestream 2023
The fifth annual JakartaOne Livestream 2023 conference, hosted by Shabnam Mayel, Tanja Obradovic and Ivar Grimstad, featured 45-minute sessions, 15-minute Studio Jakarta EE sessions and an industry keynote. Speakers from the Java community who presented the 45-minute sessions included: David Matějček, Arjan Tijms, Igor De Souza, Mads Opheim, Thomas Watson, José Paumard, Ondro Mihályi, Otávio Santana, Nathan Rauh, Luqman Saeed, Emily Jiang and Reza Rahman.
Editor's Note
Michael Redlich served on the JakartaOne Livestream 2023 program committee.