「./../config/boot.rb:20:Warning: Gem::SourceIndex#search support for String patterns is deprecated」と言われたときの対処法
「ruby script/server」とかしたときに、
./../config/boot.rb:20:Warning: Gem::SourceIndex#search support for String patterns is deprecated
というエラーが出て、どうしていいかわからなくなったので、がんばってググってみた。
ちょこざいな生活 : 美味しければ全てよし のコメント欄によると、
config/boot.rb の20行目を次のように変えるといいらしい。
変更前
#rails_gem = Gem.cache.search('rails', "=#{rails_gem_version}.0").sort_by { |g| g.version.version }.last
変更後
rails_gem = Gem.cache.search(Gem::Dependency.new('rails', "=#{rails_gem_version}.0")).sort_by { |g| g.version.version }.last
どうやら、RubyGemsのバージョンだけ上げてRailsのバージョンを上げなかったのが原因みたい。
Railsみたいなフレームワークはプログラムが自動でいろいろやってくれる分、エラーが出たときが困るなあ。
追記
「ruby script/generater」としたときにも似たようなエラーが出たので、これから先何回も同じエラーが出てきたら面倒だなあと思って、railsをアップデートした。アップデートの方法は、
sudo gem install rails
バージョン 2.3.2 になりました。