Запуск скриптов Python, разработанных с помощью Poetry

Я разработал множество утилит с использованием virtualenv, которые впоследствии стали отдельными пакетами. Но поэзия — это новинка, поэтому я решил попробовать.

Создать новую среду с помощью poetry new было легко, и установить ее зависимости с помощью poetry install также не составило труда.

Но попытка запустить мой скрипт из каталога, отличного от каталога его проекта, оказалась проблемой. Я добавил раздел [tools.poetry.scripts] в его файл pyproject.toml, поэтому я могу запустить его из каталога проекта, вызвав poetry run [args]. Однако это не слишком здорово, чтобы заставить других людей попробовать мой причудливый новый сценарий. И это не начало, если вы хотите (или вам нужно) запускать из какого-то другого каталога.

Итак, в чем секрет?


person Brian    schedule 14.03.2020    source источник


Ответы (1)


ИМО основная цель poetry run - тестирование во время разработки.

Вы должны предоставить sdist или колесо для других людей или попросить их сделать pip install /path/to/the/project (требуется версия pip >= 19), чтобы установить ваш пакет напрямую. Тогда им вообще не нужен poetry run.

person finswimmer    schedule 15.03.2020
comment
Но poetry run нельзя использовать в каталоге, отличном от каталога проекта. Это действительно непригодно. - person Brian; 15.03.2020