なるようになるブログ

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

rails commit log流し読み(2018/03/20)

2018/03/20分のコミットです。

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

activestorage/CHANGELOG.md

activejob/CHANGELOG.md


Allow full use of the AWS S3 SDK authentication options (#32270)

storage.ymlAWSのkey pairが指定されていない場合、自動で環境変数、Shared Credentials、Credentials Using IAMからcredentialsを読み込めるよう修正しています。credentialsの読み込み処理、及び、順番はAWS SDKに完全に依存しています。

参考:Configuring the AWS SDK for Ruby - AWS SDK for Ruby


Remove backported CHANGELOG entry [ci skip]

activestorage/CHANGELOG.mdの修正です。

CHANGELOGから5.2にバックポート済みの対応のエントリーを削除しています。


Add documentation about not accepting PRs for new adapters (#32298)

activejob/README.mdactivejob/lib/active_job/queue_adapters.rbのdocの修正です。

Active JobのREADMEに、新しいadapterの追加は受け付けない旨説明を追加しています。

以前から、Active Job内部で各ジョブシステムのadapterを抱えるのは良くない、ジョブシステム側で対応する、または、別途gemにするのが良いのでは、という話がありました。で、今後も基本的にその方針になった為、READMEにその説明を追加しています。


Remove support for Qu gem.

Active Jobの修正です。

Active Jobがquのサポートを削除しています。

Rails 5.1からまったく動かない状態になっている、かつ、qu自体も2014年からメンテがされていない状態でした。また、quのメンテナに確認したところ、当面メンテを再開する予定もないとの事だった為、deprecateなしにばっさりサポートが削除されました。


Fix digesting templates with mixed formats

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

formatが複数ある場合(e.g. requestに"js"と"html"両方ある場合)に、templatesのdigest生成処理が正しく行えないバグがあったのを修正しています。


Interpolate '' instead of nil when multiple is false.

tag_nameメソッドで不要なStringのオブジェクトを生成しないようリファクタリングしています。

             when @object_name.empty?
-              "#{sanitized_method_name}#{"[]" if multiple}"
+              "#{sanitized_method_name}#{multiple ? "[]" : ""}"
             when index
-              "#{@object_name}[#{index}][#{sanitized_method_name}]#{"[]" if multiple}"
+              "#{@object_name}[#{index}][#{sanitized_method_name}]#{multiple ? "[]" : ""}"
             else
-              "#{@object_name}[#{sanitized_method_name}]#{"[]" if multiple}"
+              "#{@object_name}[#{sanitized_method_name}]#{multiple ? "[]" : ""}"
             end

#{"[]" if multiple}の場合、multipleがfalse / nilの場合に不要な''の生成が行われてしまう為、それを避ける為上記のように修正したとの事です。