scripts/release.sh
— Automated Release Script (718 lines)
- Usage:
release.sh <version> [--dry-run] [--skip-tests] [--no-push]
- Full release pipeline: validate version, check prerequisites, check
git status, update version files, update changelog, run tests, build
release, create packages, create git tag, push to remote
- Validates semver format (
MAJOR.MINOR.PATCH)
- Creates/updates
src/d3tui/version.h and updates
VERSION in Makefile
- Generates tarball and optional zip archive
- Annotated git tag creation (
git tag -a vX.Y.Z)
- Colored terminal output with status indicators