chore(release): add bin/release wrapper around rake release - #29
Merged
Merged
Conversation
Ported from pgbus. Computes the next patch/minor/major (or takes an explicit X.Y.Z), prints the commits since the last tag, refuses to run off a dirty or out-of-date main, asks for confirmation, then execs `rake release[X.Y.Z]` (with `,force` when --force is passed). `list` shows recent tags and what each bump would give; `--dry-run` previews without publishing. Claude-Session: https://claude.ai/code/session_011iBGuPiNBuk4HHq2CcQDXi
|
Running ultrareview automatically — This adds a new release automation script that computes versions and drives git operations; a subtle bug in version parsing or guards could cause a mis-tagged or unintended release, so a deeper review is warranted.. I'll post findings when complete. |
|
cubic can't run this ultrareview because your workspace has reached its monthly review limit. cubic has reviewed 121,023 of the 120,000 allowed lines of code this month. Reviews resume on 10 September 2026 (in 1 day). You've reached your flex budget. Increase your flex budget to resume reviews now, or learn how flex capacity spend limits work. To help optimise your usage, you can tune cubic to get the most out of your usage limits:
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Ports the
bin/releasescript from pgbus (same shape as kamal/trix/cosmos) so cutting a release is one command instead of working out the version by hand.bin/release→ patch bump,bin/release minor|major, orbin/release 0.4.0(v-prefix optional)bin/release list→ last 5 tags + what each bump would givebin/release --dry-run(-n) → prints current/next version and the commits since the last tag, publishes nothingbin/release --force(-f) → passesforcethrough to re-cut an existing tagmainthat matchesorigin/main; refuses an existing tag without--force; warns ifversion.rband the newest tag disagreeexec bundle exec rake "release[X.Y.Z]"— the existing Rakefile task is unchanged and still does the bump/docs-lockfile pin/build/commit/push/gh release createAlso points CLAUDE.md and
.claude/rules/git-workflow.mdatbin/releaseas the entry point.Test plan
bin/release --helpprints usagebin/release listshows v0.3.0…v0.2.6 and patch/minor/major = v0.3.1/v0.4.0/v1.0.0bin/release minor -nprints the commit log since v0.3.0 and exits without bumpingbin/release bogusexits 1 with "unknown argument"bundle exec rubocop lib speccleanbin/releasefrommainand confirm it hands off torake releaseas beforehttps://claude.ai/code/session_011iBGuPiNBuk4HHq2CcQDXi
Summary by cubic
Adds
bin/release, a wrapper aroundrake release, so cutting a release is one command instead of computing the version by hand. Therake release[X.Y.Z]task is unchanged;bin/releasecomputes the next version, shows the commits since the last tag, asks for confirmation, then hands off to it. Also pointsCLAUDE.mdand.claude/rules/git-workflow.mdatbin/releaseas the release entry point.Usage
bin/releasedoes a patch bump; passminor,major, or an explicitX.Y.Z(v-prefix optional).bin/release listshows recent tags and what each bump would give.--dry-run/-npreviews the version and commits without publishing;--force/-fre-cuts an existing tag.main, or when the tag already exists without--force.Written for commit a270843. Summary will update on new commits.