rails 7.0.4 で pg 1.5 を使うと警告が出る問題

2984 views Post
wakairo @wakairo
最終更新

結論

railsのバージョンを7.0.5以上に上げてから、pg 1.5 にバージョンを上げれば、警告の問題は発生しません。

問題が発生したバージョン

  • ruby 3.2.2 (2023-03-30 revision e51014f9c0) [x86_64-linux]
  • rails (7.0.4.3)

問題を引き起こした作業内容

bundle updateでpgのバージョンを1.4系から1.5系に上げた。

発生した問題

rails testで以下のような警告が複数出るようになった。

PG::Coder.new(hash) is deprecated. Please use keyword arguments instead! Called from /usr/local/bundle/gems/activerecord-7.0.4.3/lib/active_record/connection_adapters/postgresql_adapter.rb:980:in `new'

rails 7.0.5のリリース後に行った対処

Gemfileにて、pgは1.5以降、railsは7.0.5以降を使うように指定してから、bundle updateコマンドを実行した。
その後でrails testを実行し、前述の警告が出ないことを確認した。

rails 7.0.5のリリース前に行った対処

Gemfileに以下のように記述して、利用するpgを1.4系に留めるように指定した。

gem "pg", "~> 1.4.6"

rails本家の対応状況

0
Raw
https://www.techtips.page/ja/comments/164
wakairo @wakairo
最終更新

昨日rails 7.0.5がリリースされました。
早速試したところ、rails 7.0.5とpg 1.5の組み合わせでは、前述の警告が出ないことを確認できました。
そこで、この結果を踏まえて、このTopicの先頭コメントの記述を更新しました。

0
Raw
https://www.techtips.page/ja/comments/200