假设您有一个 Python 程序,您可以仅使用
pyproject.toml
成功打包。缺点是什么?为什么在这种情况下使用 setup.py
或 setup.cfg
?
没有
setup.py
没有坏处。只是在某些特定情况下,包装的某些元素不能用setup.cfg
或pyproject.toml
中的描述性方式(即无代码)来表达。这可以从一些自定义动态包元数据到处理自定义非 Python 代码和许多其他事情的打包。
我的建议是:
setup.py
,如果你可以完全不用这个脚本,那就不用它pyproject.toml
:
[build-system]
部分显然,这是不可协商的必须,无论您是否有 setup.cfg
文件和/或 setup.py
脚本[project]
部分(尽量避开动态场)pyproject.toml
(在[tool.setuptools]
部分)或setup.cfg
中,如您所愿