ruby-trunk-changes 2020-05-19

今日は GC.compact の VM スタック対応や標準添付ライブラリ net/ftp の不具合修正などがありました。

[185f49f90c] Nobuyoshi Nakada 2020-05-18 11:42:20 UTC

doc/ 配下の過去のバージョンの NEWS ファイルで行頭に [ が置かれるように改行されているのが RDoc でマークアップになってしまうので直前で改行しないようにしています。

[1f011cccb1] Kazuhiro NISHIYAMA 2019-11-18 14:39:57 UTC

bundler のテストで git ls-files を利用しているものは git リポジトリの作業ディレクトリでなかったら skip するようにしています。

[6c1a51dae8] Kazuhiro NISHIYAMA 2020-05-18 15:58:19 UTC

1f011cccb16ca9e8ee378cb5a9d4c14459afd68c の追加。 git リポジトリの作業ディレクトリでないかどうか判定するヘルパーメソッドが追加漏れてたので追加しています。

[9ee66d2bef] git 2020-05-18 15:59:02 UTC

version.h の日付更新

[6efb9fe042] Aaron Patterson 2020-05-12 19:00:35 UTC

GC.compact で VM の値スタック上に積まれている参照を移動可能にしています。 rb_execution_context_update() で Thread からの参照の移動対応する時に VM スタック上の参照も rb_gc_location() でチェックして書き換えるようにしています。

[79292b3088] Nobuyoshi Nakada 2020-05-14 16:35:00 UTC

builtin 関数を使った ruby 実装を ISeq にして埋め込むためのツール tool/mk_builtin_loader.rb で RubyVM::InstructionSequence.compile_file で VM 命令列を作るかわりに Ripper で構文解析してから処理するようにしています。構文解析だけでもいけるのか。

[1f063abb4c] S-H-GAMELINKS 2020-05-19 04:09:26 UTC

array.c の rb_ary_aref2() という関数このファイル内でしか使ってないので static 修飾子をつけています。前方宣言には static がついてましたね。

[5e81e8675a] Shugo Maeda 2020-05-19 08:46:21 UTC

標準添付ライブラリ net/ftp の Net::FTP#retrbinary, #retrlines, #storbinary, #storlines などの対応する FTP コマンドの実装で送信側のソケットを shutdown する時やレスポンスを read する時の例外を無視するようにしています。2.7 からの 5be34d6a3310065850c0c530db6936415124b5d9 この変更で例外が上がってしまうようになっていたようです。丁寧に報告されててありがたいですね。 [ruby-core:97838] [Bug #16780]