ruby-trunk-changes 2020-04-29

今日は標準添付ライブラリ reline のヒストリサイズ指定の仕様追加や不具合修正、icc 向けデバッグコードの削除などがありました。

[1c7f5a5712] Nobuyoshi Nakada 2020-04-28 14:36:16 UTC

拡張ライブラリ ripper のテストでなぜか Process.setrlimit で Process::RLIMIT_AS (仮想メモリサイズ)の制限をつけて DummyParser#parse を実行していたのをやめています。このテストを追加した時の修正 72ad8595f2032cfcf73084083306eef909eb42a5 を入れる前だと発生していた NoMemoryError を確実に発生させるための setrlimit だったみたいですが、実際にはなくても起きるしこの制限のせいでこける環境があったようなので削っています。

[31a4ee4caa] git 2020-04-28 15:01:40 UTC

version.h の日付更新

[1994ed90e4] Yusuke Endoh 2020-04-28 15:01:46 UTC

adab82b9a71f60ad1c7f4f8c134a5ae9198ab32a の一部と c63b5c6179d700ceacf5cae8d3ee86da1294c781 を revert しています。 gc.c のデバッグのために入れてた異常終了させるコードを削っています。 1c7f5a57125001447dc6173847dc68aa50bd8e93デバッグしたかった CI のエラーが対処されたため。

[ac0c760843] Nobuyoshi Nakada 2020-04-28 15:27:50 UTC

ruby_memerror() の exit(3) の呼び出しを関数末尾に移動して NORETURN() つきで宣言するようにしています。

[56d6cfe88a] Nobuyoshi Nakada 2020-04-28 10:54:14 UTC

.travis.yml の古い ruby での rubyspec 実行の処理をまとめるリファクタリング

[32e7d9140e] Nobuyoshi Nakada 2020-04-29 05:38:03 UTC

rubyspec で一時ディレクトリを作る時に mock_dir というメソッド? で指定されるディレクトリ配下に作るようにしています。

[e801e9ba65] Nobuyoshi Nakada 2020-04-29 05:40:14 UTC

mspec で rubyspec で使う一時ディレクトリのデフォルト rubyspec_temp を File.expand_path で絶対パスにしてたのを File.realdirpath にして symbolic link を展開するようにしています。

[0ac5009165] Nobuyoshi Nakada 2020-04-24 08:54:54 UTC

標準添付ライブラリ reline で環境変数 XDG_CONFIG_HOME が相対パスだったら利用しないようにしています。[XDG Base Directory Specification](https://specifications.freedesktop.org/basedir-spec/basedir-spec-latest.html) という仕様でそう定められているらしい。

[d27fa87418] aycabta 2020-04-24 16:45:03 UTC

標準添付ライブラリ reline のヒストリの処理で history_size の設定が 0 の時にまったく保存しないようにする対応を追加しています。あふれる場合に shift してから追加する実装だったので 0 でも 1つは追加してしまっていたので。なるほど。

[4859352df6] aycabta 2020-04-24 17:20:52 UTC

標準添付ライブラリ reline で history_size のデフォルト値を 500 から -1 に変更しています。また histroy_size が負の数だと保存する履歴数を無制限にするようにしています。

[213ebec7a7] aycabta 2020-04-25 08:15:24 UTC

標準添付ライブラリ reline のバージョンを 0.1.4 に更新しています。

[009092b04c] aycabta 2020-04-25 18:18:38 UTC

標準添付ライブラリ reline の history_size の設定部分にコメントで参考 URL を追加しています。

[98a346d065] aycabta 2020-04-27 09:27:19 UTC

標準添付ライブラリ irbirb_info という組み込みコマンドを追加しています。 rubyirb のバージョンや現在の端末制御クラスなどの設定を表示するコマンドです。 irb_xxx ってメソッドだと思ってたけどちょっと違ったんですね(最終的に context のオブジェクトのメソッドとして追加されるようですが)。

[3864fbc6d8] aycabta 2020-04-28 08:06:43 UTC

98a346d065cc981d60ec0e45f7f15ba7328b6ad6 の追加修正。 irb_info で irbrc ファイルを表示するのはファイルが存在する時だけにするようにしています。

[7e5253d15e] aycabta 2020-04-28 08:07:27 UTC

標準添付ライブラリ irb で組み込みコマンドをメソッドとして定義する時にメソッド再定義の警告を抑制するためクラス変数で定義済みかを記録するようにして再定義しないようにしています。