We have a simple script to release npm packages from pnpm workspaces: cargo xtask workspace --bump
.
? Select a package to bump
> [ ] @vercel/node-module-trace
[ ] @vercel/webpack-node-module-trace
[↑↓ to move, space to select one, → to all, ← to none, type to filter]
Press space to select the package you want to publish. Press enter to choose the version type you want to bump:
? Select a package to bump @vercel/node-module-trace, @vercel/webpack-node-module-trace
? Version for @vercel/node-module-trace
patch
minor
> major
alpha
beta
canary
[↑↓ to move, enter to select, type to filter]
Note
This command will always increase the version according to the semver version.
For example, if the current version of one package is1.0.0
, and you choosepatch
, the version will be increased to1.0.1
.
Warning
If the version of one package is
1.0.0-beta.0
, and you choosealpha
, the cli will panic and exit. Because thebeta
<alpha
in semver.
Once you have finished the bump, the script will do the following things:
- bump the version you choose in the corresponding package
- update dependencies in other packages that depend on the package you choose
- update
pnpm-lock.yaml
file - run
git tag -s pkg@version -m "pkg@version"
for each package
You need to run git push --follow-tags
to finish the release.