2015/01/25分のコミットです。
CHANGELOGへの追加はありませんでした。
Don't duplicate Relation::VALUE_METHODS
in Relation::Merger
activerecord/lib/active_record/relation/merger.rb
の修正です。
Relation::Merger
でVALUE_METHODS
を定義する際、元々ある定数を使用するよう修正しています。
- NORMAL_VALUES = Relation::SINGLE_VALUE_METHODS + - Relation::MULTI_VALUE_METHODS - + NORMAL_VALUES = Relation::VALUE_METHODS -
MULTI_VALUE_METHODS + SINGLE_VALUE_METHODS
でVALUE_METHODS
が定義されていたので、VALUE_METHODS
を使用するようにしたようです。
Don't rely on relation mutability when building through associations
activerecord/lib/active_record/associations/through_association.rb
、
activerecord/lib/active_record/relation/predicate_builder.rb
の修正です。
through associationsを生成する際、scopeの情報を設定する際、merge!
でレシーバー自身を更新していたのを、変数に代入するよう修正しています。
また、bind処理を行う際、ドット区切りの文字列のHashへの変換(ex: { "posts.id" => 1 }
to { "posts" => { "id" => 1 } }
)を先に行ってから先に処理を行うよう修正しています。
activerecord/lib/active_record/relation/query_methods.rb
の修正です。
where_unscoping
メソッドでArel::Nodes
の削除を行う際、reject!
でレシーバー自身を更新していたのを、結果を別変数に代入するよう修正しています。
コミットログ見る限り、今後リファクタリングする上で、そちらの方が都合が良いからとの事です。
Expand the number of types which can use prepared statements
activerecord/lib/active_record/relation/predicate_builder.rb
、
activerecord/lib/active_record/relation/query_methods.rb
、
activerecord/lib/active_record/table_metadata.rb
の修正です。
create_binds_for_hash
メソッド内のprepared statements生成処理で、値がString, Integer, ActiveRecord::StatementCache::Substituteの場合に分岐していたのを、
分岐処理をなくし、その他のケースでまるめるよう修正しています。
リファクタリングの一環だと思うのですが、良く解らない…。
Add missing options to datetime_select
[ci skip]
actionview/lib/action_view/helpers/date_helper.rb
のdocの修正です。
time_ago_in_words
メソッドのdocにtime_separator
、datetime_separator
オプションについての説明が不足していたので、追加しています。
Add tip for running binstubs on Windows [ci skip]
rails guideのGetting Started with Rails
の修正です。
Windowsでbinstubを使用する際のTIPを追加しています。
remove trailing whitespace. [ci skip]
rails guideのGetting Started with Rails
の修正です。
先で追加されたbinstubの説明の終端に不要な空白があったので、削除しています。
fix task description for tmp:create
railties/lib/rails/tasks/tmp.rake
の修正です。
tmp:create
タスクの説明にsessions
ディレクトリを作成する、と記載されていたのですが、現状sessions
ディレクトリは作成されないよう修正されているので、説明も現状に合わせて修正しています。