ruby-trunk-changes 2024-04-04

今日は parse.y の CRuby 依存の実装を除去する活動の一環の変更や拡張ライブラリ json の更新などがありました。

[4960a598d6] Peter Zhu 2024-04-01 19:46:51 UTC

RubyVM::InstructionSequence を GC.compact で移動可能にした変更を revert していた 16c18eafb579cf2263c7e0057c4c81358fe62075 を revert して、つまり再度移動可能にしています。 iseqw_new() の rb_check_typeddata() の戻り値の扱いに修正がありそう。

[f928e60d41] Nobuyoshi Nakada 2024-04-03 14:14:52 UTC

signal.c の CHECK_STACK_OVERFLOW() マクロで siginfo_t::si_code をチェックしてシグナルの送信元がカーネルからかどうか確認してから stack overflow のチェックに入るようにしています。

[8388604a4c] Takashi Kokubun 2024-04-03 17:38:00 UTC

GitHub Actions での pull request の自動 reviewer 設定をやめて .github/CODEOWNERS ファイルを置くようにしていたのをまた revert して necojackarc/auto-request-review アクションの利用に戻しています。

[c7cda1ae9b] Takashi Kokubun 2024-04-03 19:49:36 UTC

YJIT のスタックからオペランドの情報を取得する Context.sp_opnd メソッドの引数をバイト数から VALUE 型の slot 数での指定にリファクタリングしています。 https://github.com/ruby/ruby/pull/10442

[571bfc7402] Maxime Chevalier-Boisvert 2024-04-03 21:28:01 UTC

doc/yjit/yjit.md の YJIT を使う時のパフォーマンスのための実装方針についての記述を更新しています。 https://github.com/ruby/ruby/pull/10445

[6056773105] yui-knk 2024-04-03 10:28:55 UTC

Ractor のための magic comment shareable_constant_value の処理を parse.y から compile.c に移動しています。 parse.y の CRuby 依存を減らすための一環でしょう。

[41e9d6641b] Yusuke Endoh 2024-04-04 01:30:29 UTC

Object#method_missing を public にしてから require した時の GC のテスト? で子プロセスのタイムアウトを設定しています。

[0be7133b7f] Hiroshi SHIBATA 2024-03-29 09:23:27 UTC

rubygems の設定ファイルから読み込んだ内容をインスタンス変数にセットするところの順序の入れ替え。

[0930231361] Hiroshi SHIBATA 2024-03-29 09:41:09 UTC

rubygems の設定ファイルのキーに Symbol ではなく文字列を使っても同じように読み取れるようにしているようです。

[066bd28cff] tompng 2024-04-03 09:43:24 UTC

拡張ライブラリ jsonjson/generic_object の読み込みを autoload を使って遅延するようにしています。3.4 から ostruct の警告が出るのでそれを実際に利用する時だけにするためみたいです。

[514b415d90] Hiroshi SHIBATA 2024-04-04 02:36:47 UTC

拡張ライブラリ jsonjson/generic_object.rb で require "ostruct" が LoadError を発生させた時に独自に警告メッセージを出力するようにしています。

[ab65148c78] Hiroshi SHIBATA 2024-04-04 03:29:00 UTC

拡張ライブラリ json のバージョンを 2.7.2 に更新しています。

[bdfbeb90c9] git 2024-04-04 03:48:12 UTC

NEWS の default gems の新規バージョンリストに json を追記しています。

[f057741c5d] yui-knk 2024-04-03 22:46:28 UTC

parse.や compile.c でリテラルのための NODE の種別 NODE_LIT はもう未使用になったので enum の定義や分岐を削除しています。

[fc67091fc8] Yusuke Endoh 2024-04-04 04:23:52 UTC

テストで assertion メソッドの第1引数に単項演算子メソッドの String#@+ が使われている時に警告を抑制するために明示的なかっこを追加しています。

[cb30c3d2b3] Yusuke Endoh 2024-04-04 04:24:09 UTC

テストで未使用の変数の警告抑制のために "_" 変数への代入を追加しています。

[d910d64ed9] Yusuke Endoh 2024-04-04 04:29:11 UTC

テストでメソッドの再定義の警告抑制のため再定義前に Module#remove_method を追加しています。

[295f2a3305] Yusuke Endoh 2024-04-04 04:30:27 UTC

enc/make_encmake.rb で文字列リテラルに対して破壊的メソッドを利用していたのを chilled string の警告抑制のため非破壊的メソッドで書き直しています。

[8aa8fce320] HASUMI Hitoshi 2024-04-04 02:06:15 UTC

compile.c の compile_shareable_constant_value() で switch 文の default 節を追加して rb_bug() で異常終了するようにしています。警告抑制のため。

[6d82be499b] Yusuke Endoh 2024-04-04 05:10:23 UTC

ARGF.puts のテストで警告抑制のため子プロセス起動時のコマンドラインオプションに -W0 を追加しています。

[80e31663f3] tomoya ishida 2024-04-03 15:36:17 UTC

標準添付ライブラリ reline の Reline::LineEditor のエスケープシーケンスがある時のインデントの修正をしているようです。

[8088c88d01] tomoya ishida 2024-04-03 15:50:03 UTC

標準添付ライブラリ reline の割り込みで端末モードを戻すのに失敗することがあった不具合を修正。 https://github.com/ruby/reline/pull/646

[27622f3eb9] Hiroshi SHIBATA 2024-04-04 09:17:30 UTC

README から既に動かしてない AppVeyor のバッジを削除しています。

[f5e387a300] HASUMI Hitoshi 2024-03-29 07:18:14 UTC

ast.c から rb_script_lines_for() という関数の実装を ruby_parser.c に移動しています。 RubyVM::AbstractSyntaxTree.of の実装からも呼んでいましたがこれは不要ということで呼び出しを削っています。

[64b0f4303e] Nobuyoshi Nakada 2024-04-04 09:06:06 UTC

ARGF のテストで一時ファイルを作るのにヘルパーメソッドを利用するようにリファクタリングしています。

[184db1fd6a] Nobuyoshi Nakada 2024-04-04 09:22:27 UTC

ARGF.write に複数の文字列を引数に受け取れるように拡張しています。

[cfd48adb2f] yui-knk 2024-04-04 05:52:34 UTC

Universal Parser 用の rb_parser_config_t 構造体の関数ポインタのメンバー ractor_make_shareable が不要になっていたので削除しています。