自分にやさしく学ぶプログラミング

プログラミング学習記録、備忘録

VScode で Gem::LoadError がいっぱい出て困った

わけあってしばらく放置していたrubyのコードを開いて、VScodeで編集しようとしたら、拡張機能ruby-rubocopからこんなかんじで怒られた。 Gem::LoadError: You have already activated forwardable 1.3.1, but your Gemfile requires forwardable 1.2.0. Prependingbundle execto your command may solve this.

Gemfileみたら、こんな風に書いてある。 gem 'forwardable', '~> 1.2.0'

恥ずかしながら、この表記みて
「バージョン1.2.0より新しけりゃいいんでしょ?あってんじゃん!!#」
なんて思ってしまった。

~>って、そういえば
「最後の桁が現在よりも大きくなることは許可するが、次の桁の原稿は許可しない」
でしたね・・・。 やっべ。

今回の例でいけば、確か1.2.9までしか許可されてなくて、1.3.1でエラーが出るのはそりゃそうだってかんじですね。 とりあえず今回いじってたのは学習用のフォルダで、正直Gemのバージョンとか気にしないので、エラーが出たとこを一つずつバージョン指定無くしていったところ、怒られなくなりました。 しばらく触ってないとこういうことも起きるんだな。
rubocopも頻繁にバージョンアップするから、copのrenameも定期的に対応しないといけないっぽいし。
長く使うコードは時々見直さないといけないんだと再認識した。