ruby-trunk-changes r64963 - r64977

今日は MJIT の MinGW テスト対策や標準添付ライブラリ time や objspace の不具合修正などがありました。

k0kubun: r64963 2018-10-08 20:59:22 +0900

AppVeyoor でのエラー対策として WIN32OLE のテストに sleep を追加しています。

k0kubun: r64964 2018-10-08 22:46:42 +0900

よくわかりませんが include/ruby/ruby.h で mingw 環境の時に RUBY_EXTERN に __declspec(dllimport) という attribute? の指定を追加しています。これで MJIT のテストが MinGW で通るようになったみたいで skip をいくつか消しています。

k0kubun: r64965 2018-10-08 22:57:36 +0900

r64964 の RUBY_EXTERN の定義の変更部分のコメントに win32/Makefile.sub への参照を追記しています。

svn: r64966 2018-10-08 22:57:38 +0900

r64965 の行末の空白を除去。

kazu: r64967 2018-10-09 00:12:56 +0900

r64958 の NEWS ファイルへの追記のインデント修正のみ。

svn: r64968 2018-10-09 00:12:57 +0900

version.h の日付更新。

kazu: r64969 2018-10-09 00:47:21 +0900

r64967 の NEWS ファイルのインデント修正を revert しています。

tenderlove: r64970 2018-10-09 08:43:45 +0900

拡張ライブラリ objspace の ObjectSpace.dump_all で VALUE の参照を表示する時に (void *) にキャストして %p で表示してたのをフォーマット指示子 x と PRIxPTR を利用するようにしています。キーワード引数 output での出力先の指定によって表示が変わってたのに対応しているそうです。vfprintf() が異なる挙動をするそうです。えー。

svn: r64971 2018-10-09 08:43:48 +0900

r64970 のインデントのタブを空白に展開。

naruse: r64972 2018-10-09 11:01:54 +0900

r64970 を revert しています。 VC++ 12.0 で PRIxPTR が使えないからとのこと。

svn: r64973 2018-10-09 11:01:56 +0900

r64972 のインデントのタブを空白に展開。

nobu: r64974 2018-10-09 12:21:57 +0900

r64970 のリトライ。 PRIxPTR のかわりに PRIxVALUE を使うようにしています。

nobu: r64975 2018-10-09 14:55:29 +0900

標準添付ライブラリ time の Time.make_time で引数の now に getlocal メソッドがあるかどうかのチェックを追加しています。 Time.parse の rdoc ドキュメントには Time オブジェクトに限らず year/mon/day メソッドに反応できるオブジェクト(Date, DateTime など)も受付けると書いてあるのですが、実際には getlocal も呼んでたので呼べるときだけ呼ぶように修正しています。 [ruby-core:68775] [Bug #11037]

ko1: r64976 2018-10-09 15:18:28 +0900

rubyspec のコマンドラインオプション -v のテストで include? の結果に対して .should == true って書いてたのを .should include() の記法を使うようにリファクタリングしています。

nobu: r64977 2018-10-09 15:56:38 +0900

Time の timezone の扱いについてのテストを追加しています。