Welcome to OpenJDK 17 Updates!
OpenJDK 17 updates are part of the JDK updates project of the OpenJDK. Rob McKenna serves as the Project Lead. The list of Reviewers, Committers, and Authors can be found in the jdk updates section of the OpenJDK Census.
Maintainers
General Information
OpenJDK 17 updates will be delivered on the same established quarterly cycle used by Oracle i.e. "the Tuesday closest to the 17th day of January, April, July and October."
Development takes place in the jdk17u-dev Git repository and should be the primary place for OpenJDK committers to submit their work.
Code from the development repository is regularly tagged and promoted to the master jdk17u repository, which is used to stabilize and deliver the quarterly releases. Distributors should use this as their primary source for creating OpenJDK builds.
For further process details you might want to continue reading here.
Contributing
New fixes should first be submitted to the development repository for the current version of OpenJDK, jdk/jdk. Most changes submitted to the OpenJDK 17 project will be backports from this repository. Exceptions are made if an issue only applies to 17.
Everybody is encouraged to submit fixes for OpenJDK 17 by creating a pull request to the jdk17u-dev Git repository. Established community members will help new developers without commit access in getting their patch reviewed. For details on the process involved, continue reading these backport instructions.
Should you not be willing or not be able to drive a fix into JDK 17 updates, you can still suggest changes by dropping a mail to the jdk-updates-dev mailing list. But by only doing that, you are at the grace of the community to pick up your suggestion.
Fix Approvals
In general we follow the common rules for the jdk-updates project.
In addition this list, we will consider
- Build system improvements, particularly for stability and reproducibility
- Changes necessary to make 17u work on new operating systems and hardware
However, if there is an enhancement that provides substantial benefit to OpenJDK 17u users and it is of low risk, we will consider it. Please ask on the jdk-updates mailing list mailing list if you are in any doubt about whether your proposed backport might qualify.
If the backport requires more than just cosmetic changes (file location changes, copyright header updates) to apply to the 17u repository, it should first be submitted for review.
Push approval for a fix is requested by setting the jdk17u-fix-request label on the original JBS bug. The maintainers will either approve by setting jdk17u-fix-yes or reject by setting jdk17u-fix-no. Outstanding approvals can be monitored here. If and only if the fix gets approved, it may be pushed to the jdk17u-dev repository. Approved fixes show up in this JBS filter (login required).
During the later stages of a release cycle, the release enters rampdown. The master jdk17u repository contains the latest version of that release, while the jdk17u-dev repository is used to start work on the next release. If a change needs to be pushed to a release in rampdown, push approval can still be requested using the jdk17u-critical-request label. As the name of this tag suggests, this process is intended for fixes such as major regressions that must make the release. More minor bugs and new features should go in the next release being developed in jdk17u-dev. The maintainers may approve with jdk17u-critical-yes, defer to jdk17u-dev or reject altogether. Outstanding approvals for critical fixes can be monitored here. If, and only if, the fix gets approved with jdk17u-critical-yes, it may be pushed to the jdk17u repository. Approved critical fixes show up in this JBS filter (login required).
At the end of the month prior to the release month, the jdk17u repository is declared frozen so embargoed security fixes can be added in private during the final few weeks. On release day, the final version will be pushed to the jdk17u repository and source bundles made available.
Repositories
jdk17u-dev: Always open repository for development of upcoming JDK 17 Update releases. Pushes after jdk17u-fix-yes approval. Check here for clearance.
jdk17u: Repository used for Rampdown of JDK 17 Update releases. Pushes only during 4-weeks rampdown period after jdk17u-critical-yes approval. Check here for clearance.
Timelines
OpenJDK 17.0.4
- Tuesday, July 19 2022 GA; OpenJDK 17.0.4 released (tag: jdk-17.0.4-ga)
OpenJDK 17.0.5
- Wednesday, June 1 2022: jdk17u-dev repo open (tag: 17.0.5+0)
- Tuesday, August 2 2022: First merge from jdk17u-dev to jdk17u (tag: 17.0.5+1)
- Tuesday, August 30 2022: Rampdown; last merge from jdk17u-dev to jdk17u
- Tuesday, September 27 2022: Last tag before code freeze
- Tuesday, October 18 2022 GA; OpenJDK 17.0.5 released (tag: jdk-17.0.5-ga)
OpenJDK 17.0.6
- Wednesday, August 31 2022: jdk17u-dev repo open (tag: 17.0.6+0)
- Tuesday, November 1 2022: First merge from jdk17u-dev to jdk17u (tag: 17.0.6+1)
- Tuesday, December 6 2022: Rampdown; last merge from jdk17u-dev to jdk17u
- Tuesday, January 3 2023: Last tag before code freeze
- Tuesday, January 17 2023 GA; OpenJDK 17.0.6 released (tag: jdk-17.0.6-ga)
OpenJDK 17.0.7
- Wednesday, December 7 2022: jdk17u-dev repo open (tag: 17.0.7+0)
Releases
Latest GA release: 17.0.4
Older releases can be found in the archive.
Downloads
Latest Generally Available (GA) binary releases of the jdk17u stream of the OpenJDK jdk-updates project are available at: https://adoptium.net/temurin/archive
Latest Early Access (EA) binary releases of the jdk17u stream of the OpenJDK jdk-updates project are available at: https://adoptium.net/temurin/nightly
JBS Filters
Some filters will only work for users that are logged into JBS.
Standard Fix Requests
[All requests] [Approved requests] [Approved requests without push] [Unapproved requests]
Critical Fix Requests
[All requests] [Approved requests] [Approved requests without push] [Unapproved requests]
Filters for Release 17.0.3
17.0.3/all: OpenJDK but not OracleJDK: Changes in OpenJDK 17.0.3 that are not in OracleJDK 17.0.3.
17.0.3/all: OracleJDK but not OpenJDK: Changes backported to OracleJDK 17.0.3 but not in OpenJDK 17.0.3.
Filters for Release 17.0.4
17.0.4/all: OpenJDK but not OracleJDK: Changes in OpenJDK 17.0.4 that are not in OracleJDK 17.0.4.
17.0.4/all: OracleJDK but not OpenJDK: Changes backported to OracleJDK 17.0.4 but not in OpenJDK 17.0.4.
17.0.4/new: OracleJDK but not OpenJDK: Changes new in OracleJDK 17.0.4 but not in OpenJDK 17.0.4.
Filters for Release 17.0.5
17.0.5/all: OpenJDK but not OracleJDK: Changes in OpenJDK 17.0.5 that are not in OracleJDK 17.0.5.
17.0.5/all: OracleJDK but not OpenJDK: Changes backported to OracleJDK 17.0.5 but not in OpenJDK 17.0.5.
17.0.5/new: OracleJDK but not OpenJDK: Changes new in OracleJDK 17.0.5 but not in OpenJDK 17.0.5.
Common jdk17u JBS labels
The above filters exclude issues that are marked with the following labels:
- jdk17u-na Change does not apply to open jdk17u. In general, this is a change done by Oracle for their build or test infrastructure, for their own delivery or in their tests not open sourced. Any other change can also be not of interest to open jdk17u.