ruby-trunk-changes r49332 - r49337

今日は Module#prepend が同じモジュールを継承関係上に複数回 prepend で挿入できるようにする変更がありました。

nobu: r49332 2015-01-19 22:08:28 +0900

同じモジュールを継承関係にある複数のクラスにそれぞれ prepend できるようにしています。 Module#include は ancestors に既に含まれている Module は追加されませんが(呼び出し自体は成功する)、Module#prepend では可能にしています。 以前 include で super の呼び出しが無限ループしてたりしたので禁止したんですよね、確か。今度はどうでしょうか…。

svn: r49333 2015-01-19 22:08:43 +0900

version.h の日付更新。

nobu: r49334 2015-01-19 22:44:32 +0900

r49326 の enc/trans ディレクトリ作成の追加により .travis.yml の make コマンドに MAKEDIRS 変数の定義を追加しています。

nobu: r49335 2015-01-19 23:09:20 +0900

rb_class_foreach_subclass() の引数にコールバック関数に渡す引数を追加しています。 rb_class_clear_method_cache() から呼ばれる時に引数がサブクラスに伝播していませんでした。まあ arg 使っていませんけどね。なのでなにか別に使う予定なのかも。今のところ他に利用されていませんが。

zzak: r49336 2015-01-20 02:57:03 +0900

File::Stat#birthtime と Pathname#birthtime の rdoc 用コメントに birthtime が利用できない時は ctime を返すとあるのを NotImplementedError を発生させると修正しています。 https://github.com/ruby/ruby/pull/817
あれ、Windows では ctime で代替するようにしていたような…と思いましたが確かに HAVE_STAT_BIRTHTIME が未定義だと NotImplementedError を発生させるようになっていました。

svn: r49337 2015-01-20 02:57:18 +0900

version.h の日付更新。