The JDK 9 project is experimenting with the idea of submission forests. A submission forest allows committers to submit a change for automatic build, test and integration with an upstream forest. Initially we have created plan a jdk9/hs-submit
forest which integrates will integrate to jdk9/hs
. This will allow non-Oracle committers to make changes to jdk9/hs
directly while still observing the Hotspot team's conventions for pre-integration build & test. Of course all the usual rules about who may make changes and how they are reviewed and approved will still apply.
A test version of the Hotspot submission forest exists today. The submission forest is jdk9/hs-demo-submit and its upstream forest is jdk9/hs-demo, a throw-away clone of jdk9/hs. Currently, push access to hs-demo-submit is restricted to a few beta testers.
Basic Operation
Submission forests are modeled after the JDK9 sandbox forest. The default branch of the submission forest is automatically sync'd with its upstream forest. Committers do their work on named branches with one branch used per fix. When a branch is pushed to the submission forest, it is automatically run through a predefined set of builds and tests. If this succeeds, the changes on the branch are moved as a single changeset to the default branch of the upstream forest. If a branch fails to build, pass tests or merge successfully into the upstream forest, no changes are made upstream. At the end of the process a status email is sent to the committer.
...