Как я могу указать требования «системы сборки» в поэзии? Я думаю, что PEP517 имеет дело с этим, но я не могу заставить его работать.
Я использую поэзию для управления своим проектом. Одна из зависимостей моего проекта построена из исходного кода, и построение зависимости завершается ошибкой, поскольку инструменты, необходимые во время сборки, недоступны.
У зависимость есть setup.py
, но нет setup.cfg
или pyproject.toml
. После обсуждения в этот поэтический выпуск я попытался добавить:
[build-system]
build-backend = 'setuptools.build_meta'
requires = [
"packaging",
"Cython",
"setuptools",
]
к:
pyproject.toml
в моем проекте (где инициируется poetry install
)pyproject.toml
в исходном дереве зависимостей.то есть для построения зависимости требуются Cython
, packaging
и setuptools
, как видно из первых нескольких строк в setup.py зависимости.
Добавление раздела [build-system]
, похоже, ничего не дает. Похоже, что сборка выполняется во временной виртуальной среде, и в этой среде нет необходимых инструментов (Cython
, packaging
и setuptools
).
Кстати, я не знаю, правильно ли build-backend = 'setuptools.build_meta'
(я думаю, это означает, что setuptools
используется для обработки упаковки зависимостей, но я действительно не знаю).
Что мне нужно сделать, чтобы исправить это?
Сама зависимость должна предоставлять pyproject.toml
в соответствии с ПЭП-518 и перечислять их зависимости сборки. Вы ничего не можете сделать в своем проекте.
Привет @finswimmer, кажется, я уже пробовал то, что ты предлагаешь. У зависимости никогда не было
pyproject.toml
, поэтому я добавил его. Новыйpyproject.toml
зависимости содержит только показанный выше раздел[build-system]
(только эти 7 строк, ничего больше). Что-то не так с созданным мнойpyproject.toml
?