ruby-trunk-changes 2024-03-19

今日は主に magic comment の frozen_string_literals の指定がないスクリプト内の文字列リテラルが chilled string という文字列となり破壊的メソッドに対して deprecated warning を出力するようにする変更などがありました。

[cb029fa4e8] Cody Cutrer 2023-10-09 17:38:42 UTC

bundler の bundle plugin install サブコマンド(サブサブコマンド?)のオプション --local-git を deprecated としています。 --git オプションと同じ働きだったとのこと。

[4469729558] Peter Zhu 2024-03-15 19:36:38 UTC

gc.c の rb_raw_obj_info_basic() という関数を削除して唯一の呼び元に展開するようにしています。

[6ccc04cf45] Nobuyoshi Nakada 2024-03-06 07:29:58 UTC

irb の色付けの指定に使える名前に notice と info というログレベルっぽい名前を追加しています。

[f5497203b6] Nobuyoshi Nakada 2024-03-02 15:39:09 UTC

tool/fetch-bundled_gems.rb でメッセージ出力に tool/lib/colorize.rb を利用して色付けをするようにしています。

[97810cbbf2] Kevin Newton 2024-03-18 14:58:54 UTC

prism 向けのコマンドラインオプションの処理で -K オプションでの Encoding の設定処理を追加しています。

[802e857ae6] Alan Wu 2024-03-18 16:02:22 UTC

YJIT の C 実装のメソッドの呼び出しで引数の数として -2 を指定して定義されているもの(引数が ruby の配列オブジェクトに格納されて VALUE で渡されるもの)の呼び出しに対応しているようです。これまで未対応だったんですね。 https://github.com/ruby/ruby/pull/10268

[0b34b75ba1] Kevin Newton 2024-03-18 18:18:53 UTC

common.mk の依存関係の再生成。

[3f5f04afa7] Peter Zhu 2024-03-18 18:53:24 UTC

internal/gc.h の rb_gc_obj_slot_size() の宣言が重複していたので片方を削除しています。

[6c1e8029d0] Yuki Nishijima 2024-03-19 01:25:55 UTC

標準添付ライブラリ did_you_mean のメッセージ生成のために inspect メソッドを利用していたところを to_s を利用するように変更しています。性能のためとのこと。 https://github.com/ruby/did_you_mean/pull/100

[ef0e08f327] Hiroshi SHIBATA 2024-03-19 01:54:48 UTC

rubygems に vendoring されている net/http の rdoc 用コメント内のリンクを絶対 URL から rdoc-ref によるクロスリファレンスに修正しています。

[0985e58790] Hiroshi SHIBATA 2024-03-19 02:16:24 UTC

標準添付ライブラリ resolv のバージョンを 0.4.0 に更新しています。

[6c18b2474d] git 2024-03-19 02:17:51 UTC

NEWS の default gems のバージョンリストに resolv の項目を追加しています。

[59849feed8] "dependabot[bot]" 2024-03-13 02:37:43 UTC

GitHub Actions の workflows で利用している actions/checkout アクションのバージョンを更新しています。

[86b15316a7] "dependabot[bot]" 2024-03-19 05:19:15 UTC

GitHub Actions の workflows で利用している github/codeql-action アクションのバージョンを更新しています。

[12be40ae6b] Étienne Barrié 2023-12-01 10:33:00 UTC

91bf7eb274e0b6e431b4f89a6dc814701a4d8739 で magic comment の frozen_string_literals を未指定な場合も内部的に保持するよう真偽値と未指定の3値で保持するようにしていましたが、それを利用して frozen_string_literals が指定されていないスクリプト内での文字列リテラルを "chilled string" と呼び struct RBasic::flags のビットフラグを割当て、その文字列オブジェクトに対する破壊的変更メソッドが呼ばれた時に deprecated カテゴリの警告を出力するようにしています。なるほどなぁ。またこれに対応するために gems/buindled_gems で minitest/power_assert/rbs, typeprof などでテストに使う commit hash の指定を追加/更新しています。 [ruby-core:116382] [Feature #20205]