ruby-trunk-changes 2022-12-15

今日は主にメソッド定義と呼び出しの全引数委譲の "..." と "*", "**", "&" などの無名の委譲用各種引数の記法を並用できないようにする変更や bundler の更新などがありました。

[3e5f8b2af3] Burdette Lamar 2022-12-14 13:54:59 UTC

標準添付ライブラリ net/http の rdoc 用コメントの追記。 https://github.com/ruby/net-http/pull/89

[cca54c8b1b] Peter Zhu 2022-12-13 18:34:06 UTC

NEWS にオブジェクトの複数 slot を割り当ててバッファなどを埋め込みやすくする Variable Width Allocation がデフォルトで有効になったことを追記しています。 [Feature #18239]

[1df6d0e578] Jean Boussier 2022-12-14 14:19:56 UTC

拡張ライブラリ objspace の ObjecctSpace._dump でオブジェクトの情報を出力する時に T_IMEMO や T_NODE 等内部的なオブジェクトの型だった時にクラスの情報を出力しないようにしています。

[9eb19a02ae] "NARUSE, Yui" 2022-12-14 15:14:00 UTC

win32/win32.c の set_pioinfo_extra() という関数に中身がみえない FILE 構造体の __pioinfo というメンバーのメモリ上のオフセットを取得するためのハックになぜ __pioinfo メンバーが必要なのかというのをコメント追記しています。

[71dd8b3caa] Nobuyoshi Nakada 2022-12-14 15:27:47 UTC

74995162fc5d530e1a7a91b9f5c11a3b270f7f5f で拡張ライブラリ socket に含まれる ext/socket/lib/socket.rb の require "io/wait" を条件つきにした変更の再修正で Module#public_instgance_methods でメソッド一覧取り出してたのを Module#method_defined? で直接判定するように変更しています。

[7a63114f8e] Peter Zhu 2022-12-14 15:57:44 UTC

Object Shapes の実装で新規に shape を作る時に不要なコードが残っていたみたいなので削除しています。

[693c01d509] Alan Wu 2022-12-14 20:12:44 UTC

YJIT の Rust 実装の gen_setinstancevariable() で jit_prepare_routine_call() を不要に 2度読んでたので 1つ消しています。

[d2b87456f0] Burdette Lamar 2022-12-14 21:34:07 UTC

標準添付 net/http の Net::HTTPHeader の rdoc 用コメントで call-seq のタグの書きかたが間違ってたのを修正したりマークアップを修正したり。

[55f56eb66e] Burdette Lamar 2022-12-14 22:13:23 UTC

標準添付ライブラリ net/http の各種ステータスコードに対応する response のクラスに rdoc 用コメントを追加しています。うーん、全ステータスに Wikipedia のリンクいるかな……。 https://github.com/ruby/net-http/pull/91

[d20bd06a97] Samuel Williams 2022-12-14 22:37:01 UTC

74995162fc5d530e1a7a91b9f5c11a3b270f7f5f および 71dd8b3caa6462e5c3dfd7059314459b51ebebc0 で拡張ライブラリ socket の require "io/wait" を条件つきにしたところを後置 unless でなく通常の unless 文で複数行で書くよう整形しています。 io/wait のテストで require "io/wait" していたのは不要になったので削除しています。 https://github.com/ruby/ruby/pull/6932

[613fca0148] Nobuyoshi Nakada 2022-12-07 13:14:44 UTC

標準添付ライブラリ mkmf.rb で拡張ライブラリビルド時に使う pkg-config コマンドを RbConfig::CONFIG["PKG_CONFIG"] から得るようにしていたので、ruby 本体のビルド時の環境に pkg-config がないとそれを別の環境にインストールした時にそこに pkg-config があっても利用できないのを修正しています。なるほどなぁ……。 [ruby-core:111225] [Bug #19189]

[2581de112c] Shugo Maeda 2022-12-15 06:12:33 UTC

4fc668a4f3b9b67cc7566096ab55cab34c67c158 でメソッド定義の def m(...) のように全引数委譲のための記法と ** のようなキーワード引数委譲の記法を並用する記法を許容するようにしていましたが、やはり並用は SyntaxError になるように変更しているようです。 ** だけでなく * や & のような無名の rest 引数、ブロック引数も並用禁止するように揃えています(元は通ってた)。 [ruby-dev:51203] [Feature #19134]

[49b0f3b024] Hiroshi SHIBATA 2022-12-15 09:00:04 UTC

bundler に upstream から最新版をマージしています。