ruby-trunk-changes r54492 - r54502

今日は一部のプラットフォームでの Math.gamma, Math.lgamma に -0.0 を渡した時の結果の符合の修正や rubygems の 2.6.3 への更新などがありました。

nobu: r54492 2016-04-06 00:52:02 +0900

Math.gamma(-0.0) が mingw 用の実装で -Infinity を返すようにしています。 [ruby-core:74817] [Bug #12249]

svn: r54493 2016-04-06 00:52:03 +0900

version.h の日付更新。

nobu: r54494 2016-04-06 00:53:32 +0900

Math.lgamma の -0.0 を渡した時の挙動も mingwOS X 向けの実装を修正しています。 [ruby-core:74817] [Bug #12249]

usa: r54495 2016-04-06 01:23:39 +0900

r54494 の Math.lgamma の実装を mswin 向けにも利用するようにしています。 [ruby-core:74817] [Bug #12249]

nobu: r54496 2016-04-06 10:17:55 +0900

r54494 および r54495 の Math.lgamma の修正ですが Windows 版向けには missing/lgamma_r.c で実装されている lgamma_r(3) が利用されるので OS X 向けにのみ ruby_lgamma_r() は定義するようにしています。つまり mswin/mingw ではそもそも lgamma_r() がないので missing/lgamma_r.c が使われ、OS X の lgamma_r() はあるんだけど結果がおかしいのでここで横取りするってことですね。そして missing/lgamma_r.c の lgamma_r() も結果の符号を修正しています。 [ruby-core:74817] [Bug #12249]

nobu: r54497 2016-04-06 10:56:16 +0900

標準添付ライブラリ logger の rdoc 用コメントに引数のデフォルト値の追記と、未使用のローカル変数の除去。 https://github.com/ruby/ruby/pull/1319

nobu: r54498 2016-04-06 13:38:49 +0900

拡張ライブラリ openssl のテストで OpenSSL::PKey の暗号化方式の定数を参照しているところで defined? で定義されているかチェックしてから使うように修正しています。 https://github.com/ruby/ruby/pull/1318

nobu: r54499 2016-04-06 14:13:29 +0900

r54495 からの Math.lgamma の修正の続きで、configure で lgamma_r(-0.0) の結果をチェックして符合が負じゃなかったら代替実装を使うようにしてプラットフォーム(OS X)で分岐していたのをやめています。 [ruby-core:74817] [Bug #12249]

hsbt: r54500 2016-04-06 15:01:14 +0900

標準添付の rubygems を 2.6.3 に更新しています。 aaron による require の高速化が入ってるのかな? また ruby のバージョン番号2桁の対応も入っています(2.1.10 のリリース向け)。 https://github.com/rubygems/rubygems/blob/master/History.txt

nobu: r54501 2016-04-06 16:59:37 +0900

bootstraptest/test_thread.rb で大量の Thread を作成するテストでリソースが足りずに "can't create Thread" という ThreadError 例外が発生した場合に捕捉して成功にするようにしています。

usa: r54502 2016-04-06 17:40:02 +0900

r54500 で rubygems の証明書の置き場所が lib/rubygems/ssl_certs/ の直下からドメイン名のサブディレクトリの下に変更になったので tool/downloader.rb で gem パッケージをダウンロードする時の証明書ファイルのオプションの設定を追随させています。