Skip to content

Add release Rake tasks and idempotent release workflow - #89

Merged
atongen merged 1 commit into
mainfrom
release-tasks
Nov 4, 2026
Merged

atongen merged 1 commit into
mainfrom
release-tasks

Conversation

@atongen

@atongen atongen commented Nov 3, 2026

Copy link
Copy Markdown
Member

rake release:prepare[VERSION] sets Drip::VERSION and moves the [Unreleased] CHANGELOG.md entries under a dated section; prereleases (X.Y.Z.rcN) change only the version. rake release:tag checks branch, tree, tags, RubyGems, CHANGELOG.md, and CI on HEAD, then creates and pushes the tag after confirmation. rake release:notes renders the notes the workflow publishes. The decision logic lives in rakelib/release_tools and is unit tested. Bundler's rake release is removed; build and install remain.

release.yml builds the gem and notes in an unprivileged job, then creates a draft GitHub release, pushes the gem unless it is already on RubyGems, and publishes the draft in a separate job. Each step skips completed work, so a failed run can be re-run. Running the workflow manually is a dry run that uploads the gem and notes as an artifact.

rake release:prepare[VERSION] sets Drip::VERSION and moves the
[Unreleased] CHANGELOG.md entries under a dated section; prereleases
(X.Y.Z.rcN) change only the version. rake release:tag checks branch,
tree, tags, RubyGems, CHANGELOG.md, and CI on HEAD, then creates and
pushes the tag after confirmation. rake release:notes renders the
notes the workflow publishes. The decision logic lives in
rakelib/release_tools and is unit tested. Bundler's rake release is
removed; build and install remain.

release.yml builds the gem and notes in an unprivileged job, then
creates a draft GitHub release, pushes the gem unless it is already
on RubyGems, and publishes the draft in a separate job. Each step
skips completed work, so a failed run can be re-run. Running the
workflow manually is a dry run that uploads the gem and notes as an
artifact.
@atongen atongen self-assigned this Nov 3, 2026
@atongen
atongen marked this pull request as ready for review November 3, 2026 23:28
@atongen
atongen requested a review from a team as a code owner November 3, 2026 23:28
@atongen
atongen merged commit 8373c53 into main Nov 4, 2026
7 checks passed
@atongen
atongen deleted the release-tasks branch November 4, 2026 19:45
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.

2 participants