ruby-trunk-changes r34202 - r34211

今日は force_encoding した String の不具合修正と Windows 版の File.stat の不具合修正などがありました。

ayumin:r34202 2012-01-04 00:05:20 +0900

REXML::Parsers::BaseParser#add_listener を呼んだ時に @listeners を初期化したりメソッド pull で @listeners の要素にイベントを receive メソッドで渡すように再定義したりというメタプログラミングを駆使していましたが、最初からそのような挙動をするようにすることで instance_eval を使うのをやめるようにしています。 [ruby-core:41437] [Bug #5696]

svn:r34203 2012-01-04 00:05:24 +0900

version.h の日付更新。

kou:r34204 2012-01-04 00:21:53 +0900

r34202 で pull の実処理を _pull_inner というメソッドに分離していましたが pull_event に改名して private メソッドとして宣言しています。

usa:r34205 2012-01-04 11:33:37 +0900

Windows 版でファイル/フォルダが全く存在していない(したこともない?)ドライブのルートディレクトリに対して File.stat がエラーになってしまうという不具合の対応です。パス文字列をチェックしてドライブルートだったらエラーになるチェックを迂回するようにしているようです。 [Bug #5819]
[追記] この空のドライブルートでエラーになるのはファイルシステムが FAT の時の問題らしいです。 [/追記]

nobu:r34208 2012-01-04 14:24:39 +0900

String#slice など文字列を文字に分解する操作で force_encoding でエンコーディングを強制的に変更した文字列の場合のインデックス計算の不具合修正。 [ruby-core:41896] [Bug #5836]

ayumin:r34210 2012-01-04 18:03:20 +0900

Array#sample の rdoc にサンプルを追記しています。sample はランダムに要素を返すのでサンプルの結果はあくまで一例です。

ayumin:r34211 2012-01-04 18:27:58 +0900

ChangeLog の日付のフォーマットを修正しています。