概要
ローカルでパッケージを開発したい場合に Pipfile の参照先を Pypi ではなく local に変更する方法を紹介します
環境
- Ubuntu 18.04
- Python 3.10.2
- pipenv 2022.1.8
既存パッケージの削除
pypi から取得したパッケージを一度削除します
- pipenv uninstall hoge
Pipfile を編集してローカルからインストールするようにする
path を指定することでローカルからインストールできます
- vim Pipfile
[packages]
hoge = {path="/home/pkg/hoge"}
再度インストール
あとは再度インストールします
- pipenv install -d
もしパッケージ側を修正した場合は再インストール必要がある
パッケージ側を修正した場合は再度インストールする必要があります
もし面倒な場合はシンボリックリンクに手動で切り替えても OK です
-
pipenv --venv
-
cd /home/pkg/.local/share/virtualenvs/app-Yn-xfOlh/lib/python3.10/site-packages
- rm -rf hoge
- ln -s /home/pkg/hoge/hoge hoge
ただこの場合でもパッエージ側にパッケージが追加された場合は再度インストールする必要がある
パッケージ側で pipenv install や poetry add などが発生した場合は再度インストールし直しましょう
パッケージ側が poetry を使っている場合には editable モードは使えない
path を指定する際に editable というオプションが使えるのですがパッケージ側が poetry で作成されている場合以下のようなエラーになりました
hoge = {editable=true, path="/home/pkg/hoge"}
(A "pyproject.toml" file was found, but editable mode currently requires a setuptools-based build.)
0 件のコメント:
コメントを投稿