なるようになるブログ

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

rails commit log流し読み(2023/07/06)

2023/07/06分のコミットです。

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

activerecord/CHANGELOG.md


Merge pull request #48606 from gmcgibbon/stale_state_cpk

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

composite primary key + through associationで、stale stateの検出処理が動作するよう修正しています。


Make has_many through singular associations build CPK records

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

composite primary key + has_many throughを指定している場合に、singular association経由のbuild処理が動作するよう修正しています。


Fix flaky time test

activerecord/test/cases/yaml_serialization_test.rbの修正です。

YAML serializationのテストの後処理でreset_column_informationを呼び出すよう修正しています。

テストの中でtimezoneを変更しており、そのままにすると変更の影響で他のテストがコケてしまう可能性がある為。


Merge pull request #48673 from jonathanhefner/cache-anticipate-replaceable-compressor

Active Supportの修正です。

cache storeのcompressorをオプションで指定出来るようにする対応を、Support replacing cache compressorで行っており、その対応を行えるようにする為のリファクタリングを行っています。


Fix de-duplication of unsaved records for ActiveRecord::Associations::CollectionProxy#<<

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

ActiveRecord::Associations::CollectionProxy#<<経由で保存していないレコードを追加した場合、同じレコードが既に存在する場合にも追加処理が行われてしまうバグがあったのを修正しています。


Make Active Support Cache treat deserialization errors like cache misses

Active Supportの修正です。

Active Support Cacheでcacheのdeserialization errorをcache misseとして扱うよう修正しています。想定外のオブジェクトをserializeしてしまい、deserializeでエラーになってしまったような場合に、500エラーが返ってしまうのを防ぐため。


Remove unused RedisCacheStore#redis_options

activesupport/lib/active_support/cache/redis_cache_store.rbの修正です。

使用していないRedisCacheStore#redis_optionsを削除しています。


Merge pull request #48674 from gmcgibbon/hmt_singular_fix

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

has_one through + inverse_ofオプションが指定されている場合に、singular association経由のbuild処理が正しく動作していなかったのを修正しています。


Merge pull request #48662 from skipkayhil/hm-fix-memcache-6-1-deprecation

activesupport/lib/active_support/cache/mem_cache_store.rbの修正です。

config.active_support.cache_format_version6.1を指定している場合に出力するdeprecateメッセージが、MemCacheStoreを使用している場合に出力されていなかったのを修正しています。