是时候停止使用 Python 3.6

回复
头像
shaoziyang
帖子: 3917
注册时间: 2019年 10月 21日 13:48

是时候停止使用 Python 3.6

#1

帖子 shaoziyang »

来自:https://pythonspeed.com/articles/stop-using-python-3.6/
 升级到新的软件版本是一种工作,而且这种工作对你的软件用户没有好处。用户关心的是功能和错误的修复,而不是你有多快的更新速度。
但是你可以推迟升级的时间是有限的,对于 Python 3.6 来说,现在就是升级的时候了。从2021年12月起,Python 3.6将达到其生命的终点。

没有更多的错误修复。

不再有安全修复。

"它已经死了,吉姆。"

截至2021年12月中旬,从PyPI下载的软件包中有15%是针对Python 3.6的。那是很多人和很多组织,所有这些人都应该尽快升级。

升级可能也会涉及到一些其他的变化,所以我们将讨论其中的一些问题,特别是关注长期支持的Linux发行版。我将自始至终依靠非常有用的endoflife.date网站来了解生命结束的日期。

寿终正寝是什么意思?

Python 3.6 于 2016 年 12 月发布,比我写这篇文章早了 5 年。 正如你在 看到的 PEP 494 中
  • 错误修复和安全修复子版本在前两年每 3 个月发布一次。
  • 之后,根据需要进行发布。
  • 发布将在 3.6 发布 5 年后停止。
也就是说,2021 年 12 月是 Python 3.6 发布的最后一个月。 从 2022 年 1 月开始,如果存在严重的安全漏洞,Python 开发团队将无法修复它。

“我不需要升级,我在长期支持 Linux!”

某些 Linux 发行版保证在已知时间段内提供长期支持,包括安全漏洞修复。 如果您正在使用这些发行版之一,并且它包含 Python 3.6,则即使 Python 开发团队不提供,您也可以依靠该发行版来提供安全修复。 所以理论上,你还不需要升级。 在实践中,有一些注意事项。

首先,较旧的发行版最终将停止获得支持。
  • Ubuntu 18.04 在 2023 年 4 月停止获取安全更新。
  • RHEL 7 将于 2024 年 6 月停止获取安全更新。
其次,虽然您将获得安全更新,但您不一定会获得其他错误修复。

Ubuntu 18.04 和 RHEL 7 目前仅限于安全更新。

第三,您的依赖项将停止获取更新。 第三方 Python 库和框架将开始放弃对 Python 3.6 的支持。 这意味着如果这些库有一个严重的错误,修复程序可能无法在 Python 3.6 上使用,并且您的 Linux 发行版在很大程度上不会为现有的每个 Python 库进行向后移植。

这在Java世界里上演着,只有当你有足够新的Java版本时,才可能升级到解决关键安全漏洞的log4j版本。如果你还没有升级,你就有麻烦了。
  • 打了补丁的log4j 2.15.0版本至少需要使用Java 8。如果你使用的是Java 7,你将需要升级到Java8
  • 当有活跃的漏洞,而你需要快速打补丁时,如果你长期以来一直在更新你的其他依赖关系,那是很有利的。
 
 

回复

  • 随机主题
    回复总数
    阅读次数
    最新文章