なるようになるブログ

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

rails commit log流し読み(2025/12/04)

2025/12/04分のコミットです。

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

activerecord/CHANGELOG.md


Add block-level scoping to AR querying guide

rails guideのActive Record Query Interfaceの修正です。

block levelのscopingについての説明を追加しています。


Merge pull request #56267 from matthewd/intent-async

Active Recordの修正です。

async queryの実行がFutureResult classで行われていたのを、通常のqueryと同様にQueryIntentで実行されるよう修正しています。


Merge pull request #56159 from matthewd/missing-pg-decoders

Active Recordの修正です。

PostgreSQLでbytea及びmoney columsの値をmodelを経由せず直接取得した際も、適切な型(Encoding::BINARY、及び、BigDecimal)にdecodeした値を返すよう修正しています。

ActiveRecord::Base.connection.select_value("select '\\x48656c6c6f'::bytea").encoding #=> Encoding::BINARY
ActiveRecord::Base.connection.select_value("select '12.34'::money").class #=> BigDecimal

configで挙動を変更出来るようになっており、config.active_record.postgresql_adapter_decode_bytea、または、config.active_record.postgresql_adapter_decode_moneyにtrueに指定した場合、元の型(string)で結果を取得出来るようになっています。


Fix ActiveRecord::SoleRecordExceeded#record to return the relation

activerecord/lib/active_record/relation/finder_methods.rbの修正です。

Rails 8.1でActiveRecord::SoleRecordExceeded#recordで取得出来る値がrelationからmodelに誤って変更されてしまっていたのを修正しています。