Skip to content

Release Process

Rob Moran edited this page Mar 9, 2025 · 12 revisions

Checkout the main branch

git checkout main
git pull
git submodule update --init

Version

Bump the package.json version number as appropriate either manually v<M.M.P> or using:

npm version <major|minor|patch>

Build

Build the package locally and audit any dependencies to produce an up-to-date yarn.lock

yarn clean
yarn build:all

Changelog

Update the CHANGELOG file to reflect all changes in this release.

Commit

Ensure all local changes are staged and committed (and not pushed) to the main branch (if using npm version, amend the commit).

Use the package.json version number with a v prefix in the format vX.X.X (e.g. v1.6.5) for the message.

Tag & Push

If you didn't use npm version, tag the source using the version with a v prefix as above for the tagname:

git tag <tagname>
git push --atomic origin main <tagname>

Prebuilds

When a tag is pushed, the GH actions system will automatically create prebuild binaries for the release

Once the Github action has completed, download these binaries by running:

rm -rf prebuilds build
yarn prebuild-download

Test

Have a compatible physical test device set up and connected to the local machine. (Details)

yarn test

Publish

To undertake a normal (latest) npm publish run:

npm publish

To specify a tag (e.g, testing, alpha) use:

npm publish --tag alpha

Clone this wiki locally