- Go to the GitHub repository's Releases page
- Click Draft a new release
- Create a new tag with the format
vX.Y.Z(e.g.v1.9.0) - Add release notes describing the changes
- For pre-release versions, check Set as a pre-release (npm will use the
nexttag instead oflatest) - Click Publish release
The CI workflow will automatically:
- Set the version in
_version.pyandpackage.jsonfrom the tag - Build the Python and JavaScript packages
- Run the full test suite
- Publish to PyPI (trusted publishing via OIDC)
- Publish to npm (with provenance, using
NPM_TOKENsecret)
Both PyPI and npm publishing only happen if the build and all tests pass.