pipenvでパッケージをインストールしたときにResolving dependencies...
が終わらず、✘ Locking Failed!
とでて、最終的にpkg_resources.VersionConflict
のエラーが出る場合の対処法
今回は、pipenv install pyyaml
を実行しておこった。
エラー文では
以下のようになっていたのでパッケージ同士の依存関係でエラーが起こっているよう
importlib-metadata<3,>=0.12; python_version < "3.8"')
$ pipenv install hogehoge
Locking [dev-packages] dependencies...
Locking [packages] dependencies...
Building requirements...
Resolving dependencies...
✘ Locking Failed!
...
(中略)
...
pkg_resources.VersionConflict: (importlib-metadata 3.10.0 (..., Requirement.parse('importlib-metadata<3,>=0.12; python_version < "3.8"'))
解決法
Lockファイルを作成する時点でエラーが起きているので、--skip-lock
オプションをつけて以下のようにする
$ pipenv uninstall importlib-metadata --skip-lock
$ pipenv install myyaml
この解決方法でとりあえず大丈夫だったのですが、正解かどうかは不明