ruby-trunk-changes r35370 - r35387

今日は RubyGems の 1.8.22 + αのマージなどがありました。また to_h メソッドの追加が revert されています。

drbrain:r35370 2012-04-18 05:50:00 +0900

RubyGems の最新版をマージしていますが、マージ元を間違ってたみたいです。

svn:r35371 2012-04-18 05:50:07 +0900

version.h の日付更新。

drbrain:r35372 2012-04-18 06:17:56 +0900

というわけで r35370 を revert しています。

drbrain:r35373 2012-04-18 06:21:40 +0900

テスト用に追加された拡張ライブラリの自動生成ファイルを svn:ignore に追加しています。

drbrain:r35374 2012-04-18 09:04:12 +0900

RubyGems の 1.8.22 + αをマージしています。
gem build の gemspec の validation をスキップするオプション(--force)の廃止などが含まれているようです。1.8.11 からの変更点については https://github.com/rubygems/rubygems/blob/1.8/History.txt も参照。

drbrain:r35375 2012-04-18 09:58:47 +0900

rubygemsYAML エンジンに syck を使うか psych を使うかの設定に必要なメソッドを追加しているみたいです。

naruse:r35376 2012-04-18 10:08:34 +0900

test-all で実行するテストのうち GC.stress = true の状態で走らせるものについて、spawn して子プロセスを作成してそこで実行させて結果を取得するようにすることで GC 時間を低減(新しいプロセスは利用するオブジェクト数が少ないのでマーク時間などが減らせる)するようにしています。

nobu:r35377 2012-04-18 10:23:00 +0900

Time#strftime の %z の指示子でタイムゾーンの offset を表示する時に1時間単位に切り捨てて計算していたのを0.1時間単位で表示してから最後の桁を捨てるようにしているようです。 +1 しているのが丸めの処理? ちょっとよくわかりませんでした。
[追記]タイムゾーンの -00?? というのに対応するための工夫だそうです。 [Bug #6318] [/追記]

drbrain:r35378 2012-04-18 10:46:42 +0900

重複していた ChangeLog エントリを削除。

nobu:r35379 2012-04-18 10:58:46 +0900

.gitignore から重複の削除と不要になった要素を削除しています。

nobu:r35380 2012-04-18 10:58:49 +0900

test/ruby/test_time_tz.rb でヘルパーメソッド内でプラットフォームやRUBY_VERSIONで分岐していたのを、メソッド定義自体を分岐して別々のメソッドを定義するようにしています。

naruse:r35381 2012-04-18 12:31:11 +0900

大きなArrayやHashのリテラルのテストで高速化のためGC.disable=trueにして実行するようにしています。

naruse:r35382 2012-04-18 12:38:09 +0900

もうひとつ GC.stress = true にして実行するテストを子プロセスに分離しています。

naruse:r35383 2012-04-18 12:59:15 +0900

r35339 - r35343 の いくつかのクラスに Hash に変換する to_h メソッドを追加したコミットをテストがないということで revert しています。 [Feature #6276]

usa:r35384 2012-04-18 14:00:07 +0900

コミットミスのようで ChangeLog の変更だけです。

usa:r35385 2012-04-18 14:50:45 +0900

win32/file.c で INVALID_FILE_ATTRIBUTES というマクロ定数が未定義だったら定義するようにしています。

nobu:r35386 2012-04-18 16:10:38 +0900

Timeのタイムゾーンについてのテストで Mac OS X だとうまくいかないものをスキップするようにしています。
[追記]と思ったのですが、元々 linux でしか TZ 関係のテストが走ってなかったのを2種類に分けて、Mac OS X でも実行できるものは実行するようにしていました。[/追記]

nobu:r35387 2012-04-18 22:59:00 +0900

configure でドキュメント生成の doxygen と dot コマンドを探索するのに AC_CHECK_PROG ではなく AC_CHECK_PROGS を使用するようにしています。引数の数が一致していなくてうまくいってなかったようです。 [ruby-core:44433] [Bug #6316]