pipenv のversion 2020.11.15 でローカルパッケージが正常にインストールされないときの対処法
TL; DR;
- pip install pipenv==2018.11.26 をすれば直った!!!!!
実行環境
$pipenv --version
pipenv, version 2020.11.15
直面した問題
./app/
├── model
│ └── setup.py
└── serving
└── Pipfile
のような構成で、model
というローカルパッケージを作成しており、serving 直下の Pipfile は、model
を読み込んで setup.py に記述されている依存パッケージもインストールするようにしたい。
serving ディレクトリで、以下のコマンドを入力すればローカルパッケージが pipenv によりインストールされるはずだが
pipenv install --editable ../model
依存関係をすべて記述するはずの Pipenv.lock には、model
のパスのみが記述され、ローカルパッケージが要求する依存パッケージが記述されていない。
原因を探してみたところ、
Installing a local package with pipenv install ‘-e .’ doesn’t save dependencies #1024
同じ GitHub issue を発見しダメ元で pipenv を以下のコマンドでダウングレードして見たところ
pip install pipenv==2018.11.26
なんと…. 直った。無事にローカルパッケージの依存パッケージが Pipenv.lock に記述されており、無事にローカルパッケージが serving 直下で動くようになった。
後方互換性が無いとかそんなちゃちな問題ではない気がするのだが、この問題でかなり時間が溶けたので非常に精神的に消耗した。
思えばこういう問題が多くて、普段は poetry を使っていたのを思い出した。
Ref
関連しているかもしれない記事
- pip 実行時に sys.stderr.write(f"ERROR: {exc} ") とエラーが出てpipを実行できないときの対処方法
- PythonでApache beam 入門
- pandas を使って特定のディレクトリのCSVファイルをすべて連結して一つのCSVファイルを作成
- Python の内包表記とジェネレータ式のメモリ使用量比較
- AOJの「ITP I」40問をPythonで解いた
📮 📧 🐏: 記事への感想のおたよりをおまちしてます。 お気軽にお送りください。 メールアドレス入力があればメールで返信させていただきます。 もちろんお返事を希望せずに単なる感想だけでも大歓迎です。
このサイトの更新情報をRSSで配信しています。 お好きなフィードリーダーで購読してみてください。
このウェブサイトの運営や著者の活動を支援していただける方を募集しています。 もしよろしければ、Buy Me a Coffee からサポート(投げ銭)していただけると、著者の活動のモチベーションに繋がります✨
Amazonでほしいものリストも公開しているので、こちらからもサポートしていただけると励みになります。