ruby-trunk-changes 2019-09-09

今日はキーワード引数の警告の修正などがありました。 Addrinfo.getaddrinfo のタイムアウト対応という待望の機能もあったんですが一部環境でテストが通らなかったようで revert されてしまいました。

[3ef76ce44a] Nobuyoshi Nakada 2019-09-08 12:22:25 UTC

tool/make-snapshot のヘルプメッセージから既に削除されている -git オプションの記述を削除しています。

[8d53b2cdf8] Nobuyoshi Nakada 2019-09-08 15:21:40 UTC

defs/gmake.mk で rdoc のオプションに --force-update を追加して全ドキュメント更新するのを ifeq を使わず trget-specific variable なる機能を利用するようにしています。また make great ターゲットで test-rubyspec 実行するようにしてたのを削っています。

[d636feb6a6] git 2019-09-08 15:27:05 UTC

version.h の日付更新

[fa79219356] Jeremy Evans 2019-09-08 17:34:34 UTC

親クラスのメソッドを呼ぶ super(*args, **kw) および無引数(かっこなし)の super (いわゆる ZSUPER?)での keyword splat の変換や警告のテストを追加しています。

[6382f5cc91] Masaki Matsushita 2018-12-31 03:17:39 UTC

拡張ライブラリ socket の Addrinfo.getaddrinfo の名前解決にタイムアウトをかけられるように、キーワード引数 timeout を追加しています。 libanl (anl は何の略だろう?)の getaddrinfo_a(3) と gai_suspend(3) というライブラリ関数を使うとブロックせずに名前解決要求をすることができるようです。これを利用するため Socket.tcp にも resolv_timeout というキーワード引数を追加しています。

[61d90da25c] Jeremy Evans 2019-09-09 03:51:56 UTC

keyword splat が実際には通常引数に追加されないのにその警告が出るパターンがあるというのを修正しています。引数の数が setup_parameters_complex() の途中で更新されてるのにその前のチェックの結果を remove_empty_keyword_hash という変数に保存しておいたフラグをみて警告していたので、常に最新の変数で比較するようにしています。
この変更と直接関係ないけどてっきり keyword splat への 空 Hash を無視するのってリテラルで書いた時だと思ってたけど動的にサイズ判定するようになってた。

[461663f52a] Masaki Matsushita 2019-09-09 06:05:05 UTC

6382f5cc91ac9e36776bc854632d9a1237250da7 の Addrinfo.getaddrinfo の timeout キーワード追加のテストで利用するホスト名を localhost に変更しています。

[0fb2457d79] Masaki Matsushita 2019-09-09 09:35:19 UTC

461663f52a87bbae7f3713862a20a4aa6bd63e4c と同様 6382f5cc91ac9e36776bc854632d9a1237250da7 で追加した Addrinfo.getaddrinfo のテストで service name の指定を nil に変更しちます。 Solaris で "http" を指定するとうまくいかないらしい。

[8c09de38c5] Masaki Matsushita 2019-09-09 09:44:42 UTC

同じく 6382f5cc91ac9e36776bc854632d9a1237250da7 で追加した Addrinfo.getaddrinfo のテストで 0fb2457d794ee49701873584c80a6e1cace94b83 で service name の指定を消したのに対応して ip_port の assertion を修正しています。

[551edf64bc] Lars Kanis 2019-09-08 16:24:48 UTC

標準添付ライブラリ reline の Reline::Core#read_escaped_key の引数の名前が間違ってたのを修正しています。

[0691a748b6] Kazuhiro NISHIYAMA 2019-09-09 11:06:00 UTC

compile_hash() に追加したコメントの typo 修正。

[cce6cfbe48] Yusuke Endoh 2019-09-09 11:24:03 UTC

Android の環境で make test-all と test-spec を走らせるためにいくつかのテストや spec に skip や platform guard を追加しています。

[c4efbf663e] Masaki Matsushita 2019-09-09 11:30:45 UTC

6382f5cc91ac9e36776bc854632d9a1237250da7 およびそれに続く拡張ライブラリ socket の Addrinfo.getaddrinfo の名前解決の timeout 機能追加を revert しています。 Solaris でのテストが通せなかったとのこと。残念。