Release
Release a new version of cqs.
Arguments
- •
$ARGUMENTS— version bump type:major,minor, orpatch(default:patch)
Process
- •
Pre-flight checks:
- •
git status— must be clean (no uncommitted changes) - •
cargo test— all tests must pass - •
cargo clippy— no warnings - •Confirm on
mainbranch
- •
- •
Version bump:
- •Read current version from
Cargo.toml - •Calculate new version based on bump type
- •Update
Cargo.tomlversion field - •Run
cargo checkto updateCargo.lock
- •Read current version from
- •
Docs review: Run
/docs-review. Fix anything stale before cutting the release. - •
Changelog:
- •Read
CHANGELOG.md - •Add new section with version and date
- •Summarize changes since last release using
git logsince last tag - •Categorize: Added, Changed, Fixed, Removed
- •Read
- •
Commit and tag:
- •Create branch:
release/vX.Y.Z - •Commit:
chore: Release vX.Y.Z - •Create PR via PowerShell (WSL):
powershell.exe -Command 'gh pr create ...' - •Use
--body-filefor PR body (never inline heredocs) - •Wait for CI:
powershell.exe -Command 'gh pr checks N --watch'
- •Create branch:
- •
After PR merge:
- •Sync main:
git checkout main && git pull - •Tag:
git tag vX.Y.Z - •Push tag via PowerShell:
powershell.exe -Command 'cd C:\Projects\cq; git push origin vX.Y.Z' - •Publish:
cargo publish - •Create GitHub release via PowerShell with
--body-file
- •Sync main:
- •
Post-release:
- •Update PROJECT_CONTINUITY.md with new version
- •Update ROADMAP.md if phase milestones changed
WSL notes
- •All
git pushandghcommands go through PowerShell (Windows has credentials) - •Always use
--body-filefor PR/release bodies — never inline heredocs - •Write body content to
/mnt/c/Projects/cq/pr_body.md, use it, then delete