ruby-trunk-changes r31945 - r31953

今日は tk の Windows でのビルドエラーの修正の他はテストの修正が主でした。

kazu:r31945 2011-06-07 03:35:06 +0900

IO.write, IO.binwrite のテストで "/tmp/nonexisting" というファイルパスを決め打ちで存在しないファイルとして利用しているところがあったので、一時ディレクトリを作成してその中でテストするように修正しています。 [ruby-dev:43640] [Bug #4846]

svn:r31946 2011-06-07 03:35:11 +0900

version.h の日付更新。

nobu:r31947 2011-06-07 13:37:08 +0900

Windows で拡張ライブラリ tk がビルドできない問題の対処。 コンパイルオプションを $CPPFLAGS ではなく $defs に格納しておくようにしています。 $defs だと Windows での空白文字のエスケープを適切に扱ってくれるようです。ビルドプロセス(というか mkmf?)は難しいですね。 [ruby-dev:43634] [Bug #4835]

nobu:r31948 2011-06-07 13:50:34 +0900

time.c のインデントの調整だけです。

nobu:r31949 2011-06-07 14:00:04 +0900

ex/date/date_core.c で localtime_r() を呼び出しているところでエラーチェックして例外(Errno::EXXX)を発生させるようにしています。

usa:r31950 2011-06-07 18:16:02 +0900

test/ruby/test_rubyoptions.rb の $0 への代入のテストでプラットフォームによって skip する時に、プラットフォーム依存の機能なので skip する旨メッセージを渡すようにてしています。

usa:r31951 2011-06-07 18:38:51 +0900

test/rubygems/test_gem.rb で Windows 環境での Gem.user_home の解決のテストを skip から単にテストメソッド定義を抑制するようにしています。 "1.9" > RUBY_VERSION という条件で分岐していますが trunk は 1.9 以降なので実質常に無視になってます。

usa:r31952 2011-06-07 18:56:30 +0900

rubygem で Windows 版の時に IO#tty? を利用しないようにしていたのを利用するようにしています。IO#tty? の Windows での不具合は r29969 で修正済み。またこれに伴ない Windows で skip していたテストを通すようにしています。