This project uses Conventional Commits with automated enforcement via git hooks.
<type>[optional scope]: <description>
[optional body]
[optional footer(s)]
- feat: New feature (triggers minor version bump)
- fix: Bug fix (triggers patch version bump)
- docs: Documentation changes
- style: Code style changes (formatting, missing semicolons, etc.)
- refactor: Code refactoring
- perf: Performance improvements (triggers patch version bump)
- test: Adding or updating tests
- build: Build system changes
- ci: CI/CD changes
- chore: Other changes
- revert: Revert a previous commit
Add ! after type/scope or add BREAKING CHANGE: in footer to trigger major version bump:
feat!: remove deprecated API
or
feat: new authentication system
BREAKING CHANGE: old auth tokens are no longer supported
feat: add WebSocket support for live transcription
fix: resolve memory leak in audio buffer
docs: update installation instructions
perf: optimize Whisper model loadingcargo release patch # 0.3.3 -> 0.3.4
cargo release minor # 0.3.3 -> 0.4.0
cargo release major # 0.3.3 -> 1.0.0This will NOT publish to crates.io (configured in release.toml).
Push to main branch and GitHub Actions will automatically:
- Analyze commits since last release
- Determine version bump based on commit types
- Update Cargo.toml
- Generate CHANGELOG.md
- Create git tag
- Create GitHub release
Version bumps follow this logic:
feat:commits -> minor bumpfix:orperf:commits -> patch bumpBREAKING CHANGE:or!-> major bump