読者です 読者をやめる 読者になる 読者になる

なるようになるブログ

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

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

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

CHANGELOGにのったコミットは以下の通りです。

activerecord/CHANGELOG.md


Merge pull request #27042 from kirs/yaml-schema-cache

Active Recordの修正です。

schema cache formatをMarshalからYAMLに変更しています。

元々はActiveRecord::ConnectionAdapters::SchemaCacheクラスのインスタンスをまるまるMarshalでdumpしていたのですが、それだとインターナルなcolumn クラスの情報が含まれる、かつ、それらのクラスがリファクタリングにより無くなってしまった場合に、そのdumpが新しいRailsで読めない、という問題があった為、MarshalからYAMLに変更し、必要な情報だけdumpするようにしたとの事です。

具体的には、Rails 4.2で作成したschemaがRails 5.0で読めない(ActiveRecord::ConnectionAdapters::AbstractMysqlAdapter::Columnが無くなてしまってエラーになる)という問題が起きていたとの事です。


Add CHANGELOG entry to #27042

activerecord/CHANGELOG.mdの修正です。

先のschema cache formatの対応についてCHANGELOGにエントリーを追加しています。


form_with/fields: Don't output ids by default

actionview/lib/action_view/helpers/form_helper.rbの修正です。

form_with / fieldsメソッドで、デフォルトでid属性は出力しないよう修正しています。

頻繁に重複したIDを生成してしまい、そんなに使われる情報では無かった為、デフォルトでは出力しないようにしたようです。


fix new warning in ruby 2.4

activerecord/test/cases/adapters/mysql2/reserved_word_test.rbactivesupport/test/caching_test.rbの修正です。

メソッド名の引数の括弧の間にスペースがあったのを削除しています。

-    def create_tables_directly (tables, connection = @connection)
+    def create_tables_directly(tables, connection = @connection)

Ruby 2.4からスペースがあるとwarningが出るようになった為。


use appropriate type for rc option

railties/lib/rails/commands/plugin/plugin_command.rbの修正です。

文字列を扱う為のオプションのtypeがbooleanになっていたのをstringに修正しています。


Missing require "active_support/testing/constant_lookup"

actionpack/lib/action_controller/test_case.rbの修正です。

不足していたactive_support/testing/constant_lookupのrequireを追加しています。


Remove unused method namespaced_file_path

railties/lib/rails/generators/named_base.rbの修正です。

使用していないnamespaced_file_pathメソッドを削除しています。