gpt4 book ai didi

python - 如何为一组特定的 python 版本创建 Python 轮? py2.py3-none-any.whl 太宽泛

转载 作者:太空宇宙 更新时间:2023-11-03 14:39:11 25 4
gpt4 key购买 nike

我有一个适用于 Python 2.4-2.7 的包。 3.2-3.7。请注意,这并不适用于所有 Python 2 或 Python 3,而是特定版本。

这个包也支持具有不同源代码的Python 2.4和2.5。

我一直在为每个版本分发鸡蛋,因为这是非常具体的,而且我 setup.py bdist_wheel 创建的内容过于宽泛,无法匹配我不想匹配的 Python 版本。

当我创建一个轮子时,我会使用扩展名py2.py3-non-any.whl,这对于Python 2.4和2.5来说是错误的。 (压缩包也是如此)。

PyPi 只允许一个 tarball,所以现在我使用非 2.4、2.5 源代码。如果能够包含 2.4 2.5 源代码那就太好了。嗯,也许我可以把它做成 zipper ? (可能不会)。

如何通知 setup.py 我只想要一个 py35-non-any.whl?或者 py2 指定为 2.6 或 2.7? py3 仅适用于 3.2 及更高版本。

或者更一般地说,有什么简单的方法可以进行设置,以便无论运行什么 python 版本,pip 都会选择正确的 pypi 文件?

最佳答案

当您运行 setup.py bdist_wheel 时,它会创建一些过于笼统的内容,头脑简单的人可以执行以下操作:只需重命名该文件即可。

我在 Pypi 的发行版上尝试过这个,它有效:轮子比 tarball 更受欢迎,并且它会拉下该版本的轮子。随后运行该程序即可。

在我的具体情况下,setup.py bdist_wheel 创建了 foo-1.2.3-py2.py3-none-any.whl 但这是错误的,因为不想要 Python 2 和 Python 3 的所有版本,但需要一些非常特定的版本。

但是,例如,如果我希望将其调整为仅适用于 Python 2.7 和 Python 3.6,我将重命名/复制为:

foo-1.2.3-py27-none-any.whl
foo-1.2.3-py36-none-any.whl

对于如何实现可能还有其他想法和想法,所以我对此保持开放。如果这确实是最简单的事情,那么如果 setup.py 中有一个选项或任何处理 bdist_wheel 的选项,以便它可以为您重命名,那就太好了。

命名约定中是否允许范围,以便可以指定 3.5-3.7 ?或者可以以某种方式给出一个像 py25.py26.py27 这样的列表吗?

关于python - 如何为一组特定的 python 版本创建 Python 轮? py2.py3-none-any.whl 太宽泛,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46687955/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com