JEP updates for JDK 19, Project Loom, MicroStream 7.0, New Relic Java Survey
This week’s Java Roundup for April 25, 2022 includes news from JEPs for JDK 19, Project Loom Build 19-loom+6-625, Spring Cloud 2021.0.2, Spring Tools 4.14.1, GraalVM 22.1.0, Micronaut 3.4 .3 , MicroStream 7.0, Quarkus 2.8.2, Apache Camel 1.9.0 and the New Relic State of the Java Ecosystem survey.
After the week-long review was completed, JEP 426, Vector API (Fourth Incubator)was promoted out of suggested target to targeted Status for JDK 19. This JEP is under the auspices of Project Panamaincludes improvements in response to feedback from the previous three rounds of incubation: JEP 417, Vector API (Third Party Incubator) (delivered in JDK 18), JEP 414, Vector API (Second Incubator) (delivered in JDK 17) and JEP 338, Vector API (Incubator)delivered as incubator module in JDK 16. JEP 426 proposes to extend the vector API to load and store vectors to and from a
MemorySegment as defined in JEP 424, Foreign Functions and Storage API (Preview).
JEP 427, Pattern Matching for Switch (Third Preview)originally promoted of his JEP draft 8282272 to candidate Status over the past week has been fast promoted out of candidate to suggested target for JDK 19. This JEP, under the auspices of Project Amberincludes improvements in response to feedback from the last two rounds of preview: JEP 406, Pattern Matching for Switches (Preview) (delivered in JDK 17) and JEP 420, Pattern matching for switches (second preview) (delivered in JDK 18). Changes from JEP 420 include: Protected designs are replaced with
when clauses a
switch Blocks; and the run-time semantics of a pattern switch are more closely aligned with legacy switch semantics when the value of the selector expression is
null. The review is expected to be completed on May 5, 2022.
JEP 425, Virtual threads (preview)has been promoted out of candidate to suggested target Status for JDK 19. This JEP is under the auspices of project loom, introduces virtual threads, lightweight threads that drastically reduce the overhead of writing, managing, and observing concurrent high-throughput applications on the Java platform. The review is expected to be completed on May 5, 2022.
After a very busy previous week, things were a little quieter at Spring last week.
spring cloud 2021.0.2 was released which ships with bug fixes and improvements to Spring Cloud sub-projects: Commons, snoop, contract, OpenFeign, Netflix, circuit breaker and Kubernetes. More details about this release can be found in the Release Notes.
Spring Tools 4.14.1 was released with fixes and improvements for Spring Boot, VS Code and Eclipse. More details about this release can be found in the changelog and developers can expect Spring Tools 4.15.0 to be released in mid-June 2022.
The Micronaut Foundation has released Micronaut 3.4.3 with: Bug fixes related to deserialization of
Base64 format to a
byte array; improvements in documentation; intercept a Kotlin coroutine; validation group inheritance; and a patch release from Micronaut problem JSONa Micronaut project that produces a response of type
application/problem+json from a Micronaut application. More details about this release can be found in the changelog.
MicroStream has released MicroStream 7.0, which provides: a new API exposing existing MicroStream serialization logic; a new CDI extension to configure an instance of the Embedded Storage class, define the root object and automatically store the collections defined in the root object using an interceptor pattern; and improved logging with SLF4J. InfoQ will follow with a more detailed message.
Red Hat provided one second maintenance release with Quarkus 2.8.2.Final shipped with bug fixes, improvements in documentation and dependency upgrades like SmallRye GraphQL 1.4.5, SmallRye JWT 3.4.0, Fly away 8.5.9 and micrometer 1.8.5. More details about this release can be found in the changelog.
Version 1.9.0 by Apache Camel K was released with: the ability to upload local dependencies as a JAR file directly into an integration; Consistently redirect all warnings from the CLI output
stderr; and an updated one Camel camelet catalogue 0.8.0. Camel K consists of a technology stack that includes: Camel K Runtime 1.13.0; Camel Quarkus 2.8.0; camel 3.16.0; and Kamel Kamelets 0.8.0. More details about this release can be found in the changelog and what developers can expect from Camel K in the Timetable 2022.
New Relic poll
New Relic has released its results from their yearbook State of the Java ecosystem Survey in which they examined: the most commonly used JDK version in production and garbage collection algorithms; the most popular providers; the rise of containers; and the most common heap size configurations. InfoQ will follow with a more detailed message.