Re: [External] : Re: JDK 19: Rampdown Phase 1 + EA builds 26 & JDK 20: EA builds 1

2022-06-15 Thread David Delabassee

Noted, thanks for the feedback!

--David

On 15/06/2022 12:32, Martin Grigorov wrote:

Hi David,

Apache Tomcat's build and tests pass successfully with 
JDK 19-ea+26-2060 and 20-ea+1-3 on Linux x86_64 and aarch64!


Regards,
Martin

On Tue, Jun 14, 2022 at 11:00 AM Martin Grigorov 
 wrote:


Hello Tomcat devs,

The following test fails with JDK 19 b26:

 [concat] Testsuites with failed tests:
   [concat] TEST-javax.el.TestImportHandlerStandardPackages.APR.txt
   [concat] TEST-javax.el.TestImportHandlerStandardPackages.NIO.txt
   [concat] TEST-javax.el.TestImportHandlerStandardPackages.NIO2.txt


Testsuite: javax.el.TestImportHandlerStandardPackages
Tests run: 1, Failures: 1, Errors: 0, Skipped: 0, Time elapsed:
0.35 sec

Testcase: testClassListsAreComplete took 0.326 sec
        FAILED
java.lang.MatchException
junit.framework.AssertionFailedError: java.lang.MatchException
        at

javax.el.TestImportHandlerStandardPackages.lambda$checkPackageClassList$13(TestImportHandlerStandardPackages.java:87)
        at

java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:183)
        at

java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179)
        at

java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179)
        at

java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179)
        at

java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179)
        at

java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
        at

java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
        at

java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179)
        at

java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179)
        at

java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
        at

java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
        at

java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179)
        at

java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179)
        at

java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179)
        at

java.base/jdk.internal.module.SystemModuleFinders$ModuleContentSpliterator.tryAdvance(SystemModuleFinders.java:573)
        at
java.base/java.util.Spliterator.forEachRemaining(Spliterator.java:332)
        at

java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
        at

java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499)
        at

java.base/java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:150)
        at

java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:173)
        at

java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
        at

java.base/java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:596)
        at

javax.el.TestImportHandlerStandardPackages.checkPackageClassList(TestImportHandlerStandardPackages.java:87)
        at

javax.el.TestImportHandlerStandardPackages.testClassListsAreComplete(TestImportHandlerStandardPackages.java:49)
        at

java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104)


On Mon, Jun 13, 2022 at 4:46 PM David Delabassee
 wrote:

Greetings!

JDK 19 has now entered Rampdown Phase One (RDP1) [1], which
means that
the main-line has been forked into a dedicated JDK 19
stabilization
repository. At this point, the overall JDK 19 feature set is
frozen and
no additional JEPs will be targeted to JDK 19. The stabilization
repository is open for select bug fixes and, with approval, late
low-risk enhancements per the JDK Release Process [2]. Any
change pushed
to the main line is now bound for JDK 20, unless it is explicitly
back-ported to JDK 19.

The next few weeks should be leveraged to try to identify and
resolve as
many issues as possible, i.e. before JDK 19 enters the Release
Candidates phase. Moreover, we encourage you to test your
project with
the `enable-preview` flag as described in this Quality
Outreach Heads-up
[3], and even if you don't intend to use Virtual Threads in
the near future.

[1]
https://mail.openjdk.java.net/pipermail/jdk-dev/2022-June/006735.html
[2] 

Re: JDK 19: Rampdown Phase 1 + EA builds 26 & JDK 20: EA builds 1

2022-06-15 Thread Martin Grigorov
Hi David,

Apache Tomcat's build and tests pass successfully with JDK 19-ea+26-2060
and 20-ea+1-3 on Linux x86_64 and aarch64!

Regards,
Martin

On Tue, Jun 14, 2022 at 11:00 AM Martin Grigorov 
wrote:

