今日は Kernel#autoload で load しても定数が定義されなかった時の挙動の変更や bundler の更新などがありました。
[08759edea8] Jeremy Evans 2021-10-08 21:54:26 UTC
Kernel#autoload で定数名の参照時に autoload する設定により load したファイルで対象の定数が定義されない場合に autoload の設定をクリアするようにしています。従来も load したファイルが $LOADED_FEATURES に追加されるのでそこから削除しなければ再 load はされなかったようですが、仮に削除してももう autoload されないように定数名のエントリ自体を削除するみたいです。ふーむ、機能を実験しようとした時とかでファイルを書きかえながら試してる場合は autoload を実行しなおさないと再ロードされなくなるのでちょっと注意が必要そうですね。 [ruby-core:92403] [Bug #15790]
[b4afedb0dd] git 2021-10-08 21:54:40 UTC
version.h の日付更新
[06c3e80611] Jeremy Evans 2021-08-13 15:16:24 UTC
configure に --enable-install-static-library というオプションをつけた時に --disable-shared も一緒に指定されていたらエラーにするようにしています。 [ruby-core:104361] [Bug #18000]
[d03d122ba1] Masataka Pocke Kuwabara 2021-10-02 16:30:55 UTC
rubygems の Gem::Specification#missing_extensions? の条件分岐の順序をいれかえて最適化しているみたいです。
[70066196a0] David Rodríguez 2021-10-08 11:01:47 UTC
bundler のテストの typo 修正。
[b857a87653] David Rodríguez 2021-10-08 11:03:17 UTC
bundler のテストで発生させる例外? のメッセージの変更。よくわからないですがあんまり挙動やテスト内容には関係ない変更みたいです。
[5a34b639fc] David Rodríguez 2021-10-08 11:04:34 UTC
bundler のテストで git コマンドを実行するところで git add してから git commit してたのを commit に -a オプションを追加して 1コマンドで実施するようにしています。
[a5bae843ff] David Rodríguez 2021-10-08 11:05:31 UTC
bundler のテストで git コマンド実行してブランチを作成するところでも 1コマンドで実施するように変更しています。
[991a3aad05] David Rodríguez 2021-10-08 11:06:21 UTC
bundler のテストで 5a34b639fc8f51f2464f36e59f32eff8b3fd2e0f で変更した git commit コマンドを利用するところで :raise_on_error というオプションを渡していたのを削っています。ここのコマンドは予想される失敗がなくなったのでエラー時はテスト自体をエラーにするためみたいです。
[91f794b516] David Rodríguez 2021-10-08 11:07:07 UTC
bundler のテストで git コマンドを操作するためのクラス Spec::Builder::GitUpdater で :branch オプションに "master" を指定したら例外を発生させてたのをやめています。
[7e506716d2] OKURA Masafumi 2021-09-20 14:18:14 UTC
bundler の bundle gem コマンドで生成した gemspec ファイルのデフォルトの spec.required_ruby_version を 2.6.0 以降にするように変更しています。ただし実行している ruby 自体が古い場合はそれにあわて 2.3.0 までは古いのも指定するようにしています。そのほか rubocop や standard といった gem の最低バージョンの指定も更新しています。
[489c22b17f] Nobuyoshi Nakada 2021-10-09 05:22:18 UTC
tool/lib/core_assertions.rb の Test::Unit::CoreAssertions::AllFailures#for というメソッド(assert_all? で使うやつかな、たぶん)でブロックを yirld する時にメソッドの引数をブロックにも渡すようにしています。
[3932227d96] Nobuyoshi Nakada 2021-10-09 07:17:01 UTC
Test::Unit::CoreAssertions#message メソッドの定義を削除して Test::Unit::Assertions#message に同様の処理を追加しています。
[fc913ad21d] Nobuyoshi Nakada 2021-10-09 07:17:37 UTC
tool/lib/test/unit.rb でバックトレースからテスト用ライブラリのファイルパスを取り除く処理で core_assertions.rb も除外対象になるように追加しています。
[c423cc932e] Nobuyoshi Nakada 2021-10-09 08:44:01 UTC
テスト用ライブラリの Test::Unit::CoreAssertions#assert_nothing_raised の例外処理を複数の rescue 節に分けて書くようにリファクタリングしています。