PEP 518 представил файл pyproject.toml
, а также раздел с описанием инструментов необходимо построить:
[build-system]
requires = ["setuptools", "wheel", "numpy>=1.13"]
Здесь я говорю системе сборки (неявно setuptools), что мне нужно установить эти три требования, прежде чем я смогу запустить сборку. (И да, мне действительно нужен numpy как часть процесса сборки.)
Когда я запускаю pip wheel
, он знает, что нужно искать этот раздел в этом файле, устанавливать требования, а затем собирать колесо. Но у pip нет возможности создать дистрибутив sdist
(и его сопровождающие похоже, не хотят добавлять one), поэтому мне нужно запустить python setup.py sdist
. И вот здесь возникает проблема: setup.py не знает, что ему нужен numpy, и сборка завершается ошибкой.
Есть ли стандартный способ просто установить требования, а затем собрать sdist? В частности, pip перешел к изоляции сборки, так можно ли это сделать с помощью изоляции? В противном случае я мог бы создать свою собственную среду для некоторой изоляции; тогда как лучше всего установить требования в какой-то среде?