ruby-trunk-changes 2023-12-15

今日は主に Hash の内部実装の配列ベースから st_table ベースへの変換が起きる時に異常終了する可能性があった不具合の修正や bundler の古い rubygems 対応のコードの削除などがありました。

[b300f5a0e1] David Rodríguez 2023-12-13 20:23:07 UTC

ac939d9ca3164a748c656ea7f33c356d7b91b0f9 の bundler の default gems で Gemfile や依存関係に明示されてたら標準添付ライブラリのを使わないようにするという変更を revert しています。

[b45c1523a8] David Rodríguez 2023-12-12 20:06:20 UTC

bundler の Bundler::CLI::Common.default_gem_spec の不要になった古い rubygems 用の? 分岐を削除。

[04dd2a8aae] David Rodríguez 2023-12-12 20:15:38 UTC

bundler の古い rubygems のための monkey patch を削除しています。

[7564038864] David Rodríguez 2023-12-12 20:17:28 UTC

同じく bundler の古い rubygems のための分岐を消しています。

[5cf6f7f885] David Rodríguez 2023-12-12 20:21:35 UTC

同じく bundler の古い rubygems 対応のためのコードの削除。

[778438d423] David Rodríguez 2023-12-12 20:28:57 UTC

bundler の古い rubygems 対応のためのコードの削除の続き。

[41095f4de0] David Rodríguez 2023-12-12 20:49:12 UTC

bundler の古い rubygems 対応の削除の続き。

[d718654bb1] David Rodríguez 2023-12-12 20:32:17 UTC

bundler の古い rubygems 対応の削除の続き。

[45b511433d] David Rodríguez 2023-12-13 13:42:21 UTC

bundler の binstab コマンドの実行時のエラーで出る suggestion のメッセージで実行する bundle コマンドをフルパスのものにするようにしています。

[612616925b] Vít Ondruch 2023-12-08 15:38:51 UTC

rubygems の user_install 関連の再修正。

[e3631277c3] Hiroshi SHIBATA 2023-12-14 12:13:29 UTC

rubygems に vendoring された timeout, net-protocol, resolv の LICENSE.txt ファイルを再度削除しています。

[912016f626] Peter Zhu 2023-12-13 19:25:19 UTC

プロセス終了時に T_DATA 型と T_FILE 型のオブジェクトの解放処理に専用の関数ではなくて obj_free() を呼ぶようにしています。インスタンス変数管理のメモリ領域解放のためとのこと。メモリプロファイラによるリーク検出の邪魔にならないようにするため。

[a79a1d3028] David Rodríguez 2023-12-14 13:16:59 UTC

rubygems に vendoring されている connection_pool, fileutils, tsort, uri, optparse, resolv などを更新しています。

[247ce712fc] Burdette Lamar 2023-12-14 16:09:17 UTC

Complex#fdiv、Complex#**、Complex#==、Complex#<=> などの rdoc 用コメントの手直し。 https://github.com/ruby/ruby/pull/9231

[a18819e65f] Jeremy Evans 2023-12-13 00:48:26 UTC

添字付き代入メソッドでキーワード引数を受け付ける時の渡した引数の複製を抑制するためのフラグを追加しています。

[c5e3d6da9c] Peter Zhu 2023-12-13 19:09:27 UTC

IO::Buffer の実装に RGenGC 用の Write Barrier を追加して WB-proteted なクラスとしてマークしています。

[08c2c4f922] git 2023-12-14 20:07:47 UTC

NEWS の prism のバージョンを更新しています。

[570d7b2c3e] Victor Shepelev 2023-12-14 21:01:48 UTC

各所の rdoc 用コメントのサンプルの修正や新規追加した TracePoint のイベントの追記など細々とした修正。 https://github.com/ruby/ruby/pull/9183

[39c072d6f7] Victor Shepelev 2023-12-14 21:33:33 UTC

ObjectSpace::WeakMap, WeakKeyMap の rdoc 用コメントの追加。 https://github.com/ruby/ruby/pull/9160

[68020516ba] Takashi Kokubun 2023-12-14 23:55:14 UTC

NEWS の YJIT の変更点の記述を更新しています。

[cfd91121ad] Takashi Kokubun 2023-12-15 01:24:06 UTC

GitHub Actions の pull request に自動で reviewers をつけるための workflow で master ブランチ向けの pull request の時だけ動くようにしています。

[b98bd10f25] Satoshi Tagomori 2023-12-15 01:38:33 UTC

e51f9e9f75cc1dde9234836fa92077d71b3c5141 で追加された C API のテスト用の拡張ライブラリの Init_xxx() 関数で Module の定義前に rb_ext_resolve_symbol() を呼び出して LoadError になるかのチェックをして不要に Module を定義しないようにしています。

