ruby-trunk-changes 2023-05-21

今日は主にコマンドラインオプション --help でページャーコマンドを起動しようとした時に pid のキャッシュ導入の影響でエラーが起きていた不具合の修正などがありました。

[8d242a33af] Nobuyoshi Nakada 2023-05-20 05:00:14 UTC

rb_bug() はメッセージに改行を追加するので引数に指定する文字列に改行を含める必要はないので冗長な改行を削っています。

[b3f355cfbe] Jeremy Evans 2023-05-20 20:40:46 UTC

Process.spawn でファイルパスのサイズ上限をチェックする assertion メソッドで Process.spawn のオプション :rlimit_nproc の指定を OpenBSD で小さくするようにしています。テストの実行時間の短縮のためとのこと。

[1dd5427abe] Ivanov-Anton 2023-05-21 00:59:34 UTC

rubyspec のテスト名の typo 修正。

[a997f144fb] Nobuyoshi Nakada 2023-05-21 01:03:28 UTC

Object Shape でインスンタンス変数の数が多い場合のテストを YJIT や RJIT が有効な時に skip するようにしていたのをテストメソッドの先頭で skip するようにしています。

[64e156f20c] ima1zumi 2023-05-21 02:57:45 UTC

irb のテストのメソッド名の typo 修正。

[4f4bc13eb9] Nobuyoshi Nakada 2023-05-21 07:44:10 UTC

Object Shapes でインスタンス変数の数が多い時の fallback のテストが YJIT/RJIT と関係なく失敗することがあるみたいなので常に skip するように変更しています。

[0867588980] Nobuyoshi Nakada 2023-05-21 07:47:14 UTC

コマンドラインオプション --help を指定した時に環境変数 RUBY_PAGER や PAGER で指定されたページャーコマンドを起動してヘルプメッセージを表示させるために fork する時に rb_fork() を利用していたのを rb_fork_ruby() という関数を利用するように変更しています。 [Feature #19443] の Process.pid のキャッシュのための実装の影響で子プロセスで存在しない timer thread を停止しようとしてエラーが発生するようになっていたようです。