Foojay.io, the Friends Of OpenJDK!

Welcome to OpenJDK 25! (#78)

Episode 78 of the Foojay Podcast. All info, show notes, and links are available at https://foojay.io/today/category/podcast/.

We're excited to present the first episode of the Foojay Podcast's fifth season, marking the release of OpenJDK 25!

For the first time, an OpenJDK release is aligned with the year, and we can welcome release 25 in 2025. As usual in the release podcast, I have my regular guest, Simon Ritter. And in this episode, we are joined by Balkrishna Rawool to talk about all the new features in this new OpenJDK version.

Guests

   Simon Ritter
      https://www.linkedin.com/in/siritter/ 
   Balkrishna Rawool
      https://www.linkedin.com/in/balkrishnarawool/

Content

00:00 Introduction of topic and guests
01:21 How important is release 25 and upgrading your runtimes?
   https://jdk.java.net/25/
06:00 Process of releasing a new OpenJDK version and looking forward to version 26
08:16 What are JEPs and OpenJDK projects
09:20 Project Leyden
   https://openjdk.org/projects/leyden/
   JEP 514: Ahead-of-Time Command-Line Ergonomics
      https://openjdk.org/jeps/514
   JEP 515: Ahead-of-Time Method Profiling
      https://openjdk.org/jeps/515
11:28 Leyden compared to other solutions
16:21 Project Valhalla
   https://openjdk.org/projects/valhalla/
17:06 JEP 519: Compact Object Headers
   https://openjdk.org/jeps/519
17:40 JEP 508: Vector API (Tenth Incubator)
   https://openjdk.org/jeps/508
18:58 Why Vector API is taking a long time to get finalized
21:04 JEP 502: Stable (Immutable) Values
   https://openjdk.org/jeps/502
23:17 Project Loom
   https://openjdk.org/projects/loom/
23:30 JEP 506: Scoped Values
   https://openjdk.org/jeps/506
24:13 JEP 505: Structured Concurrency (Fifth Preview)
   https://openjdk.org/jeps/505
29:22 How Java evolved over 30 years
33:34 Project Amber
   https://openjdk.org/projects/amber/
34:28 JEP 507: Primitive Types in Patterns, instanceof, and switch (Third Preview)
   https://openjdk.org/jeps/507
35:59 JEP 512: Compact Source Files and Instance Main Methods
   https://openjdk.org/jeps/512
37:36 JEP 511: Module Import Declarations
   https://openjdk.org/jeps/511
38:36 JEP 513: Flexible Constructor Bodies
   https://openjdk.org/jeps/513
39:12 What's next in Project Amber
43:25 What you can learn from JEPs, OpenJDK projects, and mailing lists
44:21 JEP 521: Generational Shenandoah
   https://openjdk.org/jeps/521
   Trash Talk by Gerrit Grunwald
      https://www.youtube.com/watch?v=xlwDe-hlSdI
48:16 JEP 510: Key Derivation Function API
   https://openjdk.org/jeps/510
49:30  JEP 470: PEM Encodings of Cryptographic Objects (Preview)
   https://openjdk.org/jeps/470
51:28 About Java Flight Recorder
52:27 JEP 509: JFR CPU-Time Profiling (Experimental)
   https://openjdk.org/jeps/509
52:44 JEP 518: JFR Cooperative Sampling
   https://openjdk.org/jeps/518
53:15 JEP 520: JFR Method Timing & Tracing
   https://openjdk.org/jeps/520
53:38 More about JFR and comparing with GC logs
57:04 JEP 503: Remove the 32-bit x86 Port
   https://openjdk.org/jeps/503
58:54 Looking forward to the following versions
01:00:58 Conclusion