Guide for creating MobCrew releases.
- GitHub CLI:
brew install gh && gh auth login - Node.js:
brew install node
./scripts/release.sh 1.0.0This builds the app, creates a DMG, and publishes to GitHub Releases.
- All tests pass:
xcodebuild test -project MobCrew/MobCrew.xcodeproj -scheme MobCrew -destination 'platform=macOS' - Manual testing complete (see ../TESTING.md)
- Version number is appropriate (follow semver)
- No uncommitted changes:
git status
./scripts/release.sh 1.0.0 --draft- Visit the draft at https://github.com/colmarius/mobcrew/releases
- Download and test the DMG
- Delete the draft if issues are found
./scripts/release.sh 1.0.0- Release appears at https://github.com/colmarius/mobcrew/releases
- DMG downloads correctly
- App opens and runs on a clean Mac
- Major (1.0.0 → 2.0.0): Breaking changes
- Minor (1.0.0 → 1.1.0): New features
- Patch (1.0.0 → 1.0.1): Bug fixes
| Script | Purpose |
|---|---|
scripts/build-release.sh [version] |
Builds app with version injection |
scripts/create-dmg.sh <version> |
Creates DMG from built app |
scripts/release.sh <version> |
Full release (build → DMG → GitHub) |
gh auth loginbrew install nodeCheck Xcode is installed:
xcode-select --installThe create-dmg tool is downloaded via npx on first run. Ensure you have internet access.
Delete the existing release first:
gh release delete v1.0.0 --yes
git tag -d v1.0.0
git push origin :v1.0.0- Code Signing: Requires Apple Developer ID ($99/year)
- Notarization: Allows Gatekeeper approval
- GitHub Actions: Automate releases on tag push
- Sparkle: In-app auto-update mechanism