Releasing
All ongoing development is done on the next
branch. When preparing for a release, we'll create a release
branch which will eventually be merged into master
. This way, what's on master
is always what's published on npm
.
Release management is currently a manual process, to be performed by core team members only. Here's the process:
Create a
release
branch, usually based onnext
.Open a pull request for
release
->master
Write the release notes in the PR description.
Decide on the version number, taking care to follow semver. Do a pre-release before doing the actual release.
Run
yarn bump
to increment the version number in allpackage.json
files as well aslerna.json
.Commit the version change as "Release vX.X.X" (using the correct version number).
Tag the release commit with
git tag vX.X.X
(using the correct version number).Push the release commit AND tag:
git push --follow-tags
Publish each package (in
./packages
) to npm using the script below.Create a new release on GitHub and copy the release notes there.
Take care to publish the pkg
directory!
Last updated