ruby-trunk-changes r65391 - r65418

今日は rubyspec の win32ole のテストの最近の環境で動くようにする変更と rdoc の不具合修正やドキュメント用コメントの修正などがありました。

k0kubun: r65391 2018-10-27 22:57:23 +0900

r65389 と r65389 で rubyspec の win32ole でリトライする処理を WIN32OLESpecs.new_ole というユーティリティメソッドの中に移動して共通化するリファクタリング

k0kubun: r65392 2018-10-27 23:06:44 +0900

rubyspec の Thread#exit のテストを r64991 で MinGW で実行しないようにしていたのを、shared behavior 全体にかけてたのを shared behavior の中の固有のテストケースにのみかけるように局所化しています。

naruse: r65393 2018-10-28 06:45:30 +0900

2.1.0 から例外を rescue したところで発生させた Exception には元の例外が cause というメソッドで取り出せるように保持されるようになっていましたが(もうそんなに前なのか…)、例外が捕捉されずにトップレベルに来た時に cause のエラーメッセージとバックトレースも表示するようにしています。 [ruby-core:54185] [Feature #8257]

svn: r65394 2018-10-28 06:45:32 +0900

version.h の日付更新。

suke: r65395 2018-10-28 07:50:08 +0900

rubyspec の win32ole のテストの可否を確認するために WIN32OLE_TYPELIB に "Microsoft XML" ではじまるものが存在するか確認して定数 MSXML_AVAILABLE に格納しておくようにしています。

naruse: r65396 2018-10-28 08:13:34 +0900

r65393 の Exception#cause のバックトレース表示の追加で、cause のほうを後に(端末への出力でバックトレースが反転している時は先に)表示するように順序を調整しています。

naruse: r65397 2018-10-28 08:15:43 +0900

r65393 の Exception#cause のバックトレース表示のテストのバックトレースの順序を修正。

suke: r65398 2018-10-28 08:21:29 +0900

rubyspec の win32ole のテストで InternetExplorer.Application のかわりに Scripting.Dictionary を利用するようにしています。

suke: r65399 2018-10-28 08:37:58 +0900

r65398 と同様に rubyspec の別の win32ole のテストでも InternetExplorer.Application を使っていたところを Scripting.Dictionary に変更しています。

suke: r65400 2018-10-28 10:03:49 +0900

r65398 と同様に rubyspec の win32ole のテストで InternetExplorer.Application のかわりに Scripting.Dictionary を利用。

suke: r65401 2018-10-28 10:08:42 +0900

r65395 で導入した定数 MSXML_AVAILABLE の初期化のところで win32ole の require が失敗した時の rescue は削除しています。このファイル自体 Windows 環境でないとロードされないからとのこと。

k0kubun: r65402 2018-10-28 10:19:30 +0900

なのですが r65401 で Linux の CI が壊れるとのことで revert されています。

nobu: r65403 2018-10-28 10:56:28 +0900

rdoc で C のコードを解析している時に rb_define_singleton_method() でオブジェクトの特異メソッドを定義しているところでエントリを生成しないようにしています。

nobu: r65404 2018-10-28 10:58:27 +0900

NEWS ファイルのマークアップの修正。

suke: r65405 2018-10-28 12:48:17 +0900

rubyspec の win32ole のテストで r65395 および r65401 で変更してたファイルを Windows 以外でも require してしまっていたところがあったので platform_is のブロックで括るようにしています。さらに InternetExplorer.Application を使ってたところを Scripting.Dictionary を使うように修正。

nobu: r65406 2018-10-28 13:00:26 +0900

Time.new の rdoc 用コメントの offset 引数を tz に変更してタイムゾーンを指定するオブジェクトの仕様について追記しています。

suke: r65407 2018-10-28 13:18:53 +0900

rubyspec の win32ole のテストで InternetExplorer.Application を使っていたところを Scripting.Dictionary を使うように変更。

suke: r65408 2018-10-28 13:25:55 +0900

rubyspec の win32ole のテストで InternetExplorer.Application を使っていたところを Scripting.Dictionary を使うように変更。

suke: r65409 2018-10-28 13:38:49 +0900

rubyspec の win32ole のテストで InternetExplorer.Application を使っていたところを Scripting.Dictionary を使うように変更。

suke: r65410 2018-10-28 14:08:37 +0900

rubyspec の win32ole のテストで InternetExplorer.Application を使っていたところを Scripting.Dictionary を使うように変更。また win32ole/fixtures/classes を Windows 環境でのみ require するように platform_is ブロック内に移動しています。

ko1: r65411 2018-10-28 14:09:58 +0900

RubyVM::InstructionSequence の binary dump 時に Hash をダンプする時に内部で st_foreach() を使っていたのを rb_hash_foreach() を使うように書きかえています。例外の捕捉が必要だったのかな?

suke: r65412 2018-10-28 14:40:41 +0900

rubyspec の win32ole のテストで InternetExplorer.Application を使っていたところを、ここは MSXML.DOMDocument を使うように変更。ここで r65395 で追加した WIN32OLESpecs::MSXML_AVAILABLE を参照するようにしています。

nobu: r65413 2018-10-28 14:53:57 +0900

Time.new の rdoc 用コメントで timezone 引数についての説明部分にリンクがはられるようにマークアップ追加しています。

suke: r65414 2018-10-28 15:11:30 +0900

rubyspec の win32ole のテストで InternetExplorer.Application を使っていたところを、ここは MSXML.DOMDocument を使うように変更。

suke: r65415 2018-10-28 15:16:18 +0900

rubyspec の win32ole のテストで spec の名前に InternetExplorer という名前が残ってたので修正しています。

suke: r65416 2018-10-28 15:37:33 +0900

r65402 で revert されてた r65401 の再適用と、Windows 以外でこのファイルを require しないように rubyspec のファイルの修正。

k0kubun: r65417 2018-10-28 16:44:59 +0900

appveyor.yml で test-all の open-uri のテストも -j なしのほうで実行するように分離しています。

k0kubun: r65418 2018-10-28 18:06:54 +0900

r65417 の変更でテストのディレクトリの相対パスの記述が間違ってたのを修正。