ruby-trunk-changes r53435 - r53442

今日は StringIO#binmode の実装追加、WEBrick::Utils::TimeoutHandler のスレッド管理の race condition の修正などがありました。

normal: r53435 2016-01-05 05:45:14 +0900

拡張ライブラリ stringio の StringIO#binmode の実装が何もしないものだったのを、文字列バッファのエンコーディングを ASCII-8BIT に force_encoding するようにしています。 [ruby-core:72699] [Bug #11945]

svn: r53436 2016-01-05 05:45:15 +0900

version.h の日付更新。

nobu: r53437 2016-01-05 09:48:04 +0900

enc/Makefile.in で nmake の不具合対策に ECHO1 の定義の変数参照を展開するようにしています。1文字の変数の扱いが問題だったみたいです。

nobu: r53438 2016-01-05 11:47:38 +0900

doc/marshal.rdoc で同じオブジェクトの参照が正しくロードで復元されることを説明した英文を修正しています。 https://github.com/ruby/ruby/pull/1156

nobu: r53439 2016-01-05 15:09:17 +0900

r46651 で標準添付ライブラリ webrickWEBrick::Utils::TimeoutHandler で利用するスレッドは Thread を継承した WEBrick::Utils::TimeoutHandler::Thread を定義してこれを利用するようにして、r46941 で test-all での Thread リークチェック時にこのクラスのスレッドは無視するようにしていましたが、どちらもやめて、ちゃんと @watcher の生成を TimeoutMutex で排他しながら作成して WEBrick::Utils::TimeoutHandler#terminate できちんと Thread を停止できるようにして、これを使って各テストで後始末をするという正攻法で対策しています。

hsbt: r53440 2016-01-05 21:32:43 +0900

Numeric#nonzero? のテストを追加しています。 https://github.com/ruby/ruby/pull/1187

hsbt: r53441 2016-01-05 21:44:55 +0900

String#chr のテストを追加しています。 結構テストの抜けてるメソッドまだまだあるもんですね。 https://github.com/ruby/ruby/pull/1179

hsbt: r53442 2016-01-05 21:44:56 +0900

r53440 の ChangeLog エントリの typo 修正。