Skip to content

Allow simplecov 1.x while keeping Ruby 3.1/3.2 installable - #765

Merged
andrehjr merged 1 commit into
splitrb:mainfrom
snaka:fix/simplecov-ruby-compat
Sep 27, 2026
Merged

andrehjr merged 1 commit into
splitrb:mainfrom
snaka:fix/simplecov-ruby-compat

Conversation

@snaka

@snaka snaka commented Sep 27, 2026

Copy link
Copy Markdown
Contributor

Summary

Replaces #764.

#764 bumps simplecov to ~> 1.3, but simplecov 1.3.0+ declares required_ruby_version >= 3.3. Since split still supports Ruby >= 3.1, bundle lock fails on the Ruby 3.1 and 3.2 jobs:

Because simplecov >= 1.3.0 depends on Ruby >= 3.3
  and Gemfile depends on simplecov ~> 1.3,

(The Ruby 3.3+ jobs in #764 were cancelled by fail-fast, not failing on their own.)

This PR widens the requirement to >= 0.15, < 2 instead, so Bundler resolves the newest simplecov compatible with each Ruby. There is no committed Gemfile.lock, so each CI job resolves independently. The spec helper only calls SimpleCov.start, which behaves the same on 0.x and 1.x.

Verification (local)

Ruby Rails simplecov resolved Result
3.1.6 7.1 0.22.0 522 examples, 0 failures
3.2.2 8.1 1.2.0 522 examples, 0 failures
3.3.5 8.1 1.3.1 522 examples, 0 failures
4.0.1 8.1 1.3.1 522 examples, 0 failures

RuboCop: no offenses.

🤖 Generated with Claude Code

simplecov 1.3.0 requires Ruby >= 3.3, so pinning `~> 1.3` (as proposed
in splitrb#764) breaks bundle resolution on Ruby 3.1 and 3.2, which split still
supports. Widen the requirement to `>= 0.15, < 2` so Bundler picks the
newest simplecov compatible with each Ruby (0.22 on 3.1, 1.2 on 3.2,
1.3 on 3.3+).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@andrehjr
andrehjr merged commit 86a4ef7 into splitrb:main Sep 27, 2026
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