Files
paseo/docs/RELEASE.md

1.8 KiB

Release

All workspaces share one version and release together.

Standard release (patch)

npm run release:patch

This bumps the version across all workspaces, runs checks, publishes to npm, and pushes the branch + tag (triggering desktop, APK, and EAS mobile workflows).

If asked to "release paseo" without specifying major/minor, treat it as a patch release.

Manual step-by-step

npm run version:all:patch    # Bump version, create commit + tag
npm run release:check        # Validate release
npm run release:publish      # Publish to npm
npm run release:push         # Push HEAD + tag (triggers CI workflows)

Draft release flow

npm run draft-release:patch    # Bump, push tag, create draft GitHub Release
npm run release:finalize       # Publish npm, promote draft to published
  • draft-release:patch creates the GitHub Release as a draft so desktop assets, APK uploads, and synced notes attach to it
  • release:finalize publishes npm and promotes the same draft release
  • Use the same semver tag for both; don't cut a second tag

Notes

  • version:all:* bumps root + syncs workspace versions and @getpaseo/* dependency versions
  • release:prepare refreshes workspace node_modules links to prevent stale types
  • If release:publish partially fails, re-run it — npm skips already-published versions
  • Website Mac download CTA URL derives from packages/website/package.json version at build time

Completion checklist

  • Update CHANGELOG.md with user-facing release notes (features, fixes — not refactors)
  • npm run release:patch completes successfully
  • GitHub Desktop Release workflow for the v* tag is green
  • GitHub Android APK Release workflow for the same tag is green
  • EAS release-mobile.yml workflow for the same tag is green