なるようになるブログ

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

rails commit log流し読み(2019/01/09)

2019/01/09分のコミットです。

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

railties/CHANGELOG.md


add new frameworks to tasks/release.rb

Rails release用のtaskにあるframeworkの一覧にAction Mailbox、Action Textを含むよう修正しています。


Merge pull request #34132 from ConfusedVorlon/enable_fragment_cache_log_in_dev

railties/lib/rails/generators/rails/app/templates/config/environments/development.rb.ttの修正です。

tmp/caching-dev.txtがある場合(dev:cache実行時)に`config.action_controller.enable_fragment_cache_logging`にもtrueを指定するよう修正しています。


Merge pull request #34890 from rosa/test-exceptions-with-all-adapters

activejob/lib/active_job/core.rbactivejob/lib/active_job/exceptions.rbの修正です。

exception counterにHash.new(0)を使用していたのを空のHash({})を使用するよう修正、及び、retry_onメソッド側でexception counterに該当のexceptionが存在しない場合に0を設定するよう修正しています。

rescue adapterを使用している場合、Hash.new(0)はseralize -> deserializeでデフォルト値無しのHashに変換されてしまう為、seralizeする前にデフォルト値を指定してもそれが使用されない為。

合わせて、exceptionのtestがtest adapterでのみ実行されていたのを、他のadapterでも実行されるよう修正しています。


The frameworks list is order dependent.

tasks/release.rbの修正です。

Rails release用のtaskでリリースするframeworkの順番を調整しています。Action MailboxはActive Recordに依存している為Active Recordを先に対応する必要がある、等の依存関係に合わせて調整しています。


Revert "Merge pull request #34387 from yhirano55/rails_info_properties_json"

rails properties routes(/rails/info/properties)にJSON formatのサポートを追加したRespond /rails/info/properties.jsonをRevertしています。

ローカル恐らくでは使用しない、かつ、development環境以外では使用出来ない(現状は)為、デフォルトではJSON formatを提供する必要は無いのでは、という結論に至った為、との事です。

が、Revertする内容が間違えており、後ほど改めてRevertは行われています。


Revert "Revert "Merge pull request #34387 from yhirano55/rails_info_properties_json""

直前のRevertをRevertしています。Revertする内容が誤っていた為。


Revert "Merge pull request #34387 from yhirano55/rails_info_properties_json"

改めて、rails properties routes(/rails/info/properties)にJSON formatのサポートを追加したRespond /rails/info/properties.jsonをRevertしています。


Preserve Bundle configuration during app generation (#34755)

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

rails newの処理中にbundlerコマンドを実行する際に、bundlerのenvが無効化されいたのを、bundlerのenvをそのまま使用するよう修正しています。

元々bundler側にバグがあってenvを無効化するようにしていた(らしい)のですが、現状その問題は解決済みのよう、かつ、envに指定したcredential情報(e.g. BUNDLE_GITHUB__COM)を使いたいので、bundlerのenvを使用出来るよう修正しています。


Merge pull request #34885 from y-yagi/fixes_34780

actionpack/lib/action_dispatch/http/cache.rbの修正です。

Cache-Control headerにpublicno-cacheを指定した場合、publicが除外されるようになってしまっていたのを、除外しないよう修正しています。publicno-cacheを同時に指定するケースは通常ありえる為。


Merge pull request #34894 from hahmed/tames-params-wrapper-errors

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

Allow rescue from parse errorsActionDispatch::Http::Parameters::ParseErrorをcontrollerのrescue_fromでキャッチ出来るよう対応したのですが、この対応では全てのexceptionをハンドリングするようになっていました。

その影響で、本来rescueすべきではないエラー(interrupt等)にまで影響が出てしまっていた為、ActionDispatch::Http::Parameters::ParseErrorのみrescueするよう処理を修正しています。


Enable Lint/DeprecatedClassMethods cop to avoid using deprecated methods

Lint/DeprecatedClassMethods copを有効化、及び、各ファイルにcopを適応しています。


Add OG tags to layout.html.erb

rails guideの修正です。

rails guideでOG tag(og:titleog:image等々)を表示するよう修正しています。


Enable Lint/UselessAssignment cop to avoid unused variable warnings (#34904)

Lint/UselessAssignment cop を有効化、及び、各ファイルにcopを適応しています。