2018/07/19分のコミットです。
CHANGELOGにのったコミットは以下の通りです。
Merge pull request #33358 from azbshiri/summer-time
activerecord/lib/active_record/connection_adapters/abstract/quoting.rbの修正です。
Quoting#quoted_timeでTime型の値を2000-01-01にノーマライズするよう修正しています。
TIME columnをSQLで検索する前にノーマライズしておかないと、Summer Timeが考慮された状態での値にならず、結果検索が正しく行われない為。
Merge pull request #31320 from gtqnchev/to_form_params-fix
actionview/lib/action_view/helpers/url_helper.rbの修正です。
button_toの引数にparamsを指定、かつ、paramsのkeyにHashとStringが両方含まれていた場合にArgumentErrorがraiseしてしまうバグがあったのを修正しています。
The has_and_belongs_to_many Associationの項に、 has-and-belongs-to-many associationを使用している場合にrecordを作成する方法についての説明を追加した、 Add example for has-and-belongs-to-many association. [ci skip]をrevertしています。
既に他の箇所で同様の説明がされている為。
Merge pull request #33363 from ahorek/transaction_bug
activerecord/lib/active_record/connection_adapters/abstract_mysql_adapter.rbの修正です。
AbstractMysqlAdapter#with_multi_statementsメソッドで、MULTI STATEMENTSを使用する為に、Mysql2::Client::MULTI_STATEMENTSをconfigに指定してreconnect!するようにしていたのを、set_server_optionが使用出来る場合、set_server_optionを使用してOPTION_MULTI_STATEMENTS_ONを指定するようにしています。reconnectが発生してしまうのを避ける為。
set_server_optionが使用出来るかどうかチェックしているのは、set_server_optionが使えるのがmysql2 gem 0.5.0以降だけの為。
参考:Expose the `mysql_set_server_option`
Revert "Short circuit the scoping delegation for relation.all"
SpawnMethods moduleにspawnのaliasとしてallを定義した、Short circuit the scoping delegation for `relation.all`をRevertいています。
現在のscopeがunscoped blockの影響を受けている場合に、allとspawnは同じ結果にならない為。
Clarify the ActiveStorage::Attachment#purge and #purge_later docs
activestorage/app/models/active_storage/attachment.rbのdocの修正です。
ActiveStorage::Attachment#purge、及び、ActiveStorage::Attachment#purge_laterメソッドのdocに、それぞれBlob#purge、Blob#purge_laterメソッドのdocへのリンクを追加しています。そっちのdocにより詳細な説明が記載されている為。
Link between ActiveStorage::Blob#purge, #purge_later, and #delete [ci skip]
activestorage/app/models/active_storage/blob.rbのdocの修正です。
ActiveStorage::Blob#purge、#purge_later、#deleteのdocに左記それぞれのメソッドへのリンクを追加しています。
Fix insert_fixtures_set to be restored original connection flags
activerecord/lib/active_record/connection_adapters/abstract_mysql_adapter.rb、
activerecord/lib/active_record/connection_adapters/mysql/database_statements.rbの修正です。
set_server_optionを使用するよう修正したMerge pull request #33363 from ahorek/transaction_bugの対応で、connection flagsがArrayだった場合にエラーになる、set_server_optionが使えない場合にconnection flagsが元の値に復元されない、というリグレッションが発生していたのを修正しています。
Avoid extra scoping in delegating to klass methods in the scope block
activerecord/lib/active_record/relation.rbの修正です。
scope blockの中でunscopedを実行した場合に、そのunscoped block内のクラスメソッドがunscopeされた状態にならないバグがあったのを修正しています。
Merge pull request #33391 from utilum/method_call_assertions_instead_of_mocha
Active Recordのテストの修正です。
mock処理に、mochaを使用していたのを、テスト用のヘルパーメソッド(assert_called_with、assert_called)を使用するよう修正しています。