ruby-trunk-changes 2019-10-16

今日は Comparable#clamp の引数に Range オブジェクトを許容する機能追加、Kernel#ruby2_keywords の機能追加などがありました。

[81176095f4] Nobuyoshi Nakada 2019-10-15 13:38:39 UTC

Comparable#between? と Comparable#clamp の rdoc 用コメントのマークアップの修正。

[c01df7e58f] Nobuyoshi Nakada 2019-10-15 14:13:49 UTC

f94202fcc228d0348ca050a7b18a8f8a538a7305 の irb のオブジェクト表示で循環参照検出に使う Hash を compare_by_identity にする変更で一箇所 object_id の呼び出しを削り忘れていたところがあったので追加修正。 [ruby-core:95318] [Bug #16250]

[375cf12918] Yusuke Endoh 2019-10-15 14:29:49 UTC

標準添付ライブラリ csv のテストで Encoding.default_internal を変更する前後で $VERBOSE を nil にセットして警告を抑制しています。

[929d5fd3b9] Nobuyoshi Nakada 2019-10-15 13:32:10 UTC

Comparable#clamp に切り詰める範囲を min, max の2引数のかわりに Range オブジェクトで受け取れるようにしています。 Range オブジェクトの begin/end を取り出してかわりに使うようです。終端を含まない Range や beginless/endless Range だと ArgumentError が発生します。 [ruby-core:87241] [Feature #14784]

[1c50ce2cf8] git 2019-10-15 16:42:52 UTC

version.h の日付更新

[a5245c1658] aycabta 2019-10-15 17:08:44 UTC

標準添付ライブラリ reline の vi insert mode での Ctrl-r の操作を insert からインクリメンタルサーチの前方検索に割り当てるように修正しています。

[259601ab57] aycabta 2019-10-15 17:55:45 UTC

標準添付ライブラリ reline の Reline::LineEditor でヒストリ検索? するのに終了待ちする Proc でキーが Ctrl-h もしくはキーコード 127 の時も検索続行するようにしています。

[6081ddd6e6] Jeremy Evans 2019-10-15 19:46:24 UTC

Kernel#ruby2_keywords つきで定義したメソッドでキーワード引数から変換されたHashオブジェクトにフラグを付与して、それを*argsのように渡して委譲した先でも keyword splat として扱うよう にしてましたが、これがさらに別のメソッドに委譲される時にフラグがついたままだと ruby2_keywords がついてないメソッドでも同じ扱いがされてしまうので、Hash オブジェクトを複製してフラグがないインスタンスを作るようにしています。

[d97229de5c] Jun Aruga 2019-10-16 03:59:40 UTC

Travis-CI にも ARM の環境があるみたいなので .travis.yml に arm64-linux でのビルドを追加しています。 https://github.com/ruby/ruby/pull/2559 [ruby-core:95201] [Misc #16234]

[2679e10942] Takashi Kokubun 2019-10-16 04:37:00 UTC

.travis.yml の make-test-only というラベルで make test だけでなく指定したファイルのみの make test-all も実行するようにして test/ruby/test_jit.rb のテストを実行するようにしています。

[759576a03f] Takashi Kokubun 2019-10-16 05:01:25 UTC

2679e10942c8cebc11423cac8303bea7b4c1522a で指定してたテストファイルのパスをビルドディレクトリからの相対パスに変更しています。

[4ccb49bad3] Takashi Kokubun 2019-10-16 05:47:20 UTC

2679e10942c8cebc11423cac8303bea7b4c1522a と 759576a03f0a39f3190e79526d138adc3a3f0a62 を revert して test/ruby/test_jit_debug.rb というファイルを追加して MJIT のテストで常に --jit-debug オプションを付けるように指定する方法を環境変数からこのファイル内で設定されるインスタンス変数によるようにしています。この setup って常に実行されるのかな? されなさそうだけど……。

[e8124729fb] Takashi Kokubun 2019-10-16 05:54:43 UTC

.travis.yml の arm64-linux 環境のビルドで ccache を利用しないようにしています。 https://github.com/ruby/ruby/pull/2559

[006d9013ea] Takashi Kokubun 2019-10-16 05:56:19 UTC

arm64 でのテストは Travis-CI で行なうようにしたので .drone.yml は削除しています。

[eef25f95b7] Takashi Kokubun 2019-10-16 06:04:34 UTC

.travis.yml の build matrix 定義内の arm64-linux の alias の挿入位置を "(Allowed Failures)" というコメントの行の後ろに移動しています。

[c15856d76d] Takashi Kokubun 2019-10-16 06:14:55 UTC

4ccb49bad31b3c4a9cc7c6138cae93bd60a7bec4 で追加した test/ruby/test_jit_debug.rb でコマンドライン引数 --jit-debug を追加するためのフラグになるインスタンス変数の設定は TestJIT がロードされている時だけにし、またビルド時の CPPFLAGS に -DVM_CHECK_MODE が設定されていた時も抑制するようにしています。

[17ee01e3f6] Nobuyoshi Nakada 2019-10-16 06:16:07 UTC

test/rdoc/test_rdoc_rdoc.rb の未使用のローカル変数を削除しています。

[d70855c725] Nobuyoshi Nakada 2019-10-16 06:16:51 UTC

標準添付ライブラリ rdoc のテストにコマンドラインオプション --force-update/--no-force-update/-U のテストを追加しています。

[5437d7c879] Takashi Kokubun 2019-10-16 07:11:05 UTC

4ccb49bad31b3c4a9cc7c6138cae93bd60a7bec4 で追加した test/ruby/test_jit_debug.rb ですがやっぱり消してます。 AppVeyor などいくつかの Ci が失敗したとのこと。

[43015275b9] Nobuyoshi Nakada 2019-10-16 08:22:31 UTC

tool/lib/test/unit/core_assertions.rb で定義している(えーとこっちが bundled gem のテストでも使えるほうだっけ) assert_raise_with_message に assert_raise_message という別名を追加して test-unit と同名の assertion が使えるようにしています。