なるようになるブログ

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

rails commit log流し読み(2016/05/12)

2016/05/12分のコミットです。

CHANGELOGへの追加はありませんでした。


Define ActiveRecord::Attribute::Null#type_cast

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

ActiveRecord::Attribute::Nulltype_castメソッドを追加しています。

単純にメソッドの定義漏れで、type_castメソッドが無いとDBに存在しないattributesでdefaultを指定した場合にエラーになってしまう為、メソッドを追加しています。


remove_connection should not remove parent connection

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

remove_connectionメソッドでnameを取得するのにconnection_specification_nameメソッドをしようしていたのを、インスタンス変数(@connection_specification_name)を直接呼び出すよう修正しています。

connection_specification_nameメソッドを呼び出してしまうと、子クラスの場合、親のconnection_specification_nameを呼び出してしまい、結果親のconnectionをresetしてしまう可能性がある為。


Improve documentation and tests for raw_host_with_port and host_with_port

actionpack/lib/action_dispatch/http/url.rbactionpack/test/dispatch/request_test.rbの修正です。

raw_host_with_portメソッドのdocにportを指定した場合のexampleの追加、及び、raw_host_with_portのテストにportを指定した場合のテストを追加しています。


Publish Action Cable to NPM when we release.

actioncable/app/assets/javascripts/action_cable.coffee.erbactioncable/package.jsontasks/release.rbの修正です。

gemをリリースする際に、Action CableをNPMにリリースするよう対応しています。


Fix false positive mutation detection when JSON is used with serialize

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

JSON + serializeを使用した場合に、値の変更が正しく行えない(値を変更しなくても、変更したと判定されてしまう)バグがあったのを修正しています。

Properly serialize all JSON primitives in the AR JSON type · rails/rails@efaa6e4でArray / Hash以外の型もJSONで扱うようになった為、値の変更のチェックの際はserializeをする必要は無くなったのですが、元のserialize処理がそのまま残ってしまっていたのが原因のようです。