tltr
原因はダウンロード済gemの中で古いものがあることで、解決方法はgemのアップデートです。
gemアップデートでアプリに影響を与えないように、以下コマンドでgemを一つずつアップデートして、該当warningが出なくなるまで古いgemを特定して、特定ができたら該当gemだけアップデートすれば、warningを解消できます。
bundle update gemの名前
gem全体が更新されても挙動変化の心配がない場合の解消法は以下です。
bundle update
背景
Rails ver up 7.1 to 7.2のときに以下warningが出ました。
DEPRECATION WARNING: ActiveSupport::ProxyObject is deprecated and will be removed in Rails 8.0.
Use Ruby's built-in BasicObject instead.
(called from <main> at /Users/xxx/yyy_rails_project/config/application.rb:9)
warningが出たコードはこれみたいです。
Bundler.require(*groups)
以下Bundler公式のIssueによると、ダウンロード済のgemがProxyObjectを使っていることが原因で、gemをコメントアウトして原因gemを特定できるらしいです。
筆者はgemをコメントアウトしてbundle installして、またgemのコメントを外してbundle installすると、warningが消え、gemのバージョンが最新のものになる現象が起きました。
もしかすると、bundle updateで原因gemの特定も不要で、一気にwarningを解消できる可能性があると考えて、実行すると無事解消できました。