ruby-trunk-changes 2023-01-07

今日は主に String の大文字小文字変換まわりの GC からの保護不足の潜在的不具合修正や RubyVM::AbstractSyntaxTree.parse と __END__ トークンの組合せでの不具合修正などがありました。

[cee5beab1d] Nobuyoshi Nakada 2023-01-06 11:26:11 UTC

RubyVM::AbstractSyntaxTree.parse に __END__ トークンを含むスクリプトを渡すと異常終了するという不具合を修正しています。 parser_yylex() で __END__ に対して 0 を返さないといけないところを -1 を return しているところがあったようです。また 0 というマジックナンバーを書いてたところに END_OF_INPUT という定数マクロを利用するようにしています。 https://github.com/ruby/ruby/pull/7077 [ruby-core:111658] [Bug #19312]

[ddbf7be94d] Burdette Lamar 2023-01-06 14:20:31 UTC

標準添付ライブラリ uri の rdoc 用コメントの手直し。

[2b88dbc6f9] Benoit Daloze 2023-01-06 15:28:02 UTC

rubyspec の Float#round の half キーワード引数の挙動についてのテストにチケットの番号を付与しています。

[d8ef0a98c6] Peter Zhu 2023-01-06 15:24:09 UTC

String#capitalize など大文字小文字の変換をするメソッド利用する rb_str_casemap() で変数の RB_GC_GUARD() による保護が足りていなくて GC mark 漏れする可能性があった不具合を修正しています。 [ruby-core:111699] [Bug #19319]

[66bc620963] Jemma Issroff 2023-01-06 14:46:06 UTC

shape.h から未使用(未定義?)の関数 rb_shape_flags_mask() の宣言を削除。

[311ce91733] Takashi Kokubun 2023-01-06 19:49:45 UTC

YJIT 用のオプション --yjit-dump-disasm で JIT したコードのダンプする時に ASCII コードによる色付けをするようにしているようです。 https://github.com/ruby/ruby/pull/7073

[00d58afb5d] Takashi Kokubun 2023-01-06 19:49:59 UTC

よくわかりませんが YJIT で Instruction Sequence からコードの位置情報を取り出す処理を修正しているようです。 https://github.com/ruby/ruby/pull/7074

[41fbcc5193] Nobuyoshi Nakada 2023-01-07 02:47:50 UTC

parse.y の parser_has_token() という関数で rb_bug() で異常終了する時のメッセージに変数を埋め込む指示子に PRIdPTRDIFF マクロを利用するようにしています。

[69a2687a27] Nobuyoshi Nakada 2023-01-07 03:09:02 UTC

拡張ライブラリ bigdecimal の VPrint() でのデバッグ出力? のフォーマット指示子で PRIuSIZE マクロを利用するように修正しています。

[e537aa65c0] Nobuyoshi Nakada 2023-01-03 14:42:41 UTC

標準添付ライブラリ syntax_suggest のテストで ruby コマンドを指定する環境変数 RUBY を参照するようにしています。

[651a098ea1] Yuki Nishijima 2023-01-07 08:46:44 UTC

標準添付ライブラリ did_you_mean で削除予定のクラスなどの TODO コメントで削除予定バージョンの記述を変更しています。削除するのを少し先のばしにしたみたいです。