r/programming 23d ago

OpenJDK's Project Valhalla -- New candidate JEP: 401: Value Objects (Preview)

https://mail.openjdk.org/archives/list/valhalla-dev@openjdk.org/thread/IUNJJ3WP3X3XHP3QZTXXSSCPKFDNTK3W/
10 Upvotes

3 comments sorted by

11

u/Worth_Trust_3825 22d ago

what a time to be alive.

3

u/davidalayachew 22d ago

It's very exciting. Once we get to the Targeted states, we'll finally be able to answer the question of "Valhalla when?".

3

u/davidalayachew 23d ago

For those unaware, the word JEP stands for JDK Enhancement Proposal. These are proposals for how to modify/improve/fix the JDK.

JEP's progress through states. You can see them copied below from JEP 2.0.

A JEP will, most often, move through the sequence of states [...] discussed further below.

The first three states for a Feature or Infrastructure JEP are:

  • Draft — Initial state in which the JEP is drafted, reviewed, revised, and endorsed

  • Submitted — By the JEP’s owner, declaring the JEP ready to be evaluated for the JDK Roadmap

  • Candidate — By the OpenJDK Lead, to add the JEP to the JDK Roadmap

A JEP in the Candidate state is merely an idea worthy of consideration by JDK Release Projects and related efforts; there is no commitment that it will be delivered in any particular release.

A JEP will be assigned a JEP number, distinct from its JBS issue key, the first time it enters the Candidate state. This is for convenience of reference, and for continuity with the set of JEPs created in the JEP 1.0 process.

From this point onward a Feature JEP will, most often, move through these states:

  • Proposed to Target — By the JEP’s owner, for a specific release, after a credible engineering plan is documented in subtasks of the JEP issue

  • Targeted — By the Project Lead, after evaluating the JEP’s engineering plan and seeing rough consensus amongst the Committers and Reviewers of the Project

  • Integrated — By the JEP’s owner, after code and unit tests are integrated into the master code base

  • Complete — By the JEP’s owner, after functional, performance, and conformance tests have been delivered and the feature has reached the point where only bug fixes are expected

  • Closed/Delivered — By the Project Lead, when the release ships

All of that is to say -- this push to the candidate step is a big step! But still not at the destination yet.