ruby-trunk-changes 2020-06-05

今日は rubygems/bundler の更新と拡張ライブラリ psych の更新などがありました。

[5c343b849b] David Rodríguez 2020-06-01 11:11:39 UTC

bundler の man pages のヘッダの日付を June 2020 に更新しています。もしかしてこれ毎月更新してるのかな。

[5a12fc7c7f] David Rodríguez 2020-05-22 09:51:14 UTC

bundler のテストで Windows 上で skip していたいくつかのテストの skip をやめています。

[1914c4e9b1] David Rodríguez 2020-05-25 10:17:52 UTC

bundler のテストで bundle install の --deployment オプションを渡すのを forgotten_command_line_options というメソッドを通してたのをやめてますが意味はよくわからない(今現在はもう forgotten_command_line_options というメソッドは存在しなくなっている)。

[97267227bb] David Rodríguez 2020-05-25 10:18:44 UTC

bundle install で --no-0deployment というオプションを sugest する場合があったのをやめています。

[d52b1b0705] David Rodríguez 2020-05-25 10:19:13 UTC

bundle install の --no-deployment オプションを deprecated にしています。

[735bd501e7] David Rodríguez 2020-05-03 22:30:29 UTC

bundler のテストに使う gemspec ? の compact_index への依存関係のバージョン指定を更新しています。

[1161191a2a] David Rodríguez 2020-05-25 14:18:29 UTC

735bd501e755893165e69cd14680327ae56b10cb の続きで、さらに compact_index の依存バージョンを上げています。

[1ab410caf8] Hiroshi SHIBATA 2020-06-04 11:31:11 UTC

fcc8be0198a16cc5fa7d4827be0c781209b70f98 の bundler のテストでコミットハッシュを得るのに失敗した時の fallback を revert しています。

[9f7bfba54f] Hiroshi SHIBATA 2020-06-04 11:31:18 UTC

67d2a715ca35090fbb3ab13df5b7348b1807dd47 の bundler のテストで git ls-files が失敗した時の fallback 実装も revert しています。

[bd9a6ba4ef] David Rodríguez 2020-05-27 10:51:09 UTC

bundler のテストの余計な空白除去。

[592762069d] David Rodríguez 2020-05-25 18:32:23 UTC

bundler のテストを git リポジトリじゃない環境(パッケージを展開したものなど)で実施した時の git ls-files が使えない問題を skip することで回避するようにしています。

[09602f4301] David Rodríguez 2020-05-27 16:30:46 UTC

bundler の依存関係の parse の変更(の revert?)らしい(よくわからない)。

[ff74725dc3] David Rodríguez 2020-05-28 19:04:23 UTC

bundler の不必要そうなテストを削除。

[5989827dc7] David Rodríguez 2020-05-28 19:10:08 UTC

bundler のテストの it のコメントの文法修正のみ。

[fed9419e55] David Rodríguez 2020-05-28 20:41:56 UTC

同じく bundler のテストのコメント修正のみ。

[052d66050a] David Rodríguez 2020-05-28 19:12:21 UTC

同じく bundler のテストの describe の文言修正のみ。

[6b7a0c0ca7] David Rodríguez 2020-05-28 20:51:57 UTC

bundler の bundle install のオプション処理で共通部分を normalize_groups を使いまわすようにするリファクタリング?

[332ecb0ad1] David Rodríguez 2020-05-28 20:38:04 UTC

6b7a0c0ca7102c2891b75cd6ef7429dd90d931c3 の影響で bundle install 中に bundle config 相当の設定の保存が暗黙に行なわれれるようになっちゃったらしくて、明示的にオプションが渡された時だけ normalize_groups を呼ぶようにしています。

[97d05c9db3] David Rodríguez 2020-05-28 21:00:19 UTC

332ecb0ad1fd5cda138a36cc40891d78517d1fff のさらに続きで normalize_groups で options を破壊的変更しないようにしています。

[9422162f71] David Rodríguez 2020-05-28 21:02:28 UTC

97d05c9db38f92b214cd30bb821ce29add20f082 の追加修正。 without から with に含まれる要素を引くのが冗長だったらしい。

[b2a460ea3e] David Rodríguez 2020-05-28 21:06:34 UTC

さらに bundler の normalize_groups の修正。 --with/--without オプションの指定がなかった時の処理を修正しています。

[99dc55987d] David Rodríguez 2020-05-28 16:03:32 UTC

