ruby-trunk-changes 2021-01-08

今日は主に irb と reline の不具合修正を含む更新などがありました。

[55e52c19e7] Koichi Sasada 2021-01-07 09:06:24 UTC

vm_insnhelper.c の VM_ASSERT() の引数に使う変数を宣言するため #if VM_CHECK_MODE > 0 で分岐を入れてましたが、変数定義してもここでしか使ってなかったので変数を使わず直接 rb_callable_method_entry() の呼び出しを VM_ASSERT() の引数内に入れるようにしています。

[4bb683a570] Nobuhiro IMAI 2021-01-06 10:01:08 UTC

標準添付ライブラリ irbIRB::Irb#convert_invalid_byte_sequence で変数名の参照の typo があったので修正しています。

[f594775230] Nobuhiro IMAI 2021-01-06 10:05:46 UTC

標準添付ライブラリ irbIRB::InputCompletor.retrieve_completion_data で正規表現でマッチしたグループの内容を Regexp.quote に通してたので余計なエスケープが含まれてたのを修正しています。

[ed3264d37a] Nobuhiro IMAI 2021-01-07 10:21:06 UTC

標準添付ライブラリ irbIRB::Inspector のエラー処理のリファクタリング

[917050220a] aycabta 2021-01-07 19:17:21 UTC

irb で例外発生時に表示するバックトレースの向きを Exception#full_message を使うことで ruby 本体の挙動と合わせるようにしています。 [ruby-core:101665] [Bug #17466]

[111fddd543] aycabta 2021-01-07 19:51:28 UTC

irb の例外のバックトレースの行数の上限を超えたら削る処理が機能していなかったのを修正しています。

[559f844bf4] aycabta 2021-01-08 03:56:36 UTC

irb の例外のバックトレース表示の時に tool/lib/*.rb というファイルを無視させるようにしています。ruby 本体のテスト時のバックトレースから削るためみたいです。

[54c1dcba2b] aycabta 2020-12-27 09:37:16 UTC

標準添付ライブラリ reline の Reline::LineEditor でカーソル移動時時の計算に不具合があったのを修正しているようです。

[ea75aed98e] aycabta 2020-12-29 04:28:14 UTC

標準添付ライブラリ reline の vi mode の時の mode-icon という名前は mode-string のほうが適当だったそうなので変数名などを改名しています。

[e356b71d35] aycabta 2021-01-01 00:55:00 UTC

54c1dcba2ba670c671afe5c2dc3213d74f57e0e3 で追加した reline のテストにデバッグ用メッセージ出力が残ってたので削除しています。

[88af5085db] aycabta 2021-01-05 09:22:00 UTC

標準添付ライブラリ reline の Reline::LineEditor#call_completion_proc でインデント幅が @cursor_max を超えないように修正しています。

[76c9a3c8c6] aycabta 2021-01-05 09:29:09 UTC

標準添付ライブラリ reline の補完用のコールバック用 Proc オブジェクトが不正な値を返した時にエラーにならないように対応を追加しています。

[01235f800f] aycabta 2021-01-05 18:50:19 UTC

標準添付ライブラリ reline の Reline::LineEditor でペーストモードの時に自動インデントのための処理をスキップすることで高速化しています。

[a8f4cbeece] aycabta 2021-01-05 22:06:58 UTC

標準添付ライブラリ reline の spec.files に license_of_rb-readline を追加しています。

[6cbb3fd142] aycabta 2021-01-08 04:31:35 UTC

917050220a1fd41bdb3e50ea54a200b0c285bcd4 で lib/irb.rb の Exception#full_message を利用するようにした変更で ruby のバージョンによる分岐のコメントを修正。irb の最新版は 2.5.0 より前はサポートしてないのでその場合の言及は削っています。

[5a221eadfd] git 2021-01-08 04:38:37 UTC

version.h の日付更新

[abdc634f64] Koichi Sasada 2021-01-08 03:08:54 UTC

internal/vm.h から rb_vm_call0()、rb_vm_call_kw()、rb_make_no_method_exception() などの宣言を削っています。使ってるところがなかった模様。

[d4b7e967b6] Koichi Sasada 2021-01-08 05:44:26 UTC

test/irb/test_completion.rb で assertion に assert_include を利用してエラー時のメッセージをわかりやすくしています。

[d6b2b5bd47] Takashi Kokubun 2021-01-08 06:32:47 UTC

lib/irb/color_printer.rb に require 'irb/color' を追加しています。

[98bd7e87a0] Takashi Kokubun 2021-01-08 06:41:58 UTC

標準添付ライブラリ irbIRB::ColorPrinter.pp が最後の改行も出力するようにしています。標準添付ライブラリ pp の PP.pp と揃えるためだそうです。