ruby-trunk-changes r63703 - r63709

今日は RubyVM::AST のテストの修正や IO のテストのタイミング依存の問題対応などがありました。

yui-knk: r63703 2018-06-20 21:11:25 +0900

RubyVM::AST のテストで RubyVM::AST#children から Node だけ残すつもりで書いた grep の条件が RubyVM::AST になっていたため、全ての要素が削られてしまっていたので RubyVM::AST::Node に修正しています。

yui-knk: r63704 2018-06-20 21:40:59 +0900

r63602 で RubyVM::AST.parse_file などで文法エラーになるスクリプトを渡すと SyntaxError 例外が発生するようになったので RubyVM::AST のテストで nil がかえってきたら例外を発生させるようにしていた処理を削っています。

hsbt: r63705 2018-06-20 21:51:38 +0900

doc/standard_library.rdoc からコアに取り込まれたため標準添付ライブラリではなくなった ConditionVariable と Queue のクラス名を削っています。

ko1: r63706 2018-06-21 03:10:09 +0900

vm_search_method() において klass について 0 じゃないか(内部オブジェクトじゃないか?)、Class を継承したオブジェクト(つまりクラス)かどうかなどチェックするように VM_ASSERT() で assertion を追加しています。

svn: r63707 2018-06-21 03:10:10 +0900

version.h の日付更新。

normal: r63708 2018-06-21 08:38:16 +0900

IO のテストで SIGUSR2 を利用したテストでシグナルハンドラでインスタンス変数の更新をするだけにしていたのを、pipe を利用したデータのやりとりをするようにしています。timer thread が常に定期的に起きるようにビルドされてる時にシグナル送出後に意図したよりも遅れて処理される可能性があるのでより確実に同期するため。別に sleepy timer thread disabled じゃなくても遅延する可能性はあるとは思うけど。

normal: r63709 2018-06-21 08:38:21 +0900

これも sleepy timer thread (不要な時に timer thread が定期的に wakeup するのを抑制する実装)が無効化されたビルドの時の fork のテストの修正のため native_stop_timer_thread() で USE_SLEEPY_TIMER_THREAD が偽の時も native_thread_join() は呼ぶようにしています。