[protocolbuffers/protobuf]在 setup.py 中添加 python-require

2024-05-11 662 views
2

我看到 protobuf 有一些提交停止了 python2 的测试和构建轮子:

https://github.com/protocolbuffers/protobuf/commit/2fbc07b2439c2518a4985972c9e78d07b44603c2 https://github.com/protocolbuffers/protobuf/pull/8891

并且代码现在不支持python2:https://github.com/protocolbuffers/protobuf/issues/8984

所以我想我可以假设 protobuf 目前不支持 python2。我认为我们应该python_requires在 setup.py 中添加一个字段,pip 和诗歌将检查该字段并回退到旧版本(如果它在 python2 环境中)。

回答

9

@Lothiraldan 正如您上面链接的文档和semver所说,我认为发布一个主要版本(4.0.0)并撤回当前版本 3.18.0 是正确的方法。

8

@acozzette @teboring @haberman 请看一下。

9

@aisk 抱歉请问,4.0.0 版本在哪里?我在 Pypi 上没有看到它,也没有看到 4.0.0 的标签或分支。

3

此更改将破坏旧代码,因此最好发布主要版本。但如果 protobuf 有它自己的版本控制策略,我认为这是可以的,该python_requires领域应该解决大多数问题(除了拥有旧版本 pip / setuptools 的人)。

7

我认为我们需要一个带有包含 Python 2 的 python_requires 的 3.17.4 版本,然后是一个放弃 Python 2 支持的版本 3.18.1。

他们可能应该只发布 3.18.1 并从 PyPI 中拉出或删除3.18.0

1

谢谢,@aisk。我正准备发布 3.18.1 版本,其中将包含此修复程序。