なるようになるブログ

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

rails commit log流し読み(2020/11/25)

2020/11/25分のコミットです。

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

actiontext/CHANGELOG.md


Revert "Revert "Remove the magic :chain parameter from Relation#where" (#40678)"

Relation#whereの引数から不要な引数を削除した、Remove the magic :chain parameter from Relation#whereをRevertした、Revert "Remove the magic :chain parameter from Relation#where" (#40678)をRevertしています。

chaining処理が動かなくなった為、というのがRevertの理由だったのですが、それは間違い(独自にARを拡張した処理を実装しており、その影響で動作しなくなっていたらしい)だった為。


Add support for eager loading all rich text associations at once (#39397)

actiontext/lib/action_text/attribute.rbの修正です。

rich textに関するassociationをまとめてeager loadする為のwith_all_rich_textメソッドを追加しています。


Merge pull request #40527 from jonathanhefner/springy-bins

railtiesの修正です。

config/boot.rbで行うようにしていたSpringのロード処理をbinstubsで行うよう修正しています。

APP_PATHの設定後にSpringのロード処理が行われると、Springのロード処理内でAPP_PATHの再指定が行われてしまい、結果Rubyのwarningが表示されてしまう為。


Merge pull request #40626 from jonathanhefner/executor-wrap-db-seeds

Active Job、railtiesの修正です。

db/seeds.rbを実行する際に強制的にActive Jobをinlineにしていたのをやめて、db/seeds.rbをexecutorで内で実行するようにして、処理がデッドロックにならないよう修正しています。


Add db:structure:load_if_sql and db:schema:load_if_ruby back

activerecord/lib/active_record/railties/databases.rakeの修正です。

誤って削除されてしまったdb:structure:load_if_sqldb:schema:load_if_ruby taskを戻しています。


Address "ArgumentError: missing keywords: :sql, :name" when unit tests run by ruby 3.0.0dev

actiontext/test/test_helper.rbの修正です。

assert_queriesメソッドがRuby 3.0でArgumentErrorになってしまっていたのを修正しています。


Add explicit require for Symbol#start_with?

actiontext/lib/action_text/attribute.rbの修正です。

不足していたactive_support/core_ext/symbol/starts_ends_withのrequireを追加しています。


Remove useless VALID_AUTOMATIC_INVERSE_MACROS checking

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

can_find_inverse_of_automatically?メソッド内で行っていたmacroがautomatic inverse対象かどうかのチェックを削除しています。引数で指定される可能性があるmacroは全てチェックがtrueになる値しか指定されない為。


Merge pull request #40675 from NobodysNightmare/patch-2

rails guideのActive Storage Overviewの修正です。

Active Storageが生成するURLはデフォルトで誰でもアクセス出来るURLの為、アクセス制限をかけたい場合、独自に処理を行う必要がある旨説明を追加しています。


Merge pull request #40685 from composerinteralia/action-cable-base-subscription

actioncable/lib/action_cable/connection/subscriptions.rbの修正です。

subscribe commandがBase channel(ActionCable::Channel::Base)から行えてしまっていたのを、出来ないよう修正しています。subscribe commandはその処理を行うことを想定した専用のクラスでのみ実行出来る方がセキュリティ的に良いだろう、という事で修正されています。


Merge pull request #40320 from mh-mobile/master

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

has_{one,many} :through :source + :source_typeのexampleコードが、動作しないコードになってしまっていたのを修正しています。


Add :call-seq: to hide the internal block argument [ci skip]

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

attributeメソッドのdocに:call-seq:によるAPIの定義を追加して、内部のブロック変数がAPI docに表示されないよう修正しています。


Fix SyntaxError in the API doc

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

redirect_back_or_toメソッドのdocのexampleコードがエラーになるコードになっていたのを修正しています。