なるようになるブログ

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

rails commit log流し読み(2018/10/04)

2018/10/04分のコミットです。

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


Fix the docs for Module#parents and related methods in guides [ci skip]

rails guideのActive Support Core Extensionsの修正です。

Extensions to Moduleの項の、Module#parentModule#parents、 及び Module#parent_nameメソッドをmodule_parentmodule_parentsmodule_parent_nameに修正しています。Rename Module#parent, Module#parents, and Module#parent_name to module_parent, module_parents, and module_parent_name.のフォローアップ対応。


Move test_fixtures and render_context to separate files

Active Recordの修正です。

activerecord/lib/active_record/fixtures.rbに定義されていたActiveRecord::FixtureSet::RenderContext classとActiveRecord::TestFixtures moduleをそれぞれ別のファイルに定義するよう修正しています。


Fix rubocop issue

actionview/lib/action_view/template.rbの修正です。

不要な空白を削除しています。


Merge pull request #34055 from Edouard-chin/ec-logger-fix

Active Supportの修正です。

custom loggerを作成する際に、ActiveSupport::LoggerSilenceActiveSupport::LoggerThreadSafeLevelをincludeすればsilencing機能が使える旨guideに説明があったのですが、実際は違っていました(必要な初期化処理が呼ばれない、メソッドのオーバーライドが正しく行われない等の問題があった)。

で、それを解決する為、ActiveSupport::Loggerで行っていたメソッドのオーバーライドをActiveSupport::LoggerThreadSafeLevel moduleで行うよう修正しています。また、ActiveSupport::LoggerSilenceActiveSupport::LoggerThreadSafeLevelをincludeするようにし、ActiveSupport::LoggerSilenceをincludeすればsilencing機能が使えるよう対応しています。


Don't use deprecated LoggerSilence

activesupport/test/silence_logger_test.rbの修正です。

deprecateになったトップレベルのLoggerSilenceを使っている箇所があったのを修正しています。


Merge pull request #33936 from schneems/schneems/cache-micro-optimizations

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

Store#merged_optionsメソッドでoptionsが空の場合、不要なmergeメソッドの呼び出しを行わないよう修正しています。


Remove unreachable database warning

activerecord/lib/active_record/railtie.rbの修正です。

Active Recordの初期化処理で、establish_connectionを呼び出す + ActiveRecord::NoDatabaseErrorをrescueして適切なメッセージを表示する、という処理があったのから、ActiveRecord::NoDatabaseErrorをrescueする処理を削除しています。

establish_connectionActiveRecord::NoDatabaseErrorをraiseする事が無い(establish_connectionは今はDBへの接続を行わない)為。


Escape table name so that it can be used in regular expression

activerecord/test/cases/relation_test.rbの修正です。

Relationのmergeに関するテストで、table名に対してRegexp.escapeを実行するよう修正しています。

SQL Server adapterでは、quoteしたtable名に[を使用しており(e.g. "[authors]")、正規表現のメタ文字をエスケープしないとテストが通らない為。