[29e99c84ae] Jeremy Evans 2023-12-15 02:44:13 UTC

a18819e65fa2dd3135909df81534937dadafb6ab で追加したテストの未使用の変数の代入を削除。

[7ba2506232] Koichi Sasada 2023-12-14 18:42:40 UTC

Hash の実装でキーの hash メソッドの呼び出ししている時に Hash の実装が array ベースから st_table ベースに変換になる時に異常終了してしまう可能性があったという不具合があったのでその修正。 ar -> st の変換時に先に全キーの hash を先に計算してしまってからその配列を使って st_table に insert するようにしています。 array ベースだとキーの数も上限があるので固定長配列で済むということですね。 [ruby-core:115649] [Bug #20050]

[b562efdf6d] Shugo Maeda 2023-12-15 03:57:03 UTC

gems/bundled_gems の net-ftp のバージョンを 0.3.3 に更新しています。

[6408775b08] git 2023-12-15 03:57:40 UTC

NEWS の default gems のバージョンリストの net-ftp のバージョンも更新しています。

[8e37cd8a8b] David Rodríguez 2023-12-14 15:02:00 UTC

lib/bundled_gems.rb で gem 名が net/http -> net-http のように "/" を "-" に置き換えないといけないところがまだあったのでその修正。なんか同じような修正を何度も見てるような気がするんですよねここ。

[76c1ce4e37] Hiroshi SHIBATA 2023-12-15 05:34:56 UTC

default gems の require 時のテストのための tool/test_for_warn_bundled_gems/ というファイル群を追加しています。

[66b82a4430] Hiroshi SHIBATA 2023-12-15 05:37:39 UTC

76c1ce4e379535ed92ebc2197563b36bfd8b2beb と同様に lib/bundled_gems.rb のテストを tool/test_for_warn_bundled_gems/ に追加しています。テストメソッドなどが定義されてないからテストから利用するファイルかと思ったけどこれ自体がテストで実行して警告が出るってことを確認するってことみたいですね。

[25a133ba17] Hiroshi SHIBATA 2023-12-15 05:40:30 UTC

76c1ce4e379535ed92ebc2197563b36bfd8b2beb と同様に lib/bundled_gems.rb のテストを tool/test_for_warn_bundled_gems/ に追加しています。

[9a204fb82e] Hiroshi SHIBATA 2023-12-15 05:48:10 UTC

76c1ce4e379535ed92ebc2197563b36bfd8b2beb と同様に lib/bundled_gems.rb のテストを tool/test_for_warn_bundled_gems/ に追加しています。

[8df46d54bf] Hiroshi SHIBATA 2023-12-15 05:49:46 UTC

76c1ce4e379535ed92ebc2197563b36bfd8b2beb と同様に lib/bundled_gems.rb のテストを tool/test_for_warn_bundled_gems/ に追加しています。

[202c608248] git 2023-12-15 06:05:41 UTC

75c40802cb06d83fc2c3d0eca6d904fa41307230 で追加されたファイルの末尾に改行がなかったので追加しています。

[c3ae4b6ae1] Hiroshi SHIBATA 2023-12-15 06:06:48 UTC

75c40802cb06d83fc2c3d0eca6d904fa41307230 で lib/bundled_gems.rb の優先順位のためにかっこを追加したのが実は意図した連結が逆だったので revert しています。

[cc9aeec23e] Hiroshi SHIBATA 2023-12-15 06:14:48 UTC

tool/test_for_warn_bundled_gems/README.md ファイルを追加して一連の lib/bundled_gems.rb のテストのためのファイルの使いかたについて説明を記述しています。

[1e5c4026d5] Nobuyoshi Nakada 2023-12-15 05:10:02 UTC

tool/m4/ruby_default_arch.m4 で -m32/-m64 フラグの設定のためのアーキテクチャの検出の分岐に $host_cpu も加味して判定するよう修正しています。

[2c2c6bc3fa] Nobuyoshi Nakada 2023-12-15 06:19:16 UTC

1e5c4026d5c75e6867f6e97de0aeaea55e62d26b の続きで tool/m4/ruby_default_arch.m4 の ARCH_FLAG の設定で darwin (macOS) 上でビルドするクロスコンパイル向けの対応を追加しています。

[4d5bfa7c3b] Nobuyoshi Nakada 2023-12-15 06:39:14 UTC

1e5c4026d5c75e6867f6e97de0aeaea55e62d26b からの続きで tool/m4/ruby_default_arch.m4 の ARCH_FLAG の設定で x64 という target_cpu の時の対応を追加しています。