ruby-trunk-changes r61759 - r61767

今日は Array#min, Array#max で比較の結果同じ大きさと判定されたオブジェクトがあった時にどっちが返されるかの位置による依存が変わっていたのを修正する変更などがありました。

mame: r61759 2018-01-10 22:30:22 +0900

rubyspec で Etc.getlogin のテストをするのに id -un コマンドを使っていましたが、Etc.getlogin は現在の制御端末のログインユーザーを返すので不一致になる可能性もあるので、logname コマンドが使える時はそちらを使うようにしています。

mame: r61760 2018-01-10 22:30:25 +0900

rubyspec でも root ユーザーだと失敗するテストを as_user というヘルパーメソッドのブロック内に入れて skip するようにしています。

hsbt: r61761 2018-01-10 23:13:06 +0900

doc/contributors.rdoc の typo 修正。

k0kubun: r61762 2018-01-11 00:44:52 +0900

rr61498 で Appveyor のために tool/downloader.rb のダウンロード時のリトライを入れましたが、捕捉する例外を Errno::ETIMEDOUT に変更しています。元は Errno::ECONNREFUSED でしたが、たぶん状況によって両方おきえるんでしょうね。

svn: r61763 2018-01-11 00:44:52 +0900

version.h の日付更新。

mame: r61764 2018-01-11 12:23:50 +0900

parse.y の local_push_gen() で未使用の変数の警告を出すための使用箇所の格納配列を作るかどうかの判定をシンプルにしています。

mame: r61765 2018-01-11 13:25:33 +0900

parse.y の cond_stack の操作マクロ CND_*() と cmdarg_stack の操作マクロ CMDARG_*() にコメントを追加して、なんのためにあるものなのか説明しています。

nobu: r61766 2018-01-11 17:26:21 +0900

Array#min, Array#max で同じ大きさのオブジェクトが複数あった時にどちらのオブジェクトが結果としてかえるかの挙動が 2.5.0 で変化していたとのことで、元の順序でスキャンするようにループの回しかたを変更しています。 [ruby-core:84821] [Bug #14350]

nobu: r61767 2018-01-11 17:34:55 +0900

ISeq の disasm する時に文字列の Encoding を保持するため文字列の埋め込みに PRIsVALUE を利用するようにしています。