bundler のテストのコマンドラインオプションの指定に forgotten_command_line_options を使ってたところをさらに消しています。

[5c924f597f] David Rodríguez 2020-05-28 16:04:41 UTC

bundler のテストで使ってる forgotten_command_line_options (今現在はもう存在しないんだけど)で Bundler 2系向けの利を削っています。

[f02f19d62f] David Rodríguez 2020-05-29 11:06:07 UTC

bundler のテストの it のコメントの修正。

[61b61f426a] David Rodríguez 2020-05-29 10:27:15 UTC

同じく bundler のテストの context のコメントの書きかえなど。

[e413e746af] David Rodríguez 2020-05-29 10:46:16 UTC

bundler のテストで使ってた forgotten_command_line_usages というメソッドを削除してコマンドラインオプションを直接文字列で記述するようにしています。

[603edfcaa0] David Rodríguez 2020-05-30 15:37:56 UTC

bundler のテストで並列テストすると失敗する場合があった不具合を修正しています。

[f75bd9bb8b] Frank Lam 2020-04-24 08:00:59 UTC

bundler の gem.test という設定についての扱いの変更。 bundle gem で gem のテンプレート作る時に指定がない場合にかってに rspec にせずにプロンプトするようにしているそうです。

[3c9d3d18f6] Frank Lam 2020-05-21 10:22:47 UTC

bundler の man pages の再生成。

[58267fa59e] Frank Lam 2020-05-22 02:27:12 UTC

f75bd9bb8bf1764de613ab1b601d21c46b1d4681 の続き。 bundle gem で -t オプションが gem.test 設定と一致していたら、指定しなくてもいいよーというメッセージを出すようにしています。

[154c2717da] Frank Lam 2020-05-22 17:00:00 UTC

58267fa59e6ea2e4e90a7459a5d7d2f0f57d4f02 の bundle gem での挙動変化についてのテストの追随。

[0d240de2f3] Frank Lam 2020-05-23 10:13:56 UTC

154c2717da6bb59f1b2739777b01cea98b667751 で追加した bundler のテストに :hint_text という tag を追加して、この時だけ使えるらしい helper を利用するようにしています。

[f0ae5ac313] Frank Lam 2020-05-24 12:48:38 UTC

bundle gem での -t オプションについての説明を prompt を出す前に表示するようにしています。

[9139acca66] DEVRAJ KUMAR 2020-04-10 22:20:19 UTC

bundle info サブコマンドで削除された gem が指定された時に警告メッセージを出力するようにしています。

[f9872c50cc] Jakob Krigovsky 2020-05-07 18:02:21 UTC

bundler の gemspec ファイルや自動生成したファイルに埋め込まれるリポジトリの URL を github.com/rubygems/rubygems のほうに変更しています。

[1feffe12d4] Jakob Krigovsky 2020-05-11 19:39:29 UTC

bundler の gemspec ファイルで bug_tracker_uri の指定は rubygems に統合されたかわりにクエリパラメーターでフィルタリングされた URL に変更しています。

[c91915c183] David Rodríguez 2020-05-22 11:19:06 UTC

lib/bundler/injector.rb のコメントの typo 修正。

[0ae5cd55e5] Carsten Wirth 2019-11-26 14:48:55 UTC

bundler の gemfile.txt の処理で削る行の行末が "," だったら続く行も一緒に削るように修正しています。

[0fb2a7fa1c] David Rodríguez 2020-05-24 09:20:02 UTC

bundler のテストで BUNDLER_SPEC_FORCE_RECORD という環境変数で挙動変更していたのをやめています。

[4d233d18a2] David Rodríguez 2020-05-25 17:45:22 UTC

bundler のテストで使う gemspec ファイルのひとつに redis-namespace への依存関係を追加しています。

[459eb684b7] Hiroshi SHIBATA 2020-06-04 12:15:34 UTC

bundler のテストでの forgotten_command_line_options の削除漏れがあったので追加修正。

[28be8e0480] David Rodríguez 2020-05-18 18:14:36 UTC

rubygems で psych の gem version を明示的に指定してたのをやめています。

[5c35fedaf2] David Rodríguez 2020-05-16 12:41:41 UTC

rubygems のテストで require 'rubygems/package_task' の LoadError を無視させていたのをやめています。不要になったらからしい。

[01fcc291dc] David Rodríguez 2020-05-16 12:42:34 UTC

