2016/07/26分のコミットです。
CHANGELOGにのったコミットは以下の通りです。
Correct the behavior of virtual attributes on models loaded from the db
Active Recordの修正です。
virtual attributesを使用しているmodelでDBから値を取得した際に、ActiveModel::MissingAttributeErrorがraiseされてしまうバグがあったのを修正しています。
virtual attributesはDBには存在しないので、DBから値を取得した際は参照出来ないのですが、DBから値を取得した後の初期化処理で参照しようとしてしまいエラーになっていました。
attribute API内部でdefaultの値を受け渡すようにし、virtual attributeはそちらを使用してい初期化処理を行えるようにし対応を行っています。
Whoops, forgot the changelog entry for the previous commit
先の対応でCHANGELOGにエントリーを追加するのが漏れていたので、CHANGELOGにエントリーを追加しています。
Also yield in parameters for a nil content_mime_type
actionpack/lib/action_dispatch/http/parameters.rbの修正です。
ActionDispatch::Http::Parameters#parse_formatted_parametersメソッドで、content mime typeがnilの場合、early returnするよう修正しています。
Rails 5でmime typeの扱い方が変わったのですが、その際、mime typeがnilだった場合の処理が抜けてしまい、mime typeがnilだった場合に、NoMethodError(undefined method `symbol' for nil:NilClass)で処理が落ちてしまう、というバグがありました。その為、mime typeがnilかどうかのチェックを追加し、処理が正しく行われるようにしています。
因みに、Content-Typeに空の値を指定するのは、HTTP的にはOKらしいです(HTTP/1.1: Entity)。知らなかった。
Extract type_casted_binds method
Active Recordの修正です。
各adapterそれぞれで行っていたbindsのtype cast処理を、メソッド(type_casted_binds)に切り出しています。
Make force_signal37_to_load_all_clients_of_firm to private
activerecord/test/cases/associations/has_many_associations_test.rbの修正です。
テストでのみ使用するヘルパーメソッドの可視性をprivateに変更しています。
Merge pull request #25936 from prathamesh-sonpatki/bump-arel
Gemfile.lockの修正です。
arelのバージョンを7.0.0 -> 7.1.0に更新しています。7.1.0にはRuby 2.4のinteger統合の対応が入っており、railsのテストをRuby 2.4で通るようにする為にバージョンを上げたとの事です。
Merge pull request #25929 from kamipo/load_target_is_public_method
Active Recordの修正です。
publicメソッドであるActiveRecord::Associations::CollectionProxy#load_targetを呼び出すのにsendを使用している箇所があったのを、sendを使用せず直接メソッドを呼び出すよう修正しています。