なるようになるブログ

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

rails commit log流し読み(2015/10/28)

2015/10/28分のコミットです。

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

activerecord/CHANGELOG.md


fix typo in db:purge description [ci skip]

activerecord/lib/active_record/railties/databases.rakeのdocの修正です。

db:purgeタスクのdescriptionの一部がdb:dropタスクの説明になってしまっていたのを修正しています。


Merge pull request #18383 from scambra/habtm-with-where-includes-16032-for-master

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

has_and_belongs_to_many associationをpreloadした場合に、associationsのsizeが正しく取得出来ないバグがあったのを修正しています。

Project.first.salaried_developers.size # => 3

# before
Project.includes(:salaried_developers).first.salaried_developers.size # => 1

# after
Project.includes(:salaried_developers).first.salaried_developers.size # => 3

Fix Typo in EagerLoadPolymorphicError [ci skip]

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

polymorphicpoloymorphicにタイポしていたのを修正しています。


Remove dead code

actionpack/lib/action_dispatch/http/response.rbの修正です。

render nothing: trueをした際に、空の文字列を返すよう対応していた際のコードが残ってしまっており、そのコードを削除しています。


Write the cookie jar it was not committed in TestCase

actionpack/lib/action_controller/test_case.rbの修正です。

cookie jarに書き込む際には、responseがコミット済みかどうかチェックしていたのを、cookie jarがコミット済みかどうかをチェックするよう修正しています。

-          unless @response.committed?
+          unless @request.cookie_jar.committed?

cookie middlewareでも同じ形でチェックを行っており(https://github.com/rails/rails/blob/80c6b901d4d87cee610ab0a438ff6e3c6bf118d1/actionpack/lib/action_dispatch/middleware/cookies.rb#L599-L604)、テストクラスそれに合わせた形で修正したとの事です。


specify deprecated waring, follow the standard conventions

actionpack/lib/abstract_controller/callbacks.rbactionpack/lib/action_dispatch/testing/integration.rbの修正です。

skip_filter, skip_action_callbackxxx_via_redirect等deprecatedになっているメソッドを使用した場合に表示させるメッセージで、the next version of Railsで削除される、という風に表示されていたのを、Rails 5.1とバージョンを明記するよう修正しています。

-        ActiveSupport::Deprecation.warn('`skip_action_callback` is deprecated and will be removed in the next major version of Rails. Please use skip_before_action, skip_after_action or skip_around_action instead.')
+        ActiveSupport::Deprecation.warn('`skip_action_callback` is deprecated and will be removed in Rails 5.1. Please use skip_before_action, skip_after_action or skip_around_action instead.')

[ci skip] Add :binds to a list of paramaters of sql.active_record

rails guideのActive Support Instrumentationの修正です。

sql.active_record hookが出力するパラメータの一覧にbindsが漏れていたのを追加しています。