Releasing Beta Versions

This is an initial outline of steps to take when releasing a betaBeta A pre-release of software that is given out to a large group of users to trial under real conditions. Beta versions have gone through alpha testing in-house and are generally fairly close in look, feel and function to the final product; however, design changes often occur as part of the process. version of WordPress. As you go through this process, please add to the steps below so future contributors have an easier experience.

Note: Folks testing packages using the WP-CLIWP-CLI WP-CLI is the Command Line Interface for WordPress, used to do administrative and development tasks in a programmatic way. The project page is may report warnings related to checksums. This is expected because checksums are not available for nightlies.

  • Open Releasing Minor Versions handbook page
  • For minor releases, verify that all closed tickets in the milestone have had their commits merged into the release (looking for tickets that lack fixed-major can narrow this down). Minor releases may optionally include beta releases. The decision is at the discretion of the release leadRelease Lead The community member ultimately responsible for the Release..
  • Announce in #coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. so nobody tries to commit
    • @committers Please refrain from committing until we get 4.8-beta2 released. (archive)
  • Verify latest Travis or GitHubGitHub GitHub is a website that offers online implementation of git repositories that can can easily be shared, copied and modified by other developers. Public repositories are free to host, private repositories require a paid subscription. GitHub introduced the concept of the ‘pull request’ where code changes done in branches by contributors can be reviewed and discussed before being merged be the repository owner. is clean
  • If doing a minor releaseMinor Release A set of releases or versions having the same minor version number may be collectively referred to as .x , for example version 5.2.x to refer to versions 5.2, 5.2.1, 5.2.3, and all other versions in the 5.2 (five dot two) branch of that software. Minor Releases often make improvements to existing features and functionality., check out the release branchbranch A directory in Subversion. WordPress uses branches to store the latest development code for each major release (3.9, 4.0, etc.). Branches are then updated with code for any minor releases of that branch. Sometimes, a major version of WordPress and its minor versions are collectively referred to as a "branch", such as "the 4.0 branch".: svn switch '^/branches/4.7'
  • Remind people to update their current install or make a fresh install
  • Run all unit tests locally:
    • phpunit --stop-on-failure
    • phpunit --group ajax --stop-on-failure
    • phpunit -c tests/phpunit/multisite.xml --stop-on-failure
  • Ask a member of the Security team to run the private security unit testunit test Code written to test a small piece of code or functionality within a larger application. Everything from themes to WordPress core have a series of unit tests. Also see regression. suite, to make sure no regressions are introduced. If any are found, avoid discussing the details publicly, because some sites (like The community site where WordPress code is created and shared by the users. This is where you can download the source code for WordPress core, plugins and themes as well as the central location for community conversations and organization. run trunk or beta/RCs in production. Instead, notify the Security team privately.
  • Bump version.
    • Update the version in the package.json if it hasn’t been updated yet.
    • If the $wp_version is 4.8.1-beta1 then the version in package.json should be just 4.8.1.
    • If you are releasing an RC, then the $wp_version would be 4.8.1-RC1-src.
    • Update $wp_version to add the appropriate version identifier and remove the SVNSVN Subversion, the popular version control system (VCS) by the Apache project, used by WordPress to manage changes to its codebase. changeset number:
  • build the packages:
    • The release package needs to be built in mission control. Once it’s packaged, it needs to be tested well, including manually testing updates. (How do you do that? Checkout the docs.)
    • Enter build name?
    • Click button?
  • test them
  • another version bump
    • Commit: Post WordPress 4.8 Beta 2 version bump.
  • The nightly package now needs to be rebuilt in mission control after the previous commit appears at
  • Publish the announcement post
    • Matt can do this, or anyone with adminadmin (and super admin)/editor access to
  • Announce in #core that release is available
  • Announce to @committers that SVN committing in #core is open.
    • If an RC release, note the dev-feedback and dev-reviewed workflow is required prior to committing, where each commit must get double-signoff.
  • Write message in #core thanking and giving props to everyone who tested, and share this message into the #props channel.
  • If this is the first beta in the release cycle:
    • Add a new Milestone to Core TracTrac An open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress. for the next release version. For example, when releasing WordPress 5.0, add a Milestone for 5.1. You may need to ask someone with admin rights on Trac to do this.
    • A member of the Security team should email participants in our HackerOne program, encouraging them to find any new vulnerabilities before they make it into the stable release. See the Security Team handbook for details.

Last updated: