なるようになるブログ

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

rails commit log流し読み(2019/10/17)

2019/10/17分のコミットです。

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

activesupport/CHANGELOG.md


Merge pull request #37458 from byroot/db-role

Active Recordの修正です。

DatabaseConfigで管理するようになっていたconnection poolsを、ConnectionAdapters module配下の専用クラス(Role)で管理するよう修正しています。

DatabaseConfigは、configに関する情報だけを管理するようにする為。


Nodoc Role

activerecord/lib/active_record/connection_adapters/abstract/connection_pool.rbのdocの修正です。

先ほど追加したConnectionAdapters::Roleクラスに:nodoc:を指定してAPI docに表示されないようにしています。


Refactor to reduce complexity from O(n*2) to O(n)

activesupport/lib/active_support/core_ext/class/subclasses.rbの修正です。

Class#subclassesメソッドで継承関係のチェックにsuperclassメソッドを使用するようリファクタリングしています。


Merge branch 'keep_symbolic_link_for_credentials'

activesupport/lib/active_support/encrypted_file.rbの修正です。

credentials.yml.encをsymbolic linkで指定した場合に、credentialを編集すると実ファイルになってしまっていたのを、symbolic linkを維持するよう修正しています。


Fix random CI failure due to non-deterministic sorting order

activerecord/test/cases/relations_test.rbの修正です。

assertionで値を比較する際に、値をidでsortしてからチェックするよう修正しています。 sortを指定しないと結果が不定になる為。


Enumerator should be supported by ActiveSupport::SafeBuffer

activesupport/lib/active_support/core_ext/string/output_safety.rbの修正です。

Rails 6.0でActiveSupport::SafeBufferEnumeratorを指定した場合(e.g. "aaa".html_safe.gsub!(/a/).with_index { |m, i| i })にエラーになってしまうバグがあったのを修正しています。


Fix i18n of attributes with multi-digit indexes

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

Merge pull request #37447 from jonathankwok/i18n-error-lookup-for-indexed-attribute でattributeにindexを含む場合にtranslationのlookup処理が動作するよう対応したのですが、indexが複数桁(10以上)になった場合の考慮が不足していたのを対応しています。