Можем ли мы загрузить зависимости python pyproject.toml с помощью диспетчера пакетов pip

У меня есть проект python, который не содержит файла requirements.txt. Но у него есть файл pyproject.toml.

Как я могу загрузить пакеты (зависимости), необходимые в этом проекте python, которые существуют в pyproject.toml, используя диспетчер пакетов "pip" вместо поэзии.

Как команда "pip download requiremenets.txt", но вместо "pip download pyproject.toml"

3 ответа

Вот пример файла .toml:

      [build-system]
requires = [
    "flit_core >=3.2,<4",
]
build-backend = "flit_core.buildapi"

[project]
name = "aedttest"
authors = [
    {name = "Maksim Beliaev", email = "beliaev.m.s@gmail.com"},
    {name = "Bo Yang", email = "boy@kth.se"},
]
readme = "README.md"
requires-python = ">=3.7"
classifiers = ["License :: OSI Approved :: MIT License"]
dynamic = ["version", "description"]

dependencies = [
    "pyaedt==0.4.7",
    "Django==3.2.8",
]

[project.optional-dependencies]
test = [
    "black==21.9b0",
    "pre-commit==2.15.0",
    "mypy==0.910",
    "pytest==6.2.5",
    "pytest-cov==3.0.0",
]

deploy = [
    "flit==3.4.0",
]

для установки основных зависимостей, которые вы запускаете:

      pip install .

если вам нужна среда тестирования (разработки) (мы используем testпоскольку это имя определено в файле .toml, вы можете использовать любое):

      pip install .[test]

Для установки с колеса:

      pip install C:\git\aedt-testing\dist\aedttest-0.0.1-py3-none-any.whl[test]

pip изначально поддерживает установку зависимостей pyproject.toml .

Начиная с версии 10.0, pip поддерживает проекты, объявляющие зависимости, которые требуются во время установки, с использованием файла pyproject.toml в форме, описанной в PEP 518. При сборке проекта pip устанавливает необходимые зависимости локально и делает их доступными для процесс сборки. Кроме того, начиная с версии 19.0, pip поддерживает проекты, определяющие серверную часть сборки, которую они используют в pyproject.toml, в форме, описанной в PEP 517.

Из корня проекта используйте установку локального проекта pip :

      python -m pip install .

Вы можете экспортировать зависимости в requirements.txt и использовать pip download потом:

poetry export -f requirements.txt > requirements.txt
pip download -r  requirements.txt
Другие вопросы по тегам