> Hello Tomcat devs,
>
> The following test fails with JDK 19 b26:
>
>  [concat] Testsuites with failed tests:
>[concat] TEST-javax.el.TestImportHandlerStandardPackages.APR.txt
>[concat] TEST-javax.el.TestImportHandlerStandardPackages.NIO.txt
>[concat] TEST-javax.el.TestImportHandlerStandardPackages.NIO2.txt
>
>
> Testsuite: javax.el.TestImportHandlerStandardPackages
> Tests run: 1, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 0.35 sec
>
> Testcase: testClassListsAreComplete took 0.326 sec
> FAILED
> java.lang.MatchException
> junit.framework.AssertionFailedError: java.lang.MatchException
> at
> javax.el.TestImportHandlerStandardPackages.lambda$checkPackageClassList$13(TestImportHandlerStandardPackages.java:87)
> at
> java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:183)
> at
> java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179)
> at
> java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179)
> at
> java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179)
> at
> java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179)
> at
> java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
> at
> java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
> at
> java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179)
> at
> java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179)
> at
> java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
> at
> java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
> at
> java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179)
> at
> java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179)
> at
> java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179)
> at
> java.base/jdk.internal.module.SystemModuleFinders$ModuleContentSpliterator.tryAdvance(SystemModuleFinders.java:573)
> at
> java.base/java.util.Spliterator.forEachRemaining(Spliterator.java:332)
> at
> java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
> at
> java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499)
> at
> java.base/java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:150)
> at
> java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:173)
> at
> java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
> at
> java.base/java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:596)
> at
> javax.el.TestImportHandlerStandardPackages.checkPackageClassList(TestImportHandlerStandardPackages.java:87)
> at
> javax.el.TestImportHandlerStandardPackages.testClassListsAreComplete(TestImportHandlerStandardPackages.java:49)
> at
> java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104)
>
>
> On Mon, Jun 13, 2022 at 4:46 PM David Delabassee <
> david.delabas...@oracle.com> wrote:
>
>> Greetings!
>>
>> JDK 19 has now entered Rampdown Phase One (RDP1) [1], which means that
>> the main-line has been forked into a dedicated JDK 19 stabilization
>> repository. At this point, the overall JDK 19 feature set is frozen and
>> no additional JEPs will be targeted to JDK 19. The stabilization
>> repository is open for select bug fixes and, with approval, late
>> low-risk enhancements per the JDK Release Process [2]. Any change pushed
>> to the main line is now bound for JDK 20, unless it is explicitly
>> back-ported to JDK 19.
>>
>> The next few weeks should be leveraged to try to identify and resolve as
>> many issues as possible, i.e. before JDK 19 enters the Release
>> Candidates phase. Moreover, we encourage you to test your project with
>> the `enable-preview` flag as described in this Quality Outreach Heads-up
>> [3], and even if you don't intend to use Virtual Threads in the near
>> future.
>>
>> [1] https://mail.openjdk.java.net/pipermail/jdk-dev/2022-June/006735.html
>> [2] https://openjdk.java.net/jeps/3
>> [3] https://inside.java/2022/05/16/quality-heads-up/
>>
>>
>> ## Heads-up - openjdk.java.net ➜ openjdk.org DNS transition
>>
>> The OpenJDK infrastructure is moving from the old openjdk.java.net
>> subdomain to the openjdk.org top-level domain. This will affect all
>> active subdomains (i.e., bugs, cr, db, git, hg, mail, and wiki) 

Re: JDK 19: Rampdown Phase 1 + EA builds 26 & JDK 20: EA builds 1

2022-06-14 Thread Martin Grigorov
On Tue, Jun 14, 2022 at 10:08 PM Christopher Schultz <
ch...@christopherschultz.net> wrote:

> Martin,
>
> On 6/14/22 14:42, Martin Grigorov wrote:
> > On Tue, Jun 14, 2022 at 3:07 PM Mark Thomas  wrote:
> >
> >>
> >>
> >> On 14/06/2022 09:00, Martin Grigorov wrote:
> >>> Hello Tomcat devs,
> >>>
> >>> The following test fails with JDK 19 b26:
> >>>
> >>>[concat] Testsuites with failed tests:
> >>>  [concat] TEST-javax.el.TestImportHandlerStandardPackages.APR.txt
> >>>  [concat] TEST-javax.el.TestImportHandlerStandardPackages.NIO.txt
> >>>  [concat] TEST-javax.el.TestImportHandlerStandardPackages.NIO2.txt
> >>
> >> Should be fixed now. Just needed to add the new class to the
> optimization.
> >>
> >
> > Any plans to backport it to
> >
> https://github.com/apache/tomcat/blob/9.0.x/java/javax/el/ImportHandler.java
> > ?
> > I am using 9.x for the testing here
>
> I think it was done. Seem commit messages with "Update optimisation for
> new java.lang class added in Java 19" in the subject.
>

