ruby-trunk-changes r64793 - r64808

今日は Enumerable#to_h などの to_h メソッドがブロックを受け付けるようになる新機能や Matrix#reflexive? メソッドの追加などがありました。

nobu: r64793 2018-09-20 23:30:21 +0900

最新版の Xcode の linker が警告をいっぱい出す(?)ようになったとかでひとまず darwin で警告オプションをオフにするようにしています。 ちょっと調べてみたら .dylib が廃止されて(?) TBD ファイルというのを使うようになったみたいですね。ひえー。

nobu: r64794 2018-09-21 00:06:56 +0900

Enumerable#to_h や Array#to_h、ENV#to_h、Struct#to_h などがブロックを受け付けるようになり、ブロックを評価した結果を使って作った Hash を返せるようになっています。なるほど、確かに便利そう。しかし to_h に追加されるとは。 [ruby-core:89088] [Feature #15143]

svn: r64795 2018-09-21 00:06:57 +0900

version.h の日付更新。

marcandre: r64796 2018-09-21 03:24:16 +0900

標準添付ライブラリ matrix に Matrix#reflexive? メソッドを追加しています。 Matrix の対角成分が全て 1 の時に true を返します。 https://github.com/ruby/ruby/pull/1730

svn: r64797 2018-09-21 03:24:17 +0900

r64796 の新規追加ファイルの svn property 設定。

kazu: r64798 2018-09-21 11:14:33 +0900

r64794 の NEWS ファイルの typo 修正。

ko1: r64799 2018-09-21 15:30:54 +0900

vm_exec.h のデバッグ用のマクロ DEBUG_END_INSN() で th -> ec の変更の追随漏れが残ってたので修正しています。 VMDEBUG が 1以上の時のみ使われてるので見逃がされてたようです。

ko1: r64800 2018-09-21 15:41:07 +0900

これも多分 VMデバッグ用の API rb_debug_inspector_open() で VM スタックの env を引き剥がして heap 上のオブジェクト化する処理を追加しています。r60397 の Proc オブジェクトの作成遅延の最適化の影響で不具合があったみたいです。 [ruby-core:88951] [Bug #15105]

svn: r64801 2018-09-21 15:41:09 +0900

r64800 の行末の空白除去。

nobu: r64802 2018-09-21 16:19:13 +0900

r64793 の Xcode の linker の警告対策の続き。 どうも TBD ファイルを使うようになったものの、linker がそれに警告を出す状態のままリリースされてしまったみたいなので、tool/darwin-cc というシェルスクリプトを追加して、特定のパターンの警告は削るフィルタ付きでコンパイラを起動するようにしています。うう、ツラい workaround だ。

svn: r64803 2018-09-21 16:19:14 +0900

r64802 の新規追加ファイルの svn property 設定。

kazu: r64804 2018-09-21 17:34:25 +0900

r64794 の Enumerable#to_h の rdoc 用コメントの追記の typo 修正。

kazu: r64805 2018-09-21 17:53:11 +0900

r64787 の Array#union の rdoc 用コメントの追記のサンプルコードの引数が間違ってて余分にネストしていたのを修正しています。

nobu: r64806 2018-09-21 19:19:10 +0900

C の代入文が値として使われてるところなどでかっこをつけるように促すメッセージを出す警告を制御するオプション -Wno-parentheses を削除するようにしています。つまりこれは警告するようにするってことですね。このためいくつか条件部のかっこを追加しています。 https://github.com/ruby/ruby/pull/1958

svn: r64807 2018-09-21 19:19:14 +0900

r64806 の変更箇所のインデントを空白でするように展開しています。

nobu: r64808 2018-09-21 19:31:11 +0900

r64806 の続きでさらに警告抑制のためかっこを追加しています。 https://github.com/ruby/ruby/pull/1958