Skip to content

Step 22a/23 (Phase 6): Release — Create version bump + release prep scripts #172

Description

@Jordan231111

Summary

Create automation scripts for version bumping, tagging, and pre-release verification.

Depends On: All features and tests complete
Parent Issue: #14 (Final Release Preparation)

Key Changes

  1. Create `scripts/bump_version.sh`:
    • Accept bump type: major, minor, patch
    • Use `cargo set-version --bump ` (requires `cargo-edit`)
    • Commit the version change
    • Create a git tag (`v`)
    • Print instructions for pushing (don't auto-push)
  2. Create `scripts/prepare_release.sh`:
    • Run full verification: `cargo fmt --all -- --check`
    • Run `cargo clippy --all-targets --all-features -- -D warnings`
    • Run `cargo test --all-targets --all-features`
    • Run `cargo test -- --ignored`
    • Run `cargo test --doc`
    • Run `cargo audit` (if installed)
    • Build release: `cargo build --release`
    • Print binary size and SHA-256 checksum
    • Exit non-zero if any step fails
  3. Both scripts use `set -euo pipefail` and portable shebang

Acceptance Criteria

  • `bump_version.sh` correctly bumps version in Cargo.toml
  • `bump_version.sh` creates a commit and git tag
  • `prepare_release.sh` runs all verification checks (fmt, clippy, test, audit)
  • `prepare_release.sh` builds release binary and prints checksum
  • Both scripts fail cleanly on errors
  • Scripts are portable (bash, no platform-specific assumptions)

Metadata

Metadata

Assignees

No one assigned

    Labels

    area:releaseRelease process / CI release pipelinedifficulty:intermediateModerate complexityphase:6-polish-releasePolish, docs, testing, release (Steps 17–23)priority:p1Important but not blockingtrack:post-mvpDeferred until after the MVP demo; still aligned with the 2026 plan end goals

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions