ruby-trunk-changes 2022-05-13

今日は YJIT の VM 命令 getblockparam 対応や bundler の不具合修正などがありました。

[f07a0e79a2] Aaron Patterson 2022-05-12 19:08:35 UTC

YJIT の ep を取得する処理で生成する機械語命令でアドレス計算のベースとするレジスタが固定になってたのを関数の引数で指定されたレジスタを使うように修正しています。コミットログみる感じだとたぶんこれまで同じレジスタしか渡してなくて実際に問題にはなってなかったようです。 https://github.com/ruby/ruby/pull/5882

[30d0f08c83] git 2022-05-12 19:08:52 UTC

version.h の日付更新

[a6ce73efec] Stan Lo 2022-05-12 18:22:00 UTC

README.md に https://docs.ruby-lang.org/ のサイトの日英のページへのリンクを追記しています。

[ebaf56c013] Aaron Patterson 2022-05-03 22:25:03 UTC

YJIT で VM 命令 getblockparam の JIT コンパイルに対応しています。 rb_vm_bh_to_procval() を Rust から呼べるようにして Proc オブジェクトに変換するようにしています。毎回変換しなくていいように rb_env_t にキャッシュする仕組みにも対応しているっぽい雰囲気を感じます。

[2d1032075a] Kazuhiro NISHIYAMA 2022-05-12 23:44:17 UTC

tool/rbinstall.rb で拡張ライブラリを含む bundled gem のインストール時のエラー対応のため環境変数 DESTDIR が設定されていた時にも拡張ライブラリのビルドを抑制する? workaround を利用するようにしています。

[4962e5c417] David Rodríguez 2022-05-11 12:17:10 UTC

bundler の Bundler::Source::Rubygems#install で引数名 opts を options と改名しています。

[4c9ddaac0d] David Rodríguez 2022-05-11 12:17:54 UTC

bundler で bundle install 時に lock file の指定が効かないことがあった不具合を修正しているそうです。どの差分が重要なのかはっきりわかりませんが Bundler::Installer::GemInstaller#install で previous_spec というオプションを渡すようにしているのが必要だったみたいです。