なるようになるブログ

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

rails commit log流し読み(2015/03/11)

2015/03/11分のコミットです。

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


Attempt to provide backwards compatible YAML deserialization

ActiveRecordの修正です。

ActiveRecord::LegacyYamlAdapter moduleを作成し、

ActiveRecordインスタンスYAMLに変換した時のフォーマットがRails 4.1 -> 4.2で変わってしまい、Rails 4.1でYAMLに変換したデータを正しくデシリアライズ出来るよう、変換処理を追加しています。


Add YAML compatibility for objects from Rails 4.2

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

Ruby 2.2から、Psychがシリアライズ出来るオブジェクトの種類が増えています。で、元々シリアライズ出来なかったオブジェクトがシリアライズ出来るようになったのですが、以前までPsynchが正しくシリアライズ出来なかったオブジェクトについて、Railsは独自に実装したinit_withencode_withメソッドで対応していたのですが、この処理がPsychと互換性が無い為、Rails 4.2で作成したYAMLのデータを正しくデシリアライズ出来るように、変換処理を追加しています。


Let strip_tags leave HTML escaping to Rails.

Gemfile及びactionview/lib/action_view/helpers/sanitize_helper.rbの修正です。

strip_tagsメソッドfull_sanitizer.sanitizeメソッドを呼び出す際に、encode_special_chars: falseオプションを設定し、特殊文字を指定した際に変換処理が行われないよう修正しています。

# before
helper.strip_tags("test\r\n\r\ntest") # => "test
\n
\ntest"

# after
helper.strip_tags("test\r\n\r\ntest") # => "test\r\n\r\ntest"

Use the released gem

Gemfileの修正です。

release済みのrails-html-sanitizerを使用するよう修正しています。


Fix json_test

activerecord/test/cases/adapters/postgresql/json_test.rbの修正です。

JSONのテストの後処理で、JsonDataType.reset_column_informationメソッドを呼び出すよう修正しています。

先日行われたarrayのテスト同様、テスト中にテーブルの情報を変更してしまっているテストがあり、その影響でコケてしまうテストがある為、リセット処理を行うよう対応しています。


fix typo in transaction argument. Closes #19265.

activerecord/lib/active_record/connection_adapters/postgresql/referential_integrity.rbの修正です。

disable_referential_integrityメソッド内で呼び出しているtransactionメソッドの引数名をタイポ(require_new -> requires_new)していたのを修正しています。


pg, disable_referential_integrity only catches AR errors.

activerecord/lib/active_record/connection_adapters/postgresql/referential_integrity.rbの修正です。

disable_referential_integrityメソッドActiveRecord::ActiveRecordErrorクラスのエラーのみrescueするよう修正しています。


[ci skip] Change to code element

rails guideのRails Routing from the Outside Inの修正です。

Translated Pathsの項のresourceをバッククォートで囲むよう修正しています。


Unnecessary usage of self in the guides

rails guideのActive Record Callbacksの修正です。

Callback Registrationの項のexampleから、不要なselfを削除しています。