Portable build
This commit is contained in:
parent
932deebaf8
commit
307d61554a
218
SOURCES/NEWS
Normal file
218
SOURCES/NEWS
Normal file
@ -0,0 +1,218 @@
|
||||
Key:
|
||||
|
||||
JDK-X - https://bugs.openjdk.java.net/browse/JDK-X
|
||||
CVE-XXXX-YYYY: https://cve.mitre.org/cgi-bin/cvename.cgi?name=XXXX-YYYY
|
||||
|
||||
New in release OpenJDK 21.0.0 (2023-09-XX):
|
||||
===========================================
|
||||
Major changes are listed below. Some changes may have been backported
|
||||
to earlier releases following their first appearance in OpenJDK 21.
|
||||
|
||||
The full list of changes in 21u can be found at:
|
||||
- * https://builds.shipilev.net/backports-monitor/release-notes-21.txt
|
||||
|
||||
NEW FEATURES
|
||||
============
|
||||
|
||||
Language Features
|
||||
=================
|
||||
|
||||
Pattern Matching for switch
|
||||
===========================
|
||||
https://openjdk.org/jeps/406
|
||||
https://openjdk.org/jeps/420
|
||||
https://openjdk.org/jeps/427
|
||||
https://openjdk.org/jeps/433
|
||||
https://openjdk.org/jeps/441
|
||||
|
||||
Enhance the Java programming language with pattern matching for
|
||||
`switch` expressions and statements, along with extensions to the
|
||||
language of patterns. Extending pattern matching to `switch` allows an
|
||||
expression to be tested against a number of patterns, each with a
|
||||
specific action, so that complex data-oriented queries can be
|
||||
expressed concisely and safely.
|
||||
|
||||
This was a preview feature (http://openjdk.java.net/jeps/12)
|
||||
introduced in OpenJDK 17 (JEP 406), which saw a second preview in
|
||||
OpenJDK 18 (JEP 420), a third in OpenJDK 19 (JEP 427) and a fourth
|
||||
(JEP 427) in OpenJDK 20. It became final with OpenJDK 21 (JEP 441).
|
||||
|
||||
Record Patterns
|
||||
===============
|
||||
https://openjdk.org/jeps/405
|
||||
https://openjdk.org/jeps/432
|
||||
https://openjdk.org/jeps/440
|
||||
|
||||
Enhance the Java programming language with record patterns to
|
||||
deconstruct record values. Record patterns and type patterns can be
|
||||
nested to enable a powerful, declarative, and composable form of data
|
||||
navigation and processing.
|
||||
|
||||
This was a preview feature (http://openjdk.java.net/jeps/12) introduced
|
||||
in OpenJDK 19 (JEP 405) with a second preview (JEP 432) in OpenJDK 20.
|
||||
It became final with OpenJDK 21 (JEP 440).
|
||||
|
||||
String Templates
|
||||
================
|
||||
https://openjdk.org/jeps/430
|
||||
|
||||
Enhance the Java programming language with string templates. String
|
||||
templates complement Java's existing string literals and text blocks
|
||||
by coupling literal text with embedded expressions and template
|
||||
processors to produce specialized results.
|
||||
|
||||
This is a preview feature (http://openjdk.java.net/jeps/12) introduced
|
||||
in OpenJDK 21 (JEP 430).
|
||||
|
||||
Unnamed Patterns and Variables
|
||||
==============================
|
||||
https://openjdk.org/jeps/443
|
||||
|
||||
Enhance the Java language with unnamed patterns, which match a record
|
||||
component without stating the component's name or type, and unnamed
|
||||
variables, which can be initialized but not used. Both are denoted by
|
||||
an underscore character, _.
|
||||
|
||||
This is a preview feature (http://openjdk.java.net/jeps/12) introduced
|
||||
in OpenJDK 21 (JEP 443).
|
||||
|
||||
Library Features
|
||||
================
|
||||
|
||||
Vector API
|
||||
==========
|
||||
https://openjdk.org/jeps/338
|
||||
https://openjdk.org/jeps/414
|
||||
https://openjdk.org/jeps/417
|
||||
https://openjdk.org/jeps/426
|
||||
https://openjdk.org/jeps/438
|
||||
https://openjdk.org/jeps/448
|
||||
|
||||
Introduce an API to express vector computations that reliably compile
|
||||
at runtime to optimal vector hardware instructions on supported CPU
|
||||
architectures and thus achieve superior performance to equivalent
|
||||
scalar computations.
|
||||
|
||||
This is an incubation feature (https://openjdk.java.net/jeps/11)
|
||||
introduced in OpenJDK 16 (JEP 338). A second round of incubation took
|
||||
place in OpenJDK 17 (JEP 414), OpenJDK 18 (JEP 417) saw a third,
|
||||
OpenJDK 19 a fourth (JEP 426), OpenJDK 20 (JEP 438) a fifth and
|
||||
OpenJDK 21 a sixth (JEP 448).
|
||||
|
||||
Foreign Function & Memory API
|
||||
=============================
|
||||
https://openjdk.org/jeps/412
|
||||
https://openjdk.org/jeps/419
|
||||
https://openjdk.org/jeps/424
|
||||
https://openjdk.org/jeps/434
|
||||
https://openjdk.org/jeps/442
|
||||
|
||||
Introduce an API by which Java programs can interoperate with code and
|
||||
data outside of the Java runtime. By efficiently invoking foreign
|
||||
functions (i.e., code outside the JVM), and by safely accessing
|
||||
foreign memory (i.e., memory not managed by the JVM), the API enables
|
||||
Java programs to call native libraries and process native data without
|
||||
the brittleness and danger of JNI.
|
||||
|
||||
This API is now a preview feature (http://openjdk.java.net/jeps/12).
|
||||
It was first introduced in incubation
|
||||
(https://openjdk.java.net/jeps/11) in OpenJDK 17 (JEP 412), and is an
|
||||
evolution of the Foreign Memory Access API (OpenJDK 14 through 16) and
|
||||
Foreign Linker API (OpenJDK 16) (see release notes for
|
||||
java-17-openjdk). OpenJDK 18 saw a second round of incubation (JEP
|
||||
419) before its inclusion as a preview in OpenJDK 19 (JEP 424) and a
|
||||
second in OpenJDK 20 (JEP 434). It reaches a third preview in OpenJDK
|
||||
21 (JEP 442).
|
||||
|
||||
Virtual Threads
|
||||
===============
|
||||
https://openjdk.org/jeps/425
|
||||
https://openjdk.org/jeps/436
|
||||
|
||||
Introduce virtual threads to the Java Platform. Virtual threads are
|
||||
lightweight threads that dramatically reduce the effort of writing,
|
||||
maintaining, and observing high-throughput concurrent applications.
|
||||
|
||||
This is a preview feature (http://openjdk.java.net/jeps/12) introduced
|
||||
in OpenJDK 19 (JEP 425) and reaching its second preview in OpenJDK 20
|
||||
(JEP 436).
|
||||
|
||||
Structured Concurrency
|
||||
======================
|
||||
https://openjdk.org/jeps/428
|
||||
https://openjdk.org/jeps/437
|
||||
https://openjdk.org/jeps/453
|
||||
|
||||
Simplify multithreaded programming by introducing an API for
|
||||
structured concurrency. Structured concurrency treats multiple tasks
|
||||
running in different threads as a single unit of work, thereby
|
||||
streamlining error handling and cancellation, improving reliability,
|
||||
and enhancing observability.
|
||||
|
||||
This API is now a preview feature (http://openjdk.java.net/jeps/12) in
|
||||
OpenJDK 21 (JEP 453). It was first introduced in incubation
|
||||
(https://openjdk.java.net/jeps/11) in OpenJDK 19 (JEP 428) and had a
|
||||
second round of incubation in OpenJDK 20 (JEP 437).
|
||||
|
||||
Scoped Values
|
||||
=============
|
||||
https://openjdk.org/jeps/429
|
||||
|
||||
Introduce scoped values, which enable the sharing of immutable data
|
||||
within and across threads. They are preferred to thread-local
|
||||
variables, especially when using large numbers of virtual threads.
|
||||
|
||||
This API is now a preview feature (http://openjdk.java.net/jeps/12)
|
||||
in OpenJDK 21 (JEP 429). It was first introduced in incubation
|
||||
(https://openjdk.java.net/jeps/11) in OpenJDK 20 (JEP 429).
|
||||
|
||||
Sequenced Collections
|
||||
=====================
|
||||
https://openjdk.org/jeps/431
|
||||
|
||||
Introduce new interfaces to represent collections with a defined
|
||||
encounter order. Each such collection has a well-defined first
|
||||
element, second element, and so forth, up to the last element. It also
|
||||
provides uniform APIs for accessing its first and last elements, and
|
||||
for processing its elements in reverse order.
|
||||
|
||||
Key Encapsulation Mechanism API
|
||||
===============================
|
||||
https://openjdk.org/jeps/452
|
||||
|
||||
Introduce an API for key encapsulation mechanisms (KEMs), an
|
||||
encryption technique for securing symmetric keys using public key
|
||||
cryptography.
|
||||
|
||||
Virtual Machine Enhancements
|
||||
============================
|
||||
|
||||
Generational ZGC
|
||||
================
|
||||
https://openjdk.org/jeps/439
|
||||
|
||||
Improve application performance by extending the Z Garbage Collector
|
||||
(ZGC) to maintain separate generations for young and old objects. This
|
||||
will allow ZGC to collect young objects — which tend to die young —
|
||||
more frequently.
|
||||
|
||||
DEPRECATIONS
|
||||
============
|
||||
|
||||
Deprecate the Windows 32-bit x86 Port for Removal
|
||||
=================================================
|
||||
https://openjdk.org/jeps/449
|
||||
|
||||
Deprecate the Windows 32-bit x86 port, with the intent to remove it in
|
||||
a future release.
|
||||
|
||||
Prepare to Disallow the Dynamic Loading of Agents
|
||||
=================================================
|
||||
https://openjdk.org/jeps/451
|
||||
|
||||
Issue warnings when agents are loaded dynamically into a running
|
||||
JVM. These warnings aim to prepare users for a future release which
|
||||
disallows the dynamic loading of agents by default in order to improve
|
||||
integrity by default. Serviceability tools that load agents at startup
|
||||
will not cause warnings to be issued in any release.
|
||||
|
File diff suppressed because it is too large
Load Diff
1
SPECS/java-21-openjdk.spec
Symbolic link
1
SPECS/java-21-openjdk.spec
Symbolic link
@ -0,0 +1 @@
|
||||
../SOURCES/java-21-openjdk-portable.specfile
|
Loading…
Reference in New Issue
Block a user