Hi David,
thanks for heads-up.
About your request
> PS: Don't forget to update me about your plans related to Java 21.
we are glad to confirm that code in Syncope master branch is now requiring JDK
21 to build; moreover, JDK 22-ea is also checked by our GitHub actions
workflows.
Regards.
On 2023/10/20 09:40:46 David Delabassee wrote:
> Greetings!
>
> JDK 21 has been released (General Availability) on September 19th as planned. You can find
"The Arrival of Java 21" announcement here [1], and some additional Java 21 materials in the
"Topics of Interest" section below. On behalf of the entire Java team, let me send our
thanks to all of you. Through your active participation in this program, you are helping shape the
Java platform!
>
> Needless to say, that Java 21 is an important release, so may I ask you to
send me a brief email with the Java 21 support status of your project(s): Already
supported - Plan to support short-term - Don't plan to support short-term ?
>
> And now that JDK 21 is out, let's shift our attention to JDK 22 which will
enter the Rampdown Phase in less than 50 days on December 7 [2].
>
> I want to conclude this update by briefly mentioning three different
initiatives to are relevant to this group as they are, in their own way and at
various levels, contributing to adopt newer Java releases more rapidly: the
Class-File API, Oracle's Java Platform extension for VS Code, and the Java
Playground.
>
> ### The Class-File API
>
> The Class-File API is a new standard API for parsing, generating, and
transforming Java class files. One of its unique aspects is that it will co-evolve
with the class-file format, which overtime will greatly reduce the friction of
implementing new class-file features. With the fast-paced evolution of the Java
platform, this was much-needed. This API should soon be previewed and as it
matures, we expect the JDK to switch from using various custom class-file
libraries to this standard API. We also expect that overtime frameworks relying on
bytecode manipulation will also benefit from using this new JDK class-file
library. For more information, please check this recent Newscast [3] for an
overview, Brian Goetz's JVMLS session [4] for more details and design
considerations, and JEP 457: Class-File API (Preview) [5] for the technical
details.
>
> ### Oracle's Java Platform extension for Visual Studio Code
>
> Oracle has just announced [6] a new Visual Studio Code extension for Java
developers. Unlike other VS Code extensions, this new extension is using under the
hood the `javac` compiler for code editing and compilation, and OpenJDK's debugger
interface for debugging. This enables us to offer VS Code IDE support for new JDK
features as soon as they are introduced, even during JDK Early Access phases. To
this effect, this VS Code Extension will support the current JDK releases as well
as the next upcoming JDK version. For more information, please check the
announcement [6].
>
> ### The Java Playground
>
> The Java Playground [7] is an online sandbox that helps testing and exploring
new Java language features. No setup required, just type your Java snippet in your
browser and run it! Right now, the Playground is using Java 21 with Preview
Features enabled, and it will switch to a new Java version as soon as there is a
new Java language features integrated in OpenJDK Early-Access builds. The
Playground is focusing mostly on Project Amber and is certainly not mean to be
some sort of a lightweight online-IDE, it is instead a learning tool to play with
new Java language feature shortly after they have been integrated into the
platform.
>
> [1] https://inside.java/2023/09/19/the-arrival-of-java-21/
> [2] https://mail.openjdk.org/pipermail/jdk-dev/2023-September/008269.html
> [3] https://www.youtube.com/watch?v=bQ2Rwpyj_Ks
> [4] https://www.youtube.com/watch?v=pcg-E_qyMOI
> [5] https://openjdk.org/jeps/457
> [6] https://inside.java/2023/10/18/announcing-vscode-extension/
> [7] https://dev.java/playground
>
>
> ## Heads-Up - JDK 22: Implicit Annotation Processing Behavior Change
>
> As discussed in the July 2023 Quality Outreach update [8], starting in JDK 21
javac emits a note if _implicit_ annotation processing is being used, that is, if
one or more annotation processors are found and run from the class path when no
explicit annotation processing configuration options are used.
>
> The note is reported since, quoting from the note text: "A future release of javac
may disable annotation processing unless at least one processor is specified by name
(-processor), or a search path is specified (--processor-path, --processor-module-path), or
annotation processing is enabled explicitly (-proc:only, -proc:full)."
>
> That future version of javac has arrived in JDK 22 b19+ with JDK-8306819
("Consider disabling the compiler's default active annotation processing"). In the
situation where a note was emitted in JDK 21, in JDK 22 no note