Как я могу заставить мой проект, управляемый ультрафиолетовым излучением, хорошо работать с точками входа редактируемогоPython

Программы на Python
Ответить
Anonymous
 Как я могу заставить мой проект, управляемый ультрафиолетовым излучением, хорошо работать с точками входа редактируемого

Сообщение Anonymous »

ОС: W10.
У меня есть проект, управляемый ультрафиолетовым излучением, под названием «sysadmin3». Он использует пакет, управляемый uv, под названием «mrodent-lib», как пакет, устанавливаемый с возможностью редактирования.
Мой блок project.scripts в mrodent-lib выглядит следующим образом:

Код: Выделить всё

[project.scripts]
mrodent-lib = "mrodent_lib:main"
configure-logging = "mrodent_lib.configure_logging:configure_logging"
other-instance-running = "mrodent_lib.library_main:other_instance_running"
deploy_xxx = "mrodent_lib.deploy:main"
Когда я начинал, я мог сделать это из пользовательского проекта:

Код: Выделить всё

> uv run mrodent-lib
... и это приведет к распечатке сообщения по умолчанию из основного .py.
Точки входа "configure-logging" и "other-instance-running" предназначены для вызова из сценариев Python в проектах, в которых установлен пакет "mrodent-lib", и работают нормально.
"deploy.py" находится в "каталоге пакета", т.е. mrodent-lib/src/mrodent_lib/ (обратите внимание на подчеркивание, первоначально созданное с помощью > uv init mrodent-lib --package). Это предназначено для использования из командной строки пользовательского проекта, т.е.

Код: Выделить всё

> uv run deploy_xxx
(Я также пробовал > uv run mrodent-lib.deploy_xxx и даже > uv run mrodent-lib/deploy_xxx)
Ошибки такие:

Код: Выделить всё

...\Workspace\sysadmin3>uv run mrodent-lib
error: Failed to spawn: `mrodent-lib`
Caused by: program not found
...\Workspace\sysadmin3>uv run mrodent-lib.deploy_xxx
error: Failed to spawn: `mrodent-lib.deploy_xxx`
Caused by: program not found
Мало того, что эта точка входа не работает, теперь > uv run mrodent-lib тоже не работает (т.е. в отличие от начала)... даже когда я закомментирую строку "deploy_xxx" в project.scripts и пересобираю (

Код: Выделить всё

uv build
) как пакета, так и пользовательского проекта. Кажется, я что-то напутал, но понятия не имею, что именно.
NB, а также uv build Я также много раз пробовал uv sync...
Я немного озадачен: как я могу заставить uv run mrodent-lib и uv run Deploy_xxx работать из командной строки проекта вызывающего/пользователя?

Подробнее здесь: https://stackoverflow.com/questions/798 ... stalled-uv
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»