Y a-t-il une différence significative entre
pip install -e /path/to/mypackage
et la variante setuptools?
python /path/to/mypackage/setup.py develop
Essayez d'éviter d'appeler directement setup.py
, cela ne dira pas correctement à pip que vous avez installé votre paquet.
Avec pip install -e
:
Pour les projets locaux, le répertoire "SomeProject.Egg-info" est créé par rapport au chemin du projet. C’est un avantage par rapport à la simple utilisation de
setup.py develop
, qui crée "l’information sur l’œuf" directement par rapport au répertoire de travail en cours.
Plus: docs
Lisez également le setuptools ' docs .
Une autre différence: pip install -e
utilise la roue tandis que python setup.py develop
ne l'utilise pas.
Avec install
, vous pouvez obtenir le même comportement en utilisantpip install -e /path/to/package --no-use-wheel
Plus d'infos sur les roues: roues en python
Une autre différence qui peut favoriser pip install -e
est que si votre projet a des dépendances dans install_requires
dans setup.py
, alors pip install -e .
installe des dépendances avec pip, tandis que python setup.py develop
peut être installé avec easy_install
, et peut causer des problèmes concernant: 'Info-oeuf' comme mentionné ci-dessus. Lorsque install-requires
utilise dependency_links
avec des URL git personnalisées, ainsi que des identificateurs d'oeufs attachés, cela peut être particulièrement gênant.