Release Process
Right after update release 11.0.<n-1> was branched from mercurial repository jdk11u-dev to jdk11u, the release cycle for release 11.0.<n> starts. As the very first step, the jdk11u-dev repository will be tagged with jdk11.0.<n>+0. One of the first changes should be to bump the version, e.g. something similar to JDK-8219710. At about 6 weeks before its general availability (GA), an update release enters ramp down phase 2 (RDP2) and the current state of jdk11u-dev will be transported to jdk11u. From that point onwards, the update release is stabilized by only accepting very select fixes in jdk11u. Eligible candidates are fixes that Oracle has brought to their correspondent JDK11 update release, fixes for high priority issues or test fixes. Builds from jdk11u will be tagged on a weekly basis, when new changesets have been pushed. The tags will have the format of jdk11.0.<n>+<build>, where <n> is the placeholder for the update release and <build> is the monotonically increasing build number. Each tag that gets set in jdk11u will be integrated back to jdk11u-dev in a timely manner. At about 2 weeks before GA, a complete freeze will be anounced for jdk11u, allowing the maintainers of the security changes (currently Red Hat) to integrate and test the collected fixes in a secure, internal environment. At the release day, these will be merged into jdk11u and the final tags jdk11.0.<n>+<build> and jdk11.0.<n>-ga will be set.
Release engineers checklist
When | What |
---|---|
Very early, e.g. 6 months before GA | Publish timeline on Wiki page |
Create release specific JBS filters, e.g. for monitoring backports to keep in sync with Oracle | |
~ 6 weeks before GA | Merge jdk11u-dev to jdk11u: 1. On jdk11u-dev repository:
2. On jdk11u repository:
|
Announce (short) freeze of jdk11u-dev for preparation of release 11.0.<n+1>on the mailing list | |
Set status of jdk11u-dev to "closed" and jdk11u to "accepting fixes for 11.0.<n>" in Wiki | |
Tag jdk11u-dev with jdk11.0.<n+1>+0:
| |
Request new JBS version 11.0.<n+1> and change of hgupdater settings for jdk11u-dev codeline to honor new version on push | |
Update JBS filter https://bugs.openjdk.java.net/issues/?filter=36558 that shows eligible critical fixes Add version 11.0.<n> to fixVersion | |
Create patch to bump the version in jdk11u-dev to 11.0.<n+1>, look at JDK-8219710 for an example. | |
Await confirmation for hgupdater change, then update Wiki to set status of jdk11u-dev to "accepting changes for 11.0.<n+1>", announce opening of jdk11u-dev for new release on mailing list | |
Update https://bugs.openjdk.java.net/issues/?filter=36412 that shows eligible fixes for pushing Add version 11.0.<n+1> to fixVersion | |
~6 weeks before GA until ~2 weeks before GA in a weekly rythm initial tag (b1) to be done right after merge from jdk11u-dev | Tag jdk11u and merge back to jdk11u-dev: 1. On jdk11u repository:
2. On jdk11u-dev repository:
|
release day, when security changes and jdk-11.0.<n>-ga tag have been pushed | Sync ga tag back to jdk11u-dev: 1. On jdk11u repository:
2. On jdk11u-dev repository:
|
Set status of jdk11u to "closed" | |
Request new hgupdater setting for jdk11u codeline to honor version 11.0.<n+1> on push |