なるようになるブログ

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

rails commit log流し読み(2020/05/07)

2020/05/07分のコミットです。

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

activesupport/CHANGELOG.md

railties/CHANGELOG.md

activerecord/CHANGELOG.md


Merge pull request #39164 from jhawthorn/deprecate_dots_take_two

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

template名に.を使用するのをdeprecateにした対応を、再度コミットしています。

interpolated stringを使用した場合に誤ったdeprecate warningが出てしまうのは、Ignore interpolated strings in DependencyTrackerで対応された為。


Don't attempt to add a string to a lambda

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

Time::DATE_FORMATSにProcを指定した場合に、Stringとの連結処理を行わないよう修正しています。


Add DATE_FORMATS[:inspect]

Active Record、Active Supportの修正です。

Active Recordのtime attributesのinspect結果にsubsecの値も含むよう修正したのですが、これはTime::DATE_FORMATS[:db]にsubsecの値を追加する形で対応されました。

ただ、inspect用であれば、DATE_FORMATSinspect用のformatを追加した方が良いのでは、という意見が出て、DATE_FORMATS[:inspect]を追加し、そのformatでsubsecを指定するよう修正しています。


register the obsolescence of require_dependency in the CHANGELOG [ci skip]

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

require_dependencyのdocについて言い回しを修正&require_dependencyメソッドのdocにzeitwerk modeの場合require_dependencyはobsoleteである旨CHANGELOGに追記しています。


Merge pull request #39163 from kamipo/remove_deprecated_in_range

activerecord/lib/arel/predications.rbの修正です。

deprecateになっていたattr.inにrange objectを渡した場合の処理を削除しています。


Merge pull request #39036

railties/lib/rails/test_unit/runner.rbの修正です。

テスト実行時にテスト対象とするファイル(test/**/*_test.rb)と除外するファイル(test/{system,dummy}/**/*_test.rb)をenv(DEFAULT_TESTDEFAULT_TEST_EXCLUDE)で指定出来るよう修正しています。


Do the attribute keys conversion at one place

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

attribute keyの変換処理をPredicateBuilder#build_from_hashメソッドでだけ行うよう修正しています。


Merge pull request #39148 from hotatekaoru/add_change_null_for_change_table

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

change_tableメソッド内でchange_nullメソッドを使用出来るよう対応しています。


Allow unscope to be aware of table name qualified values

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

unscopeの引数にテーブル名修飾値(e.g. posts.unscope(where: :"comments.hidden"))を指定出来るよう修正しています。


Merge pull request #38326 from Shopify/set-callback-allocations

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

set_callbacksメソッドで、Ruby 2.6より以上の場合の場合不要なオブジェクトの生成処理を行わないよう修正しています。


Update rails gem version in bug report templates to pass CI on Ruby master

bug report templates の修正です。

Railsのバージョンを6.0.3に更新していますRuby masterでテストが通るようにする為。


Fix the result of aggregations to maintain duplicated "group by" fields

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

同じカラムを複数回groupした場合の戻り値が6.0.36.0.2で変わってしまった(元は戻り値のkeyがArrayになっていたのが、Stringになった)のを、6.0.2までと同じ挙動になるよう修正しています。


Merge pull request #37905 from Vasfed/feature/guide_association_cleanup

rails guideのActive Record Associationsの修正です。

belongs_to associationについて説明している箇所に、belongs_toは1対1の関係に使われる旨説明が記載されている箇所があったのですが、実際はそうでは無いため、該当箇所の説明を修正、及び、associationに関する説明の追記を行っています。


Load selenium/webdriver only if needed

actionpack/lib/action_dispatch/system_test_case.rbactionpack/lib/action_dispatch/system_testing/driver.rbの修正です。

system testでselenium以外のdriverを使用している場合、selenium/webdriverはloadしないよう修正しています。