ruby-trunk-changes 2026-06-08

今日は主に拡張ライブラリ json の JSON.parse でコメントを含む JSON に対して警告を出力する変更や IO::Buffer の解放済みバッファへのアクセスのチェック強化などがありました。

[be9725c383] Peter Zhu 2026-06-07 12:17:10 UTC

Kernel#print の rdoc 用コメントの typo 修正。

[fe5df19f1c] Jean Boussier 2026-06-07 08:38:16 UTC

拡張ライブラリ json の JSON.parse で JavaScript スタイルのコメント "/* */" や "//" の行コメント (C 風ともいえる)を deprecated にして警告を出力するようにしています。またオプションの allow_comments を追加して false が指定されると例外を発生させるようにしています。

[ccca0be762] Jean Boussier 2026-06-07 18:43:42 UTC

拡張ライブラリ json のインスタンス変数や例外クラスを毎回 ID やクラスを名前から取得していたのを Init_parser() の初期化関数で取得しておくようにしています。

[6be7b1f9c7] Peter Zhu 2026-06-07 11:03:50 UTC

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

[86cf1e8c06] Nobuyoshi Nakada 2026-06-08 03:23:44 UTC

拡張ライブラリ json のテストで fe5df19f1cd9eb82b8bdcac109912dc3271ce4f3 の変更で JSON.parse がコメントに対して警告を出すようになったので警告抑制のため EnvUtil.suppress_warning を利用するようにしています。

[91023dbc74] Bryan Woods 2026-06-05 17:54:48 UTC

bundler の cooldown 対応で Gemfile に記述された cooldown 設定が lockfile がある状態では効かないという不具合を修正しています。

[2c8002d583] Nobuyoshi Nakada 2026-06-08 01:55:20 UTC

IO::Buffer の処理で offset, length, encoding などの引数を変換するために to_int, to_str を呼ぶ可能性があり、そこで ruby スクリプトが実行されることで receiver の IO::Buffer が解放される可能性があるため、IO::Buffer#get_string や IO::Buffer#resize などのメソッドでアクセスの直前にバッファが利用可能かのチェックを追加しています。

[773e0c3a0f] Nobuyoshi Nakada 2026-06-08 02:41:48 UTC

2c8002d58302e4fff51484826e1fd706cc2bfb19 の続きで IO::Buffer#set_value などのバッファに書き込みするメソッドでもバッファのチェックを行なっています。書き込みの場合要素ごとにも ruby スクリプトが動く可能性があるためより細かくチェックが必要になっているようです。

[09e76c6cb7] Nobuyoshi Nakada 2026-06-08 04:19:33 UTC

IO::Buffer.size_of で引数に配列で型を表す Symbol に動的な Symbol が渡された時に静的な Symbol を作ってしまわないようにしています。

[ca3d146721] Hiroshi SHIBATA 2026-06-08 07:49:23 UTC

bundler のテストに cooldown 機能のテストケースを追加しています。

[c428294f1d] Hiroshi SHIBATA 2026-06-08 08:25:25 UTC

bundler のテストに cooldown 機能のテストケースをさらに追加しています。

[7c9aeb90c9] Hiroshi SHIBATA 2026-06-08 08:25:38 UTC

bundler のテストに cooldown 機能のテストをまだまだ追加しています。

[55554bd73a] Hiroshi SHIBATA 2026-06-08 08:26:37 UTC

bundler のテストに cooldown 機能のテストケースをさらに追加しています。

[d9a6ca69c5] Hiroshi SHIBATA 2026-06-08 08:27:05 UTC

bundler のテストに cooldown 機能のテストケースをさらに追加しています。

[fadf8f0ea0] Hiroshi SHIBATA 2026-06-08 08:28:24 UTC

bundler のテストに cooldown 機能のテストケースをさらに追加しています。

[7ed00ca7a9] Hiroshi SHIBATA 2026-06-08 08:53:34 UTC

bundler のテストの cooldown 機能のテストで Time.now を繰り返し呼んでいたのを 1回呼んだものを使いまわして時刻がずれないようにしています。