Releases are done via the Changesets Action which will open a pull request titled chore: version packages
if changesets are found in main
or a prerelease branch. The pull request gets automatically updated if new changesets are committed. The pull request details which packages will be released and their new versions according to the semantic ranges set in the changesets. The maintainers will review and merge the pull request when new releases are desired. Upon merging, the action will publish the newly versioned packages to npm, push up the new tags, and create GitHub releases.
- Create a new branch off
main
in the form ofrelease/**
(release/button-v2 for example) - Run
pnpm changeset pre enter [tag]
where tag isalpha
orbeta
depending on the state of release and commit the changes - Push your branch to remote
- Branch off the release branch and create PRs with changesets (as you would normally do in
main
) with the release branch set as the base - Observe that the Changesets Action opens prerelease PRs and the same process as noted above takes place
- When the release branch is finished and the packages are stable, exit pre mode with
pnpm changeset pre exit
and open a PR from the release branch intomain