なるようになるブログ

読書感想文かrailsについてかrubyについてか

rails commit log流し読み(2019/10/10)

2019/10/10分のコミットです。

CHANGELOGへの追加はありませんでした。


bump Zeitwerk to 2.2

Zeitwerkのバージョン指定を~> 2.2に修正しています。合わせて、rails guideのAutoloading and Reloading Constants (Zeitwerk Mode)のinflectorの設定方法についての説明を修正しています。Zeitwerk 2.2で inflectorの設定方法が変更になった(それ用のクラスが追加された)為。

参考: https://github.com/fxn/zeitwerk#custom-inflector


support for overrides in :zeitwerk mode inflectors

activesupport/lib/active_support/dependencies/zeitwerk_integration.rbの修正です。

zeitwerkのinflectorでglobalのinflectorの内容を上書き出来るよう修正しています。

# config/initializers/zeitwerk.rb
Rails.autoloaders.each do |autoloader|
  autoloader.inflector.inflect(
    "html_parser" => "HTMLParser",
    "ssl_error"   => "SSLError"
  )
end

上記のように、zeitwerkのautoload時にだけ使用されるinflectorを設定出来るようになっています。


Fix random CI failure due to non-deterministic sorting order

activerecord/test/cases/finder_test.rbactiverecord/test/cases/relations_test.rbの修正です。

assertionで値を比較する際に、値をid及びtitleで適切にsortしてからチェックするよう修正しています。 sortがないと結果が不定になる為。