宣布阿里云 Python SDK 即将终止 Python 2.7 和 Python 3.6 的支持
本文中含有需要您注意的重要提示信息,忽略该信息可能对您的业务造成影响,请务必仔细阅读。
声明内容
从 2024 年 5 月 1 日起,阿里云 Python SDK 将不再继续支持 Python 2.7 运行时和低于版本 Python 3.6 的 Python 3 运行时,也就是正式终止对 Python 2.7 和 Python 3.6 及以下版本的支持。
Python 2.7 - 将于 2024 年 5 月 1 日停止维护。
Python 3.6 及以下 - 将于 2024 年 10 月 1 日停止维护。
其中,Python 2.7 涉及的仓库有:V1.0、V2.0 ,Python 3 涉及的仓库有:V1.0、V2.0 ,具体参考版本支持列表。
注:该图片来源于链接
为什么我们要终止对 Python 2.7、Python 3.6 的支持?
Python 软件基金会 (PSF)即 Python 语言管理机构,会发布 Python 各个版本的终止时间表。当社区宣布不再支持某个语言的某个版本后,我们后续在【一年左右】时间也必然会对该版本进行下线操作。本次对 Python 2.7 和 Python 3.6 的停止维护公告出来较晚,后续将会遵照 SLA 约定的时间来发布终止维护的公告,终止维护的时间请参见Python 版本维护矩阵概览。
Python 2.7
Python 2.7.18 是 Python 2 的最后一个版本。官方声明,截至 2020 年 1 月 1 日,不会再有新的错误报告、修复或更改 Python 2,并且不再支持 Python 2。
截止到目前,许多行业 Python 项目和包都已停止支持 Python 2.7。我们也将加入这些弃用的行列,以维护安全且最新的 SDK。
Python 3.6
Python 3.6.15 是 Python 3.6 的最后一个版本。截至 2021 年 12 月 23 日,官方宣布终止对 Python 3.6 的支持。Python 各版本状态请参考 Status of Python versions 。
终止支持意味着什么?
自各版本终止日期起,阿里云 Python SDK 将不再对 Python 2.7 和 Python 3.6 运行时应用安全补丁进行更新。此外,使用 Python 2.7 和 Python 3.6 的 SDK 将不再进行技术支持。
关于 Python 2.7,从 2024 年 5 月 1 日起,您将无法再使用 Python 2.7 运行时调用新增的阿里云产品 OpenAPI。
关于 Python 3.6,从 2024 年 10 月 1 日起,您将无法获得通过 Python 3.6 环境访问 OpenAPI 的技术支持,并且在升级 SDK Major 版本后,会出现编译报错的情况。关于 Python3 SDK,我们会集中发布一个 Major 版本,来弃用对 Python 3.6 版本的支持。
假设 SDK 版本 1.x.x 支持 Python 3.6 版本,我们为了终止 Python 3.6 的支持,会官方发布 2.0.0 版本,并声明该 SDK 支持 Python 3.7 及以上的环境,您若不将 Python 版本升级至 Python 3.7 及以上,则将不能再升级 SDK 版本为 2.0.0。
现有的 Python 2.7 SDK 仍然可以运行吗?
是的,Python 2.7 SDK 将继续运行。但是强烈建议您将 SDK 迁移到受支持的运行时版本,以便您继续接收安全补丁并保持获得技术支持的资格。
现有的 Python 3 SDK 还支持 Python 3.6 及以下版本吗?
是的,只要您不升级 Python 3 SDK 的 Major 版本,则可以一直在 Python 3.6 环境中运行。但是强烈建议您将 SDK 迁移到受支持的运行时版本,以便您可以支持访问最新的阿里云产品 OpenAPI。
您需要做什么?
Python 2.7
您若使用的是 V1.0 版 Python SDK:
假如您想继续保持 Python 2.7 的运行环境。
您需要严格控制 Python SDK 的版本号在可支持 Python 2.7 环境的 Major 版本以内。例如您使用的 SDK 版本为 1.x.x,而 2.x.x 不再支持 Python 2.7 环境,您需要保证 SDK 版本范围为
>=1.0.0, <2.0.0
。
假如您需要使用 SDK 最新的功能。
则需要放弃您的 Python 2.7 环境,需要升级 SDK 的运行环境至 SDK 支持的 Python 版本,并升级您的 SDK 版本。怎么判断是否是 V1.0 SDK,SDK 包名若是如安装所示,则为 V1.0 SDK。
您若使用的是 V2.0 版 Python SDK:
假如您想继续保持 Python 2.7 的运行环境。
继续使用现有的 Python2 SDK,包名规则为
alibabacloud-{product}{version}-py2
,带有后缀-py2
。
假如您需要使用 SDK 最新的功能。
Python 3.6
无论您使用的是 V1.0 版还是 V2.0 版的 Python SDK:
假如您想继续保持 Python 3.6 的运行环境。
您需要严格控制 Python SDK 的版本号在可支持 Python 3.6 环境的 Major 版本以内。例如您使用的 SDK 版本为 2.x.x,而 3.x.x 不再支持 Python 3.6 环境,您需要保证 SDK 版本范围为
>=2.0.0, <3.0.0
。
假如您需要使用 SDK 最新的功能。
则需要放弃您的 Python 3.6 环境,需要升级 SDK 的运行环境至 SDK 支持的 Python 版本,并升级您的 SDK 版本。
需要注意的是,在将更改应用于生产应用程序之前,您应该测试 SDK 的 Python 语言的兼容性。
如何将 Python 2 升级到 Python 3?
Python 社区提供有用的指南和工具来帮助您将 Python 2 代码移植到 Python 3。有关更多信息,请阅读:
Python 版本维护矩阵概览
阿里云 SDK 对 Python 版本的支持矩阵如下:
Python 版本 | PSF宣布终止支持时间 | 阿里云 SDK 终止支持时间 |
2.7 (PEP 373) | 2020 年 1 月 1 日 | 2024 年 5 月 1 日 |
3.6 (PEP 494) | 2021 年 12 月 23 日 | 2024 年 10 月 1 日 |
3.7 (PEP 537) | 2023 年 6 月 27 日 | 预计 2025 年 5 月 |
3.8 (PEP 569) | 预计 2024 年 10 月 | 预计 2025 年 10 月 |
3.9 (PEP 596) | 预计 2025 年 10 月 | 预计 2026 年 10 月 |
3.10 (PEP 619) | 预计 2026 年 10 月 | 预计 2027 年 10 月 |
3.11 (PEP 664) | 预计 2027 年 10 月 | 预计 2028 年 10 月 |
3.12 (PEP 693) | 预计 2028 年 10 月 | 预计 2029 年 10 月 |
需要额外的帮助怎么办?
如果您有任何疑问,请通过OpenAPI 开发者门户反馈或“OpenAPI 开发者门户 - 值班服务群3群”群的钉钉群号: 11695023429 联系我们。