ruby-trunk-changes 2026-05-31

今日は主に IO の GC 回収時の小さな最適化や TracePoint を GC.compact で移動可能なオブジェクトにする変更などがありました。

[f77290ccf4] Peter Zhu 2026-05-30 11:13:07 UTC

Method#source_location の rdoc 用コメントにサンプルコードや C 実装のメソッドの時は nil を返すことなど記述を強化しています。

[2750e9a6ab] Nobuyoshi Nakada 2026-05-30 12:25:01 UTC

gems/bundled_gems の rbs のテストに利用する commit hash の指定を更新しています。

[f78cd18c91] Nobuyoshi Nakada 2026-03-17 11:00:24 UTC

compile.c や proc.c と拡張ライブラリ socket で例外メッセージや inspect のための文字列の組立てで C の文字列を追記する場合に中間オブジェクトの作成を抑制するようにしています。

[9c2ca0e1b7] Nobuyoshi Nakada 2026-05-28 03:07:44 UTC

IO オブジェクトの GC での回収時に make_io_zombie() という関数を呼んで finalize 処理を遅延させるようにしていましたが、これは close(2) の呼び出しを遅延するためのもので、既に IO が保持している fd が close 済みだったら不要なので呼ばないようにして即座に構造体のメモリ解放するようにしています。

[8a12816b00] Jack Bowlin 2026-05-25 17:38:11 UTC

String#dump と String#buytesplice の rdoc 用ファイルの typo 修正。

[5e7a7f9404] Peter Zhu 2026-05-30 11:53:41 UTC

TracePoint オブジェクトを GC.compact で移動可能なオブジェクトにしています。

[1589add171] Nobuyoshi Nakada 2025-12-19 10:22:39 UTC

Array#pack や String#unpack の指示子についてのドキュメント doc/language/packed_data.rdoc を doc/language/packed_data.md に移動して Markdown 記法に変更しています。テーブル記法を使いたかったためみたいです。

[12c8599ffa] Peter Zhu 2026-05-31 01:21:27 UTC

GC の mmtk 実装の rb_mmtk_gc_thread_panic_handler() という関数の定義に RBIMPL_ATTR_NORETURN() をつけて警告を抑制しています。また C の配列の宣言のサイズに const の変数を指定するのもコンパイラによっては警告が出るため enum による定数の利用に変更しています。