Подтвердить что ты не робот

"pip install --editable./" vs "python setup.py разработать"

Есть ли существенная разница между

pip install -e /path/to/mypackage

и вариант setuptools?

python /path/to/mypackage/setup.py develop
4b9b3361

Ответ 1

Старайтесь избегать прямого вызова setup.py, он не будет правильно сообщать pip, что вы установили свой пакет.

С pip install -e:

Для локальных проектов каталог SomeProject.egg-info создается относительно пути проекта. Это одно преимущество по сравнению с простым использованием setup.py develop, который создает "egg-info" непосредственно относительно текущего рабочего каталога.

Больше: документы

Также читайте Setuptools' документы.

Ответ 2

Еще одно отличие: pip install -e использует колесо, а python setup.py develop
не использует его.

С install вы можете добиться такого же поведения, используя pip install -e /path/to/package --no-use-wheel

Дополнительная информация о колесах: колеса python

Ответ 3

Другим отличием, которое может быть в пользу pip install -e, является то, что если ваш проект имеет зависимости в install_requires в setup.py, то pip install -e . устанавливает зависимости с пипом, а python setup.py develop может устанавливать с easy_install и может вызвать проблемы re: 'egg-info', как указано выше. Если install-requires использует dependency_links с пользовательскими URL git с прикрепленными идентификаторами яйца, это может быть особенно раздражающим.