概要
以前はポートフォリオとして作成し、今は新しいライブラリを試したりする時に使うおもちゃになったRailsプロジェクトでOmniAuthのバージョンを2.0.0まで上げたら、You are using an old OmniAuth version, please ensure you have 1.0.0.pr2 version or later installed.
というエラーが出て、はぁ??ってなった時のメモです。
環境
- Rails 5.2.4.4
- ruby 2.6.6
- devise 4.7.3
原因
以下のissueでみられるように、OmniAuth::VERSION
のチェックをする場所でハードコーディングをしているのが原因らしい。
github.com
対処法
考えられる対処法は以下の2つのどちらか
- DeviseにOmniAuth2を試すことができるPRが上がっていたので、以下のPRからgemを取得する
gem 'devise', git: "https://github.com/heartcombo/devise.git", branch: "ca-omniauth-2"
- omniauthのバージョンを2.0.0から1.9.1に下げる。
gem 'omniauth', '1.9.1'