【问题标题】:Specify Python tag for wheel using Poetry使用诗歌为车轮指定 Python 标记
【发布时间】:2020-02-15 21:12:11
【问题描述】:

我正在考虑将我的 Python 库从 Pipenvsetup.py 迁移到 Poetry。以前,为了构建我的项目,我会运行

python setup.py sdist bdist_wheel

对于我正在构建的包,支持的最低 Python 版本是 3.6,因此我在 setup.cfg 文件中添加了以下内容,以便在构建的轮子中指定(基于 this):

[bdist_wheel]
python-tag = py36

但是,在 Poetry 中,使用了 poetry build comamnd,它忽略了 setup.cfg 中的这一部分,而是在轮子上放置了一个通用的 py3 标签。是否有任何等效的方法可以使用 Poetry 将标签放到生成的轮子上?

【问题讨论】:

    标签: python python-wheel python-poetry


    【解决方案1】:

    诗歌唯一考虑的配置文件是pyproject.toml。它记录在here,它应该可以帮助您移植所有相关信息。您要求的特定标签是 python 版本:

    [tool.poetry]
    name = "example"
    version = "0.1.0"
    ...
    
    [tool.poetry.dependencies]
    python = "^3.6"  # having something here is mandatory for a build to work
    

    wheel-build 将在example.whl/example-0.1.0.dist-info/METADATA 中包含以下内容:

    ...
    
    Requires-Python: >=3.6,<4.0
    ...
    

    【讨论】:

    • 我确实有你在pyproject.toml 中提到的那一行,但我正在寻找一种方法来修改轮子本身上的标签,即代替package-py3-none-any.whl 我想要一个生成的package-py36-none-any.whl if它可能通过诗歌。
    • 带有setup.pybdist_wheel 选项具有--python-tag 选项。我正在寻找诗歌的等价物。我可以手动修改它,但除非必要,否则不想修改。
    • 严格来说,轮子名称是任意的,您可以手动(或脚本)将其重命名为您想要的任何名称 - 任何打包工具只会查看已正确设置的元数据。
    • 看来我得手动添加了。那真不幸。我会考虑在诗歌存储库上打开一个问题,以便为这种情况添加一个配置选项。
    猜你喜欢
    • 1970-01-01
    • 2022-07-22
    • 2022-01-11
    • 2022-11-16
    • 2013-01-21
    • 1970-01-01
    • 2020-05-05
    • 2021-06-07
    • 1970-01-01
    相关资源
    最近更新 更多