2017/09/14分のコミットです。
CHANGELOGへの追加はありませんでした。
Update Getting Started with Rails [ci skip]
rails guideのGetting Started with Rails
の修正です。
Creating the Blog Application
の項にあるRailsがデフォルトで生成するファイルの一覧に、package.json
と.ruby-version
を追加しています。
[ci skip] Prefer credentials to secrets in docs.
各docの修正です。
secrets
について言及している箇所を、まとめてcredentials
について言及するよう修正しています。
Make in_batches
queries to preparable
activerecord/lib/active_record/relation/batches.rb
の修正です。
in_batches
メソッドが生成queryでプリペアドステートメントを使用するよう修正しています。
コミットより。
Before:
SELECT "posts".* FROM "posts" ORDER BY "posts"."id" ASC LIMIT ? [["LIMIT", 2]] SELECT "posts".* FROM "posts" WHERE "posts"."id" > 2 ORDER BY "posts"."id" ASC LIMIT ? [["LIMIT", 2]] SELECT "posts".* FROM "posts" WHERE "posts"."id" > 4 ORDER BY "posts"."id" ASC LIMIT ? [["LIMIT", 2]] SELECT "posts".* FROM "posts" WHERE "posts"."id" > 6 ORDER BY "posts"."id" ASC LIMIT ? [["LIMIT", 2]] SELECT "posts".* FROM "posts" WHERE "posts"."id" > 8 ORDER BY "posts"."id" ASC LIMIT ? [["LIMIT", 2]] SELECT "posts".* FROM "posts" WHERE "posts"."id" > 10 ORDER BY "posts"."id" ASC LIMIT ? [["LIMIT", 2]]
After:
SELECT "posts".* FROM "posts" ORDER BY "posts"."id" ASC LIMIT ? [["LIMIT", 2]] SELECT "posts".* FROM "posts" WHERE "posts"."id" > ? ORDER BY "posts"."id" ASC LIMIT ? [["id", 2], ["LIMIT", 2]] SELECT "posts".* FROM "posts" WHERE "posts"."id" > ? ORDER BY "posts"."id" ASC LIMIT ? [["id", 4], ["LIMIT", 2]] SELECT "posts".* FROM "posts" WHERE "posts"."id" > ? ORDER BY "posts"."id" ASC LIMIT ? [["id", 6], ["LIMIT", 2]] SELECT "posts".* FROM "posts" WHERE "posts"."id" > ? ORDER BY "posts"."id" ASC LIMIT ? [["id", 8], ["LIMIT", 2]] SELECT "posts".* FROM "posts" WHERE "posts"."id" > ? ORDER BY "posts"."id" ASC LIMIT ? [["id", 10], ["LIMIT", 2]]
quoted_table_name
doesn’t respect table alias
activerecord/lib/active_record/relation/batches.rb
の修正です。
ActiveRecord::Batches#batch_order
メソッドでprimary keyを取得するのにarel_attribute
を使用するよう修正しています。
def batch_order - "#{quoted_table_name}.#{quoted_primary_key} ASC" + arel_attribute(primary_key).asc end
quoted_table_name
メソッドだとtable aliasが正しく扱えない為。
Address random test_or_with_bind_params
failures
activerecord/test/cases/relation/or_test.rb
の修正です。
test_or_with_bind_params
でassertionを実行する際に、idでsortした値を使用するよう修正しています。sortした値を使用しないと取得出来る値が不定になり、seedによってはテストが失敗してしまう為。
Update Active Job Basics [ci skip]
rails guideのActive Job Basics
の修正です。
Starting the Backend
の一覧にSneakersを追加しています。
Don’t use quoted_table_name
in limited_ids_for
activerecord/lib/active_record/connection_adapters/abstract_adapter.rb
、
activerecord/lib/active_record/relation/finder_methods.rb
の修正です。
ActiveRecord::FinderMethods#quoted_table_name
メソッドでprimary keyを取得するのにquoted_table_name
メソッドを使用していたのを、arel_attribute
を使用するよう修正しています。 quoted_table_name
メソッドだとtable aliasが正しく扱えない為。
Don’t use collection.table_name
in collection_cache_key
activerecord/lib/active_record/collection_cache_key.rb
の修正です。
ActiveRecord::CollectionCacheKey#collection_cache_key
メソッドでtimestampのcolumnを取得するのにcollection.table_name
を使用していたのを、arel_attribute
を使用するよう修正しています。 quoted_table_name
メソッドだとtable aliasが正しく扱えない為。
Remove unused explicit delegation to klass
in relation
activerecord/lib/active_record/relation.rb
、
activerecord/lib/active_record/relation/delegation.rb
の修正です。
klass
にdelegateするメソッドの一覧に実際は使用していないメソッドが含まれていたのを削除しています。
Avoid making HTTP requests to generate signed URLs for GCS objects
activestorage/lib/active_storage/service/gcs_service.rb
の修正です。
File
objectを生成する際に、skip_lookup
オプションを指定するよう修正しています。object生成時点でHTTP requestsが発生してしまうのを避ける為、との事です。