setuptools - 如何使用 pip 在可编辑模式下安装 setup.cfg + pyproject.toml python 项目?

标签 setuptools python-packaging pyproject.toml pep517

是否可以将蛋糕减半并吃掉它:可以安装(通过某种机制)具有以下结构的项目:

pyproject.toml
setup.cfg
src/...
scripts/...
在可编辑模式下,就像使用标准 setup.py 一样项目:
python3 -m pip install -e . 
(如果答案是:“ one does not install pyproj.toml package in editable mode ”也可以)

最佳答案

Pip 21.1版本后,可以使用setup.cfg用于可编辑的安装。
在不久的将来,你甚至不需要它,因为最终有一个可编辑安装的标准,它不假设你正在使用 Setuptools:PEP 660 .当兼容 PEP-517 的构建后端开始也支持 PEP 660 时,Pip 可编辑安装将适用于只有 pyproject.toml 的项目。 ,即不支持旧版 Setuptools 界面 ( setup.py/setup.cfg ) 的 PEP-517-only 项目。
在 Pip 21.1 版之前,您需要一个 dummy setup.py :

#!/usr/bin/env python
import setuptools

if __name__ == "__main__":
    setuptools.setup()

关于setuptools - 如何使用 pip 在可编辑模式下安装 setup.cfg + pyproject.toml python 项目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66857302/

相关文章:

python - entry_points 不会在 Python 中使用 pip 或 easy_install 创建自定义脚本?

python - 如何在 Python 设置脚本中引入 importlib.resources

python - 无法解析 "import as"情况 ("AttributeError module x has no attribute y")

python - 如何使用诗歌和 pyproject.toml 保持 python 包的开发环境和生产环境之间的依赖关系一致

python - 使用 pyproject.toml 进行 `` pip install -e .`` 构建 cython 扩展

python - 如何子类化构建命令?

python - 如何让easy_install在setup.py中执行自定义命令?

python - 我如何要求 setup.py 列出依赖项?

setuptools - 为什么 python setup.py bdist_wheel 会创建一个构建文件夹?

python - 如何构建符合 PEP 517 的 C 扩展,即使用 pyproject.toml 而不是 setup.py?