3.1 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:patchcreates the GitHub Release as a draft so desktop assets, APK uploads, and synced notes attach to itrelease:finalizepublishes npm and promotes the same draft release- Use the same semver tag for both; don't cut a second tag
- Desktop assets now come from the Electron package at
packages/desktop
Fixing a failed release build
NEVER bump the version to fix a build problem. New versions are reserved for meaningful product changes (features, fixes, improvements). Build/CI failures are fixed on the current version.
To retry a failed workflow for an existing tag:
- Retry via
workflow_dispatch— all release workflows supportworkflow_dispatchwith ataginput:gh workflow run "Desktop Release" -f tag=v0.1.28 # all platforms gh workflow run "Desktop Release" -f tag=v0.1.28 -f platform=macos # single platform gh workflow run "Android APK Release" -f tag=v0.1.28 gh workflow run "Deploy App" # no tag input needed - Platform-specific retry tags (desktop only) — push a tag like
desktop-macos-v0.1.28to rebuild just that platform against the release tag's code
If the fix requires a code change (e.g. a broken build script), commit the fix to main and use workflow_dispatch pointing at the existing tag — the workflow checks out the tag ref, but for build-tooling fixes you may need to point it at main or cherry-pick the fix onto the tag.
Notes
version:all:*bumps root + syncs workspace versions and@getpaseo/*dependency versionsrelease:preparerefreshes workspacenode_moduleslinks to prevent stale typesnpm run dev:desktopandnpm run build:desktoptarget the Electron desktop package inpackages/desktop- If
release:publishpartially fails, re-run it — npm skips already-published versions - Website Mac download CTA URL derives from
packages/website/package.jsonversion at build time
Completion checklist
- Update
CHANGELOG.mdwith user-facing release notes (features, fixes — not refactors) npm run release:patchcompletes successfully- GitHub
Desktop Releaseworkflow for thev*tag is green - GitHub
Android APK Releaseworkflow for the same tag is green - EAS
release-mobile.ymlworkflow for the same tag is green