なるようになるブログ

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

rails commit log流し読み(2018/11/29)

2018/11/29分のコミットです。

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

activerecord/CHANGELOG.md


Merge pull request #34557 from sergioisidoro/sergio-patch-load-error

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

ConnectionSpecification::Resolver#specメソッドで、指定されたadapterがrequire出来なかった場合にLoadErrorをrescueして適切なエラーメッセージ(adapter名が誤っている or gemの指定が不足している等々)を出すようになっているのですが、その際にraiseするrescueしたclassを使用していたのを、LoadErrorを使用するよう修正しています。

- raise e.class, "Could not load the '#{spec[:adapter]}' Active Record adapter. Ensure that the adapter is spelled correctly in config/database.yml and that you've added the necessary adapter gem to your Gemfile.", e.backtrace
+ raise LoadError, "Could not load the '#{spec[:adapter]}' Active Record adapter. Ensure that the adapter is spelled correctly in config/database.yml and that you've added the necessary adapter gem to your Gemfile.", e.backtrace

ExceptionがMissingSpecErrorのケースがある、かつ、MissingSpecErrorをraiseする引数が足りず(MissingSpecErrorは引数が2つ必要)、結果ここでArgumentErrorが発生してしまう、という問題があった為、Exceptionに関わらずLoadErrorをraiseするようにしています。


Add autoload hook for AbstractController::ActionNotFound

actionpack/lib/abstract_controller.rbの修正です。

autoloadの対象にActionNotFoundを追加しています。

autoloadの対象にしておかないと、action_controllerを単体でrequireした際にNameErrorが発生してしまう為。


Merge pull request #34534 from gmcgibbon/ar_query_scope_body_doc

rails guideのActive Record Query Interfaceの修正です。

Scopesの項に、scopeはActiveRecord::Relationを返すべき、という説明があるのですが、実際はnilでも良いため、その旨説目を修正しています。


Allow spaces in postgres table names

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

PostgreSQL adapterでテーブル名にスペースを使用出来ない(スペースを使用したら、スペースより前の部分がschemaと扱われてしまっていた)バグがあったのを修正しています。


Merge pull request #34554 from sj26/group-exception-logs

actionpack/lib/action_dispatch/middleware/debug_exceptions.rbの修正です。

ActionDispatch::DebugExceptionsでログの書き込みを行う際に、1項目ごとにログの書き込みを行っていたのを、データをまとめて書き込むよう修正しています。

項目ごとに書き込みを行うと、他の書き込みが発生した場合にログが混ざりわかりずらくなってしまう為。


Merge pull request #34562 from ruralocity/active-record-query-docs-improvement

activerecord/lib/active_record/querying.rbのdocの集合です。

ActiveRecord::Queryingのdocの言い回し、フォーマット等の修正を行っています。


[ci skip] Add a Delayed Job project link.

rails guideのActive Job Basicsの集合です。

Starting the Backendの項に記載されているバックエンドの一覧にDelayed Jobを追加しています。