python - pyproject.toml 文件有什么用?

标签 python pip packaging pyproject.toml

背景
我正要尝试从GitHub下载的Python包,发现它没有setup.py ,所以我无法安装它

pip install -e <folder>
相反,该软件包具有 pyproject.toml 文件似乎具有与 setup.py 非常相似的条目通常有。
我发现了什么
谷歌搜索引导我进入 PEP-518它对 setup.py 提出了一些批评在 Rationale部分。但是,它没有明确说明 setup.py 的用法。应该避免,否则pyproject.toml将完全取代 setup.py .
问题
pyproject.toml用来代替setup.py的东西?或者是否应该同时提供一个包,一个 pyproject.toml和一个 setup.py ?
如何使用 pyproject.toml 安装项目处于可编辑状态?

最佳答案

是的,pyproject.tomlPEP 518的指定文件格式其中包含 Python 项目的构建系统要求。
这解决了构建工具依赖鸡和蛋的问题,即 pip可以阅读pyproject.toml和什么版本的setuptoolswheel一个可能需要。
如果您需要 setup.py对于可编辑的安装,您可以在 setup.py 中使用垫片:

#!/usr/bin/env python

import setuptools

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

关于python - pyproject.toml 文件有什么用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62983756/

相关文章:

python - 自定义 pip 安装命令未运行

linux - 尝试在 Ubuntu Linux debian 中打包 Unity 游戏

python - 通过 setuptools 或 distutils 安装 Python 包后如何访问可编辑的配置文件?

python - 在 PyTables 中,如何创建可变长度的嵌套数组?

python - 确保使用 flask-socketio、redis 发送套接字消息

python - 如何抑制 Django 中的弃用警告?

Python requests.txt 限制依赖项仅安装在 Atom 处理器上

python - 更改pip和pip3的路径

javascript - 有没有像 "packaged web app"这样的东西?

python - 从 Visual Studio Code 调试 Python - 导入 Numpy