ruby-trunk-changes 2020-07-15

今日は主に bundler の更新などがありました。

[c87ee8005b] Koichi Sasada 2020-07-15 02:21:14 UTC

test/irb/test_workspace.rb に明示的な rubygems の require を追加しています。

[fc220b129d] Koichi Sasada 2020-07-15 02:21:33 UTC

test/rubygems/test_gem_source_list.rb にも明示的な rubygems の require を追加しています。

[dfe88350df] git 2020-07-15 02:22:10 UTC

version.h の日付更新

[c25d249e63] Koichi Sasada 2020-07-15 04:34:54 UTC

rubyspec の内部構造のテストのための拡張ライブラリで struct RBasic::flags を取り出す時に INT2FIX() を使ってたのを VALUE2NUM() というマクロを導入してこれを使うようにしています。

[48ba9b6106] Sora Morimoto 2020-07-14 22:24:06 UTC

Windows 環境の GitHub Actions でパッケージのキャッシュに使う actions/cache というプラグインのバージョンを v2 に更新しています。

[f3ad8a00e2] MSP-Greg 2020-06-17 01:31:15 UTC

bundler が生成する実行可能ファイルにするための binstub の Windows 環境での改行モードなどを修正し、.cmd ファイルも同時に生成するようにしています。

[ad743337b3] MSP-Greg 2020-06-17 01:36:12 UTC

bundler のテストで spec/bundler/commands/binstubs_spec.rb のファイル全体を Windows 環境で skip してたのを特定のテストケースのみ skip するように狭めています。

[23cf99e99d] MSP-Greg 2020-06-18 02:26:13 UTC

ad743337b376d8e2a9dae7350b0e89eed636c5bb で狭めた skip も含めて bundler のテストで Windows 環境で skip していたものを skip を消して、数カ所ではファイルを open しっぱなしで GC にまかせてたのを File.readlines を使うように修正しています。

[5ae80c5207] David Rodríguez 2020-06-21 12:56:33 UTC

bundler のテストの helper メソッドで git checkout するコマンドに --quiet をつけてたのを削っています。デバッグのためみたいですね。

[2b73f26fde] David Rodríguez 2020-06-21 12:44:19 UTC

bundler のテストで $LOADED_FEATURES を検査する assert_system_features_not_loaded という assertion メソッドでエラー時のメッセージを強化しています。

[3b0d2a3d6d] Utkarsh Gupta 2020-06-19 10:44:18 UTC

bundler の RuboCop の指摘に対応するための修正。 magic comment frozen_string_literal の追加や(こんなの言われるの…)、Symbol キーの Hash リテラルの記法の変更など。

[084489be87] Utkarsh Gupta 2020-06-19 12:54:11 UTC

3b0d2a3d6ddd4f3d361e15af96881275e8923a5e の RuboCop 対応修正のうち自動生成するものの生成元も対応しています。

[cbe4d29c2d] Utkarsh Gupta 2020-06-19 16:41:13 UTC

3b0d2a3d6ddd4f3d361e15af96881275e8923a5e の修正のうち gemspec ファイルのテンプレートで Dir.chdir を削ったのは実害があったので修正。

[449d24200b] Utkarsh Gupta 2020-06-19 16:44:21 UTC

bundler のテストに bundle gem で生成したファイルに対する RuboCop のチェックをするというものを追加しています。

[b28c6d04d0] Utkarsh Gupta 2020-06-20 20:12:34 UTC

bundle gem で生成する Rakefile などで古い Hash リテラル記法を使ってたのを新しい Symbol キーの記法を使うように変更しています。

[4875a96edd] Utkarsh Gupta 2020-06-20 20:22:11 UTC

449d24200b94ac5d849314125d2930e04d20ee6e でテストした bundle gem で生成したファイル群の RuboCop でのチェックのテストの修正。 rake もインストールする必要があったようです。

[215f7c3165] Utkarsh Gupta 2020-06-20 20:37:14 UTC

bundler の RuboCop 向けの修正。

[ecb87b55d8] Utkarsh Gupta 2020-06-21 11:16:34 UTC

449d24200b94ac5d849314125d2930e04d20ee6e で追加した rubocop を使うテストで使う rubocop のバージョンを 0.80.1 に指定しています。また bundle gem で生成される rubocop の設定ファイルのデフォルトの設定に1行の最大の文字数 120 にする指定を追加しています。

[077dcacb08] Utkarsh Gupta 2020-06-21 16:13:46 UTC

同じく 449d24200b94ac5d849314125d2930e04d20ee6e で追加した bundle gem で生成したファイルの rubucop チェックのテストで、生成した .rubocop.yml ファイルを利用するように修正しています。

[d0810fdee4] Utkarsh Gupta 2020-06-21 17:53:23 UTC

449d24200b94ac5d849314125d2930e04d20ee6e で追加した rubocop を使うテストのバージョンを RUBY_VERSION が 2.3 以前だったら 0.80.1 にするように変更しています。

