https://github.com/rails/devcontainer
Ruby 4.0.4がdevcontainerのRubyフィーチャーのデフォルトバージョンに追加されました。単純なバージョン更新だけでなく、Ruby 4.0.4のビルドに必要な `--disable-install-doc` オプションを自動適用するための `run_ruby_install_command` ヘルパー関数が `install.sh` に追加され、バージョン固有のビルドオプション管理の拡張ポイントが整備されました。
Ruby 4.0.4 のインストール時にアップストリームのリグレッションでドキュメント生成が失敗する問題に対応するため、`mise` と `rbenv` の両インストールパスに `--disable-install-doc` ワークアラウンドを追加。共通ヘルパー関数 `run_ruby_install_command` にバージョン判定ロジックを集約することで、他バージョンへの影響なく Ruby 4.0.4 のみに修正を適用しています。
rails/devcontainerの`postgres-client`フィーチャーが、デフォルトでインストールするPostgreSQLクライアントのバージョンを15から17に変更しました。ベースイメージとして採用しているTrixie(Debian 13)の公式パッケージリポジトリでpostgresql-client-17が提供されていることに合わせた更新で、明示的にバージョンを指定している既存の設定への影響はありません。
QEMUエミュレーションを廃止し、arm64イメージをネイティブのarm64 Ubuntuランナー(ubuntu-24.04-arm)でビルドするよう変更されました。あわせて再利用可能ワークフローによるロジック集約と、カンマ/改行区切り入力を受け付けるRuby製正規化スクリプトの導入により、ワークフローの重複排除とGitHub Actions UIからの操作性向上も実現しています。
Ruby Dev Container Featureに`usePrecompiledRubies`オプションが追加され、miseを介してプリコンパイル済みRubyバイナリをオプトインで利用できるようになりました。デフォルトはソースビルドを維持し、`ruby.compile`設定を明示的に制御することでmiseのデフォルト変更にも影響されない設計が採用されています。Rubyイメージではこのオプションが明示的に有効化されています。
Ruby 3.2.x のEOL対応として、`MIN_RUBY_VERSION` を `"3.3.0"` へ引き上げ、バージョントラッキングリストから3.2系12エントリを削除しました。単一定数による最低バージョン管理と相対的なテストフィクスチャ設計が、変更を最小限のdiffに収めています。
rails/devcontainer に Ruby バージョン自動更新システムが追加されました。rbenv/ruby-build から新バージョンを検出し、自動的に設定を更新して PR を作成する GitHub Actions ワークフローと、責任を分離した複数のサービスクラス(RubyVersionChecker、RubyVersionAdder、RubyVersionPRCreator)により、手動での Ruby バージョン管理作業が不要になります。
rails/devcontainerにRuby 4.0.1と3.2.10が追加され、デフォルトバージョンが4.0.1に更新されました。同時にJSONファイルのインデントスタイルを4スペースに統一する変更も含まれています。
Ruby開発環境の管理スクリプト `add-ruby-version` を440行のNode.jsスクリプトから246行のRubyライブラリに書き直し、Node.js依存を完全に排除。Rubyバージョンリストの外部JSON化、391行のテストスイート追加、標準的なRubyプロジェクト構成への移行により、技術スタックの統一と保守性の向上を実現。