rubygems のテストで RakeFileUtils.verbose_flag の値を teardown で復旧するようにしています。

[f7d3522a54] David Rodríguez 2020-05-16 12:43:21 UTC

01fcc291dc8a4c43c0763ebbb04e2e9e137cc738 の続きで RakeFileUtils.verbose_flag を false にセットするのを setup で全体的にやっていたのを個別のテストメソッド内でそれぞれセットするように変更しています。

[3660d14de6] David Rodríguez 2020-05-16 12:45:08 UTC

rubygems の rake package で FileUtils のメッセージを標準出力に出すように @fileutils_output をセットするようにしています。こうしないと stderr に出てるからかな。

[8e5fe13c08] David Rodríguez 2020-05-19 10:08:43 UTC

rubygems の lib/rubygems/ext/ext_conf_builder.rb で fileutils と tempfile の require を実際に必要になるまで遅延するようにしています。

[4edfc50283] bronzdoc 2020-05-31 06:06:06 UTC

lib/rubygems/package.rb に明示的な require "rubygems" を追加しています。

[de3f183c2a] bronzdoc 2020-06-03 04:41:21 UTC

rubygems のテストで Gem::TestCase を利用するように修正。

[9c55172bd0] bronzdoc 2020-06-03 14:39:55 UTC

de3f183c2a2da499da5d4349c82f122bef1fc68b の続きで require "rubygems/test_case" がひとつのテストメソッド内に置かれてたので先頭に移動しています。

[1f9e684c77] David Rodríguez 2020-06-02 08:15:39 UTC

lib/rubygems/commands/setup_command.rb の不要なかっこの削除。

[e4d0cca24a] David Rodríguez 2020-06-02 08:19:41 UTC

bundle gem で生成するテンプレートに "." ではじまるファイルもコピーされるようにしています。

[dd5b918cbe] David Rodríguez 2020-06-02 08:24:32 UTC

e4d0cca24ae07d7b9797c384a9b6d82983f269e4 と同様古いファイルを消すためのファイルリストを得る時に "." で始まるファイルを含めるようにしています。

[f61ee674d8] Olle Jonsson 2020-04-19 16:06:02 UTC

rubygems で文字列のマッチに先頭/末尾への正規表現を使うかわりに String#start_with?, String#end_with? で代替できるものはこちらを使うようにしています。

[b7adb10e39] Josef Šimánek 2020-04-30 22:55:07 UTC

rubygems の extension (ってなんだろ)で Gem::Ext::RakeBuilder が含まれてないけど必要だったという時に警告を表示するようにしています。

[464e094fce] Josef Šimánek 2020-05-08 22:23:19 UTC

b7adb10e3986ac8334b5f304321dda6f8d135e69 で lib/rubygems/specification_policy.rb に追加した require 'rubygems/ext' を必要になってから require するように遅延しています。また追加した警告メッセージの修正。

[8c8364c84e] David Rodríguez 2020-05-16 13:42:27 UTC

ruby setup.rb を実行すると rubygems の警告が出るということで警告除去のため rubygems の require を require_relative に変更。setup.rb が $LOAD_PATH に相対パスを追加するためとのこと。コミットログみるとこれが根本的な修正ではなさそう(というか setup.rb が悪い気がする)けどこれで抑えられるからみたいな感じ。

[a18e81d797] David Rodríguez 2020-05-19 12:00:00 UTC

rubygems の再定義する Kernel#require で -I オプションで追加されるロードパスは rubygems の gem 探索の際にはスキップするようにしているみたいです。いいのかなそれ。

[5aa5aad48a] David Rodríguez 2020-05-19 12:08:19 UTC

rubygems の Gem.load_path_insert_index のデフォルト値を 0 にして呼び元での分岐をなくしています。

[07dca5c02c] David Rodríguez 2020-05-19 12:32:12 UTC

a18e81d797135de6e143a600e4f4d2b00ab23bf9 および 5aa5aad48aa3effce60de3559d9bd107bfc9a91d の続き。 rubygems の再定義する Kernel#require でループ内での計算をループ外に括り出してローカル変数で使いまわす最適化。

[f0f138aa5d] David Rodríguez 2020-05-21 13:20:57 UTC

rubygems の再定義する Kernel#require でさらに最適化しているみたいですが、説明をみてもよくわからなかった。

[b9d431a7b1] David Rodríguez 2020-05-23 18:18:41 UTC

lib/rubygems/core_ext/kernel_require.rb のコメントに書かれてた pull request の URL を削除。もうだいぶ変わっちゃったからとのこと。

[5c1957e95c] Benoit Daloze 2020-04-22 18:13:30 UTC

rubygems による require のテストで子プロセスを起動する時の -I オプションに渡すパスを絶対パスに変更。

[709d58446f] Benoit Daloze 2020-04-22 19:23:14 UTC

rubygems の再定義する Kernel#require のテストで同じパスは重複してロードせず false を返す挙動の確認のテストを書きなおしています。よくわからないですが単になんのテストをしているのかわかりやすくしたって書いてあるので内容は変化してないのでしょう(なんのテストなのかパッと見でわからなかったけど)。

[5f0e84ba8d] Benoit Daloze 2020-04-22 19:20:06 UTC

rubygems による Kernel#require のテストで ruby リポジトリ内でテストする時に標準添付ライブラリのパスが違うので対応しています。

[345461018d] Benoit Daloze 2020-04-22 20:17:50 UTC

rubygems のテストで Truffleruby でうまく動かない細かいチェックを削っています。

[ae3d0d8a20] Benoit Daloze 2020-05-09 10:40:57 UTC

rubygems の再定義する Kernel#require のテストで default gem の新しいバージョンがインストールされてた場合のテストを追加しています。

[ff5ca548c3] Benoit Daloze 2020-05-09 11:10:17 UTC

rubygems の Kernel#require のテストで -e オプションでなく実際に一時ディレクトリのファイルにスクリプトを書き出してこれを実行させるようにしています。 JRuby が -e に複数行書くのをサポートしていないためとのこと。

[f8f5e7fadf] David Rodríguez 2020-03-25 14:55:16 UTC

rubygems のロード前にロードされた default gem の標準添付ライブラリがあったらそれを優先するようにしているみたいです。

[5eacf4e72c] Olle Jonsson 2020-04-19 20:39:42 UTC

rubygems正規表現のかわりに String#start_with? を使うようにしたり、そうしないところでもコメントで Rubocop の警告を抑制するアノテーションをつけるようにしています。なるほど Rubocop が指摘するのか。

[15018f20dd] David Rodríguez 2020-05-29 13:45:33 UTC

rubygems の gemspec の validate_metadata, validate_dependencies, validate_permissions といったメソッドは deprecated にしています。

[3cfe190099] David Rodríguez 2020-05-29 13:47:18 UTC

15018f20ddfb18f87bff11e20ac1b23f4d9fa2be で deprecated にしたメソッド群の rdoc 用コメントを削除したり移動したりしています。

[fc10f35f3d] David Rodríguez 2020-05-29 13:47:46 UTC

rubygems のテストで raise しているところをヘルパーメソッドを利用するようにしています。

[257e6cda32] David Rodríguez 2020-05-29 13:49:50 UTC

rubygems の Gem::SpecificationPolicy#validate の rdoc 用コメントの説明変更。

[455330143a] David Rodríguez 2020-05-29 13:50:43 UTC

257e6cda329dcc1d68e5d35893f5877de91d5978 に続いて rubygems の Gem::SpecificationPolicy#validate の rdoc 用コメントの説明に追記。

[e9c8066bd9] David Rodríguez 2020-05-29 13:57:45 UTC

rubygems の Gem::SpecificationPolicy#validate をさらに #validate_required! と #validate_optional に分割したり追加の validation メソッドを呼び出したりしています。

[8739bc449f] David Rodríguez 2020-05-29 14:31:25 UTC

e9c8066bd965634475f4273406fd0e0f6f5e5988 で分割した validate_optional は package 作成時のみ? 呼び出すようにしています。このために分離したわけか。

[5bbddba20b] David Rodríguez 2020-05-21 17:19:50 UTC

01fcc291dc8a4c43c0763ebbb04e2e9e137cc738f7d3522a54627b6d2fec0606fff5612ba52f2731rubygems のテストで RakeFileUtils.verbose_flag のフラグを復旧するようにしたうえでフラグの変更は必要なテストメソッド内でのみ行うようにしてましたが、復旧も teardown を使わずに各メソッドの ensure 節でするようにしています。

[77ba8a1d61] Yuki Nishijima 2020-05-26 00:34:56 UTC

