Skip to content

feat(makefile): add make release target#8

Merged
matthew-on-git merged 1 commit intomainfrom
feat/release-script
Mar 7, 2026
Merged

feat(makefile): add make release target#8
matthew-on-git merged 1 commit intomainfrom
feat/release-script

Conversation

@matthew-on-git
Copy link
Contributor

Summary

  • Adds scripts/release.sh — validates preconditions, updates CHANGELOG.md, commits, tags, and pushes to trigger existing build/release workflows
  • Adds make release VERSION=x.y.z Makefile target
  • Adds "Releasing" section to DEVELOPMENT.md documenting when/how to cut releases
  • Adds release and rust scopes to conventional commit scopes table

Context

When significant features are merged (e.g., a new language ecosystem), the developer needs to manually cut a release with the correct semver. Previously there was no script or documented process — features sat unreleased on main waiting for the weekly cron patch bump.

Test plan

  • bash scripts/release.sh --help — clean output
  • bash scripts/release.sh (no args) — clear error, exit 1
  • bash scripts/release.sh abc — semver validation error, exit 1
  • make release (no VERSION) — clear error, exit 2
  • make help — shows release target
  • make check — all checks pass

🤖 Generated with Claude Code

Adds scripts/release.sh and `make release VERSION=x.y.z` for cutting
manual releases when features warrant a specific semver (e.g., minor
bump for a new language). The script validates preconditions, updates
CHANGELOG.md, commits, tags, and pushes — triggering the existing
build and release workflows.

Weekly cron builds continue to handle routine patch bumps automatically.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@matthew-on-git matthew-on-git merged commit 8f30df1 into main Mar 7, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant