ruby-trunk-changes 2022-03-19

今日は Lazy Sweep の影響で Module#include や Module#prepend で異常終了する可能性があった不具合の修正などがありました。

[97426e15d7] Peter Zhu 2022-03-16 19:46:40 UTC

Lazy Sweep の不具合(?)で Module を include した時に作られる T_ICLASS 型のオブジェクトが指す klass が回収済みオブジェクトになっている可能性があるため Module#include や Module#prepend の実装で rb_objspace_garbage_object_p() でチェックしながら参照するようにしています。うーん、rb_include_module() や rb_prepend_module() が呼べるような状態でそこから参照されうる Class や IClass が回収可能になっているのがおかしいような気もするけど。 [ruby-core:107853] [Bug #18627]

[d52f41b765] Burdette Lamar 2022-03-18 22:17:00 UTC

String#split, #each_line, #lines, #each_byte, #bytes などの rdoc 用コメントを string.c から doc/string.rdoc に移動したりサンプルを追加したりしています。 https://github.com/ruby/ruby/pull/5675

[44998f2732] git 2022-03-18 22:17:18 UTC

version.h の日付更新

[fafa40997e] Nobuyoshi Nakada 2022-03-19 05:33:04 UTC

test/ruby/test_arity.rb のユーティリティメソッド err_mess を assert_arity と改名して呼び元での assert_equal の呼び出しまでメソッド内に取り込むリファクタリング