今日は git リポジトリと GitHub や bugs.ruby-lang.org の同期などを GitHub Actions で行う開発プロセス対応や clang 21 でビルドエラーになってた問題の対応などがありました。
[78dbc6c0b7] Nobuyoshi Nakada 2025-10-07 14:51:00 UTC
tool/test-bundled-gems.rb でテストを実行する子プロセスに最初の SIGINT を送信するまでのタイムアウトを csv の時に 30 秒に短縮しています。なぜか csv で時間がかかってるみたいで、デフォルトの 10分待つと長すぎるので逆に短くしているようです。
[40d1603e54] Nobuyoshi Nakada 2025-10-07 15:03:48 UTC
tool/sync_default_gems.rb で upstream からのコミットの cherry-pick で変更ファイルがなくなった場合にスキップする処理を追加しています。
[c951e1c4e0] Nobuyoshi Nakada 2025-10-07 15:09:44 UTC
40d1603e549b12808ed7f94064014658b91660e0 の再修正。 tool/sync_default_gems.rb で変更が空になった時の戻り値が反転していたので修正。
[7089a4e2d8] Nobuyoshi Nakada 2025-10-07 15:50:00 UTC
40d1603e549b12808ed7f94064014658b91660e0 の再度の再修正。tool/sync_default_gems.rb で upstream から取り込んだ commit のスキップする条件で必要な変更もスキップしてしまってたのを修正しています。
[446257c84b] Luke Gruber 2025-10-07 14:28:37 UTC
pthread 版での rb_native_mutex_lock() の実装で NATIVE_MUTEX_LOCK_DEBUG_YIELD というマクロを定義してビルドしたら pthread_mutex_lock() の呼び出し前に sched_yield(2) を呼び出してカーネルのスケジューリングさせて native thread を切り替えるようにしています。不具合があった時に顕在化しやすくなるようにしているという感じですね。
[b78270a6c6] Aiden Fox Ivey 2025-10-07 14:44:28 UTC
ZJIT の side-exit のトレース結果出力の処理で不要な Hash の複製を抑制しています。
[4d0f53520c] Aiden Fox Ivey 2025-10-07 14:56:29 UTC
ZJIT の --zjit-trace-exits オプションをつけた時のダンプファイル名の命名規則を pid を使うように変更しています。
[c1cb034356] Aiden Fox Ivey 2025-10-07 19:38:00 UTC
ZJIT の --zjit-trace-exits オプションの処理のリファクタリング。
[9a75c05b5a] Aiden Fox Ivey 2025-10-07 19:38:28 UTC
同じく ZJIT の --zjit-trace-exits オプションのトレース情報でサンプリング数が 0 の frame を表示から除外するようにしています。
[42ba82424d] Ricardo Trindade 2025-10-07 19:40:36 UTC
Array#zip の rdoc 用コメントの typo 修正。
[6c7aa118cc] Stan Lo 2025-09-12 17:55:37 UTC
GitHub Actions の ZJIT を有効にする workflow で bundled gems のテストの実行も行うようにしています。
[5a9aa9013f] Stan Lo 2025-09-30 21:35:06 UTC
gems/bundled_gems の irb のテストで使う commit hash の指定を更新しています。
[b05d64aa50] Takashi Kokubun 2025-10-08 00:12:01 UTC
GitHub Actions で GitHub に push されたコミットを canonical なリポジトリ(git.ruby-lang.org) のほうに同期させる job を追加しています。 https://github.com/ruby/ruby/pull/14765
[337189f4ba] Takashi Kokubun 2025-10-08 00:14:22 UTC
https://github.com/ruby/ruby/pull/14765 の GitHub Actions の追加の修正。同期用のスクリプトにブランチ名の指定を渡すようにしています。
[68e0321327] Peter Zhu 2025-10-07 01:22:52 UTC
ruby 本体のテスト用の assertion メソッド群の定義でテスト用の拡張ライブラリの ASAN 関連のものが LoadError を発生させたら無視するようにしてましたが、常に存在するはずなのでその workaround を削除しています。
[d4a762e005] Takashi Kokubun 2025-10-08 03:33:01 UTC
b05d64aa501ecfe321443ed7e5f246dd88abf01e で追加した GitHub Actions で GitHub から git.ruby-lang.org へコミットを同期させる job で master ブランチ以外も安定版ブランチは対象にしています。
[76b1039485] Takashi Kokubun 2025-10-08 03:54:37 UTC
GitHub Actions から pull request の情報を git notes に追加したりスタイルを自動修正したり slack 通知したり git.ruby-lang.org と同期をとったりという諸々の処理を .github/workflows/post_push.yml という独立した workflow に分離しています。 https://github.com/ruby/ruby/pull/14768
[f063427c45] Takashi Kokubun 2025-10-08 03:56:14 UTC
76b10394856d62e56ab2f31f4bbfded320ce813d で分離した .github/workflows/post_push.yml という workflow から独自アクションでの環境セットアップの step を削除しています。
[000165a51c] Takashi Kokubun 2025-10-08 04:07:54 UTC
76b10394856d62e56ab2f31f4bbfded320ce813d で分離した .github/workflows/post_push.yml という workflow で対応するブランチの条件を on: の設定に移動したりと workflow を独立させたのでシンプルに書けるところを修正しています。
[ac01ac11f9] "dependabot[bot]" 2025-10-08 02:03:41 UTC
GitHub Actions の workflows で利用している github/codeql-action というアクションのバージョンを更新しています。
[a0e7341bfd] Takashi Kokubun 2025-10-08 07:53:09 UTC
76b10394856d62e56ab2f31f4bbfded320ce813d で分離した GitHub Actions の workflow に bugs.ruby-lang.org が持ってるリポジトリへの同期処理の job も追加しています。
[949717efb1] Takashi Kokubun 2025-10-08 07:59:31 UTC
a0e7341bfd424010f31876e42ca2b553404b35fc の GitHub Actions での bugs.ruby-lang.org への同期処理の設定でコマンド文字列の記述方法を修正しています。
[9ae3e20953] Takashi Kokubun 2025-10-08 08:01:51 UTC
a0e7341bfd424010f31876e42ca2b553404b35fc の GitHub Actions での bugs.ruby-lang.org への同期処理で curl に -s オプションを追加してプログレス表示を抑制しています。
[43dbb9a93f] Nobuyoshi Nakada 2025-10-08 01:21:20 UTC
clang 21 で文字列の nul 終端がないことの警告を抑制するためのマクロ RBIMPL_ATTR_NONSTRING_ARRAY() を定義するようにしています。 clang でも警告が出るようになってビルドエラーになっていたようです。 [Bug #21629]
[2bb6fe3854] Nobuyoshi Nakada 2025-10-08 09:19:47 UTC
43dbb9a93f4de3f1170d7d18641c30e81cc08365 からの続きで struct RBasic の構造体の初期化のための RBASIC_INIT という定数マクロを導入して struct RString 構造体の初期化子として利用するようにしています。同じチケットを参照しているのでこれも clang 21 対応なのかな。 [Bug #21629]
[7c9dd0ecff] Nobuyoshi Nakada 2025-10-08 09:19:56 UTC
2bb6fe3854e2a4854bb89bfce4eaaea9d848fd1b と同様に struct RArray も RBASIT_INIT マクロを利用して初期化するようにしています。 [Bug #21629]