【发布时间】:2021-04-14 19:47:57
【问题描述】:
我刚刚使用 PyScaffold 搭建了一个 python 项目。引起我注意的一件事是脚手架同时生成了 setup.cfg 和 tox.ini 文件。如果我的理解是正确的,如果我使用 tox 命令使用 tox,它只会查看 tox.ini 文件并完全忽略 setup.cfg 和 setup.py。
在这种情况下,我的问题是:是否有理由将它们都保留在项目中,或者仅使用 tox.ini 或 setup.cfg 就足够了?如果我必须将它们都保留在我的项目中,是否有一种简单的方法可以使它们都使用相同的配置(例如,运行 flake8 以进行 linting 的配置),而无需我在 setup.cfg 和 tox 中键入这些配置。是吗?
【问题讨论】:
-
setup.cfg/setup.py用于setuptools。tox.ini用于tox。不同的工具,不同的配置。 -
我得到的那部分 - 我想我间接想问的是我是否需要 tox 和 setuptools - 在我未经训练的眼睛看来,它们似乎在做非常相似的事情
-
我没有看到任何相似之处。
setup.cfg/setup.py用于构建发行版,tox.ini用于在动态创建的虚拟环境中运行测试;tox当然是使用setuptools构建一个发行版,并在运行测试之前将其安装到这些虚拟环境中。 -
啊,那是缺少的链接 - 我以为它们都用于构建和测试 - 感谢您的澄清!
标签: setuptools tox pyscaffold