ruby-trunk-changes r66739 - r66747

今日は Complex の除算(Complex#/ メソッド)で右辺が Complex じゃない時に結果の Integer への正規化がされないことがある不具合の修正や Time.new の timezone の指定の不具合修正や対応する timezone name の追加などがありました。

k0kubun: r66739 2019-01-06 23:53:43 +0900

internal.h の C++ の bool, true, false などの型と定数が未定義の時の代替定義を missing/stdbool.h に移動してまとめています。古い VisualStudio および Oracle Solaris Studio 対応だそうです。

mrkn: r66740 2019-01-07 00:46:21 +0900

r66733 の変更で benchmark/range_last.yml の prelude セクションが不要になってたので削除しています。

svn: r66741 2019-01-07 00:46:22 +0900

version.h の日付更新。

nobu: r66742 2019-01-07 10:58:05 +0900

common.mk に BENCH_RUBY という変数を追加して make benchmark でベンチマーク実行に使う? ruby のコマンドの位置を指定できるようにしています。

nobu: r66743 2019-01-07 11:05:21 +0900

benchmark/time_strptime.yml という Time.strptime のベンチマークを追加しています。

mrkn: r66744 2019-01-07 13:49:34 +0900

Complex#/ で Complex の除算をした結果の real, imag が整数になる時に Integer に正規化する処理が右辺値が Complex じゃない時に働いてなかったのでその時も正規化するようにしています。 https://github.com/ruby/ruby/pull/2065 [ruby-core:90891] [Bug #15505]

hsbt: r66745 2019-01-07 15:01:49 +0900

拡張ライブラリ date の gemspec ファイルの spec.version を 1.0.0 から 2.0.0 に更新しています。

nobu: r66746 2019-01-07 15:59:46 +0900

Time.new で timezone の指定に文字列で "UTC" や "Z" を指定した時に生成したインスタンスutc? が true にならなかったのを修正しています。

nobu: r66747 2019-01-07 16:03:23 +0900

Time.new の timezone の指定に "A"〜"Z" のアルファベット1文字("J" は除くらしい)の指定(military time zone names というらしい)をサポートするようにしています。