ruby-trunk-changes 2024-01-26

今日は主に YJIT の新規追加の VM 命令への対応や bundled gems の rbs のバージョン更新などがありました。

[d4cc77e7b6] Takashi Kokubun 2024-01-25 16:23:26 UTC

YJIT の --yjit-stats で表示する統計情報に invokebuiltin_too_many_args というのを追加して ruby 実装の組み込みメソッドのコンパイルをあきらめた時? のカウンタを表示するようにしています。 https://github.com/ruby/ruby/pull/9696

[f0224adf2f] Alan Wu 2024-01-25 20:29:42 UTC

YJIT で x86_64 アーキテクチャの lea 命令を生成する関数で src オペランドの型のチェックする assertion を追加しています。

[2034e6ad5a] Takashi Kokubun 2024-01-25 21:45:58 UTC

YJIT で委譲用メソッド引数の扱いのために新規追加された VM 命令 concattoarray と pushtoarray への対応を追加しています。 https://github.com/ruby/ruby/pull/9708

[b822f9f6fc] Soutaro Matsumoto 2024-01-25 23:47:29 UTC

gems/bundled_gems の rbs のバージョンを 3.4.3 に更新し、テストのエラーを無視したり skip させたりしていたのを戻しています。 https://github.com/ruby/ruby/pull/9702

[30b4070ffa] git 2024-01-25 23:48:01 UTC

NEWS の bundled gems のバージョンリストの rbs のバージョンを更新しています。

[7567e4e1e1] Takashi Kokubun 2024-01-26 00:22:27 UTC

YJIT でキーワード引数とブロック引数の処理順序を制御するため a950f230788d51e13d16596e37cb77e4cc6e2311 で追加された VM 命令 splatkw の対応を追加しています。 https://github.com/ruby/ruby/pull/9711

[f9bf7d531b] Hiroshi SHIBATA 2024-01-26 03:38:01 UTC

Windows 環境でビルドに必要な外部ライブラリを vcpkg でインストールする際の依存関係を指定する vcpkg.json というファイルを追加して、自分でライブラリ群を指定しなくても良いようにしているようです。

[395a240b7c] Hiroshi SHIBATA 2024-01-26 04:40:05 UTC

irb の require で feature 名を補完する処理のテストで使う feature 名を rubygems にしていたのを irb に変更しています。なるほど irb のテストなら irb があるのは確実(?)。 というかコミットログによると OpenBSD でのみ(?) rubygems_plugin という名前を補完候補に出してしまってエラーになってたみたいです。

[771a2f039b] Jeremy Evans 2024-01-25 20:44:13 UTC

キーワード引数を Hash から splat するメソッド呼び出しをした時にその Hash が破壊的に変更されうるかどうかを指示する struct rb_callinfo::flags のビットフラグ VM_CALL_KW_SPLAT_MUT の設定が無引数の super を使った時に間違っていたのを修正しているようです。