notes on JDK 24
- Dominant language
- Java
- Stars
- 2k
- Forks
- 392
- Avg merge
- 11h 24m
- Merged PRs (30d)
- 36
Description
from David Delabassee
The [JDK 24 are available](https://jdk.java.net/24/), and are provided under the GNU General Public License v2, with the Classpath Exception. The Release Notes are available [here](https://jdk.java.net/24/release-notes).
As of the time of writing, the following JEPs have been targeted to JDK 24
* JEP 472: Prepare to Restrict the Use of JNI
* JEP 475: Late Barrier Expansion for G1
* JEP 485: Stream Gatherers
* JEP 484: Class-File API
* JEP 489: Vector API (9th Incubator)
while the following JEPs have been proposed to target JDK 24
* JEP 404: Generational Shenandoah (Experimental)
* JEP 478: Key Derivation Function API (Preview)
* JEP 487: Scoped Values (4th Preview)
* JEP 490: ZGC: Remove the Non-Generational Mode
Changes in recent JDK 24 builds that may be of interest
* JDK-8337302: Undefined type variable results in null - Reported & fixed by ByteBuddy
* JDK-8338406: BytecodeHelpers using wrong bootstrap method descriptor for condy - Reported by ByteBuddy
* JDK-8338623: StackCounter adding extraneous slots for receiver invoke instructions - Reported by ByteBuddy
* JDK-8338661: StackMapTable is invalid if frames appear in dead code - Reported by ByteBuddy
* JDK-8338745: Intrinsify Continuation.pin() and Continuation.unpin()
* JDK-8338979: Avoid bootstrapped switches in the classfile API
* JDK-8338939: Simplify processing of hidden class names
* JDK-8335288: SunPKCS11 initialization will call C_GetMechanismInfo on unsupported mechanisms
* JDK-8336492: Regression in lambda serialization
* JDK-8286851: Deprecate for removal several of the undocumented java launcher options
* JDK-8339918: Remove checks for outdated -t -tm -Xfuture -checksource -cs -noasyncgc options from …
* JDK-8328608: Multiple NewSessionTicket support for TLS
* JDK-8338890: Add monitoring/management interface for the virtual thread scheduler
* JDK-8338731: MemoryLayout::offsetHandle can return a negative offset
* JDK-8325679: Optimize ArrayList subList sort
* JDK-8337664: Distrust TLS server certificates issued after Oct 2024 and anchored by Entrust Root Cas
* JDK-8338936: StringConcatFactory optimize the construction of MethodType and MethodTypeDesc
* JDK-8338947: Deprecate the UseLinuxPosixThreadCPUClocks flag and remove it in a future release
* JDK-8338700: AttributeMapper type parameter should be bounded by Attribute
* JDK-8339214: Remove misleading CodeBuilder.loadConstant(Opcode, ConstantDesc)
* JDK-8328877: [JNI] The JNI Specification needs to address the limitations of integer UTF-8 String lengths
* JDK-8338894: Deprecate jhsdb debugd for removal
* JDK-8334165: Remove serialVersionUID compatibility logic from JMX
* JDK-8334870: javac does not accept classfiles with certain permitted RuntimeVisibleParameterAnnotations…
Note: A complete list of changes can be found [here](https://github.com/openjdk/jdk/compare/jdk-24+12...jdk-24+21).
Contributor guide
Assessment
This issue has not been assessed yet.