WordPress Branch Status Update

Thank you everyone for helping work through this slightly different commit management process during the WordPress 5.0 release.

There’s some cleanup work to be done before we can get back to normal, but this shouldn’t take too long. There are 283 commits made to the 5.0 branch that need to be reviewed and ported to trunk. During WCUS Contributor Day, @nacin and a few other folks investigated methods for automating this process, but found that it wasn’t a viable option.

Instead, the fastest option is going to be a manual merge. I’ve created a spreadsheet with a list of all of the changes in the 5.0 branch, and the files they touched.

With a couple of workflow considerations, we can use this spreadsheet to avoid getting in each others way, and duplicating work:

  1. Assign yourself a commit that you’re working on merging. If there are multiple related commits that you’re going to work on, assign them all at the same time.
  2. There’s no need to commit every changeset individually, particularly those that will be overwritten by a later commit. For example, package.json or .travis.yml changes. Mark the earlier commits as Skipped.
  3. If you mark a changeset as Blocked or Skipped, leave a note with the reason.

Here are a few reminders while you’re running through changes:

  • Please read the Backporting Commits handbook page on best practices. If the svn merge command doesn’t apply cleanly, and you need to manually merge the commit, you can use the --record-only switch to record the merge, but not apply the changeset.
  • trunk is enforcing coding standards, so it’s a good idea to run composer install when you switch to trunk, then composer run format on the files you’re about to commit. grunt precommit will automatically do this.
  • Remember to add relevant information to the commit message:
    • “Merges [12345] from the 5.0 branch to trunk.”
    • Copy all props from the original commit.
    • “Fixes #54321“, so the relevant ticket is auto-closed.

@omarreiss and @atimmer are working on merging the @wordpress/* packages into the JavaScript reorganisation in trunk. All other changes without an assigned committer are up for grabs.

Finally, here is the status of the branches:

4.9 branch

The 4.9 branch is in normal status. As the previous major release, changes are only back ported on a case-by-base basis. There’s nothing to be merged from the 5.0 branch to the 4.9 branch.

5.0 branch

The 5.0 branch is closed until the work on porting changes to trunk is complete, at which point it returns to normal status. If the porting takes more than a few days, it may be returned to normal status for the purposes of releasing a 5.0.1 beta.

Trunk

Trunk is currently only open for merging changes from the 5.0 branch. After this work is complete, trunk is open for bug fixes, all features should be approved by @matt before committing.

#5-0