ruby-trunk-changes 2024-04-23

今日は主に YJIT の不具合修正、正規表現の不具合修正、parse.y の CRuby 依存を減らす変更などがありました。

また今日は脆弱性修正を含む CRuby の安定版の各バージョンのリリースがありました。利用しているバージョンの更新をお願いします。

https://www.ruby-lang.org/en/news/

[1bb7638e7a] Alan Wu 2024-04-22 15:16:46 UTC

YJIT でコード生成時に最適化でコードを消し過ぎてコード書き替え? に必要な場所がなくなってしまうので余白を残すようにしているみたいです。 https://github.com/ruby/ruby/pull/10585

[aeb08bc8a7] Alan Wu 2024-04-22 18:33:34 UTC

YJIT での String#setbyte の不具合修正のためみたいですが修正箇所は object.c の rb_to_integer_with_id_exception() という関数で cfp のバックアップとエラー時の復旧を行うようにしています。

[9eeb86df0e] "dependabot[bot]" 2024-04-22 15:05:25 UTC

rubygems のテストで rust 製拡張ライブラリを持つ gem のビルドのためのプロジェクトの rb-sys パッケージのバージョンを更新しています。

[ed9834efbd] "dependabot[bot]" 2024-04-22 15:56:26 UTC

rubygems のテストで rust 製拡張ライブラリを持つ gem のビルドのためのプロジェクトの rb-sys パッケージのバージョンを更新しています。

[2992e1074a] yui-knk 2024-04-21 00:54:23 UTC

parse.y で CRuby の実装への依存を減らすため ruby_parser.c に独自の実装を追加してこれを利用するように変更しています。

[c7d9376cb5] yui-knk 2024-04-22 13:12:43 UTC

Universal Parser 用の構造体 rb_parser_config_t の関数ポインタのメンバー str_subseq、str_new_frozen、filesystem_str_new_cstr、io_gets_internal などを削除しています。

[afa0d58580] Nobuyoshi Nakada 2024-04-23 00:21:38 UTC

ext/ripper/ripper_init.c.tmpl のインデントの修正のみ。

[3aa046803d] yui-knk 2024-04-23 00:29:32 UTC

Universal Parser 用の構造体 rb_parser_config_t から不要な関数ポインタのメンバー enc_compatible を削除しています。

[e15a1920ca] "dependabot[bot]" 2024-04-23 02:48:02 UTC

GitHub Actions の workflow で利用している actions/upload-artifact アクションのバージョンを更新しています。

[33929ef995] yui-knk 2024-04-23 02:27:42 UTC

parse.y から rb_enc_from_encoding() の呼び出しを ruby_parser.c に追い出しています。

[e61f76ce9e] yui-knk 2024-04-23 02:32:17 UTC

33929ef995522f3e1898088dda52eec582ddd266 により不要になった rb_parser_config_t のメンバー enc_from_encoding を削除しています。

[777daae049] Nobuyoshi Nakada 2024-04-23 02:33:50 UTC

テスト用の一時ディレクトリを準備する tool/lib/_tmpdir.rb でディレクトリ名を短くするようにしています。

[a53435868e] Nobuyoshi Nakada 2024-04-23 04:09:51 UTC

テスト用の一時ディレクトリを準備する tool/lib/_tmpdir.rb でテスト後に残ったディレクトリを削除する時に Dir.chdir でカレントディレクトリを一時ディレクトリに移動して行うようにしています。rmdir や unlink を相対パスで呼ぶためかな?

[fff2284871] Jean Boussier 2024-04-19 12:51:51 UTC

メソッドの再定義の時の警告メッセージが元の定義が ruby 実装の場合に重複するケースがあったので修正しています。

[45631622aa] "dependabot[bot]" 2024-04-23 02:47:54 UTC

GitHub Actions の workflows で利用している github/codeql-action アクションのバージョンを更新しています。

[33e5b47c16] Isaac Peka 2023-08-24 11:14:33 UTC

正規表現のマッチ処理時に入力が regex_t::dmin より短い時に処理をスキップするように修正しています。

[989a235580] Hiroshi SHIBATA 2024-04-12 05:01:47 UTC

正規表現の処理で正規表現エンジンのVMのスタック操作の順序が間違ってて異常終了する可能性があった不具合を修正しています。

[0b4bf05985] "NARUSE, Yui" 2024-04-23 11:14:18 UTC

安定版ブランチメンテナンス用のツール tool/merger.rb でマージの中断時には終了ステータスを 1 にして exit するようにしています。

[3fadd68452] "NARUSE, Yui" 2024-04-23 11:14:41 UTC

安定版ブランチメンテナンス用のツール tool/merger.rb でコミットログの subject にエンコードされた改行が含まれてた時にそれを取り除いてコミットログに使うようにしています。