返回介绍

Python 2.7 和 3.4 支持

发布于 2023-08-07 21:02:43 字数 2226 浏览 0 评论 0 收藏 0

它要求开源项目的维护者支持许多Python版本,因为在保持所有版本之间的代码兼容的同时又保留了只有在较新的Python版本上才可能实现的特性,这就需要额外的成本。

在Python2和3的例子中,两种语言之间的差异使其更加突出,因为许多新的Python3特性不能在Python2/3兼容的代码库中使用。

python2.7eol已经达到 in 2020 ,最后一次发布是在2020年4月。

Python已达到EOL 4.3 in 2019 ,最后一次发布于2019年3月。

基于这些原因,2019年6月决定 比重试验4.6 该系列将是最后一个支持Python2.7和3.4的系列。

这对普通用户意味着什么

多亏了 python_requires setuptools选项,使用现代pip版本的python2.7和python3.4用户将自动安装最新的pytest 4.6.X版本,即使PyPI上有5.0或更高版本。

用户应该确保他们使用的是最新的pip和setuptools版本。

4.6.X版本的维护

直到2020年1月,pytest核心团队将许多错误修复从主版本移植到 4.6.x 分支机构,每年都会发布几个4.6.X版本。

从现在起,核心团队将 不再主动后端口修补程序 但是 4.6.x 分支将继续存在,这样社区本身就可以提供补丁。

核心团队很乐意接受这些补丁,并发布新的4.6.X版本 until mid-2020 (但是把这个日期看作是一个大概的日期,在那之后,团队可能仍然会决定为关键bug发布新的版本)。

技术方面

(此部分是 #5275

在本节中,我们将介绍Python2.7和3.4支持计划的技术方面。

4.6.X版本有哪些功能

新的4.6.X版本只包含错误修复。

4.6.X何时发布

新的4.6.X版本将在我们有几个bug要发布之后,或者如果几个星期过去了(比如在最新的4.6.X版本发布后的一个月内修复了一个bug)。

这里没有硬性规定,只是大概而已。

谁负责应用错误修复

我们的核心维护人员希望仍然使用Python2.7/3.4并且受到bug影响的人们可以从活动分支中升级并提供补丁和/或端口错误修复。

我们很乐意为有兴趣的用户提供指导,所以请不要犹豫。

将更改后移植到4.6中

请遵循以下说明:

  1. git fetch --all --prune

  2. git checkout origin/4.6.x -b backport-XXXX #在这里使用PR号码

  3. 在PR上找到merge commit,在 合并 消息,例如:

    nicodedemus将commit 0f8b462合并到pytest中-开发:功能

  4. git cherry-pick -m1 REVISION #使用上面找到的版本 (0f8b462

  5. 打开公关目标 4.6.x

    • 在邮件前面加上前缀 [4.6] 所以这是一个明显的后场

    • 删除PR body,它通常包含一个重复的commit消息。

为4.6提供新的PRs

新拉请求到 4.6.x 将被接受,前提是活动分支中的等效代码不包含该bug(例如,一个bug仅特定于python2)。

在主流版本中也会发生的错误修复应该首先在那里修复,然后按照上面的说明进行后端口移植。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文