2020/01/24分のコミットです。
CHANGELOGにのったコミットは以下の通りです。
- Allow schema cache path to be defined in the database configuration file.
- Store advisory locks on their own named connection.
Allow schema cache path to be defined in the config file
Active Recordの修正です。
schema cache pathを設定ファイルで指定出来るよう修正しています。keyはschema_cache_path
。
例。
development: adapter: postgresql database: blog_development pool: 5 schema_cache_path: tmp/schema/main.yml
Merge pull request #38250 from vikasvr/skip_keep_fix
railties/lib/rails/generators/rails/app/app_generator.rb
の修正です。
--skip-keeps
オプションをrails new
に指定した場合も、app/assets/images
ディレクトリは生成するよう修正しています。
デフォルトで生成されるconfig/manifest.js
でimages
ディレクトリを参照しており、ディレクトリが無いと参照時にエラーにになってしまう為。
Use path instead of fullpath on validating authenticity token
actionpack/lib/action_controller/metal/request_forgery_protection.rb
の修正です。
authenticity tokenのvalidate時にrequestのfullpath
を使用していたのを、path
を使用するよう修正してます。
Do not re-parse PATH_INFO when validating authenticity tokenでquery parametersの再パースをしないよう対応したのですが、その際の修正漏れ対応(fullpath
はquery parameters付きの値が返ってくる為、fullpath
を使わないようにする必要があったのが対応が漏れていた)
Merge pull request #38247 from rosa/save-context-with-response
Active Recordの修正です。
database selectorのcontextでrequestだけでしか更新出来なかったのを、responseも更新出来るよう修正しています。
primary / secondaryどちらに処理をおこなかったをresponseで判断出来るよにしたい、というユースケースがあった為、との事です。
Move advisory lock to it's own connection
Active Recordの修正です。
advisory lockのconnection名をadvisory lock用の独自の名前に修正しています。
元々はmigration開始時にActiveRecord::Base.connection
を使用していたのですが、アプリが複数DBを使用して、かつ、migration内でmodelを使用して何か処理を行った場合、そこで違うconnectionが接続されてしまう&advisory lockがreleaseされてしまう、という問題が発生していました。
で、そのための(一時)対応として、独自のconnection名を使用して、modelのconnectioが使用された場合もlockがreleaseされないよう対応しています。
Fix Active Record changelog [ci skip]
activerecord/CHANGELOG.md
の修正です。
CHANGELOG内の定数名のタイポ、フォーマットの修正を行っています。
Update Migration number from 5.0 to current 6.0 [ci skip]
rails guideの修正です。
各guide内の、マイグレーションファイルのexampleコードのバージョンを6.0
に修正しています。
Document the return value of update_all [ci skip]
activerecord/lib/active_record/relation.rb
のdocの修正です。
update_all
メソッドのdocに戻り値についての説明を追加しています。
Merge pull request #37488 from dylanahsmith/model-adapter-type-lookup
activerecord/lib/active_record/attributes.rb
、
activerecord/lib/active_record/type.rb
の修正です。
attribute type lookup処理にmodelのconnectionのadapter名を使うよう修正しています。
元々はActiveRecord::Base.connection
が使われていたのですが、modelとActiveRecord::Base
のconnectionが違う場合に、正しい値が取得出来ない為。