ruby-trunk-changes 2026-05-07

今日は主に Refinements の super でのメソッド探索の不具合修正や bundler の Gemfile に書ける override という新しいメソッド(機能)の追加などがありました。

[070ebb3f0e] Kevin Menard 2026-05-05 23:19:36 UTC

ZJIT でブロックが Proc オブジェクト化されて EP がヒープに剥がされた時に PatchPoint を書き換えて JIT コンパイルされたコードを無効化する処理が PatchPoint を invariants.no_ep_escape_iseq_patch_points から消さないので繰り返しコールバックが呼ばれてしまっていたのを修正しています。

[53ce4ce085] Burdette Lamar 2026-05-06 23:32:41 UTC

Pathname#binread の rdoc 用コメントを追加しています。

[1b8c09e257] Burdette Lamar 2026-05-06 23:32:58 UTC

Pathname#binwrite メソッドの rdoc 用コメントを追加しています。 https://github.com/ruby/ruby/pull/16869

[773cb49eb8] Burdette Lamar 2026-05-06 23:38:23 UTC

Pathname#blockdev? および Pathname#chardev? の rdoc 用コメントを追加しています。

[aa9d3a28a5] Peter Zhu 2026-05-05 00:11:57 UTC

ObjectSpace.count_objects の rdoc 用コメントの手直し。

[dea0cae04a] Takashi Kokubun 2026-03-18 06:09:50 UTC

IO#wait のテストで sleep を使っていて結果が不安定だったのを IO.select を使うように修正しています。

[49d86f01c0] Hiroshi SHIBATA 2026-05-07 00:46:32 UTC

tool/sync_default_gems.rb で upstream から同期するリポジトリから cgi と pathname を削除しています。

[fafb55877a] Jeremy Evans 2026-05-04 04:29:09 UTC

