ruby-trunk-changes 2023-07-31

今日は Refinement#refined_class を Refinement#target と改名する変更や先日からの callcache のメモリリーク修正の続き、bundled gems の rbs の更新などがありました。

[52722ea37b] Nobuyoshi Nakada 2023-07-30 10:38:18 UTC

defs/gmake.mk で bundled gems 用の timestamp ファイルのファイル名パターンを bundled-gem-revision という変数に定義するリファクタリング?

[60ac719acc] BurdetteLamar 2023-07-30 15:35:00 UTC

標準添付ライブラリ optparse のドキュメントの markup や英文の修正。

[36023d5cb7] Koichi Sasada 2023-07-31 03:26:27 UTC

c330037c1a38cc257dbe21022fcc7b13159c2821 からの callcache のメモリリーク修正の一連の変更の続きで callcache の mark をやめた変更の再修正で、super によるメソッド呼び出しのための callcache の場合はやっぱり cme_ の mark が必要だったので条件つきで復活させています。むずかしい。

[a3c0e9d90d] Mat Sadler 2023-07-29 04:19:04 UTC

bundler の bundle gem で生成するプロジェクトのテンプレートの Rust 製拡張ライブラリを含む時の Cargo.toml や src/lib.rs で利用する magnus というプロジェクトのバージョンを更新しています。

[e40f8bbd20] git 2023-07-31 06:59:54 UTC

gems/bundled_gems および NEWS の bundled gems バージョンリストの rbs のバージョンを 3.1.3 に更新しています。

[280419d0e0] Koichi Sasada 2023-07-31 07:04:16 UTC

構造体 struct rb_calling_info のメンバー ci を削除してかわりに struct rb_call_data 型のメンバー cd を経由してアクセスするようにしています。

[cfd7729ce7] Koichi Sasada 2023-07-31 07:17:55 UTC

Refinements によるメソッドの呼び出し時に inline cache が効くように最適化しています。 [ruby-core:107490] [Bug #18572]

[a542512b7c] Shugo Maeda 2023-07-14 06:13:14 UTC

54198c7b97d3d353f7ac233e0360034b6e7b6cb6 で追加された Refinement#refined_class という Refinements 用の Module が using で再定義している Class を返すメソッドを Refinement#target と改名して、元の refined_class は deprecated として呼ぶと警告出力するようにしています。 [ruby-core:113779] [Feature #19714]