なるようになるブログ

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

rails commit log流し読み(2021/04/16)

2021/04/16分のコミットです。

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

activerecord/CHANGELOG.md


Eager load ActiveRecord::StatementCache

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

ActiveRecord::StatementCache moduleをeager loadするよう修正しています。


Merge pull request #41718 from dzunk/enumerate_columns

activerecord/lib/active_record/core.rbactiverecord/lib/active_record/relation/query_methods.rbの修正です。

SELECTで実行するqueryを、ワイルドカード(*)からカラム名のリストに出来るよう修正しています。カラム名のリストにしたい場合、config.active_record.enumerate_columns_in_select_statementsにtrueを指定する必要があります。指定はアプリケーション全体、または、model毎に指定出来るようになっています。

class Book < ApplicationRecord
  self.enumerate_columns_in_select_statements = true
end
Book.limit(5)
# => SELECT id, author_id, name, format, status, language, etc FROM books LIMIT 5

ワイルドカードだと、カラムの追加/削除があった場合に、cached prepared statementsが無効化されPreparedStatementCacheExpiredがraiseされてしまい、それを避けれるようにする為。


Copy edit #41718

Active Recordのdocの修正です。先のconfig.active_record.enumerate_columns_in_select_statementsの対応で追加されたdocの説明を修正しています。


Make sure the config values is set back to the original value

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

テスト内で変更したenumerate_columns_in_select_statementsをテスト後に元の値に戻すよう修正しています。


Convert Template::Types.type_klass to instance ivar

actionview/lib/action_view/template/types.rbの修正です。

Template::Types.type_klassインスタンス変数に変更しています。


Merge pull request #41984 from jbampton/fix-case-of-css-and-javascript

docの修正です。javascript -> JavaScriptcss -> CSSにそれぞれ修正しています。