From iris.clark at oracle.com Fri May 3 17:10:25 2024 From: iris.clark at oracle.com (Iris Clark) Date: Fri, 3 May 2024 17:10:25 +0000 Subject: New Candidate JEP: 472: Prepare to Restrict the Use of JNI Message-ID: The following JEP with scope "SE" has been moved to the Candidate state: 472: Prepare to Restrict the Use of JNI https://openjdk.org/jeps/472 Summary: Issue warnings about uses of the Java Native Interface (JNI). These warnings aim to prepare developers for a future release that restricts the use of JNI by default in order to improve integrity by default. The warnings issued in this release, and the exceptions thrown in that future release, can be avoided by selectively enabling native access. Adjust the Foreign Function & Memory API (JEP? 454) to issue warnings in a consistent manner. A JEP in the Candidate state is a feature deemed worthy of consideration by the JDK Project, but with no commitment to deliver the feature in any particular release of the JDK Project. Later, the JEP may be moved to the Targeted state, which indicates that the feature is expected to appear in a specific release of the JDK Project. For more information about states, see the JEP Process document: https://openjdk.org/jeps/1 A JEP with "SE" scope that reaches the Targeted state will be listed in the Specification of the Java SE Platform JSR which corresponds to the targeted JDK Project release. A dashboard that lists JEPs with "SE" scope may be found via a link on this page: https://openjdk.org/projects/jdk/23/spec/ Thanks, Iris From iris.clark at oracle.com Tue May 7 18:49:02 2024 From: iris.clark at oracle.com (Iris Clark) Date: Tue, 7 May 2024 18:49:02 +0000 Subject: New Candidate JEP: 477: Implicitly Declared Classes and Instance Main Methods (Third Preview) Message-ID: The following JEP with scope "SE" has been moved to the Candidate state: 477: Implicitly Declared Classes and Instance Main Methods (Third Preview) https://openjdk.org/jeps/477 ? Summary: Evolve the Java programming language so that beginners can ? write their first programs without needing to understand language ? features designed for large programs. Far from using a separate ? dialect of the language, beginners can write streamlined declarations ? for single-class programs and then seamlessly expand their programs to ? use more advanced features as their skills grow. Experienced developers ? can likewise enjoy writing small programs succinctly, without the need ? for constructs intended for programming in the large. This is a preview ? language feature. A JEP in the Candidate state is a feature deemed worthy of consideration by the JDK Project, but with no commitment to deliver the feature in any particular release of the JDK Project. Later, the JEP may be moved to the Targeted state, which indicates that the feature is expected to appear in a specific release of the JDK Project. For more information about states, see the JEP Process document: https://openjdk.org/jeps/1 A JEP with "SE" scope that reaches the Targeted state will be listed in the Specification of the Java SE Platform JSR which corresponds to the targeted JDK Project release. A dashboard that lists JEPs with "SE" scope may be found via a link on this page: https://openjdk.org/projects/jdk/23/spec/ Thanks, Iris From iris.clark at oracle.com Tue May 7 18:52:28 2024 From: iris.clark at oracle.com (Iris Clark) Date: Tue, 7 May 2024 18:52:28 +0000 Subject: New Candidate JEP: 478: Key Derivation API (Preview) Message-ID: The following JEP with scope "SE" has been moved to the Candidate state: 478: Key Derivation API (Preview) https://openjdk.org/jeps/478 Summary: Introduce an API for Key Derivation Functions (KDFs), which are cryptographic algorithms for deriving additional keys from a secret key and other data. This is a preview API. A JEP in the Candidate state is a feature deemed worthy of consideration by the JDK Project, but with no commitment to deliver the feature in any particular release of the JDK Project. Later, the JEP may be moved to the Targeted state, which indicates that the feature is expected to appear in a specific release of the JDK Project. For more information about states, see the JEP Process document: https://openjdk.org/jeps/1 A JEP with "SE" scope that reaches the Targeted state will be listed in the Specification of the Java SE Platform JSR which corresponds to the targeted JDK Project release. A dashboard that lists JEPs with "SE" scope may be found via a link on this page: https://openjdk.org/projects/jdk/23/spec/ Thanks, Iris From iris.clark at oracle.com Thu May 9 18:55:21 2024 From: iris.clark at oracle.com (Iris Clark) Date: Thu, 9 May 2024 18:55:21 +0000 Subject: New Candidate JEP: 480: Structured Concurrency (Third Preview) Message-ID: The following JEP with scope "SE" has been moved to the Candidate state: 480: Structured Concurrency (Third Preview) https://openjdk.org/jeps/480 Summary: Simplify concurrent programming by introducing an API for structured concurrency. Structured concurrency treats groups of related tasks running in different threads as a single unit of work, thereby streamlining error handling and cancellation, improving reliability, and enhancing observability. This is a preview API. A JEP in the Candidate state is a feature deemed worthy of consideration by the JDK Project, but with no commitment to deliver the feature in any particular release of the JDK Project. Later, the JEP may be moved to the Targeted state, which indicates that the feature is expected to appear in a specific release of the JDK Project. For more information about states, see the JEP Process document: https://openjdk.org/jeps/1 A JEP with "SE" scope that reaches the Targeted state will be listed in the Specification of the Java SE Platform JSR which corresponds to the targeted JDK Project release. A dashboard that lists JEPs with "SE" scope may be found via a link on this page: https://openjdk.org/projects/jdk/23/spec/ Thanks, Iris From iris.clark at oracle.com Tue May 14 19:36:56 2024 From: iris.clark at oracle.com (Iris Clark) Date: Tue, 14 May 2024 19:36:56 +0000 Subject: JSR 398 (Java SE 23): JEP Proposed to Target: 477: Implicitly Declared Classes and Instance Main Methods (Third Preview) Message-ID: The following JEP with scope "SE" has been proposed to target JDK 23: 477: Implicitly Declared Classes and Instance Main Methods (Third Preview) https://openjdk.org/jeps/477 Summary: Evolve the Java programming language so that beginners can write their first programs without needing to understand language features designed for large programs. Far from using a separate dialect of the language, beginners can write streamlined declarations for single-class programs and then seamlessly expand their programs to use more advanced features as their skills grow. Experienced developers can likewise enjoy writing small programs succinctly, without the need for constructs intended for programming in the large. This is a preview language feature. The announced deadline for feedback to jdk-dev is Tue 21 May 23:59 UTC: https://mail.openjdk.org/pipermail/jdk-dev/2024-May/008960.html If there are no unresolved objections at that time, then the JEP will be moved to the Targeted state, indicating that the feature is expected to appear in the specified release of the JDK Project. For more information about states, see the JEP Process document: https://openjdk.org/jeps/1 A dashboard that lists JEPs with "SE" scope may be found via a link on this page: https://openjdk.org/projects/jdk/23/spec/ Thanks, Iris From iris.clark at oracle.com Tue May 14 19:40:45 2024 From: iris.clark at oracle.com (Iris Clark) Date: Tue, 14 May 2024 19:40:45 +0000 Subject: New Candidate JEP: 481: Scoped Values (Third Preview) Message-ID: The following JEP with scope "SE" has been moved to the Candidate state: 481: Scoped Values (Third Preview) https://openjdk.org/jeps/481 Summary: Introduce scoped values, which enable a method to share immutable data both with its callees within a thread, and with child threads. Scoped values are easier to reason about than thread-local variables. They also have lower space and time costs, especially when used together with virtual threads (JEP 444) and structured concurrency (JEP 480). This is a preview API. A JEP in the Candidate state is a feature deemed worthy of consideration by the JDK Project, but with no commitment to deliver the feature in any particular release of the JDK Project. Later, the JEP may be moved to the Targeted state, which indicates that the feature is expected to appear in a specific release of the JDK Project. For more information about states, see the JEP Process document: https://openjdk.org/jeps/1 A JEP with "SE" scope that reaches the Targeted state will be listed in the Specification of the Java SE Platform JSR which corresponds to the targeted JDK Project release. A dashboard that lists JEPs with "SE" scope may be found via a link on this page: https://openjdk.org/projects/jdk/23/spec/ Thanks, Iris From iris.clark at oracle.com Tue May 14 19:45:15 2024 From: iris.clark at oracle.com (Iris Clark) Date: Tue, 14 May 2024 19:45:15 +0000 Subject: New Candidate JEP: 482: Flexible Constructor Bodies (Second Preview) Message-ID: The following JEP with scope "SE" has been moved to the Candidate state: 482: Flexible Constructor Bodies (Second Preview) https://openjdk.org/jeps/482 Summary: In constructors in the Java programming language, allow statements to appear before an explicit constructor invocation, i.e., super(..) or this(..). The statements cannot reference the instance under construction, but they can initialize its fields. Initializing fields before invoking another constructor makes a class more reliable when methods are overridden. This is a preview language feature. A JEP in the Candidate state is a feature deemed worthy of consideration by the JDK Project, but with no commitment to deliver the feature in any particular release of the JDK Project. Later, the JEP may be moved to the Targeted state, which indicates that the feature is expected to appear in a specific release of the JDK Project. For more information about states, see the JEP Process document: https://openjdk.org/jeps/1 A JEP with "SE" scope that reaches the Targeted state will be listed in the Specification of the Java SE Platform JSR which corresponds to the targeted JDK Project release. A dashboard that lists JEPs with "SE" scope may be found via a link on this page: https://openjdk.org/projects/jdk/23/spec/ Thanks, Iris From iris.clark at oracle.com Mon May 20 21:27:53 2024 From: iris.clark at oracle.com (Iris Clark) Date: Mon, 20 May 2024 21:27:53 +0000 Subject: JSR 398 (Java SE 23): JEP Proposed to Target: 480: Structured Concurrency (Third Preview) Message-ID: The following JEP with scope "SE" has been proposed to target JDK 23: 480: Structured Concurrency (Third Preview) https://openjdk.org/jeps/480 Summary: Simplify concurrent programming by introducing an API for structured concurrency. Structured concurrency treats groups of related tasks running in different threads as a single unit of work, thereby streamlining error handling and cancellation, improving reliability, and enhancing observability. This is a preview API. The announced deadline for feedback to jdk-dev is Mon 27 May 23:59 UTC: https://mail.openjdk.org/pipermail/jdk-dev/2024-May/009015.html If there are no unresolved objections at that time, then the JEP will be moved to the Targeted state, indicating that the feature is expected to appear in the specified release of the JDK Project. For more information about states, see the JEP Process document: https://openjdk.org/jeps/1 A dashboard that lists JEPs with "SE" scope may be found via a link on this page: https://openjdk.org/projects/jdk/23/spec/ Thanks, Iris From iris.clark at oracle.com Mon May 20 21:32:23 2024 From: iris.clark at oracle.com (Iris Clark) Date: Mon, 20 May 2024 21:32:23 +0000 Subject: SR 398 (Java SE 23): JEP Proposed to Target: 482: Flexible Constructor Bodies (Second Preview) Message-ID: The following JEP with scope "SE" has been proposed to target JDK 23: 482: Flexible Constructor Bodies (Second Preview) https://openjdk.org/jeps/482 Summary: In constructors in the Java programming language, allow statements to appear before an explicit constructor invocation, i.e., super(..) or this(..). The statements cannot reference the instance under construction, but they can initialize its fields. Initializing fields before invoking another constructor makes a class more reliable when methods are overridden. This is a preview language feature. The announced deadline for feedback to jdk-dev is Mon 27 May 23:59 UTC: https://mail.openjdk.org/pipermail/jdk-dev/2024-May/009016.html If there are no unresolved objections at that time, then the JEP will be moved to the Targeted state, indicating that the feature is expected to appear in the specified release of the JDK Project. For more information about states, see the JEP Process document: https://openjdk.org/jeps/1 A dashboard that lists JEPs with "SE" scope may be found via a link on this page: https://openjdk.org/projects/jdk/23/spec/ Thanks, Iris From iris.clark at oracle.com Wed May 22 16:02:03 2024 From: iris.clark at oracle.com (Iris Clark) Date: Wed, 22 May 2024 16:02:03 +0000 Subject: JSR 398 (Java SE 23): JEP Proposed to Target: Message-ID: The following JEP with scope "SE" has been proposed to target JDK 23: 481: Scoped Values (Third Preview) https://openjdk.org/jeps/481 Summary: Introduce scoped values, which enable a method to share immutable data both with its callees within a thread, and with child threads. Scoped values are easier to reason about than thread-local variables. They also have lower space and time costs, especially when used together with virtual threads (JEP 444) and structured concurrency (JEP 480). This is a preview API. The announced deadline for feedback to jdk-dev is Wed 29 May 23:59 UTC: https://mail.openjdk.org/pipermail/jdk-dev/2024-May/009026.html If there are no unresolved objections at that time, then the JEP will be moved to the Targeted state, indicating that the feature is expected to appear in the specified release of the JDK Project. For more information about states, see the JEP Process document: https://openjdk.org/jeps/1 A dashboard that lists JEPs with "SE" scope may be found via a link on this page: https://openjdk.org/projects/jdk/23/spec/ Thanks, Iris From iris.clark at oracle.com Wed May 22 16:05:33 2024 From: iris.clark at oracle.com (Iris Clark) Date: Wed, 22 May 2024 16:05:33 +0000 Subject: JSR 398 (Java SE 23): JEP Proposed to Target: 481: Scoped Values (Third Preview) Message-ID: // now with correct subject! The following JEP with scope "SE" has been proposed to target JDK 23: 481: Scoped Values (Third Preview) https://openjdk.org/jeps/481 Summary: Introduce scoped values, which enable a method to share immutable data both with its callees within a thread, and with child threads. Scoped values are easier to reason about than thread-local variables. They also have lower space and time costs, especially when used together with virtual threads (JEP 444) and structured concurrency (JEP 480). This is a preview API. The announced deadline for feedback to jdk-dev is Wed 29 May 23:59 UTC: https://mail.openjdk.org/pipermail/jdk-dev/2024-May/009026.html If there are no unresolved objections at that time, then the JEP will be moved to the Targeted state, indicating that the feature is expected to appear in the specified release of the JDK Project. For more information about states, see the JEP Process document: https://openjdk.org/jeps/1 A dashboard that lists JEPs with "SE" scope may be found via a link on this page: https://openjdk.org/projects/jdk/23/spec/ Thanks, Iris