DiffDaily

Deep & Concise - OSS変更の定点観測

[rails/thor] Ruby 4.0対応とCI環境の更新

rails/thor

Context

Ruby 4.0が正式にリリースされたことを受け、ThorプロジェクトがRuby 4.0への対応を行いました。この変更により、最新のRubyバージョンでもThorを安心して使用できるようになります。

Technical Detail

CI環境へのRuby 4.0追加

GitHub ActionsのテストマトリックスにRuby 4.0が追加されました。これにより、Ruby 2.6から4.0までの全てのメジャーバージョンで継続的にテストが実行されるようになります。

matrix:
  ruby: ['2.6', '2.7', '3.0', '3.1', '3.2', '3.3', '3.4', '4.0', 'head']

開発環境の更新

Devcontainerの設定が更新され、デフォルトのRubyバージョンが3.4.5から4.0.0に変更されました。これにより、開発者は最新のRuby環境で即座に開発を開始できます。

{
  "name": "thor",
  "image": "ghcr.io/rails/devcontainer/images/ruby:4.0.0",
  "features": {
    "ghcr.io/devcontainers/features/github-cli:1": {}
  }
}

Bundlerバージョン制約の緩和

gemspecファイルでは、bundlerの開発依存関係の上限制約(< 3)が削除されました。これにより、将来のBundlerバージョンとの互換性が確保されます。

spec.add_development_dependency "bundler", ">= 1.0"

変更前は "bundler", ">= 1.0", "< 3" と上限が設定されていましたが、Ruby 4.0時代を見据えて制約を緩和しています。

Impact

これらの変更により、Thorは以下のようなメリットを得ます:

  • Ruby 4.0での動作保証
  • CI環境での継続的な互換性検証
  • 開発環境の最新化によるモダンな開発体験
  • 将来のBundlerバージョンへの柔軟な対応

Thorを使用しているプロジェクトは、Ruby 4.0へのアップグレードをより安心して進められるようになります。