ruby-trunk-changes r58715 - r58733

今日はテスト(rubyspec)やビルドプロセスの変更が主でした。

nobu: r58715 2017-05-14 22:01:46 +0900

thread_sync.c の rb_mutex_num_waiting() で未初期化の変数の警告が VC で出るとのことで初期化を追加しています。

eregon: r58716 2017-05-14 23:09:29 +0900

spec/mspec に upstream のリポジトリ ruby/mspec の変更をマージしています。

svn: r58717 2017-05-14 23:09:30 +0900

r58716 で新規追加されたファイルの svn property 設定。

eregon: r58718 2017-05-14 23:09:56 +0900

spec/rubyspec に upstream のリポジトリ ruby/spec の変更をマージしています。

svn: r58719 2017-05-14 23:09:58 +0900

r58718 で新規追加されたファイルの svn property 設定。

nobu: r58720 2017-05-14 23:27:07 +0900

r58718 の rubyspec の変更でのメッセージの typo 修正。

nobu: r58721 2017-05-15 15:17:29 +0900

localeinit.c や signal.c で RUBY_DEBUG_ENV の真偽によって変数の参照を enum やマクロで置き換えていたのをやめています。ただのコード整理かな。

svn: r58722 2017-05-15 15:17:30 +0900

version.h の日付更新。

ko1: r58723 2017-05-15 16:02:33 +0900

test/rubygems/test_gem_gem_runner.rb にさらにデバッグ用の出力をガンガン増やしています。

nobu: r58724 2017-05-15 16:04:48 +0900

main.o のコンパイル時にのみ -DRUBY_DEBUG_ENV の指定をつけるようにしています。これはなぜだろう。

normal: r58725 2017-05-15 16:33:10 +0900

拡張ライブラリ socket のテストで TCPServer.new でサーバーソケットを開く時に明示的に "localhost" を指定するようにしています。外に向けてポートを開いていたらまずいかも、ということみたいですが、なんか localhost が名前解決できない環境があってみたいな話が昔あったような気も。今そういう環境でテストしてる人がいなければ問題ないですが(たぶん shyouhei さんが lxc でテスト環境作ってた頃の話だったような記憶)。

usa: r58726 2017-05-15 16:35:26 +0900

標準添付ライブラリ fileutils のテストで FileUtils.ln_s のテストで symlink が使えない環境ではテストメソッドの定義をしないように分岐しています。また作成した symlink の削除を ensure 節でして例外発生時に残さないようにしています。

nobu: r58727 2017-05-15 19:32:30 +0900

spec/default.mspec の IO.for_fd で make の job server の通信を利用しているところで Errno::EBADF 例外は無視するようにしています。

nobu: r58728 2017-05-15 20:16:25 +0900

rubyspec の C API テスト用の拡張ライブラリのビルド時に RbConfig::CONFIG の LIBRUBYARG も適用するようにしています。逆に dldflags から $(DEFFILE) の参照は消すようにしています。 mingw でのビルド用だそうです。

nobu: r58729 2017-05-15 20:16:26 +0900

cygwinmingw 環境での LDSHARED に -s を条件つきて追加していたのを削っています。

nobu: r58730 2017-05-15 20:16:27 +0900

configure で mingw 環境で rb_cv_negative_time_t=yes を追加しています。 r58681 で win32/Makefile.sub に NEGATIVE_TIME_T の定義を追加したのと同じく mingw でも NEGATIVE_TIME_T が真に定義されるようにするためですね。

nobu: r58731 2017-05-15 20:19:12 +0900

rubyspec の C API テスト用拡張ライブラリで preprocessor の分岐の一部でしか使われない変数の宣言をそれぞれの分岐の中に入れて環境によって未使用変数の警告が出るのを除去。

nobu: r58732 2017-05-15 20:25:56 +0900

rubyspec の C API テスト用拡張ライブラリのソースで Windows 環境で pipe() の代替として rb_w32_pipe() を呼ぶようにマクロ定義を追加しています。

nobu: r58733 2017-05-15 20:32:35 +0900

spec/rubyspec/optional/capi/spec_helper.rb で拡張ライブラリビルド時に RbConfig::CONFIG["LIBRUBYARG"] のかわりに RbConfig::CONFIG["LIBRUBYARG_SHARED"] を利用するようにしています。