ruby-trunk-changes r33259 - r33265

nobu:r33259 2011-09-12 22:24:19 +0900

Test::Unit::Assertions#assert_send の失敗時のメッセージの true,false が反対だったのを修正。

matz:r33260 2011-09-13 05:38:17 +0900

open の第2引数にビットフラグとして渡せる定数 IO::BINARY が指定された時には改行コードの変換モードの指定(変換しない)だけを意味していて external encoding を ASCII-8BIT に設定する意味はないので、ドキュメントをそのように修正しています。 [ruby-talk:387719]
なお mode を文字列で指定する時の "b" は改行コード変換モード+(追加の指定がなければ)external encoding を ASCII-8BIT に設定するの両方を含んでいます。

svn:r33261 2011-09-13 05:38:23 +0900

version.h の日付更新。

nobu:r33264 2011-09-13 15:02:59 +0900

PStore がデータを保存するファイルを open する時に File::BINARY を指定するだけだったため external encoding がデフォルトのままになっていてので、:encoding => Encoding::ASCII_8BIT の指定も追加して開くようにしています。 [ruby-core:39503] [Bug #5311]

nobu:r33265 2011-09-13 20:21:52 +0900

lib/pstore.rb が -w/-v オプション付きだとメソッドの再定義で警告が出るのを抑制しています。
けどこの警告の回避がちょっとおもしろくて、Module#instance_method で一度メソッドを UnboundMethod オブジェクトとして取り出すと警告が出なくなっています。これで元のメソッドがどこかに保存されている可能性があるので警告しなくていいやってことなんでしょうね、実際には取り出したメソッドはそのまま捨てていますが。