今日は non-blocking Fiber の不具合修正、Set#to_set にクラスを引数として渡すのを deprecated にして警告を出す変更、ZJIT の VM 命令対応の拡充などがありました。
[edaa27ce45] Nobuyoshi Nakada 2025-06-05 13:22:24 UTC
GCC 13 での警告抑制のため初期化子の追加や switch 文の default 節の追加をしています。
[998e5791c5] Nobuyoshi Nakada 2025-06-05 14:12:38 UTC
拡張ライブラリ date でも GCC 13 での警告抑制のため初期化子の追加や #pragma を使って局所的な警告の無効化、明示的キャストの追加などをしています。
[01f6bd8bc3] Alan Wu 2025-06-05 14:45:42 UTC
ZJIT のテストの assertion メソッド assert_compiles にキーワード引数 insns を追加して指定した VM 命令が ISeq 内に存在することもチェックするように強化しています。
[da2453c58d] Peter Zhu 2025-04-19 11:10:39 UTC
メモリ関係まわりのテストで heap の増加量をチェックするテストが flasky ということでデバッグ用にエラーメッセージを追加しています。
[22dfa250a8] Étienne Barrié 2025-06-05 15:09:47 UTC
doc/contributing/building_ruby.md にデバッグ用に ruby をビルドする時の RUBY_DEBUG の指定などについてのドキュメントを追記しています。
[2f80117ce4] Étienne Barrié 2025-06-05 14:09:21 UTC
shape.c のコメントに削除された RubyVM.debug_shape というメソッドに言及したところがあったので RubyVM::Shape.of に修正しています。
[0b07d2a1e3] Jeremy Evans 2025-05-31 01:25:58 UTC
Set#to_set および Enumerable#to_set に生成するオブジェクトのクラスを指定する引数を受け付けていたようなのですがこれを一貫性のため deprecated として警告を出力するようにしています。
[4e39580992] Jean Boussier 2025-06-04 11:35:43 UTC
Object Shapes の rb_shape_t の capasity メンバーに直接アクセスせず RSHAPE_CAPACITY() マクロを利用するようにしています。
[a62166e28e] Koichi Sasada 2025-06-03 21:41:39 UTC
RGENGC_CHECK_MODE を指定したデバッグ用のビルドで vm_barrier() がネストすることがあったためこれを許容するようにしています。
[296a0d0b7c] Nobuyoshi Nakada 2025-06-05 17:43:09 UTC
GitHub Actions の workflows で Launchable 対応の標準出力/標準エラー出力をリダイレクトするファイルの指定を専用のアクションにまとめるようにしています。
[5da3dc88d6] Nobuyoshi Nakada 2025-06-05 18:32:52 UTC
GitHub Actions の workflows で Launchable の設定の step に 3分のタイムアウトを設定しています。
[43472a3001] Shannon Skipper 2025-06-05 23:37:01 UTC
ZJIT で引数やブロックパラメーター? をレジスタに割り当てようとした時に数が多すぎる時の unimplemented! マクロを指定しています。実際にこれが実行されるとどうなるんだろう。異常終了するのかな? https://github.com/ruby/ruby/pull/13533
[86eb5f9c05] Nobuyoshi Nakada 2025-06-05 23:05:55 UTC
GitHub Actions の独自アクション用のシェルスクリプトで Launchable 対応のシグナルハンドラ設定を修正しています。
[54ef6c312a] Luke Gruber 2025-06-06 00:31:45 UTC
main Thread ではない Thread で root Fiber に Fiber#kill を呼ぶとその Thread の #join 時に異常終了するという不具合を修正しています。シンプルにそのケースの分岐が足りていなかったようです。 https://github.com/ruby/ruby/pull/13526 [ruby-core:122458] [Bug #21400]
[e66ac2a743] Nobuyoshi Nakada 2025-06-06 00:21:24 UTC
296a0d0b7c58bca218fbec0cc1711e76747ab15d の GitHub Actions の Launchable 用の標準出力/標準エラー出力をリダイレクトするファイル指定の方法の変更に追随してファイルが書き込みできるか test(1) でチェックしてから実行するようにしています。
[f0cf4dce65] Samuel Williams 2025-06-06 00:38:57 UTC
non-blocking Fiber 利用時に Thread#join がまだ停止していないのに処理を返してしまうことがあった不具合を修正しているようです。 https://github.com/ruby/ruby/pull/13532
[f1fe26a334] Nobuyoshi Nakada 2025-06-06 00:40:15 UTC
5da3dc88d68a7dce616e583c18213ea6a3bc6c37 の GitHub Actions の workflows での Launchable セットアップのタイムアウト指定を誤ってテスト実行の step につけてたのを修正しています。
[6839eadd53] Thomas Marshall 2025-06-02 12:10:33 UTC
bundler のテストに git リポジトリを source とする時の proxy 対応のテストを追加しています。
[ee55b82b34] Thomas Marshall 2025-06-02 12:16:23 UTC
bundler の git リポジトリを source とする時の Bundler::Source::GitProxy#has_revision_cached? で参照すべき commit hash が直接指定されている時の対応。
[d95f7a3c43] David Rodríguez 2025-06-05 08:52:37 UTC
bundler のテストのヘルパーメソッドの切り出し。
[3b2d068ac2] David Rodríguez 2025-06-05 08:53:06 UTC
bundler の bundle exec サブコマンドのテストの出力チェックの強化。
[3ba066e54f] David Rodríguez 2025-06-05 09:57:18 UTC
bundler の bundle exec サブコマンドのテストのチェック強化。
[6a9af9f0b5] David Rodríguez 2025-06-05 07:14:37 UTC
bundler のテストで依存している gem のインストール処理をテストごとの setup に追加?
[c0a1e877b3] Samuel Giddins 2025-05-18 15:37:35 UTC
bundler の Bundler::GemHelpers という Module の実装の一部を rubygems の Gem::Platform に移植しています。不要だったメソッドはそのまま削除しているようです。
[ca1c46d33c] David Rodríguez 2025-04-23 11:27:14 UTC
bundler でローカルのファイルシステムを source として指定した時の依存関係がおかしい時にそれを無視するようにしているそうです。
[1dd8671c46] Hiroshi SHIBATA 2025-06-06 02:11:38 UTC
拡張ライブラリ openssl の OpenSSL::BN の Ractor 対応のテストで Ractor#value がない古い ruby の対応を追加しています。
[deb70925a2] Daniel Colson 2025-05-25 21:26:07 UTC
拡張ライブラリ strscan の StringScanner を RGenGC のための Write Barrier を追加して WB-protected にしています。
[9f00044d0f] Hiroshi SHIBATA 2025-06-06 02:30:12 UTC
拡張ライブラリ strscan のバージョンを 3.1.6.dev に更新しています。
[e093c3145a] git 2025-06-06 02:38:59 UTC
NEWS の default gems バージョンリストの strscan のバージョンも 3.1.6.dev に更新しています。
[81a23c5793] Samuel Williams 2025-05-24 11:33:08 UTC
non-blocking Fiber 利用時に Thread の実行で blocking region から抜ける時に RUBY_VM_CHECK_INTS_BLOCKING() で割り込みチェックが漏れていたりタイミングが IO#close による待ちの後なのでチェック前に停止してしまう可能性があった不具合を修正しています。
[ead14b19aa] Samuel Williams 2025-06-05 03:49:02 UTC
non-blocking Fiber の blocking する処理の管理のために内部的なクラス FiberSchedulerBlockingOperation を定義して管理に必要な情報をこのオブジェクト内に保持させるようにしています。メモリ管理に不具合があったので GC にまかせるようにしようということかな?
[1baa396e21] Koichi Sasada 2025-06-05 21:46:14 UTC
デバッガでオブジェクトの情報をダンプするために使われる関数 rb_raw_obj_info() で即値でも heap 内へのポインタでないような VALUE の時(最適化でマシンスタック上に置かれているような疑似的なオブジェクトなど?)の時の対応と ASAN が有効な時の asan_unpoisoning_object() の呼び出しを heap 内へのポインタの時だけ行なうようにしています。
[78d2a2308f] Nobuyoshi Nakada 2025-06-06 01:44:25 UTC
GitHub Actions の Launchable 用の独自アクションの後始末処理を専用の step に切り出しています。
[180214287e] Nobuyoshi Nakada 2025-06-06 03:11:44 UTC
GitHub Actions の独自アクション用のシェルスクリプトで Launchable のセットアップのタイムアウトの対応の再修正。
[2eb0a1a749] Nobuyoshi Nakada 2025-06-06 04:46:12 UTC
rubyspec の File.birthtime などのテストで古い Linux で NotImplementedError になっていた時に skip していたのをメッセージをチェックして "birthtime() function" で始まっていたら OK とするように assertion に変更しています。
[6a46ca31a7] Max Bernstein 2025-06-05 15:43:56 UTC
ZJIT の VM 命令 getinstancevariable の対応を追加。まだ対応してなかったってことなのかな?
[3246bbd325] Max Bernstein 2025-06-05 20:54:25 UTC
同じく ZJIT で VM 命令 setinstancevariable の対応を追加。
[5ac435dc34] Samuel Williams 2025-06-06 08:23:46 UTC
81a23c5793fecaff5f75cefe6a6e03dab99df16b で non-blocking Fiber の Scheduler の unblock フックメソッドを呼ぶ時に rb_execution_context_t::interrupt_flag が設定されていた時に rb_bug() で異常終了する時のメッセージにフラグの値を表示するようにしています。
[0cc41d3d39] Jean Boussier 2025-06-06 06:51:10 UTC
Binding#clone の実装で Binding#dup の実装関数 binding_dup() を呼んでそのあとさらに rb_obj_clone_setup() を呼んでいて処理が重複していたので binding_dup() から共通の処理を binding_copy() という関数に切り出して共有するようにしています。
[3883c38979] Jean Boussier 2025-06-06 07:09:36 UTC
shape.c の transition_frozen() という関数名が内容と一致していなかったので transition_complex() と改名しています。