ruby-trunk-changes r48318 - r48346

今日は securerandom.rb のリファクタリングwebrick, net/http, xmlrpc などのテストの強化などがありました。

akr: r48318 2014-11-09 00:38:33 +0900

webrick のテストでもサーバのログのチェックの強化、assert_join_threads を使ったサーバスレッドの終了待ちなどを行うようにしています。

svn: r48319 2014-11-09 00:38:44 +0900

version.h の日付更新。

eregon: r48320 2014-11-09 01:54:15 +0900

Module#const_defined? の rdoc 用コメントに autoload や const_missing との組み合わせでの挙動の詳細やサンプルを追記しています。 https://github.com/ruby/ruby/pull/754

akr: r48321 2014-11-09 02:06:10 +0900

net/http のテスト用のダミーサーバの起動時にソケットを接続してみる疎通確認をしていたのをやめています。

usa: r48322 2014-11-09 04:02:48 +0900

標準添付ライブラリ securerandom で Windows 版の実装を無名モジュールを使っていたのを SecureRandom::AdvApi32 というモジュールとして切り出しています。

usa: r48323 2014-11-09 04:59:01 +0900

r48322 の続きで lib/securerandom.rb の Windows 版実装のリファクタリングをしています。

usa: r48324 2014-11-09 05:01:24 +0900

さらに標準添付ライブラリ securerandom で Windows 版の実装が有効な時(つまり Windows 版の時)は /dev/urandom のチェック前にその実装を使うようにチェックの順番を入れ換えています。

akr: r48325 2014-11-09 09:13:39 +0900

defs/known_errors.def に errno の名前として EHWPOISON を追加しています。 glibc-2.16 で定義されているそうです。

akr: r48326 2014-11-09 09:51:12 +0900

webrick のテストでログのチェックを追加したのをリファクタリングしています。

akr: r48327 2014-11-09 10:17:14 +0900

r48326 の webrick のテストでのログのチェックに assert_operator を使っていたところを assert を使うように再修正しています。

nobu: r48328 2014-11-09 10:31:05 +0900

標準添付ライブラリ lib/securerandom.rb のマジックコメントに encoding を us-ascii と指定するようにしています。 Windows 版実装でマルチバイト文字を含むエンコーディングだとよくない場合があったみたいです。

ktsj: r48329 2014-11-09 11:30:52 +0900

gem/bundled_gems でインストールする power_assert のバージョンを 0.1.4 から 0.2.0 に更新しています。

akr: r48330 2014-11-09 11:42:02 +0900

defs/known_errors.def にさらに FreeBSD の errno ECAPMODE と ENOTCAPABLE を追加しています。

hsbt: r48331 2014-11-09 11:45:25 +0900

gems/bundled_gems の test-unit のバージョンの指定も 3.0.3 から 3.0.5 に更新しています。

akr: r48332 2014-11-09 11:49:13 +0900

net/http のテストでもダミーサーバのログをチェックするようにしています。

nobu: r48333 2014-11-09 12:09:40 +0900

拡張ライブラリ win32 の win32/registry.rb で CR ('\r')を削除するのに String#tr を使っていたのを、delete! を使うようにしています。うーんここは UTF-16 なのでそれにあわせてうまいことやってるんでしょうね。よくわかりませんが。

nobu: r48334 2014-11-09 12:16:24 +0900

標準添付ライブラリ securerandom で random_bytes の実装は gen_random というメソッドに委譲して、各実装で分岐しているところでそのメソッドを定義するようにして毎回分岐しないようにしています。

ko1: r48335 2014-11-09 13:52:52 +0900

gc.c で GC_ENABLE_INCREMENTAL_MARK が 0 でインクリメンタルGC が無効化されている時のビルドエラーを修正しているようです。

akr: r48336 2014-11-09 14:06:44 +0900

xmlrpc のテストでもダミーサーバのログのチェックを追加しています。

akr: r48337 2014-11-09 18:07:41 +0900

そして xmlrpc のテストでもダミーサーバの Thread の停止に assert_join_threads を利用するようにしています。

duerst: r48338 2014-11-09 18:33:36 +0900

r48309 と同様に lib/unicode_normalize/normalize.rb で if-else 文を case 文に書きかえる変更。

akr: r48339 2014-11-09 18:36:33 +0900

r48336 の続き。 xmlrpc のテストでのログのチェックを with_server メソッドに組み込むリファクタリング

nobu: r48340 2014-11-09 19:01:37 +0900

r48338 の lib/unicode_normalize/normalize.rb の変更で case 文の when 節に ** で配列の展開(?)をしようとして Syntax Error になっていたので * 1つに修正しています。

akr: r48341 2014-11-09 20:51:06 +0900

webrick, net/http, open-uri などのテストでログを1つの文字列にまとめてチェックするのではなくて出力毎に配列に格納して、その数やメッセージの順番などもチェックできるようにしています。

akr: r48342 2014-11-09 21:16:38 +0900

webrick のテストで assert_equal の引数の順番が result, expected になっていたので expected, result の順に修正しています。

kazu: r48343 2014-11-09 22:12:04 +0900

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

kazu: r48344 2014-11-09 22:12:14 +0900

test/ruby/test_exception.rb のテストのエラー時のメッセージの typo 修正。

kazu: r48345 2014-11-09 22:12:21 +0900

sample/test.rb のコメントの typo 修正。

akr: r48346 2014-11-09 22:29:08 +0900

lib/webrick/httpstatus.rb で AccessLog を利用しているため require "webrick/accesslog" するようにしています。