Oh! Thanks!
I forgot that the commits to other branches but main are filtered by GMail.
The dev@ list is too loaded :-/



>
> -chris
>
> -
> To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
> For additional commands, e-mail: dev-h...@tomcat.apache.org
>
>


Re: JDK 19: Rampdown Phase 1 + EA builds 26 & JDK 20: EA builds 1

2022-06-14 Thread Christopher Schultz

Martin,

On 6/14/22 14:42, Martin Grigorov wrote:

On Tue, Jun 14, 2022 at 3:07 PM Mark Thomas  wrote:




On 14/06/2022 09:00, Martin Grigorov wrote:

Hello Tomcat devs,

The following test fails with JDK 19 b26:

   [concat] Testsuites with failed tests:
 [concat] TEST-javax.el.TestImportHandlerStandardPackages.APR.txt
 [concat] TEST-javax.el.TestImportHandlerStandardPackages.NIO.txt
 [concat] TEST-javax.el.TestImportHandlerStandardPackages.NIO2.txt


Should be fixed now. Just needed to add the new class to the optimization.



Any plans to backport it to
https://github.com/apache/tomcat/blob/9.0.x/java/javax/el/ImportHandler.java
?
I am using 9.x for the testing here


I think it was done. Seem commit messages with "Update optimisation for 
new java.lang class added in Java 19" in the subject.


-chris

-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



Re: JDK 19: Rampdown Phase 1 + EA builds 26 & JDK 20: EA builds 1

2022-06-14 Thread Martin Grigorov
On Tue, Jun 14, 2022 at 3:07 PM Mark Thomas  wrote:

>
>
> On 14/06/2022 09:00, Martin Grigorov wrote:
> > Hello Tomcat devs,
> >
> > The following test fails with JDK 19 b26:
> >
> >   [concat] Testsuites with failed tests:
> > [concat] TEST-javax.el.TestImportHandlerStandardPackages.APR.txt
> > [concat] TEST-javax.el.TestImportHandlerStandardPackages.NIO.txt
> > [concat] TEST-javax.el.TestImportHandlerStandardPackages.NIO2.txt
>
> Should be fixed now. Just needed to add the new class to the optimization.
>

Any plans to backport it to
https://github.com/apache/tomcat/blob/9.0.x/java/javax/el/ImportHandler.java
?
I am using 9.x for the testing here



> Mark
>
> -
> To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
> For additional commands, e-mail: dev-h...@tomcat.apache.org
>
>


Re: JDK 19: Rampdown Phase 1 + EA builds 26 & JDK 20: EA builds 1

2022-06-14 Thread Mark Thomas




On 14/06/2022 09:00, Martin Grigorov wrote:

Hello Tomcat devs,

The following test fails with JDK 19 b26:

  [concat] Testsuites with failed tests:
[concat] TEST-javax.el.TestImportHandlerStandardPackages.APR.txt
[concat] TEST-javax.el.TestImportHandlerStandardPackages.NIO.txt
[concat] TEST-javax.el.TestImportHandlerStandardPackages.NIO2.txt


Should be fixed now. Just needed to add the new class to the optimization.

Mark

-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



Re: JDK 19: Rampdown Phase 1 + EA builds 26 & JDK 20: EA builds 1

2022-06-14 Thread Martin Grigorov
Hello Tomcat devs,

The following test fails with JDK 19 b26:

 [concat] Testsuites with failed tests:
   [concat] TEST-javax.el.TestImportHandlerStandardPackages.APR.txt
   [concat] TEST-javax.el.TestImportHandlerStandardPackages.NIO.txt
   [concat] TEST-javax.el.TestImportHandlerStandardPackages.NIO2.txt


Testsuite: javax.el.TestImportHandlerStandardPackages
Tests run: 1, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 0.35 sec