[5ebca6d709] Utkarsh Gupta 2020-06-21 20:17:34 UTC

449d24200b94ac5d849314125d2930e04d20ee6e で追加した rubocp を使うテストですが rubyリポジトリ内で実行すると ast.rb がひっかかってエラーになるらしいので skip するようにしています。生成したファイルだけチェックされるのではないのかな?

[a73ea2126f] David Rodríguez 2020-06-21 22:06:16 UTC

bundler のテストの helper メソッドで実行するディレクトリを指定したうえで git clone する URL に ".." を指定するように変更しているのですが、working copy からも clone できるんだ……。

[d189d31ce9] David Rodríguez 2020-06-21 22:46:50 UTC

a73ea2126fe12f80a3edde167c78bf35884f895e の追加修正。 ディレクトリ作成は git clone が自動でするので不要とのことで消しています。

[17b92d221f] David Rodríguez 2020-06-21 22:48:05 UTC

bundler のテストで git checkout で特定のタグに変更する前に git remote update していたコマンド実行を削除しています。git clone をローカルからするようにした変更に追随したものかな。

[e2837a77be] Utkarsh Gupta 2020-06-24 16:50:19 UTC

bundle gem で生成する Gemfile に含める rubocop のバージョンの指定に "~> 0.80" を追加しています。

[16823d4a05] David Rodríguez 2020-06-24 17:52:14 UTC

bundler のテストで全体的に? コマンド実行の結果の終了ステータスをチェックしている assertion を削除しています。以前の変更でコマンド実行する helper メソッド内でエラーだったら例外発生するようにしたので冗長なので、とのこと。確かに。

[547ba6608e] David Rodríguez 2020-06-24 17:59:50 UTC

bundler のテストで ruby を起動するためのコマンド名を RbConfig.rubyで得るようにして冗長な記述を削除しています。

[2fafc08aa3] David Rodríguez 2020-06-24 17:53:16 UTC

bundler のテストでコマンド実行のヘルバーにエラー時に例外を投げないようにオプション指定して実行した後で終了ステータスをチェックしているところで exitstatus が nil じゃないかチェックしてましたが、これも不要になったとのことで後置 if を削除しています。

[40f73b3a00] Jean Boussier 2020-06-28 17:08:10 UTC

bundler の Bundler::Runtime#require で発生した LoadError 例外の対象のパスを取り出すのに例外メッセージから正規表現で切り出してたのを LoadError#path を使うようにしています。

[8c65f612f4] Utkarsh Gupta 2020-06-30 07:05:38 UTC

bundler の生成するファイルの rubocop 対策。

[281898ed6c] Utkarsh Gupta 2020-06-30 08:16:25 UTC

bundle gem で生成する Rakefile のターゲット名を %i{} リテラルを使って記述するようにしています。これも rubocop 対策らしい。

[95f90e3d2b] Utkarsh Gupta 2020-06-30 08:28:14 UTC

bundle gem で生成される Gemfile に空行を追加しています。これも rubocop 対策らしい。空行がないと辞書順にソートするように指示してくるらしい。

[ca133c0366] Utkarsh Gupta 2020-06-30 09:12:59 UTC

bundle gem で生成するファイルの rubocop 対策続き。

[4f9c673cab] David Rodríguez 2020-06-22 10:41:13 UTC

bundler の gem リリース時のタグ打ちの prefix を付けられるようにする機能追加をしているようです。

[c44c7019b5] Utkarsh Gupta 2020-06-30 16:38:54 UTC

bundler のテストで生成したファイルの rubocop でのチェックのテストを複数のテストケースに分割してテストライブラリのバリエーションなど生成するファイルのパターンをいくつか試すようにしています。

[fd709382b6] Utkarsh Gupta 2020-06-30 18:00:19 UTC

bundler のc44c7019b5b320d427b9cf560fdb7790fd5c775f で分離した bundle gem と rubocop のテストに :readline タグを追加しています。

[1f7195421e] David Rodríguez 2020-07-01 07:03:10 UTC

bundler の man ファイルの日付を 7月に更新しています。これ毎月やるのかな。普通更新した時に日付更新するんじゃないかな…。

[0c8d90b526] David Rodríguez 2020-07-01 13:09:44 UTC

bundler の Bundler::RubygemsIntegration#spec_from_gem で Gem::Package::FormatError を rescue して GemspecError を投げ直していたのをやめています。元のメッセージやバックトレースが失なわれてしまうので、CI のエラーの調査のためみたいです。

[5783d0dbfc] David Rodríguez 2020-07-01 18:22:40 UTC

bundler の変更をマージ。 ruby リポジトリのほうに加えられた変更を upstream のほうに取り込むためにやったもの? だとしたら差分はないはずか。

[79d06483a8] Nobuyoshi Nakada 2020-07-15 07:36:57 UTC

blocking Fiber のためのテストで UNIXSocket のペアが nonblock? に対応していなかった時に skip していたところで作った UNIXSocket を close していなかったので fd leak していたのを明示的に close するようにしています。