Skip to content

ci: test against Ruby 4.0 - #160

Open
eitoball wants to merge 7 commits into
masterfrom
ci/ruby-4.0
Open

ci: test against Ruby 4.0#160
eitoball wants to merge 7 commits into
masterfrom
ci/ruby-4.0

Conversation

@eitoball

@eitoball eitoball commented Aug 8, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Ruby 4.0 (released 2025-12-25, currently at 4.0.6) をビルドマトリックスに追加
  • Ruby 3.4 追加時と同様、precompiled native gem 未対応のリスクに備えて BUNDLE_FORCE_RUBY_PLATFORM を 4.0 でも有効化

Test plan

  • CI (GitHub Actions) が全 gemfile 組み合わせで green になることを確認

Copilot AI lite review requested due to automatic review settings August 8, 2026 06:34

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds Ruby 4.0 to the GitHub Actions build matrix for this gem, aligning CI coverage with the newly released Ruby version and extending the existing BUNDLE_FORCE_RUBY_PLATFORM mitigation used for Ruby 3.4.

Changes:

  • Expand CI Ruby matrix to include Ruby 4.0.
  • Enable BUNDLE_FORCE_RUBY_PLATFORM for Ruby 4.0 in addition to Ruby 3.4.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Copilot AI review requested due to automatic review settings August 8, 2026 06:49

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 2 out of 11 changed files in this pull request and generated no new comments.

Suppressed comments (1)

.github/workflows/build.yml:9

  • The Ruby CI matrix drops Ruby 3.0 (previously tested) without any corresponding update to the documented support/testing range. README.md states “You need Ruby 3.0 or later” and that CI is tested on Ruby 3.0–3.4; if Ruby 3.0 is still supported, it should remain in the matrix (or the docs/support policy should be updated in a separate change).
      matrix:
        ruby: ['3.1', '3.2', '3.3', '3.4', '4.0']
        gemfile: ['active6.0.6', 'active6.1.7.6', 'active7.0.8', 'active7.1.3', 'rails6.0.6', 'rails6.1.7.6', 'rails7.0.8', 'rails7.1.3']

Copilot AI review requested due to automatic review settings August 8, 2026 06:54

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 2 out of 11 changed files in this pull request and generated no new comments.

Suppressed comments (1)

.github/workflows/build.yml:8

  • The Ruby matrix drops 3.0 (now starts at 3.1), but the PR title/description only mention adding Ruby 4.0, and README.md states the project is tested on Ruby 3.0 through 3.4. If Ruby 3.0 support is still intended, add it back to the matrix; if not, please explicitly document the dropped support (e.g., update README and/or required_ruby_version) so the CI coverage matches the stated compatibility.
        ruby: ['3.1', '3.2', '3.3', '3.4', '4.0']

Copilot AI review requested due to automatic review settings August 8, 2026 06:57

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 2 out of 11 changed files in this pull request and generated no new comments.

Suppressed comments (1)

.github/workflows/build.yml:8

  • The CI matrix dropped Ruby 3.0 (previously tested) while the PR description only mentions adding Ruby 4.0. If Ruby 3.0 is still a supported/runtime target, this change reduces coverage and may be an unintended breaking change in CI expectations.
        ruby: ['3.1', '3.2', '3.3', '3.4', '4.0']

Copilot AI review requested due to automatic review settings August 8, 2026 07:04

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 2 out of 11 changed files in this pull request and generated no new comments.

Suppressed comments (1)

.github/workflows/build.yml:8

  • The CI matrix drops Ruby 3.0 (now starts at 3.1), but the PR description only mentions adding Ruby 4.0, and the repo docs state testing spans Ruby 3.0+ (e.g., README). If Ruby 3.0 support is still intended, it should remain in the CI matrix; otherwise the docs/support statement should be updated accordingly.
        ruby: ['3.1', '3.2', '3.3', '3.4', '4.0']

Copilot AI review requested due to automatic review settings August 8, 2026 07:07

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 2 out of 11 changed files in this pull request and generated no new comments.

Suppressed comments (1)

.github/workflows/build.yml:8

  • The CI matrix drops Ruby 3.0, but README.md currently states the gem requires Ruby 3.0+ and is tested on Ruby 3.0–3.4. Either Ruby 3.0 should remain in the matrix, or the documentation/support statement should be updated accordingly (and potentially any other Ruby-version assertions elsewhere).
        ruby: ['3.1', '3.2', '3.3', '3.4', '4.0']

Copilot AI review requested due to automatic review settings August 8, 2026 07:11

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 2 out of 11 changed files in this pull request and generated no new comments.

Suppressed comments (1)

.github/workflows/build.yml:8

  • The CI matrix now removes Ruby 3.0 (previously tested) even though the project documentation states Ruby 3.0+ and that CI covers Ruby 3.0–3.4. If Ruby 3.0 support is still intended, add it back to the matrix; if support is being dropped, the README (and ideally gemspec required_ruby_version) should be updated accordingly.
        ruby: ['3.1', '3.2', '3.3', '3.4', '4.0']

minitest has no single version supporting both Ruby 3.0 and 4.0
(5.26.x caps at < 4.0, 5.27.0 drops the cap but requires >= 3.1).
Ruby 3.0 is EOL, so drop it from the matrix and bump minitest.
rubocop's html_formatter requires ostruct, which is no longer a
default gem as of Ruby 4.0, causing bundle exec rubocop to fail
with a LoadError.
rubocop's exe/rubocop, rake, and activesupport require benchmark,
which is no longer a default gem as of Ruby 4.0.
rspec-core 3.5.x calls ERB.new with the deprecated 3-argument
signature, which Ruby 4.0 removed entirely, crashing `bundle exec
rspec` on startup. rspec-core 3.13.x fixed this.
activesupport, rake, and comma's own lib/comma.rb require logger,
which is no longer a default gem as of Ruby 4.0.
Old rack (used by the rails6/7 appraisal gemfiles) requires
cgi/cookie, which is no longer bundled with Ruby 4.0.
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