Skip to content

Conversation

@joemsak
Copy link

@joemsak joemsak commented Jan 23, 2026

  • I bumped the gem version (or don't need to) 💎

Summary

  • Pin repo Ruby to 4.0.1 and make CI/CD read from .ruby-version.
  • Install native extension into lib/code_ownership/<major.minor>/ so platform gem builds can package multiple Ruby minors (3.2-4.0) without overwriting.
  • Ensure gem metadata allows Ruby 4.0 installs and avoid static analysis scanning build outputs.

Why

Previously published platform gems carried an unintended required_ruby_version < 3.5.dev, blocking Ruby 4 installs. Versioned native extension paths enable building a single platform gem that contains per-Ruby-minor binaries, so the published artifact can safely support Ruby >= 3.2 (including 4.0).

Test plan

  • bundle exec rake
  • bundle exec rubocop
  • bundle exec srb tc

Use .ruby-version as the single source of truth for typecheck and release jobs,
and add a CI job that runs the suite on the pinned patch version.
Install the compiled extension into lib/code_ownership/<major.minor>/ so cross-gem
can package multiple Ruby minors into a single platform gem without overwriting.
Exclude tmp/ and target/ from static analysis to avoid scanning vendored/compiled
build outputs.
Only ignore lib/code_ownership/<major.minor>/ so new Ruby source files under
lib/code_ownership/* aren't accidentally hidden.
This gem ships native binaries through Ruby 4.0, so restrict installs to < 4.1.dev
until we add 4.1 builds and CI coverage.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Triage

Development

Successfully merging this pull request may close these issues.

2 participants