Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

notes on JDK 24 #6045

Open
monperrus opened this issue Oct 28, 2024 · 0 comments
Open

notes on JDK 24 #6045

monperrus opened this issue Oct 28, 2024 · 0 comments

Comments

@monperrus
Copy link
Collaborator

from David Delabassee

The JDK 24 are available, and are provided under the GNU General Public License v2, with the Classpath Exception. The Release Notes are available here.

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.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants
@monperrus and others