Testcase: testClassListsAreComplete took 0.326 sec
FAILED
java.lang.MatchException
junit.framework.AssertionFailedError: java.lang.MatchException
at
javax.el.TestImportHandlerStandardPackages.lambda$checkPackageClassList$13(TestImportHandlerStandardPackages.java:87)
at
java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:183)
at
java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179)
at
java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179)
at
java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179)
at
java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179)
at
java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
at
java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
at
java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179)
at
java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179)
at
java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
at
java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
at
java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179)
at
java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179)
at
java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179)
at
java.base/jdk.internal.module.SystemModuleFinders$ModuleContentSpliterator.tryAdvance(SystemModuleFinders.java:573)
at
java.base/java.util.Spliterator.forEachRemaining(Spliterator.java:332)
at
java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
at
java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499)
at
java.base/java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:150)
at
java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:173)
at
java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
at
java.base/java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:596)
at
javax.el.TestImportHandlerStandardPackages.checkPackageClassList(TestImportHandlerStandardPackages.java:87)
at
javax.el.TestImportHandlerStandardPackages.testClassListsAreComplete(TestImportHandlerStandardPackages.java:49)
at
java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104)


On Mon, Jun 13, 2022 at 4:46 PM David Delabassee <
david.delabas...@oracle.com> wrote:

> Greetings!
>
> JDK 19 has now entered Rampdown Phase One (RDP1) [1], which means that
> the main-line has been forked into a dedicated JDK 19 stabilization
> repository. At this point, the overall JDK 19 feature set is frozen and
> no additional JEPs will be targeted to JDK 19. The stabilization
> repository is open for select bug fixes and, with approval, late
> low-risk enhancements per the JDK Release Process [2]. Any change pushed
> to the main line is now bound for JDK 20, unless it is explicitly
> back-ported to JDK 19.
>
> The next few weeks should be leveraged to try to identify and resolve as
> many issues as possible, i.e. before JDK 19 enters the Release
> Candidates phase. Moreover, we encourage you to test your project with
> the `enable-preview` flag as described in this Quality Outreach Heads-up
> [3], and even if you don't intend to use Virtual Threads in the near
> future.
>
> [1] https://mail.openjdk.java.net/pipermail/jdk-dev/2022-June/006735.html
> [2] https://openjdk.java.net/jeps/3
> [3] https://inside.java/2022/05/16/quality-heads-up/
>
>
> ## Heads-up - openjdk.java.net ➜ openjdk.org DNS transition
>
> The OpenJDK infrastructure is moving from the old openjdk.java.net
> subdomain to the openjdk.org top-level domain. This will affect all
> active subdomains (i.e., bugs, cr, db, git, hg, mail, and wiki) and the
> old hostnames (*.openjdk.java.net) will now act as aliases for the new
> names. No actions are required as this transition should be transparent
> and is mostly done. It should be mentioned that https://jdk.java.net/ is
> not changing.
>
> More infirmation can be found in the original proposal
> 

JDK 19: Rampdown Phase 1 + EA builds 26 & JDK 20: EA builds 1

2022-06-13 Thread David Delabassee

Greetings!

JDK 19 has now entered Rampdown Phase One (RDP1) [1], which means that 
the main-line has been forked into a dedicated JDK 19 stabilization 
repository. At this point, the overall JDK 19 feature set is frozen and 
no additional JEPs will be targeted to JDK 19. The stabilization 
repository is open for select bug fixes and, with approval, late 
low-risk enhancements per the JDK Release Process [2]. Any change pushed 
to the main line is now bound for JDK 20, unless it is explicitly 
back-ported to JDK 19.


The next few weeks should be leveraged to try to identify and resolve as 
many issues as possible, i.e. before JDK 19 enters the Release 
Candidates phase. Moreover, we encourage you to test your project with 
the `enable-preview` flag as described in this Quality Outreach Heads-up 
[3], and even if you don't intend to use Virtual Threads in the near future.


[1] https://mail.openjdk.java.net/pipermail/jdk-dev/2022-June/006735.html
[2] https://openjdk.java.net/jeps/3
[3] https://inside.java/2022/05/16/quality-heads-up/


## Heads-up - openjdk.java.net ➜ openjdk.org DNS transition

