ruby-trunk-changes 2024-05-17

今日は主に prism の rubygems の更新、bundled gems の minitest のバージョン更新などがありました。

[d076101af9] Nobuyoshi Nakada 2024-05-16 12:25:52 UTC

misc/lldb_rb/ の lldb での rp コマンドで NODE を出力する時の内部構造の変更への追随。

[35c5c7edb9] David Rodriguez 2024-05-09 14:00:17 UTC

rubygems の Gem::Specification#find_all_by_name に Gem::Dependency#matching_specs の内容を移植するリファクタリング

[c55c11d7d5] David Rodriguez 2024-05-09 15:51:44 UTC

rubygems の binstubs の生成処理の修正をしているようです。

[b90ea8ae52] Olle Jonsson 2024-05-16 05:56:58 UTC

標準添付ライブラリ find の gemspec ファイルの spec.bindir と spec.executables を削除しています。

[84d2bacb42] Kevin Newton 2024-05-17 02:44:52 UTC

irbIRB::RubyLex で SyntaxError 発生時の例外メッセージをみて処理をしているところでより深刻な(復旧不可能な)エラーから先に処理するように順序を調整しています。 https://github.com/ruby/irb/pull/956

[0f8f0386a8] "dependabot[bot]" 2024-05-17 02:18:31 UTC

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

[534f1c37e3] "dependabot[bot]" 2024-05-17 02:24:44 UTC

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

[10d02e71d1] Hiroshi SHIBATA 2024-05-17 08:17:13 UTC

gems/bundled_gems の rexml と minitest のバージョンを更新しています。

[8acec5b6e8] git 2024-05-17 08:40:30 UTC

NEWS の bundled gems のバージョンリストの minitest のバージョンも更新し、rexml のバージョンの項目を追加しています。

[2d825ca7d0] Hiroshi SHIBATA 2024-05-17 13:02:40 UTC

gems/bundled_gems の rexml のバージョンを 3.2.6 に戻しています。同じく bundled gems の rss の make test-bundled-gems でのテストでうまく動かなかったみたいです。

ruby-trunk-changes 2024-05-16

今日は主に prism, rubygems の更新と for 文の変数部分に safe navigator つきのメソッド呼び出しの記法が書かれた時の不具合修正などがありました。

[be239cc7bc] Kevin Newton 2024-05-15 15:27:03 UTC

文法のテストを prism の更新に追随させて変更。

[cd8b28f0e7] Kevin Newton 2024-05-15 15:40:52 UTC

文法のテストを prism の更新に追随させて変更。

[2aed14d65b] Kevin Newton 2024-05-15 15:48:20 UTC

文法のテストを prism の更新に追随させて変更。

[9d69619623] Nobuyoshi Nakada 2024-04-20 10:56:58 UTC

rubygems の gem rebuild サブコマンドのテストで一時ファイルが残ることがあったので後始末処理を強化しています。

[2dd46bb82f] Nobuyoshi Nakada 2024-05-16 07:22:17 UTC

