gpt4 book ai didi

Python打包: build requirements in pyproject. toml VS setup_requires

转载 作者:行者123 更新时间:2023-12-05 02:41:06 34 4
gpt4 key购买 nike

在有些复杂的 Python setup.py 配置中,通常需要其他已经存在的库才能执行 setuptools.setup。在我的例子中,这将是 setuptools>=45.0cython>=0.29。现在,我有两个选项来声明这些构建时要求(不要与通常在 requirements.txt 文件中找到的标准包安装要求混淆)以便将此项目发送到 PyPI:

  1. setup_requires 参数中手动编写要求作为 setup.py 的一部分:
#setup.py
from setuptools import setup
#...
setup(
name='bla',
#...
setup_requires = ['setuptools>=45.0', 'cython>=0.29'],
)
  1. 将这些要求写入一个单独的 pyproject.toml 文件中 PEP518 之后:
#pyproject.toml
[build-system]
# Minimum requirements for the build system to execute.
requires = ["setuptools>=45.0", "cython>=0.29"]

它们可以互换吗?应该使用哪一个?为什么?

最佳答案

上述 PEP 的创建是为了解决 Rationale 中列出的第一种方法的局限性。部分。 Packaging Python建议使用第二种方法。

关于Python打包: build requirements in pyproject. toml VS setup_requires,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68282771/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com