2022/08/02分のコミットです。
CHANGELOGにのったコミットは以下の通りです。
Merge pull request #45714 from simi/proper-verbose-cleanup
activerecord/lib/active_record/tasks/database_tasks.rb
の修正です。
target versionのチェック処理より先にMigration.verbose
の指定処理を行うよう修正しています。テストでverbose
の値が誤って設定されてしまうのを防ぐ為。
Allow templates to define which locals they accept.
actionview/lib/action_view/base.rb
、
actionview/lib/action_view/template.rb
の修正です。
templateで受け付けるlocals
変数を定義出来るよう修正しています。 定義は、locals
マジックコメントで定義出来るようになっています。
<%# locals: (message:) -%> <%= message %>
この定義でデフォルト値も指定出来るようになっています。
<%# locals: (message: "Hello, world!") -%> <%= message %>
Rename 'Explicit Localsto
Strict Locals`
Action Viewの修正です。先のlocals
変数の定義について、名称をExplicit Locals
からStrict Locals
に変更しています。
Fix Cache::NullStore
with local caching for repeated reads
activesupport/lib/active_support/cache/strategy/local_cache.rb
の修正です。
Cache::NullStore
+ local cachingで同じkeyに対するread処理を複数回行った場合に、エラーになってしまう事があったのを修正しています。
find_or_create_by: handle race condition by finding again
activerecord/lib/active_record/relation.rb
の修正です。
find_or_create_by(!)
メソッドの実装が、find_by || create(!)
だったのを、find_by || create_or_find_by(!)
に変更しています。unique constraintによりレコードの作成に失敗したようなケースで、レコードの取得が出来るようにする為。
actionview/lib/action_view/helpers/date_helper.rb
の修正です。
i18nで独自のmonth_names
を定義している場合に、date helperのrender時にcan't modify frozen Array
が発生してしまうバグがあったのを修正しています。
Accept empty list of attributes for insert_all
, insert_all!
and upsert_all
activerecord/lib/active_record/insert_all.rb
の修正です。
insert_all(!)
、upsert_all
に空のattributesのリストを指定出来るよう修正しています。空のリストが指定された場合、処理は行われず、ActiveRecord::Result.empty
を返るようになっています。
Fix flaky tests for RedisCacheStore
activesupport/test/cache/behaviors/cache_store_behavior.rb
、
activesupport/test/cache/stores/redis_cache_store_test.rb
の修正です。
テストの中でテストで使用しているcache storeのnamespace
をnil化していたのを、しないよう修正しています。パラレルでテストを実行した場合に、他のテストに影響が出てしまう可能性がある為。