rubygems の再定義する Kernel#require で LoadError のメッセージに対象のファイルパスが末尾に含まれることに依存していたのを LoadError#path メソッドを使うようにしています。LoadError#path の追加って 2.0.0 なんでずいぶん前なんだな。

[cfcb52fbe3] David Rodríguez 2020-06-03 14:54:21 UTC

rubygems のテストで無引数のメソッド呼び出しに空のかっこをつけてたのを削っています。これも rubycop の指摘っぽい。

[e262452b56] git 2020-06-04 22:33:20 UTC

version.h の日付更新

[4bff8e8423] Samuel Williams 2020-06-04 10:37:09 UTC

cont.c の fiber_pool_vacancy_push() で struct fiber_pool_vacancy の linked list の先頭に追加した時に新しい head の previous を NULL クリアするのを忘れてたのを修正しています。 [Bug #16814]

[a16fcb4205] Kir Shatrov 2020-06-04 15:25:20 UTC

net/http の rdoc 用コメントに Net::HTTP.start のオプション keep_alive_timeout を追記しています。

[073ff73972] Nobuyoshi Nakada 2020-06-05 01:20:06 UTC

rubygems のテストの失敗時のメッセージ改善。

[449b62ba01] Nobuyoshi Nakada 2020-06-05 01:20:38 UTC

rubygems のテストで RbConfig::TOPDIR が未定義だとうまく動かないテストを skip するようにしています。 make install してないと動かないテストらしい。

[e17028e48b] Kazuhiro NISHIYAMA 2020-06-05 01:48:47 UTC

net/imap のテストで CI のデバッグのため保存している情報に ObjectSpace.each_object で全ての socket のアドレス情報を収集しておくようにしています。

[efa8df2886] Kazuhiro NISHIYAMA 2020-06-05 02:45:30 UTC

e17028e48bcddaef2fb6ded37e8f104886120465 で追加したデバッグ用の情報収集で BasicSocket#local_address が例外 IOError を発生させる場合があるので無視させるようにしています。

[4085c51a51] Jean Boussier 2019-07-24 19:35:55 UTC

拡張ライブラリ psych の Psych.load にキーワード引数 freeze を追加して、読み込んだオブジェクトが再帰的に freeze されるようにしています。おお。

[f641d78a6f] Jean Boussier 2019-07-24 20:01:20 UTC

4085c51a5175aeff2aeb8b849214c2899a79eb19 の続き。拡張ライブラリ psych の Psych.load の freeze キーワード引数対応で freeze が漏れてたところを修正しています。

[5ed58b90d1] David Rodríguez 2020-02-26 17:36:11 UTC

拡張ライブラリ psych の gemspec ファイルの spec.files から .travis.yml を削除しています。

[f245976386] Mark Thorn 2020-03-03 18:03:28 UTC

拡張ライブラリ psych の整数の parse で "_" による桁区切りが先頭や末尾についていても受付けるようにしています。ありなんだそれ。

[cd3d035e8a] David Rodríguez 2020-02-13 23:26:37 UTC

拡張ライブラリ psych のバージョンを version.rb から読み込むために gem 版と ruby リポジトリ版でのパスの違いを相対パスで吸収して $LOAD_PATH に追加しておくようにしています。require_relative じゃだめなんかな。

[6b9e363aa0] Po-Chuan Hsieh 2020-04-06 19:08:04 UTC

拡張ライブラリ psych の gemspec ファイルの spec.files に LICENSE ファイルを追加しています。

[7e289cdf3f] Aaron Patterson 2020-06-03 17:18:34 UTC

拡張ライブラリ psych のテストで libyaml のバージョンによってちょっと結果が変わっちゃったのを許容するようにしています。https://github.com/yaml/libyaml/issues/196

[347127794e] Hiroshi SHIBATA 2020-06-05 10:01:39 UTC

make test-bundler-parallel で spec/bundler/support/parallel はもう不要らしくて --require で指定するのをやめています。

[0afbfddc0d] Hiroshi SHIBATA 2020-06-05 10:20:48 UTC

347127794e8041a1257b7241bbbdd9d0db2921a5 の続きで、クオートの閉じ漏れの修正と PARALLEL_TESTS_EXECUTABLE という変数を定義するようにしています。けど PARALLEL_TESTS_EXECUTABLE は他に使われてなさそう。[追記] PARALLEL_TESTS_EXECUTABLE は parallel_tests という gem が見てるそうです。[/追記]