なるようになるブログ

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

rails commit log流し読み(2017/12/13)

2017/12/13分のコミットです。

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

activerecord/CHANGELOG.md


Revert "only install ffmpeg and mupdf on activestorage builds"

.travis.ymlの修正です。

Active Storageのテストのbuildでのみffmpegmupdfをインストールするよう修正した、only install ffmpeg and mupdf on activestorage buildsをrevertしています。

何故か上記コミット以降、PostgreSQL + Ruby 2.4(またはruby-head)の組み合わせのテストがmasterでコケるようになってしまった為。これ何だったんでしょうねえ。


Merge pull request #31403 from Edouard-chin/fix-quoted-columnname

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

fromメソッド + ignored_columnsを指定した場合に、カラム名がクォートされないバグがあったのを修正しています。


Fix doc typo [ci skip]

activemodel/lib/active_model/type.rbのdocの修正です。

ActiveModel::Type.registerメソッドのdocのグラマーの修正を行っています。


Merge pull request #31405 from bogdanvlviv/fix-conflicts-counter_cache-with-touch-by-optimistic_locking

activerecord/lib/active_record/associations/belongs_to_association.rbactiverecord/lib/active_record/associations/builder/belongs_to.rbの修正です。

counter_cache + touch: trueとoptimistic lockingを同時に使用していた場合に、更新処理が競合してエラーになってしまうバグがあったのを修正しています。


Make sanitize_sql_ methods public

Active Recordの修正です。

sanitize_sql_xxxメソッド(sanitize_sqlsanitize_sql_array等)の可視性をpublicに変更しています。

元々はprivateだったのですが、privateだとクラスの外からよぶのにsendを使う必要があり、毎回sendを書くのが手間なのでpublicにしています。


Convert protected_environments to an array of strings

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

`config.active_record.protected_environmentsに指定するArrayにSymbolで値を指定できなかった(Stringしか指定出来なかった)のを、Symbolで値を指定出来るよう修正しています。


Update 'Configuring Rails Applications' guide

rails guideのConfiguring Rails Applicationsの修正です。

config.active_record.internal_metadata_table_name、及び、config.active_record.protected_environmentsについての説明を記載しています。


Optimizing information_schema query for foreign_keys https://github.com/rails/rails/commit/3499d320d2e616a044b74db86fe4126de783174a

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

MySQLで FOREIGN KEYを取得する際に、CONSTRAINT_SCHEMA keyを指定するよう修正しています。

同じDBで複数schemaを使用している場合に高速になるため。


Fix inheritance object creation from relation

activerecord/lib/active_record/inheritance.rbactiverecord/lib/active_record/relation.rbの修正です。

relationからinheritance object(STIを使用しているクラス)を生成する際に、正しくサブクラスでインスタンスが生成されないバグがあったのを修正しています。


Merge pull request #31391 from 5t111111/fix-active_storage-installation-failure-in-engine

activestorage/lib/tasks/activestorage.rakeの修正です。

Rails engine上で、active_storage:install taskが動作しないバグがあったのを修正しています


Exclude ActiveStorage::Filename{#parameters,::Parameters} from API docs [ci skip]

activestorage/app/models/active_storage/filename.rbのdocの修正です。

ActiveStorage::Filename#parametersメソッド、及び、ActiveStorage::Filename::Parametersクラスに:nodoc:を指定しています。