Prepare release 99.99.99 - #515
Closed
GregoryTravis wants to merge 5 commits into
Closed
Conversation
Adds a script-driven release pipeline modeled on sdk-python (scripts/prepare_release.py + .github/workflows/release-publish.yml). Prep script (scripts/prepare_release.rb): - Bumps Temporalio::VERSION in temporalio/lib/temporalio/version.rb - Rolls CHANGELOG Unreleased into a dated [v<version>] section and re-seeds an empty Unreleased with the six standard headers - Refreshes temporalio/Gemfile.lock via bundle lock - Creates chore/release-<version> off origin/main, commits, pushes, and opens the prep PR via gh Rollback script (scripts/rollback_release.rb): - Cancels a pending Release Publish run (auto-discovered or --run-id) - Reverts the merged "Prepare release <v>" commit on main via a chore/rollback-<v> PR - Handles both merge-commit and squash-merge histories Workflows: - release-publish.yml: single workflow_dispatch on main. Reuses build-gems.yml, verifies version + changelog + full platform set, publishes via gems-publish.yml, smoke-tests from rubygems.org, creates a draft GitHub release - gems-publish.yml: reusable workflow_call-only publish step, using RubyGems Trusted Publishing (OIDC). Only file in the repo that runs gem push. Gated by the rubygems GitHub environment - build-gems.yml: added workflow_dispatch and workflow_call triggers alongside the existing push trigger Helpers: - .github/scripts/release_verify.rb: validate-version, changelog-notes, verify-dist subcommands used by release-publish.yml - .github/actions/release-smoke-package: composite action for post-publish install-and-run smoke test CHANGELOG: marks Breaking Changes with 💥 emoji per sdk-python convention, including current Unreleased and historical v1.5.0 sections. Tests: 21 prepare_release cases + 15 rollback_release cases, 100 assertions total, using stdlib minitest. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
# Conflicts: # .github/workflows/gems-publish.yml # .github/workflows/release-publish.yml
Allows the release branch to be based off a ref other than origin/main. Immediate use: full pre-merge rehearsal of the release automation (base the release branch off the automation branch itself, since main doesn't yet contain the real prep script or release-publish pipeline). Also useful for future hotfix flows that branch a release off a releases/* branch rather than main. Refs must be in origin/BRANCH form; the script fetches the specified branch from origin before creating the release branch off it. The default remains origin/main. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
GregoryTravis
had a problem deploying
to
rubygems
August 4, 2026 15:15 — with
GitHub Actions
Failure
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.
Prepare release 99.99.99.