The OpenJDK infrastructure is moving from the old openjdk.java.net 
subdomain to the openjdk.org top-level domain. This will affect all 
active subdomains (i.e., bugs, cr, db, git, hg, mail, and wiki) and the 
old hostnames (*.openjdk.java.net) will now act as aliases for the new 
names. No actions are required as this transition should be transparent 
and is mostly done. It should be mentioned that https://jdk.java.net/ is 
not changing.


More infirmation can be found in the original proposal 
https://mail.openjdk.java.net/pipermail/discuss/2022-May/006089.html



## JDK 19 Early-Access builds

JDK 19 Early-Access builds 26 are now available [4], and are provided 
under the GNU General Public License v2, with the Classpath Exception. 
The Release Notes are available here [5]. Given that JDK 19 is now in 
RDP1, the initial JDK 20 Early-Access builds are now also available [6].


[4] https://jdk.java.net/19/
[5] https://jdk.java.net/19/release-notes
[6] https://jdk.java.net/20/


### JEPs integrated to JDK 19:
- JEP 405: Record Patterns (Preview)
- JEP 422: Linux/RISC-V Port
- JEP 424: Foreign Function & Memory API (Preview)
- JEP 425: Virtual Threads (Preview)
- JEP 426: Vector API (Fourth Incubator)
- JEP 427: Pattern Matching for switch (Third Preview)
- JEP 428: Structured Concurrency (Incubator)

### Recent changes that may be of interest:

Build 26:
- JDK-8284199: Implementation of Structured Concurrency (Incubator)
- JDK-8282662: Use List.of() factory method to reduce memory consumption
- JDK-8284780: Need methods to create pre-sized HashSet and LinkedHashSet
- JDK-8250950: Allow per-user and system wide configuration of a 
jpackaged app
- JDK-8236569: -Xss not multiple of 4K does not work for the main thread 
on macOS

- JDK-4511638: Double.toString(double) sometimes produces incorrect results
- JDK-8287714: Improve handling of JAVA_ARGS
- JDK-8286850: [macos] Add support for signing user provided app image
- JDK-8287425: Remove unnecessary register push for MacroAssembler::check_k…
- JDK-8283694: Improve bit manipulation and boolean to integer conversion o…
- JDK-8287522: StringConcatFactory: Add in prependers and mixers in batches

Build 25:
- JDK-8284960: Integration of JEP 426: Vector API (Fourth Incubator)
- JDK-8287244: Add bound check in indexed memory access var handle
- JDK-8287292: Improve TransformKey to pack more kinds of transforms effici…
- JDK-8287003: InputStreamReader::read() can return zero despite writing a …
- JDK-8287064: Modernize ProxyGenerator.PrimitiveTypeInfo

Build 24:
- JDK-8286908: ECDSA signature should not return parameters
- JDK-8261768: SelfDestructTimer should accept seconds
- JDK-8286304: Removal of diagnostic flag GCParallelVerificationEnabled
- JDK-8267038: Update IANA Language Subtag Registry to Version 2022-03-02
- JDK-8285517: System.getenv() returns unexpected value if environment vari…
- JDK-8285513: JFR: Add more static support for event classes
- JDK-8287024: G1: Improve the API boundary between HeapRegionRemSet and G1…
- JDK-8287139: aarch64 intrinsic for unsignedMultiplyHigh

Build 23:
- JDK-8282191: Implementation of Foreign Function & Memory API (Preview)
- JDK-8286090: Add RC2/RC4 to jdk.security.legacyAlgorithms
- JDK-8282080: Lambda deserialization fails for Object method references 
on interfaces
- JDK-6782021: It is not possible to read local computer certificates 
with the SunMSCAPI provider

- JDK-8282191: Implementation of Foreign Function & Memory API (Preview)
- JDK-8284194: Allow empty subject fields in keytool
- JDK-8209137: Add ability to bind to specific local address to HTTP client
- JDK-8286841: Add BigDecimal.TWO
- JDK-8287139: aarch64 intrinsic for unsignedMultiplyHigh
- JDK-8282160: JShell circularly-required classes cannot be defined
- JDK-8282280: Update Xerces to Version 2.12.2


## Topics of Interest

* Replacing Finalizers with