Refinements 利用時の super で元のメソッドが再定義されている時にメソッド探索で再帰的な探索に陥ってスタックオーバーフローしたりする可能性があった不具合を修正しているようです。 [ruby-core:125398] [Bug #22022]

[4f28236d51] Peter Zhu 2026-05-07 01:21:20 UTC

拡張ライブラリ objspace の ObjectSpace.count_objects_size の rdoc 用コメントでの Hash#inspect の Symbol キーの表示の変更に追随させています。

[c4df92d6db] "dependabot[bot]" 2026-05-07 02:11:13 UTC

GitHub Actions の workflow で利用しているアクションのバージョンを更新しています。

[66b1559d39] Nobuyoshi Nakada 2026-05-07 04:54:05 UTC

拡張ライブラリ stringio の StringIO#pread で引数チェックを強化して offset に負数を渡した時に Errno::EINVAL を発生させる処理が機能していなかったのを修正しています。

[1d2d4ac734] Nobuyoshi Nakada 2026-05-07 05:31:30 UTC

拡張ライブラリ stringio で StringIO の内部のバッファの String オブジェクトを読み込み用のバッファとして指定した read を拒否するようにチェックを追加しています。

[560de053d1] "dependabot[bot]" 2026-05-01 18:14:06 UTC

rubygems の Rust 製拡張ライブラリのテストのためのプロジェクトの rb-sys パッケージのバージョンを更新しています。

[2c5da6f237] "Daisuke Fujimura (fd0)" 2026-05-04 09:54:35 UTC

rubygems の PLATFORM の指定の名前から Windows 版の cygwin の対応を削除しています。

[4758d1b5f3] Kazuhiro NISHIYAMA 2026-05-07 08:45:32 UTC

imemo.c で RUBY_DEBUG マクロが定義されている時だけ使われる変数のコンパイラ警告抑制のため preprocessor 分岐を追加しています。

[ff7ed1b345] Yuta Kurotaki 2026-04-23 20:26:56 UTC

bundler の Bundler::LockfileParser#initialize が lockfile でない文字列に対してチェックを強化して警告を発生させるようにしています。

[f7478ab13d] Yuta Kurotaki 2026-05-01 10:01:19 UTC

ff7ed1b345df902e42d414dad3cb6cc074849e64 の変更の RuboCop の指摘の反映。インデントの修正のみ。

[a42a6bc2ad] Hiroshi SHIBATA 2026-05-01 02:25:36 UTC

bundler に Bundler::Override というクラスを追加しています。これから追加する機能のための準備みたいです。

[bb1b229685] Hiroshi SHIBATA 2026-05-01 02:27:22 UTC

a42a6bc2adca25070706688b3b8247d26160364f からの続きで Bundler::Definition に overrides という attr を追加しています。これも新機能の準備みたいですね。

[199af7f7cb] Hiroshi SHIBATA 2026-05-01 02:30:50 UTC

a42a6bc2adca25070706688b3b8247d26160364f からの続きで bundler の Bundler::Dsl にも override という attr を追加しています。 Gemfile で gem のかわりに override というメソッドを書けるようにしています。なるほど、依存関係を無視して gem をインストールするみたいな機能かな。

[7a111bebbb] Hiroshi SHIBATA 2026-05-01 02:50:19 UTC

a42a6bc2adca25070706688b3b8247d26160364f からの続きで bundler で Gemfile の override でオリジナルの? "!=" による特定のバージョンを除外する指定を消さないようにしています。

[77c7e15a67] Hiroshi SHIBATA 2026-05-01 03:04:49 UTC

a42a6bc2adca25070706688b3b8247d26160364f からの続きで bundler で Gemfile の override に :all で全 gem の条件を上書きする記法で version の指定を含めるのをエラーになるようにしています。

[a093612797] Hiroshi SHIBATA 2026-05-01 03:12:43 UTC

a42a6bc2adca25070706688b3b8247d26160364f からの続きで bundler の override のオプションのチェックを強化しているようです。

[22fb622b48] Hiroshi SHIBATA 2026-05-01 03:14:25 UTC

a42a6bc2adca25070706688b3b8247d26160364f からの続きで bundler の override を同じ gem について重複して宣言した時のチェックを強化しているようです。

[464e212b96] Hiroshi SHIBATA 2026-05-01 03:23:55 UTC

a42a6bc2adca25070706688b3b8247d26160364f からの続きで bundler の Gemfile に書く override の指定を実際に依存関係解決処理で考慮させるようにしているようです。

[2da7365ff6] Hiroshi SHIBATA 2026-05-01 03:37:10 UTC

a42a6bc2adca25070706688b3b8247d26160364f からの続きで bundler の override の依存関係の解決での処理を再修正しているようです。

[41a558ae76] Hiroshi SHIBATA 2026-05-01 03:43:58 UTC

a42a6bc2adca25070706688b3b8247d26160364f からの続きで bundler の override が lockfile でのバージョン指定を上書きしない不具合を修正しているようです。

[d763aec782] Hiroshi SHIBATA 2026-05-01 03:45:02 UTC

a42a6bc2adca25070706688b3b8247d26160364f からの続きで bundler のテストに override の prerelease バージョンの扱いについてのテストケースを追加しています。

[b5f31bbd19] Hiroshi SHIBATA 2026-05-01 03:46:17 UTC

a42a6bc2adca25070706688b3b8247d26160364f からの続きで bundler のテストに override の version: :ignore_upper 指定時のテストケースを追加しています。

[1fa48314b1] Hiroshi SHIBATA 2026-05-01 03:47:07 UTC

a42a6bc2adca25070706688b3b8247d26160364f からの続きで bundler のテストに override の version: nil 指定時のテストケースを追加しています。

[ddabda7221] Hiroshi SHIBATA 2026-05-01 03:51:32 UTC

a42a6bc2adca25070706688b3b8247d26160364f からの続きで bundler の man ページの gemfile.5 のページへの override についての追記と、全体的に更新日を更新しています。

[9cc8943d8d] Hiroshi SHIBATA 2026-05-01 04:38:49 UTC

a42a6bc2adca25070706688b3b8247d26160364f からの続きで bundler の override が間接的な依存関係にある gem についても lockfile からの変更があるかのチェックが効くように修正しています。

[e8a09f9ad7] Étienne Barrié 2026-05-06 10:53:44 UTC

4758d1b5f38a570752edeedd18c41d5383e802c6 の続きというか再修正で RUBY_ASSERT() に渡す変数の宣言が未使用変数の警告になっていたので preprocessor で括るのではなく一度変数に代入するのをやめるようにしています。けどなんかマクロの引数に直接書くのが Windows 古い? コンパイラで警告になるからっていうのでこうしていたんだったような気が。

[4ed7fa5e4c] "Daisuke Fujimura (fd0)" 2026-05-04 14:03:03 UTC

configure で --disable-multiarch オプションの指定が無視されていた不具合を修正しています。

[18ae8d6ded] Mikhail Dmitrichenko 2026-05-05 14:19:25 UTC

Dir.glob の実装で rb_dirent_t の配列の realloc() でエラー時にバッファの解放が抜けていて潜在的なメモリエラーの不具合があったのを修正しています。

[58ae5ea7ee] Sampo Kuokkanen 2026-05-07 10:00:48 UTC

Array#sort! 中にその Array オブジェクトを freeze するというテストのテストメソッドを分割して、またソートの実装に依存した freeze タイミングを修正しています。

[b6e4fa71d5] Nobuyoshi Nakada 2026-05-07 11:32:26 UTC

bundler のテストでファイルパスが絶対パスかのチェックに正規表現を使っていたのを Pathname#absolute? メソッドを利用するようにしています。