なるようになるブログ

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

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

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

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

activesupport/CHANGELOG.md

activerecord/CHANGELOG.md


Update CHANGELOG.md

activerecord/CHANGELOG.mdの修正です。

inspectinsepctにタイポしている箇所があったのを修正しています。


Remove all references to slave in the codebase

railtiesのテストの修正です。

テストでmaster / slaveという言葉を使用していたのを、primary / replicaを使用するよう修正しています。

master / slaveは差別的な意味合いがある言葉の為。


Add #unfreeze_time to ActiveSupport::Testing::TimeHelpers

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

travel_backのaliasとしてunfreeze_timeメソッドを追加しています。

freeze_timeが既にあり、それと対称となるメソッドがあった方がわかりやすいだろう、ということで追加されています。


Merge pull request #33823 from stoodfarback/aj_backburner_fix_priority

activejob/lib/active_job/queue_adapters/backburner_adapter.rbの修正です。

Backburner adapterで、jobに指定したpriorityがbackend(Backburner::Worker)に渡されてなかったのを、渡すよう修正しています。


Oxford comma [ci skip]

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

travel_backメソッドのdocで、カンマのフォーマットをoxford commaに修正しています。


Use correct variable

railties/test/application/dbconsole_test.rbrailties/test/engine/commands_test.rbの修正です。

Remove all references to slave in the codebaseの対応で修正が漏れている箇所があったのを修正しています。


Fixes #33610

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

create_withメソッドにnested attributesを指定した場合に、重複したレコードが作成されてしまう(本来1レコードだけ作成される筈が2レコード作成されてしまう)バグがあったのを修正しています。


Remove unused existing arg in SelectManager#collapse

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

SelectManager#collapseメソッドから使用していないexisting引数を削除しています。


Remove redundant all.scoping

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

Scoping::Named#scopeメソッドから不要なscopingメソッドの呼び出しを削除しています。


Move scoping handling into klass level from relation

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

scopingメソッドの実装をRelationクラスからclass methodに移動しています。

後ほどinternal scopingの問題の解決の為に使用したい為、とのことです。


Don't expose current_scope for internal use

activerecord/lib/active_record/scoping.rbactiverecord/lib/active_record/scoping/named.rbの修正です。

Scoping moduleのcurrent_scopecurrent_scope=メソッドの可視性をprivateに変更しています。内部でだけで使用するメソッドの為。


Refactor object creation from relation to avoid pushing scope attributes

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

Relationクラスの各オブジェクト生成処理でscope attributesの生成を行っていたのを、行わないよう修正しています。

元々はinheritance objectの生成処理に関するバグ修正の為にscope attributesの生成、及び、それらのattributeをklass.newに渡すようになっていたのですが、そちらの処理はInheritance moduleで行うようリファクタリングしています。


Don't expose instantiate_instance_of for internal use

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

Persistence moduleのinstantiate_instance_ofメソッドの可視性をprivateに変更しています。内部でだけで使用するメソッドの為。