ruby-trunk-changes 2022-06-20

今日は主に Regexp.new の第2引数による正規表現オプションに文字列での指定を受付けたり、不正な値が渡された時に警告を出すようにする変更と、ruby のビルドに GCC3 をサポートしないようにする変更などがありました。

[4aebbf44e9] Nobuyoshi Nakada 2022-06-19 14:32:47 UTC

GVL のイベントコールバック関数を登録する C API のテスト用の拡張ライブラリで関数ポインタを引数に渡すのに関数名の前に * をつけていたのを修正しています。& じゃなくて * か。これどういう意味になるんだっけ?

[da362fee59] Nobuyoshi Nakada 2022-06-19 14:33:26 UTC

同じく GVL のイベントフックのコールバック関数登録の C API テストで sleep する時間を EnvUtil を用いて環境変数でスケーリング可能にしています。

[aeab405878] Josh Nichols 2022-05-13 21:22:54 UTC

bundler の Bundler::SpecSet#for で依存関係解決のための候補の配列を gem 毎に別に持つようにしてパフォーマンス改善しています。

[6622a41891] git 2022-06-19 17:34:57 UTC

version.h の日付更新

[cd3a5cd0e3] Nobuyoshi Nakada 2022-06-19 17:32:17 UTC

Regexp.new の rdoc 用コメントの call-seq に省略可能な第3引数 encoding の記述がなかったので追加しています。この引数知らなかったなぁ。

[150bd6e242] Soutaro Matsumoto 2022-06-20 02:44:47 UTC

gems/bundled_gems の rbs のバージョンを 2.5.1 に更新。 https://github.com/ruby/ruby/pull/6041

[271bcc0c1c] git 2022-06-20 02:45:22 UTC

150bd6e2427a8a6178aa5f8ebc39ce6e59601e1f に追随して NEWS の bundled gems のバージョンリストの rbs の項目も更新しています。

[ec5c56412f] Nobuyoshi Nakada 2022-06-18 04:46:40 UTC

configure で GCC のバージョン 3 をサポート外としてエラーにするよう更新しています。 [ruby-core:108998] [Feature #18839]

[8d689294d0] citrusmoose 2022-06-16 19:13:17 UTC

bundler の Bundler::Standalone#paths で gem の require_paths 内の拡張ライブラリ用のファイルパスの ruby の version 部分の変数展開を抑制して実行時の ruby のバージョンで展開されるようにする変換を追加しています。

[078db98da4] Yusuke Endoh 2022-06-20 08:39:58 UTC

eca31d24d606a73def3674938112dc3c5b79c445 で Module#autoload の警告を追加したため警告が出るようになった Module#autoload のテストを一時的に $VERBOSE を nil にして警告抑制するようにしています。 [ruby-core:108749] [Bug #18813]

[914c26eab3] Nobuyoshi Nakada 2022-06-20 08:47:44 UTC

Regexp#timeout= や Regexp.new の timeout キーワード引数の rdoc 用コメントで Integer も受け付けると書いてたのを Float または nil と記述を変更しています。実際には Integer を渡しても変換してくれるようになってるとは思いますが。

[7f8a915715] Nobuyoshi Nakada 2022-06-20 03:53:41 UTC

cd3a5cd0e33f7b2495c5b3421e7f1d124de8c343Regexp.new の rdoc 用コメントの call-seq に省略可能な第3引数を追加しましたが、その引数名を encoding から n_flag に変更しています。また timeout キーワード引数の指定方法についてサンプルを追加しています。

[f8b6d4f4d1] Jun Aruga 2022-06-20 08:46:24 UTC

GitHub Actions のいろんなコンパイラオプションをためす workflow の make test-annocheck を実行する時に --skip-gaps オプションを追加しています。

[15db2e9496] Yusuke Endoh 2022-06-20 10:25:11 UTC

特殊変数 __ENCODING__ のテストで警告が出るのを抑制するため一時的に $VERBOSE を nil に設定しておくようにしています。

[a58611dfb1] Nobuyoshi Nakada 2022-05-24 07:48:34 UTC

true または false を期待しているキーワード引数などをチェックする rb_bool_expected() という関数に第3引数を追加して、真偽値以外が渡された時に例外ではなく警告の出力に留めることができるようにしています。従来の呼び元は全て TRUE を渡して呼ぶようにしているのでこのコミット時点では挙動の変更はありません。

[ab2a43265c] Nobuyoshi Nakada 2022-05-24 07:51:15 UTC

a58611dfb1bfc74fb1a51a9cd0ca8ac690c2f1f4 で引数を追加した rb_bool_expected() を Regexp.new の第2引数のチェックに利用するようにしています。従って nil/true/false じゃない時に警告メッセージを出力するように変更しています。別の分岐で Integer の場合もあるので Regexp.new の引数としては整数も受け付けてますね。 [ruby-core:108590] [Feature #18788]

[39dc455b51] Nobuyoshi Nakada 2022-06-19 06:41:24 UTC

ab2a43265cfdda288d1baaa29936fd408c2a42bcRegexp.new の第2引数に Integer/nil/true/false 以外を渡した時の警告出力について rubyspec を追随させてます。 [ruby-core:108590] [Feature #18788]

[1e9939dae2] Nobuyoshi Nakada 2022-06-16 09:53:35 UTC

ab2a43265cfdda288d1baaa29936fd408c2a42bc に続いて Regexp.new の第2引数の文字列でのオプション指定も受付けるように拡張しています。正規表現リテラルの後につけるオプションと同様の文字で指定できるようです。 [ruby-core:108590] [Feature #18788]

[883d13dc41] Nobuyoshi Nakada 2022-06-19 06:43:27 UTC

1e9939dae24db232d6f3693630fa37a382e1a6d7Regexp.new の第2引数に文字列を受け付ける変更に追随して rubyespec にテストを追加しています。 [ruby-core:108590] [Feature #18788]

[4a6facc2d6] Nobuyoshi Nakada 2022-06-20 04:35:21 UTC

Regexp.new の rdoc 用コメントおよび doc/regexp.rdoc に Regexp.new の第2引数での正規表現オプションの文字列での指定について追記しています。 [ruby-core:108590] [Feature #18788]

[c46824d094] Jean Boussier 2022-06-20 11:03:39 UTC

GVL のイベントフックのコールバック関数登録の C API のテストで da362fee59b2bff30eb8d63ee15724f5c3aac957 で sleep する時間を EnvUtil を使って環境変数で変更できるようにしていたのを revert して、そもそも sleep しないようにしています。sleep いらんかったんかい。