ruby-trunk-changes 2023-11-16

今日は正規表現のメモ化による最適化の実装のバッファーオーバーランの修正や rdoc の不具合修正や require で過去に default gems から budled gems になった gem に対する警告も出すようにする変更などがありました。

[72242e69aa] toshimaru 2023-11-16 00:18:08 UTC

標準添付ライブラリ rdoc の RDoc::TokenStream というモジュールでインスタンス変数が nil の時にエラーになるのを避ける修正。

[8d160b9350] toshimaru 2023-11-16 00:18:42 UTC

標準添付ライブラリ rdoc で String#join に明示的に引数に空文字列を渡していたのが冗長なので引数削除しています。

[e374512682] Nobuyoshi Nakada 2023-11-16 02:18:49 UTC

rdoc の 8d160b9350b35ece2bac1669d8aa513622ca2a5b での String#join の引数削除を revert しています。 ruby 2.6 まではまだ $, の上書きで String#join のデフォルトの delimiter を変更する可能性があったので明示的に引数を指定することに意味があったようです。なるほどー。

[7415901ac2] Hiroshi SHIBATA 2023-11-16 07:08:38 UTC

bundler による rubygems の機能を再定義するためのモジュール Bundler::RubygemsIntegration の replace_entrypoints で lib/bundled_gems.rb を読み込んでるかどうか(ruby が 3.3 かどうか?)の分岐で reverse_rubygems_kernel_mixin の呼び出しも変えていましたがこれは常に呼び出すように修正しています。

[c65bb5a0f8] Hiroshi SHIBATA 2023-11-16 07:53:13 UTC

lib/bundled_gems.rb で既に bundled gems になっている元 default gems についても警告出力の対象になるようにしています。

[9786b909f9] Alan Wu 2023-11-15 21:09:59 UTC

正規表現のメモ化による最適化でバッファの確保サイズの計算で 1足りていなかったのを修正しています。バックポート必要かなと思ってみてみましたけど 3.3 (master) で正規表現のメモ化最適化のメモリ管理の修正でのデグレみたいなので、そのあたりもまとめて入れないかぎりは不要そう。