ruby-trunk-changes r36808 - r36819

今日は Windows 環境での File.expand_path の高速化の実装が入りました。

tenderlove:r36808 2012-08-24 06:14:31 +0900

ASCII-8BIT の String の Copy on Write で複製された文字列の encode のテストを追加しています。 assert_nothing_raised("JRUBY-6764") という assert 文のメッセージをみると JRUBY に関連するものみたいですね。

svn:r36809 2012-08-24 06:14:36 +0900

version.h の日付更新。

drbrain:r36810 2012-08-24 07:42:12 +0900

r35761 で net/http のファイルを分割した時に Net::HTTPSession というクラス(実際は Net::HTTP と同一)を Net::HTTP::HTTPSession に移動してしまっていたので互換性のために Net::HTTPSession に移動しています。 [ruby-core:47239] [Bug #6889]

luislavena:r36811 2012-08-24 12:44:56 +0900

Windows 版の File.expand_path のパフォーマンス改善をしています。 [ruby-core:46996] [Bug #6836]
新しい実装 rb_file_load_path_internal() はかなり長いのでちゃんと読んでいませんが GetFullPathNameW() FindFirstFileW() といった API を利用して Windows 固有の実装を行っているようです。

luislavena:r36812 2012-08-24 12:48:11 +0900

r36811 に誤って混入したタイムスタンプファイルを削除しています。

nobu:r36813 2012-08-24 13:14:31 +0900

win32/.time を svn:ignore プロパティに追加しています。

kazu:r36814 2012-08-24 13:53:50 +0900

こっちは .gitignore で win32/.time を無視するファイルに追加しています。

nobu:r36815 2012-08-24 15:42:34 +0900

make -j で並列ビルドがうまく動かないという問題の対策で mkmf.rb でタイムスタンプファイルを Makefile の依存関係の記述に導入しているようです。 [ruby-dev:46067] [Bug #6904]

nobu:r36816 2012-08-24 15:56:58 +0900

r36815 のぶんの ChangeLog エントリを追加しています。

naruse:r36817 2012-08-24 15:57:20 +0900

r36805 で追加した Float に extend ができないというテストを修正しています。 Float が即値(flonum)かどうかで可否が異なるので equal でチェックして assert を変更するようにしています。

nobu:r36818 2012-08-24 16:13:38 +0900

r36815 の再修正です。 mkmf.rb の Makefile 生成時の余分な改行と, install-so のターゲットが重複していたのを修正しています。 [ruby-dev:46067] [Bug #6904]

nobu:r36819 2012-08-24 18:15:58 +0900

flonum の導入で rb_float_new() に追加されたビット演算の結合順序をかっこをつけて明示的にしてコンパイラの警告を抑制しています。また型キャストを入れて ~ によるビット反転の幅を明示するようにしています。