なるようになるブログ

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

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

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

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


Refactor options for middleware

activerecord/lib/active_record/middleware/database_selector.rbactiverecord/lib/active_record/middleware/database_selector/resolver.rbの修正です。

Middleware::DatabaseSelectorMiddleware::DatabaseSelector::Resolver classのコンストラクタの引数にoptionsを追加しています。

現状、オプションはdelayに関するものだけなのですが、今後オプションを追加する予定があるため、引数に指定出来るようにしたとの事です。


ActiveSupport typo fixes.

Active Supportの修正です。

テストメソッド名、docのタイポを修正しています。


Merge pull request #35082 from Shopify/eagerly-materialize-test-transactions

activerecord/lib/active_record/connection_adapters/abstract/transaction.rbactiverecord/lib/active_record/test_fixtures.rbの修正です。

Merge pull request #32647 from eugeneius/lazy_transactionsで、トランザクションの開始を実際にqueryが実行されるまで遅延するようにしなったのですが、fixtureのトランザクションについては遅延しないよう修正しています。

fixtureのトランザクションの開始を遅延させてしますと、テストの実行に影響を与える可能性がある(テスト実行時にBEINGが実行されてしまう可能性がある)ため。


Merge pull request #35133 from jhawthorn/faster_notifications

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

Notifications::Fanoutで、patternがStringとそれ以外の場合で保持する変数を別にして、patternを変更した場合に、Stringの場合は高速にlisterの削除処理を行えるようリファクタリングしています。


Merge pull request #35119 from rails/file-template

Action Viewの修正です。

templateに関する情報を保持する為のActionView::FileTemplate classを追加しています。

元々、templateのsourceはtemplateをcompileした際にnil化されてしまい(virtual pathを指定されている場合)、再度sourceを使用したい場合templateをreadし直す必要があり、sourceは変化する可能性がある値として扱われてしました。

追加されたActionView::FileTemplateではsourceを保持するようにして、templateのsourceをimmutableなデータとして扱えるようにしています。 また、この対応により、template sourceの引数にview objectだけではなく、sourceも指定する必要があるようになっています。


Merge pull request #35136 from andyw8/routes-syntax

actionpack/lib/action_dispatch/routing.rbのdoc、及び、rails guideのRails Routing from the Outside Inの修正です。

resourceful routeを指定する方法のexampleで、Hashを使用した方法(e.g. get 'post/:id' => 'posts#show')ではなく、toオプションを使用した方法(e.g. get 'post/:id', to: 'posts#show')を使用するよう修正しています。後者の方法の方が良いのでは、という意見があり修正されています。