なるようになるブログ

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

rails commit log流し読み(2019/06/14)

2019/06/14分のコミットです。

CHANGELOGにのったコミットは以下の通りです。

actionview/CHANGELOG.md

activerecord/CHANGELOG.md


Merge pull request #36388 from joelhawksley/actionview-component

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

RenderingHelper#renderメソッドにrender処理を行う任意のオブジェクトを指定出来るよう修正しています。オブジェクトではrender_inメソッドでrender処理を定義する必要があります。

最初のPRではActionView::Componentというview componentを生成する為の仕組みまで導入する想定だったようなのですが、色々議論があった結果そこまではやらず、renderメソッドに任意のオブジェクトを指定出来るようにする、にとどまっています。

renderに指定するオブジェクトの具体的な実装については、テスト参照。


Merge pull request #36466 from wbnns/update-missing-create-action-screenshot

rails guideのGetting Started with Railsの修正です。

The first formの項にある、formの送信先に存在しないパスを指定した場合の画像を最新の内容に更新しています。


Ensure non-mouse/programmatic clicks work with data-remote

actionview/app/assets/javascripts/rails-ujs/features/remote.coffeeの修正です。

Rails.preventInsignificantClickでprimary mouse keysによるクリックかどうかをチェックする際に、event.buttonが定義されているかどうかをチェックするよう修正しています。

JSによる処理の場合、event.buttonが定義されていない為。


Make ActiveRecord ConnectionPool.connections thread-safe. (#36473)

activerecord/lib/active_record/connection_adapters/abstract/connection_pool.rbの修正です。

他のconnection関連の処理同様に、ConnectionPool.connectionsの取得処理がスレッドセーフになるよう修正しています。


[ci skip] Use default path in button_to documentation

actionview/lib/action_view/helpers/url_helper.rbのdocの修正です。

button_toメソッドのdoc内のexampleコードで指定するパスを、routesでresourcesを使用した場合に生成されるパスに修正しています。scaffoldで生成した場合に使用されるパスであり、そちらの方がわかりやすいだろうとの理由で。


Allocation on demand in transactions

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

transactionで使用しない(かもしれない)オブジェクトの生成も行っていたのを、必要になったタイミングでオブジェクトの生成を行うようにし、不要なオブジェクトの生成は行わないよう修正しています。


[ci skip] Update docs as remove_column can be reversed

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

Migrationクラスのドキュメントで、remove_columnリバーシブルなメソッドではない旨説明が記載されていたのを修正しています。現在remove_columnリバーシブルなメソッドの為。


Fix rubocop violations

rubocopの設定に違反している箇所があったのをまとめて修正しています。