ruby-trunk-changes 2026-01-05

今日は spec/ruby の更新や T_TYPEDDATA 型オブジェクトの関数テーブルに weakref 更新用の関数を登録できるようにする内部的な変更などがありました。

[1b3382cbab] Benoit Daloze 2026-01-04 13:53:24 UTC

spec/ruby に upstream から最新版をマージしています。

[6939f03f4c] Peter Zhu 2025-12-30 21:03:35 UTC

構造体 struct rb_data_type_struct の関数ポインタをまとめた function に予約してあった場所に handle_weak_references というメンバーを追加して mark 処理時の弱参照の更新処理のフック関数を登録できるようにして、ObjectShapce::WeakMep や Continuation や Fiber など独自に処理を持つクラスを rb_gc_handle_weak_references() から分岐して呼んでたのをこのメンバー経由で呼ぶように一般化しています。

[29e7973e05] Benoit Daloze 2026-01-04 14:36:02 UTC

spec/ruby に upstream から再度マージしています。

[e79f8974b5] Benoit Daloze 2026-01-04 14:39:31 UTC

spec/ruby の拡張ライブラリ socket のテストの修正。

[2bf9543053] Benoit Daloze 2026-01-04 15:04:02 UTC

e79f8974b55de2ef8135c3fad03860e8ad36dfb0 の続きで拡張ライブラリ socket の失敗する assertion を削除しています。

[9888a3e8bd] Benoit Daloze 2026-01-04 17:10:42 UTC

rubyspec の拡張ライブラリ socket の UNIXSocket#recvfrom のテストで WindowsmacOS で実行除外していたテストは BSD 系でも動かないということで逆に Linux でのみ実行するように guard を変更しています。

[6eadc01cda] Benoit Daloze 2026-01-04 17:13:08 UTC

spec/ruby のマジックコメントについてのテストをバージョンで分岐していたのですが Windows 環境でも locale の影響を受けるので期待値の設定を再変更しています。

[7d5c0247eb] Peter Zhu 2026-01-04 14:33:39 UTC

デバッグ用にオブジェクトの情報をダンプする rb_raw_obj_info() で T_STRING 型オブジェクトのダンプ時に fstring かどうかと freeze されているかどうかをそれぞれ表示するようにしています。

[699813b65f] Jeremy Evans 2026-01-03 18:12:19 UTC

rubygems で不要な require "date" を削除しています。

[01e8b38f60] Hiroshi SHIBATA 2026-01-05 01:55:47 UTC

default gems の require で警告を出す lib/bundled_gems.rb のテストで ruby のバージョンがハードコードされていたのを RUBY_VERSION 定数を参照するように変更しています。

[e6762d23cb] Shugo Maeda 2026-01-05 02:49:48 UTC

LEGAL の拡張ライブラリ json に埋め込まれている ryu.h というファイルの参照するパスを変更しています。

[99bd18b5b8] Tsutomu Katsube 2026-01-02 11:10:16 UTC

bundled gems の rbs のテストをスキップする指定のファイル tool/rbs_skip_tests_windows からエントリをひとつ削除しています。

[05f791bf41] Hiroshi SHIBATA 2026-01-05 04:59:47 UTC

bundler のテストで使う lockfile の gem のバージョン更新をしています。

[8c8561adbc] Hiroshi SHIBATA 2026-01-05 05:15:05 UTC

bundler に vendoring されている connection_pool のバージョンを 2.5.5 に更新しています。

[b87b6edf2e] Hiroshi SHIBATA 2026-01-05 05:15:46 UTC

rubygesm に vendoring されている net-http のバージョンを 0.9.1 に更新しています。

[d3ecd9d2ab] Hiroshi SHIBATA 2026-01-05 06:36:06 UTC

bundler のテストで使う lockfile の minitest のバージョンを 5 系に止めるようにしています。 minitest を 6系にすると問題があったみたいです。

[28b0e5125f] Nobuyoshi Nakada 2026-01-05 06:47:40 UTC

rb_cObject という変数の宣言を include/ruby/internal/core/rdata.h から削除しています。ちょっとよくわかっていないのですが昔 T_DATA 型オブジェクトのクラスであった Data (今は Struct の一種としてリサイクルされている)の実体である rb_cData のためにこの宣言があったみたいで、もう不要になっていたのが消し忘れていたようです。 [ruby-dev:51128] [Bug #18433]

[3267460610] Nobuyoshi Nakada 2026-01-05 07:16:29 UTC

ZJIT の Rust 実装用の C binding の再生成。

[c65a5548a8] Brandon Zylstra 2026-01-05 03:26:21 UTC

doc/language/box.md の英文の修正。