今日は Windows での古い MSVC のサポートを停止する変更などがありました。
[522b7d823f] Kazuki Yamaguchi 2025-11-18 12:18:26 UTC
拡張ライブラリ openssl のテストでダミーサーバーの OpenSSL::SSL::SSLContext に sigalgs を明示的に設定するようにしています。 RHEL 9.7 でのテスト失敗の対策みたいです。
[c38486ffef] Benoit Daloze 2025-11-18 12:44:40 UTC
ZJIT の Rust 実装の HIR の全命令について型検証を行うようにしています。
[f84bbb4238] Godfrey Chan 2025-11-17 16:15:16 UTC
ZJIT を有効化する RubyVM::ZJIT.enable でプロセス起動後に ZJIT を有効化できるようにしています。なんとこれで有効化すると RUBY_DESCRIPTION 定数の内容も書き換えるようです。
[0e10dfded0] Benoit Daloze 2025-11-04 19:37:57 UTC
ZJIT で Struct のインスタンスの attribute の代入を inline 化する最適化。
[79633437e1] Benoit Daloze 2025-11-18 15:41:15 UTC
ZJIT の Rust 実装の引数名の改名するリファクタリング。
[ce73b6c0b6] Benoit Daloze 2025-11-18 16:26:08 UTC
ZJIT の 0e10dfded0498cf71efb9fc61a804db6db540009 の Struct の inline 化最適化の続きでオブジェクトが freeze されてないかのチェックを行う HIR の命令 GuardNotFrozen の位置を早めてその結果の receiver を LoadField 命令などで利用するようにしています。
[ff2d2fc1bd] Luke Gruber 2025-11-18 19:24:49 UTC
YJIT の Proc#call の最適化で複数 Ractor を利用しているかどうかのチェックをしていた分岐が不要とのことで削っています。 https://github.com/ruby/ruby/pull/15092
[6566003712] Shannon Skipper 2025-11-16 16:21:20 UTC
ZJIT の --zjit-stats で出力に NaN% と出力されてしまうのを防ぐためゼロ除算を避けるようにしています。
[cbe65ebbc3] Shannon Skipper 2025-11-16 17:01:50 UTC
ZJIT の --zjit-stats の出力でカウンターの出力を抑制する条件を修正しています。
[f3f3e76882] Jacob 2025-11-18 22:32:11 UTC
vmargs.c で定義していたマクロ KW_SPECIFIED_BITS_MAX を VM_KW_SPECIFIED_BITS_MAX と改名(prefix 追加)して vm_core.h で定義し YJIT/ZJIT から参照するようにしています。
[d5d12efde7] Jean Boussier 2025-11-18 22:45:08 UTC
拡張ライブラリ json の C 実装の不要になっていた構造体メンバの削除。
[6f6a9ead96] eileencodes 2025-11-18 16:56:09 UTC
bundler でメソッド定義をチェックするのに instance_methods + include? を使っていたのを method_defined? にする最適化。
[32b8f97b34] Alan Wu 2025-11-18 23:50:36 UTC
ZJIT の Rust 実装のテストで古くなっていて不要なテストを削除しています。
[0f89fa97e3] Max Bernstein 2025-11-19 00:36:29 UTC
ZJIT で BasicObject#! メソッドの実装を HIR で実現するインライン最適化。 https://github.com/ruby/ruby/pull/15201
[4423facbff] Go Sueyoshi 2025-11-19 00:46:35 UTC
bundler の bundle gem でプロジェクト生成する時に Go による拡張ライブラリのプロジェクト生成をサポート追加しています。
[1f299dd309] John Hawthorn 2025-11-18 23:42:53 UTC
T_OBJECT 型オブジェクトで非常にインスタンス変数が多い(94個以上)時に Variable Width Allocationn による slot への埋め込み可否の判定が間違っていて異常終了する可能性があった不具合を修正しています。
[83b0cfe1b5] Cody Cutrer 2023-08-30 22:52:45 UTC
bundler で環境変数 BUNDLER_VERSION に空文字列が設定されていた時に未設定の時と同じように扱うよう修正(変更)しています。
[3b9539176b] Edouard CHIN 2025-11-17 20:33:58 UTC
bundler で bundle コマンドをサブコマンドなしで実行した時に bundler 4.0 からヘルプメッセージの出力をするように変わっていますが、この変更についての警告も表示するようにしています。
[1979f8c07d] Alexander Momchilov 2025-11-14 15:14:44 UTC
prism/config.yml のいくつかの node のコメントを追記しています。
[3dd39134cd] Nobuyoshi Nakada 2024-12-09 05:58:15 UTC
さらに Windows 版で MSVC 9.0 のサポートも停止しています。
[25f9e678bf] Nobuyoshi Nakada 2024-12-09 06:00:05 UTC
さらにさらに Windows 版で MSVC 10.0 のサポートも停止しています。
[7743123551] Nobuyoshi Nakada 2024-12-09 06:04:01 UTC
さらに Windows で MSVC 12.0 のサポートも停止しています。
[1f2913e741] Nobuyoshi Nakada 2024-12-09 06:06:13 UTC
まだ続いていて Windows で MSVC 14.0 のサポートも停止しています。
[69b1c567d7] Peter Zhu 2025-11-18 02:28:51 UTC
GC の mmtk 実装の Kernel#fork 前の処理で rb_gc_vm_barrier() による複数 Ractor の同期が不足していたのを修正しています。
[f040b94cf5] Peter Zhu 2025-11-18 02:39:02 UTC
69b1c567d71b269edb59a026a9a9f04a6a9a0a49 の続きで GC の mmtk 実装の Kernel#fork 時のフックでデッドロック状態にならないように VM ロック取得時にカウンタをインクリメントしてロック待ちをしている Ractor がいないか確認して不在になるまで rb_gc_vm_barrier() で繰り返し待つようにしています。
[685903e56e] Nobuyoshi Nakada 2025-11-19 02:00:40 UTC
拡張ライブラリ etc の gemspec ファイルで required_ruby_version の最低バージョンを 2.7.0 に引き上げています。
[a6cecda1dc] Nobuyoshi Nakada 2025-11-19 02:02:22 UTC
拡張ライブラリ etc でも Windows 版での MSVC の 10.0 以前のサポートを定義しています。
[3ee08c8df8] "dependabot[bot]" 2025-11-18 02:08:11 UTC
GitHub Actions の独自 action で利用している actions/checkout アクションのバージョンを更新しています。
[319001192d] Burdette Lamar 2025-11-19 02:56:14 UTC
String#dump と String#undump の rdoc 用コメントの手直し。
[1443f89d69] BurdetteLamar 2025-11-16 19:46:03 UTC
String#unicode_normalize メソッドの rdoc 用コメントを doc/string/unicode_normalize.rdoc という独立したファイルに切り出し :include: で取り込むようにしています。
[e31dc5f193] Nobuyoshi Nakada 2025-11-19 07:05:12 UTC
cdb9893c552f67a6065dcb165b2040d35c57aee3 で internal/bits.h に誤ってバッククオート記号が入ってしまっていたのを削って修正しています。
[8986115e0a] Nobuyoshi Nakada 2025-11-19 06:12:28 UTC
common.mk の revision.h を生成するルールで tool/ifchange を利用して tar パッケージからのビルド時に不要な revision.h の再生成を抑制するようにしています。 [ruby-core:123854] [Bug #21697]
[339c1731b2] Nobuyoshi Nakada 2025-11-19 07:41:04 UTC
8986115e0a2a989f2b2ea5945f02c7a13989d640 の revision.h の生成ルールの変更を revert しています。
[169d6c7cad] Hiroshi SHIBATA 2025-11-19 06:29:56 UTC
bundler で Gem::Installer#generate_plugins メソッドの存在チェックで method_defined? の第2引数 false を渡して親クラスや Module での定義はチェックしないようにしています。
[bbb4c7b88b] Charles Oliver Nutter 2025-11-19 01:38:18 UTC
spec/mspec に upstream から最新版をマージしています。
[85cd08e4f9] Charles Oliver Nutter 2025-11-19 01:38:20 UTC
spec/ruby に upstream から最新版をマージしています。
[f3f3a40cdc] Benoit Daloze 2025-11-19 10:37:02 UTC
GitHub Actions の rubyspec の C API テスト用拡張ライブラリをキャッシュするための独自 action 定義でキャッシュのキーにテスト用の拡張ライブラリ群のソースコードを元にした hash 値も含めるようにしています。