The easiest way to publish a new version:
# Interactive mode - prompts for version type
npm run publish
# Or directly specify version type:
npm run publish:patch # For bug fixes (0.1.0 → 0.1.1)
npm run publish:minor # For new features (0.1.0 → 0.2.0)
npm run publish:major # For breaking changes (0.1.0 → 1.0.0)- Pre-checks: Ensures you're on main branch with no uncommitted changes
- Tests: Runs typecheck, lint, and build
- Version bump: Updates version in package.json
- Git operations: Commits, tags, and pushes
- Automated release: GitHub Actions handles the rest
GitHub Actions will automatically:
- Create a GitHub release with installation instructions
- Build binaries for all platforms (Linux, macOS Intel & ARM, Windows)
- Update the Homebrew formula with the new version
- Update Scoop manifest (if bucket repository exists)
Monitor progress at: https://github.com/embeddable-hq/embeddable-cli/actions
If the automated update fails:
-
Get the SHA256 of the new release:
curl -L https://github.com/embeddable-hq/embeddable-cli/archive/refs/tags/v0.1.0.tar.gz | shasum -a 256 -
Update
embeddable-hq/homebrew-embeddablerepository:- Edit
Formula/embed.rb - Update
urlandsha256 - Commit and push
- Edit
- "You must be on the main branch": Switch to main with
git checkout main - "You have uncommitted changes": Commit or stash changes
- Build/lint failures: Fix issues and try again
- GitHub Actions failure: Check logs at the actions page