2020/08/17分のコミットです。
CHANGELOGにのったコミットは以下の通りです。
Fix eager loading that non-select columns will be loaded
activerecord/lib/active_record/associations/join_dependency.rb
、
activerecord/lib/active_record/associations/join_dependency/join_part.rb
の修正です。
select
+ eager loadした場合に、select
で指定して以外のカラムも全てロードされていたのを、select
単体で指定した時と同様に、select
で指定したカラムのみロードするよう修正しています。
post = Post.select("UPPER(title) AS title").first post.title # => "WELCOME TO THE WEBLOG" post.body # => ActiveModel::MissingAttributeError # Rails 6.0 (ignore the `select` values) post = Post.select("UPPER(title) AS title").eager_load(:comments).first post.title # => "Welcome to the weblog" post.body # => "Such a lovely day" # Rails 6.1 (respect the `select` values) post = Post.select("UPPER(title) AS title").eager_load(:comments).first post.title # => "WELCOME TO THE WEBLOG" post.body # => ActiveModel::MissingAttributeError
Merge pull request #40056 from kamipo/fix_preloader_associate_by_default
Active Recordの修正です。
preloadにscopeを指定した場合にも、associationの関連付けを行うよう修正しています。
Merge pull request #39939 from Shopify/link-preload-headers
actionview/lib/action_view/helpers/asset_tag_helper.rb
の修正です。
assetsのpreloadを行う際に、Linkヘッダーに対象のstylesheetとscriptを自動で設定するよう修正しています。Linkヘッダーに情報を入れることで、HTML本文の解析より前にpreloadが出来るようになる為。
rails guideのRails Routing from the Outside In
の修正です。
constraintsにblockを指定した場合のexampleを追加しています。