Skip to content

Fix release workflow and drop end-of-life Ruby/Rails versions - #89

Merged
lessthanjacob merged 3 commits into
mainfrom
chore/release-fix-and-version-cleanup
Jul 15, 2026
Merged

Fix release workflow and drop end-of-life Ruby/Rails versions#89
lessthanjacob merged 3 commits into
mainfrom
chore/release-fix-and-version-cleanup

Conversation

@lessthanjacob

Copy link
Copy Markdown
Contributor

Summary

Fixes the broken release workflow and cleans up end-of-life version support.

Release fix (fix(release): commit)

  • The release workflow was failing at the gem push step with Push host is missing! — the gemspec lacked allowed_push_host, which fac/ruby-gem-push-action requires. Added it.
  • Switched the release trigger from push to workflow_run on Tests, so a release only fires after the suite passes (matches the blueprinter pattern).
  • Pointed the test workflow at main — it was still keyed to master and never ran on the default branch.

Version cleanup (chore: commit)

  • Ruby 2.7–3.2 and Rails 7.0/7.1 are all end-of-life. Raised floors: required_ruby_version >= 3.3.0, activerecord >= 7.2.
  • Trimmed CI matrix to Ruby 3.3–3.4 × Rails 7.2/8.0 and removed the now-dead exclude block.
  • Removed rails-70/rails-71 appraisals + gemfiles; set rubocop TargetRubyVersion: 3.3; sorted gemspec dev deps.
  • Bumped to 1.2.0 with a CHANGELOG entry noting the dropped support.

Verification

Full matrix run locally — all green:

Ruby rails_72 rails_80
3.3
3.4

Ruby 4.0 held out of the matrix: current stable Rails isn't ostruct-clean on 4.0 yet (LoadError: cannot load such file -- ostruct). Revisit once Rails ships an ostruct-clean release.

Checklist:

  • I have updated the necessary documentation
  • I have updated the changelog, if necessary (CHANGELOG.md)
  • I have signed off all my commits as required by DCO
  • My build is green

🤖 Generated with Claude Code

lessthanjacob and others added 2 commits July 15, 2026 11:39
The release workflow failed at the gem push step with "Push host is
missing" because the gemspec lacked allowed_push_host metadata, which
fac/ruby-gem-push-action requires.

- Add allowed_push_host to sift.gemspec
- Switch release trigger from push to workflow_run on Tests so a release
  only fires after the test suite passes
- Point the test workflow at main; it was still keyed to master and thus
  never ran on the default branch

Co-authored-by: claude-code/anthropic.claude-opus-4-8 <noreply@anthropic.com>
Signed-off-by: Jacob Sheehy <jacobjsheehy@gmail.com>
Ruby 2.7-3.2 and Rails 7.0/7.1 are all end-of-life. Raise the floors,
trim the CI matrix to supported combinations, and bump the minor version
to signal the dropped support to consumers.

- required_ruby_version >= 3.3.0; activerecord >= 7.2
- CI matrix: Ruby 3.3-3.4 x Rails 7.2, 8.0 (drop dead exclude block)
- Remove rails-70/rails-71 appraisals and gemfiles
- TargetRubyVersion 3.3 in rubocop config; sort gemspec dev deps
- Bump to 1.2.0 with CHANGELOG entry

Co-authored-by: claude-code/anthropic.claude-opus-4-8 <noreply@anthropic.com>
Signed-off-by: Jacob Sheehy <jacobjsheehy@gmail.com>
@lessthanjacob
lessthanjacob requested a review from a team as a code owner July 15, 2026 15:45
@github-actions github-actions Bot added the repo label Jul 15, 2026
procore-oss requires all actions be pinned to a full SHA. Pin
actions/checkout and ruby/setup-ruby to the same SHAs already used in
the release workflow.

Co-authored-by: claude-code/anthropic.claude-opus-4-8 <noreply@anthropic.com>
Signed-off-by: Jacob Sheehy <jacobjsheehy@gmail.com>
@lessthanjacob
lessthanjacob merged commit 8aa6bfe into main Jul 15, 2026
11 checks passed
@lessthanjacob
lessthanjacob deleted the chore/release-fix-and-version-cleanup branch July 15, 2026 16:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants