💎

[rails]Add csv to your Gemfile or gemspec の対策

2024/11/16に公開

環境

  • ruby3.3.4
  • rails8.0

概要

railsをversion8.0にupdateして

bundle exec rails zeitwerk:check

を実行したら

/usr/src/app/vendor/bundle/ruby/3.3.0/gems/bootsnap-1.18.4/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:30: warning: /usr/local/lib/ruby/3.3.0/csv.rb was loaded from the standard library, but will no longer be part of the default gems since Ruby 3.4.0. Add csv to your Gemfile or gemspec.

が発生しました。

これは

Rubyのversion3.4からcsvがdefaultで含まれなくなる

というメッセージです。

対応

これを対応するには

Gemfileに

gem "csv"

を追加して

bundle config set --local path 'vendor/bundle'
bundle install

でcsvをinstallします。

その後

bundle exec rails zeitwerk:check

を実行すると

Hold on, I am eager loading the application.
All is good!

でメッセージが表示されなくなりました。

もちろん、rspecで挙動も問題ないことを確認しました。

まとめ

Rubyのversion3.4からcsvがデフォルトでなくなるので、csv処理を使っていてruby3.4へのアップデートを考えている人は、今から対応しておきましょう。

Discussion