for 文の一般的に変数名を書く部分に safe navigator 演算子 (&.) つきのメソッド呼び出しを書いた時に異常終了してしまっていたのを、receiver が nil でなければ foo= のような代入記号つきメソッドに渡され、nil ならば無視するというようになんとなく期待された挙動(?)をするように修正しています。 [ruby-core:117763] [Bug #20468]

[4db76d198b] David Rodriguez 2024-05-13 09:59:55 UTC

rubygemsFreeBSD 向けにビルドされているかどうかの判定をするメソッド Gem.freebsd_platform? を追加しています。

[9fd41480fb] David Rodriguez 2024-05-13 10:04:59 UTC

4db76d198b4a152c416d657e97959ade3e50a185 で追加した Gem.freebsd_platform? メソッドを bundler で利用するようにしています。

[29a9ab0ba6] David Rodriguez 2024-05-13 10:05:24 UTC

4db76d198b4a152c416d657e97959ade3e50a185 の変更で使われなくなった bundler の定数 Bundler::FREEBSD や既に使われなくなってた? Bundler::WINDOWS と Bundler::NULL も deprecated constant として宣言しています。

[7857061ecd] David Rodriguez 2024-05-14 18:07:15 UTC

bundler の依存関係解決で複数の gem の source があった時の不具合を修正しています。

[847fc9af18] David Rodriguez 2024-05-09 18:16:32 UTC

rubygems の gem uninstall サブコマンドで対象の gem がみつからない時? の警告メッセージで使うメソッド名を修正しています。

[b19693f0ae] David Rodriguez 2024-05-09 18:17:44 UTC

rubygems の gem uninstall サブコマンドで user install した gem を uninstall する時のテストを修正しているようです。

[5111b3d479] David Rodriguez 2024-05-09 18:51:23 UTC

rubygems の Gem::Uninstaller で Gem.user_dir が symbolic link の時にその向き先のパスを考慮するようにしてるようです。

ruby-trunk-changes 2024-05-15

今日は主に rubygems のテストの修正や拡張ライブラリ zlib のパフォーマンス改善の変更などがありました。

[4dc0b23018] David Rodriguez 2024-05-03 21:38:05 UTC

rubygems の Gem::Specification の特異メソッド内で Gem::Specification の特異メソッドを呼ぶのに receiver を明示していたのをやめています。

[8d28e63566] David Rodriguez 2024-05-06 15:13:48 UTC

rubygems のテストの一次ディレクトリの削除を teardown の最後に移動して後始末漏れをチェックしていたのを削っています。

[6454238072] David Rodriguez 2024-05-06 10:15:44 UTC

rubygems の Gem.clear_paths のテストでチェックをクラス変数を直接 Module#class_variable_get で取り出してたのをやめて環境変数を設定して Gem.dir や Gem.path の返す値をチェックする方法に修正しています。

[91e3871970] David Rodriguez 2024-05-06 13:33:44 UTC

rubygems の Gem::Specification.all= メソッドの rdoc 用コマンドの説明を削って1行のシンプルな記述に変更しています。

[5628cc1229] David Rodriguez 2024-05-06 13:34:23 UTC

rubygems の Gem::Specification.find_active_stub_by_path の rdoc 用コメントを追加しています。

[c219ee00b4] David Rodriguez 2024-05-06 13:36:57 UTC

rubygems の Gem::Uninstaller#gem_home の rdoc 用コメントの typo 修正。

[bd84236169] David Rodriguez 2024-05-06 13:41:42 UTC

rubygems の Gem::Specification の実装から spec を表現するクラスを Gem::SpecificationRecord というクラスに切り出して一部の処理をそこに移植しています。

[965cb3ab4c] David Rodriguez 2024-05-06 19:00:14 UTC

bd8423616947738d2efb3602791db91587b822bb で切り出した rubygems の Gem::SpecificationRecord クラスにユーティリティメソッドを追加して plugin の uninstall 処理の削除対象のディレクトリ特定の不具合修正をしているようです。

[cb1a574e46] "dependabot[bot]" 2024-05-14 02:42:23 UTC

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

[e33336cb37] Samuel Giddins 2023-12-21 02:30:06 UTC

拡張ライブラリ zib の Zlib::GzipReader#read や #readpartial にバッファとして使う文字列オブジェクトを渡した時にも内部で一時的な文字列オブジェクトを生成していたのを抑制するようにしています。

[e3e1e53098] Samuel Giddins 2024-04-11 19:28:07 UTC

e33336cb37b47834c0448921c6c4942e3fa63996 の続きで Zlib::GZipReader#readpartial のほうでのみバッファ文字列が引数で与えられてた時の処理が別途書かれてたのが不要になったので削除しています。

[e73f6618d5] Nobuyoshi Nakada 2024-05-15 07:53:27 UTC

64542380728b2f0cb0a76a09d08735538350cd9frubygems のテストで環境変数を一時的に変更するためのヘルパーメソッドで環境変数の元の値をバックアップしておくための変数を不要にインスタンス変数にしていたのが setup/teardown で利用している同名のインスタンス変数を上書きしてしまっていたのでローカル変数に変更しています。

ruby-trunk-changes 2024-05-14

今日は bundler の require 削減まわりの変更や標準添付ライブラリ reline の更新がありました。

[02c8e6583b] Samuel Giddins 2024-02-20 19:05:30 UTC

rubygems の tar パッケージの解析時に空のヘッダ? を表すインスタンスを定数に格納して使いまわすようにして余計なインスタンス生成を抑制するようにしています。

[22dab73971] David Rodriguez 2024-05-13 13:02:43 UTC

rubygems で拡張ライブラリ pathname に依存していた部分を File.expand_path を利用するようにして不要な require を消しています。

[d1c172dfd0] David Rodriguez 2024-05-13 13:03:13 UTC

bundler による rubygems の拡張で追加する Gem::BetterPermissionError 例外で Bundler::SharedHelpers のメソッドに依存しているのをやめて不要な require を消しています。

[5319587ac3] David Rodriguez 2024-05-13 13:03:32 UTC

69c87619bd7a69936c44cc0d323b11148400e894 の bundler で autoload を利用して require を遅延した変更のうち Monitor についての部分を revert しています。なぜかはわからないけどテストで時々エラーになる現象が発生したとのこと。

[9d01f657b3] Mari Imaizumi 2024-05-14 01:58:27 UTC

標準添付ライブラリ reline に emacs mode で ctrl-_ による undo コマンドのサポートを追加しています。 https://github.com/ruby/reline/pull/701

[b60f09442a] Andrew Konchin 2024-05-10 09:28:59 UTC

パターンマッチのテストを意図に沿うように修正しています。

[4a1e4436a9] Mari Imaizumi 2024-05-14 08:18:28 UTC

標準添付ライブラリ reline のバージョンを 0.5.7 に更新しています。 https://github.com/ruby/reline/pull/704

[44f50f4179] git 2024-05-14 08:19:43 UTC

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

[41e6fd066e] Alexander Ross 2024-05-14 08:22:36 UTC

doc/encodings.rdoc のサンプルコードの変数名 typo 修正。

ruby-trunk-changes 2024-05-13

今日は主に rubygems や bundler の修正がありました。

[3c16d93cd3] Nobuyoshi Nakada 2024-05-12 14:12:02 UTC

Universal Parser 用に parser_encoding という型を const void としてマクロで定義しています。警告抑制のためとのこと。

[e926298343] David Rodriguez 2024-05-10 14:11:51 UTC

bundler の rubygems 拡張のための lib/bundler/rubygems_ext.rb でトップレベルで require していたいくつかのファイルを module/class 文の中やメソッド内での require に移動しています。メソッド内は遅延されるのでともかく class/module 文の中に入れるのは遅延する意味はほとんどないと思うのですが、どこで必要としての require か明確にするためってことですかねぇ。

[69c87619bd] David Rodriguez 2024-05-10 14:14:26 UTC

bundler で require のかわりに Module#autoload を利用して require を遅延するようにしています。 bundler での rubygems の拡張の影響が require に反映されるようにするためみたいです。

[899568cce9] David Rodriguez 2024-05-09 13:25:26 UTC

bundler で bundler 自身のバージョンチェックが不一致になった時に例外を発生させるようにしています。

[a86ad47c94] David Rodriguez 2024-05-06 13:56:37 UTC

rubygems の Gem::Uninstaller#remove_plugin のテストを強化しています。

[5880103450] Vít Ondruch 2023-03-13 13:32:19 UTC

rubygems の plugin の削除処理で対象のディレクトリの決定に対象の gem の spec の設定を考慮させるように修正しています。

ruby-trunk-changes 2024-05-12

今日はなかださん無双で主に Marshal.load が既存の Module/Class のインスタンス変数を上書きするのを禁止する変更などがありました。

[4edd9b072c] Nobuyoshi Nakada 2024-05-12 04:47:10 UTC

irb のテストで一時ディレクトリの teardown での削除を追加しています。

[d9e6e6fb60] Nobuyoshi Nakada 2024-05-04 13:15:47 UTC

Marshal.load で任意のインスタンス変数がセットできることを確認するテストの変数名が間違っていたのを修正しています。 [ruby-core:51765] [Bug #7759]

[8b9b150512] Nobuyoshi Nakada 2024-05-04 13:17:04 UTC

Marshal.load で既存の Module/Class のインスタンス変数が上書きできないように例外を発生させるようにしています。 [ruby-core:117831] [Bug #20481]

[a1fb6cc978] Nobuyoshi Nakada 2024-05-10 13:46:12 UTC

拡張ライブラリ ripper のテストで特殊変数への代入をエラーにするテストで代入に使う特殊変数を $` から $& に変更しています。

[5695c5df95] Nobuyoshi Nakada 2024-05-12 06:38:22 UTC

7e604a02637275f7f2f1b13074abe1d5f146829ba1fb6cc978ffba6c4a8284a4fcca3efcef684714 の続きで特殊変数への代入をエラーにする変更で演算子つき代入について誤ったトークンを発生させていたのを修正しています。

[b911d2222f] Nobuyoshi Nakada 2024-05-12 07:23:00 UTC

doc/syntax/pattern_matching.rdoc に後置 in によるパターンマッチでは条件文による guard は使えない旨追記しています。 [ruby-core:117833] [Bug #20482]

ruby-trunk-changes 2024-05-11

今日は拡張ライブラリ ripper の不具合修正や irb, prism の更新がありました。

[69d0a3b033] Kevin Newton 2024-05-10 09:39:07 UTC

irbIRB::RubyLex で SyntaxError の内容をエラーメッセージで判定している部分の正規表現の条件を緩めています。おそらく prism で例外メッセージが少し変化しているのを許容するようにしているのではないかと。 https://github.com/ruby/irb/pull/954

[c68bb24088] Stan Lo 2024-05-10 11:40:54 UTC

irb の設定ファイルの読み込み時に値のクラスのチェックなどを強化しています。 https://github.com/ruby/irb/pull/953

[3ec5a9325f] git 2024-05-10 17:10:55 UTC

NEWS の default gems のバージョンリストの prism のバージョンを更新しています。

[68b6fe7048] tomoya ishida 2024-05-10 17:19:38 UTC

標準添付ライブラリ reline の Reline::LineEditor の初期化時に端末サイズを得るのに Reline::IOGate.get_screen_size を呼んでいたのをやめて [0, 0] で仮に初期化しておいて reset メソッドで改めて実際の端末サイズを検出するのにまかせるようにしています。 require "reline" するだけでこのメソッドが呼ばれてしまうのを抑制するためとのこと。 https://github.com/ruby/reline/pull/703

[7e604a0263] yui-knk 2024-05-11 08:08:22 UTC

拡張ライブラリ ripper で特殊変数 $` へ演算子つき代入をするような構文を読ませると異常終了する不具合を修正しています。これは最近の変更によるものなのかな。それとも昔からあるものか。