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 a jdk9/hs-submit
forest which integrates 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 still apply.
Submission Forests are modeled after the JDK9 Sandbox Forest. The default branch of the Submission Forest is kept in sync with the upstream forest. Committers do their work on branches with one branch used per fix. When a branch is pushed to the Submission Forest, it is automatically run through a pre-defined set of builds and tests. If this succeeds, the work is 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.