This project uses a semi-automated tagging process to ensure that only stable, tested code reaches production.
- You must be on the
mainbranch. - Your working directory must be clean (
git status). - You must have the latest changes from origin (
git pull).
We provide two primary commands based on the scope of your changes:
npm run release:patchEffect: v1.0.0 → v1.0.1
npm run release:minorEffect: v1.0.0 → v1.1.0
When you run a release command, the following automated steps occur:
- Pre-check: Runs
npm run lintandnpm run test. If any test fails, the release is aborted to prevent broken tags. - Version Bump: Updates the version in
package.json. - Git Tag: Creates a new git tag matching the version (e.g.,
v1.0.1) and a Conventional Commit release commit such aschore(release): bump version to v1.0.1. - Push: Automatically pushes the new commit and the new tag to origin.
- Test Coverage: Ensure you've checked the current coverage (
npm run test -- --coverage) before tagging. We aim for high coverage on core pairing and auth logic. - Pull Requests: Always merge into
mainvia a PR. Once the PR is merged, run the release command from your localmainbranch.