ruby-trunk-changes 2020-11-19

今日は RubyVM::InstructionSequence.compile_file の修正などがありました。

[ce3c9a3437] Cristian Greco 2020-11-18 18:04:09 UTC

hash.c で USE_TRANSIENT_HEAP マクロで preprocessor 分岐していたところのマクロ名が typo していたのを修正。これはひどい。これは 2.7 にバックポートがいるかな、と思いきや 2325017477e0ee9f557b07a73f187a83ae5036a4 で入ったもののようなので、これをバックポートしなければ不要ですね。 そして transient_heap.c のデバッグ用メッセージなどの typo 修正しています。

[fee0073726] git 2020-11-18 22:11:57 UTC

version.h の日付更新

[4a5c42db88] Jeremy Evans 2020-11-18 19:39:59 UTC

RubyVM::InstructionSequence.compile_file でファイルの内容を読み込む時の Encoding の処理を Encoding.default_external を考慮するようにしています。ファイルから AST にするまでの処理に利用する関数を rb_parser_compile_file_path() から rb_parser_load_file() に変更しています。他にも magic comment の解釈や shebang の解釈なども行なわれてそうです。なんか副作用あるものはないかな。 [ruby-core:100726] [Bug #17308]

[9c1e2a99fc] Hiroshi SHIBATA 2020-11-19 06:36:21 UTC

NEWS の新規 default gems の一覧をソートしなおして、さらに拡張ライブラリはリストを分けています。

[44ad72fa21] Nobuyoshi Nakada 2020-11-19 06:41:38 UTC

4a5c42db88d30532bd4fbcdff89615ebf961d2a2 で追加した RubyVM::InstructionSequence.compile_file のテストで Encoding.default_external を一時的に差し替えるのは EnvUtil.with_default_external というヘルパーメソッドがあったのでそれを使うようにリファクタリングし、また警告が出力されないことや SyntaxError が発生しないことを確認する assertion を追加しています。