Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[jetty-dev] JDK 19: Rampdown Phase 1 + EA builds 26 & JDK 20: EA builds 1
  • From: David Delabassee <david.delabassee@xxxxxxxxxx>
  • Date: Mon, 13 Jun 2022 16:01:17 +0200
  • Arc-authentication-results: i=1; 1; spf=pass; dmarc=pass action=none; dkim=pass; arc=none
  • Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed;; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=zF19xOknNhBmbeMf1YYH04jU/FBRLuUo0Pwx3I12lJc=; b=fG0Z5wju4e3frnboFlFvpQCxveDS0q6JfVPj37HzfgE7zWCPJGiuq49aLiVE07GqGWeSInxQ2U9bt/IdBQsL9ljXby3uMr2zGm3YEi/9xEc3dRnHx3cQhTYIJYaoRGmdWuzjBf3srmhGBasQo3D4cipbOgyndDxAqaEq7At+9zDuU9qumqN3tjvOTZ6WPbsBQJSbMLK+ynPLXlPfYDPjDjvl6IqPbd/yI1Z4117fJchfv3tp+4/yWj1/PItVA6mCoMvSr/8PrGncUAKboQSokJRw1mUprmtCgOAJjlBalmo0XRsUwQyO63k0crENQpgc3T1FV8nw+o2FNDgb40zzyg==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector9901;; cv=none; b=mjZVaYSu/ZFhWur/cwmRcMyy2MrM5+th8KjQJYT00mpBAlF7FEq19fADa2JpjwtPGZe5PLuFQ2DeeZJ80H9eRj+cTjrOZGboJZ58l4S00darKKZY3Bk7CyAmSaQxvvE5AQcBjY2kQe5dgTHOwyy/qaXlQTBCC/TrKPDtMBC1WsPi9U3GFmdnQFb1zfyNaZRusoQ0wdsRbRSuYEHPXPpO7bTC5TWfyM71K9cm/ZNliQ5LpDoW5J8FObGtvJQLneuXMSODzLkJ3cnQ67XXPpFzZ6uGgwqA4XN13MvTbtEjt4K0SO86AMyeubTApt9FxVmTFFl/B6skcO3Oh9/sRnhzEw==
  • Delivered-to: jetty-dev@xxxxxxxxxxx
  • List-archive: <>
  • List-help: <>
  • List-subscribe: <>, <>
  • List-unsubscribe: <>, <>
  • User-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:91.0) Gecko/20100101 Thunderbird/91.10.0


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.


## Heads-up - ➜ DNS transition

The OpenJDK infrastructure is moving from the old subdomain to the top-level domain. This will affect all active subdomains (i.e., bugs, cr, db, git, hg, mail, and wiki) and the old hostnames (* 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 is not changing.

More information can be found in the original proposal

## 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].


### 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-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 Cleaners

* Testing Clean Cleaner Cleanup

* Improved JFR Ergonomics

* Java 19 Virtual Threads - JEP Café

* Deconstructing Records in Pattern Matching - Inside Java Newscast

* Concurrent Thread-stack Processing in the Z Garbage Collector

As usual, let us know if you find any issues while testing your project(s) on the latest JDK early-access builds. Thanks for your support!


Back to the top