ruby-trunk-changes 2023-04-20

今日は昨日の rubygemsYAML 処理の実装変更の追加修正や YJIT の arm64 環境向けの最適化などがありました。

[d2d0954c16] Takashi Kokubun 2023-04-20 00:25:24 UTC

YJIT の arm64 環境での機械語命令のコンパイル時にオペランドの条件によって mov 命令のかわりに ldur 命令というのを利用するようにしています。レジスタを節約して最適化するため。 https://github.com/ruby/ruby/pull/7744

[7821708c84] Nobuyoshi Nakada 2023-04-20 00:57:49 UTC

rubyspec の fixtures ファイルに NUL 文字が含まれていたのを解消しているようです。元のファイルがバイナリファイルと判定されるので差分がよくみえないですが。

[2d301945f6] Nobuyoshi Nakada 2023-04-20 01:16:26 UTC

GitHub Actions で bundled gems のバージョンチェックなどしている workflow で workflow 全体で master ブランチでのみ実行するようにしていたのをやめて、bundled gems のバージョンチェックなどの個別の action の部分でブランチチェックするように変更しています。

[ad4a160220] Nobuyoshi Nakada 2023-04-20 01:20:31 UTC

GitHubソースコードのチェックをしている workflow で不正な文字のチェックをしているところで grep コマンドの先頭に ! をつけてマッチした時にエラーにしてたのを && exit 1 を後につけるようにしてマッチ時に明示的にコマンドを終了ステータス 1 で終了させるようにしています。

[5579cbe2dd] Nobuyoshi Nakada 2023-04-20 00:58:49 UTC

ad4a160220abad330cb9ba41e5dcd5e46bb056f4 の続きで GitHub Actions で行末の空白をチェックするための grep コマンドに -I オプションを追加してバイナリファイルを無視するようにしています。

[dbcdac00e6] Hiroshi SHIBATA 2023-04-19 09:27:31 UTC

rubygems と bundler のテストに不正な YAML ファイルを読み込んだ時のテストを復活(?)させています。

[4bb0e01da2] Hiroshi SHIBATA 2023-04-19 09:41:53 UTC

rubygems に移植した Gem::YAMLSerializer.load_file にキーに ":" を含む Hash をロードした時に警告を出力する処理を追加しています。

[b42f0094ce] Hiroshi SHIBATA 2023-04-19 09:56:42 UTC

4bb0e01da2083bd537444ce7f27f3e1cdfa23712 の続きで Gem::YAMLSerializer.load_file でロードした Hash のキーをチェックする時に URL の場合は許容するように ":" の存在チェック前に除外するようにしています。

[ce38ad6963] Hiroshi SHIBATA 2023-04-19 10:00:29 UTC

b42f0094ce4198fac535bd69bf173732c0e53ab5 の変更部分を rubygems の rubocop の警告除去のためスタイルを修正しています。