ruby-trunk-changes 2022-11-07

今日は主に最新の GNU Make の jobserver のオプションに対応する変更や標準添付ライブラリ fileutils の FileUtils.rm_rf の例外の扱いの挙動変更(昔に戻す)、Time.new などの hour に 24 を渡す時の不具合修正などがありました。

[9627aab825] Nobuyoshi Nakada 2022-11-06 06:59:32 UTC

configure で rustc が利用可能で CPU アーキテクチャが YJIT でサポートされている環境でも --disable-jit-support を指定した時には YJIT を無効にしてビルドできるようにしているみたいです。

[fc842c9ccc] Nobuyoshi Nakada 2022-11-06 10:32:50 UTC

configure で rustc コマンドの利用可能かをチェックする時に --target オプションをつけて $target_cpu などが指定できるかどうかもチェックするようにしています。

[12883f8fa6] Nobuyoshi Nakada 2022-11-06 14:39:55 UTC

tool/lib/test/unit.rb で新しい GNU make の jobserver の実装に対応するため --jobserver-fds の引数の fifo:xxx という値に対応するようにしています。

[180d37c817] Nobuyoshi Nakada 2022-11-07 00:06:15 UTC

12883f8fa6222324880e2b0f161f8c6d6cf365c7 の続きで tool/lib/test/unit.rb の --jobserver-fdsfifo で指定されたファイルパスを開く時に autoclose: false を指定していましたがこれは fd を直接指定された時に IO.for_fd で開いた IO の GC 時に閉じてしまわないためなので fifo の時は不要とのことで削除しています。

[ab01b8f23f] Nobuyoshi Nakada 2022-11-07 00:43:45 UTC

12883f8fa6222324880e2b0f161f8c6d6cf365c7 および 180d37c817dc55f27b7f4ea1278a36a691491148 のさらに続きで --jobserver-fds の引数を切り出すための正規表現が任意の文字を最後まで取り込んでしまってたので次の空白文字まで取り込むように修正しています。

[b02b8e7756] Nobuyoshi Nakada 2022-11-07 01:08:30 UTC

12883f8fa6222324880e2b0f161f8c6d6cf365c7 以降の tool/lib/test/unit.rb の新しい GNU Make の --jobserver-fdsfifo 引数対応と同様の修正を bootstraptest/runner.rb、spec/default.mspec、spec/ruby/optional/capi/spec_helper.rb などの他のテストの実行時のコードにも適用しています。

[ee86b57ee5] Nobuyoshi Nakada 2022-11-07 06:51:04 UTC

b02b8e77562661865b380d78e7621edfd8149a8f の変更のうち spec/default.mspec と spec/ruby/optional/capi/spec_helper.rb の rubyspec に関わるものは revert しています。

[011d4c57d2] Nobuyoshi Nakada 2022-11-07 04:23:23 UTC

Time.new などで Time オブジェクトを生成する時に hour に 24 を指定して、さらに timtzone を指定した時には翌日の 0 時に正規化する処理が働いていないという不具合を修正しています。 [ruby-core:110627] [Bug #19106]

[0fb7a1c77c] Peter Zhu 2022-11-03 18:41:40 UTC

rubygems と bundler の platform の対応から hpux を削除しています。

[1e53ebae57] Peter Zhu 2022-11-03 18:43:03 UTC

同じく runbygems の platform のサポートから bitrig という OS を削除しています。

[b228effd0c] Peter Zhu 2022-11-03 18:44:46 UTC

bundler の platform のサポートから irix も削除しています。

[33bc398b73] Peter Zhu 2022-11-03 18:54:14 UTC

rubygems のテストの Hash リテラルの記法から不要な空白を削除しています。

[72c7dba436] Yusuke Endoh 2022-08-30 07:02:02 UTC

983115cf3c8f75b1afbe3274f02c1529e1ce3a81 で標準添付ライブラリ fileutils の FileUtils.rm_rf で Errno::ENOENT のみ無視するように変更したのを revert して元の全ての例外を無視する挙動に戻しています。 rm(1) の挙動にあわせるための変更でしたが非互換の影響を受ける問題が(主に CI のテストで)あったのであきらめたみたいです。