发布时间:2019/11/09 22:00:38   更新时间:2020/07/31 19:48:56
参考:https://www.python.org/dev/peps/pep-0602/
Python指导委员会成员Brett Cannon代表委员会宣布,接受新发布周期的 PEP 602 的提案。
(Brett也被认为是继Python之父 Guido之后的BDFL的代表)。
指导委员会认为,当达到Beta、RC和最终版本时,每年有一个一致的时间表将对社区有所帮助,这有助于社区对时间点的可预测性。
这种可预测性体现在:
1、知道何时开始测试Beta,以提供反馈。
2、知道何时期望RC,以便社区可以准备他们最终版本的项目。
3、了解最终版本的发布时间,以协调Python最终版本的发布(如有必要)。
4、让核心开发者更轻松地计划工作以确保如期完成目标。
此举的目的在于让社区有足够的时间在Beta版本中提供反馈,同时让开发者有足够的时间来全面测试RC并为最终版本做准备。
采用一年发布一个大版本旨在让整个开发发布流程更具有可预测性。每个版本将获得一年的完整支持和四年的安全更新。
PEP 602的作者是Python 3.8和3.9的发布经理?ukasz Langa,因为 Python 3.8已经发布,所以新的发布周期将从Python 3.9开始采用。
而 Python 语言项目团队对于新的版本开发周期是这样规划的:
1、在一年周期开始前的 5 个月时间里(跟上一个周期的末尾重合,因为每个周期的末尾基本上是修复 bug,时间比较充裕),各个开发者自由开发讨论,提交特性,但不合并到开发分支。
2、一年开发周期的前 7 个月,确定 feature 并完成 Alpha 版本。
3、然后花费 4 个月的时间用于修复 bug,以完成 Beta 版本。
4、最后 1 个月收尾,最终发布正式版。
5、正式版发布之后,一年之内会获得完整支持,5 年之内会有安全更新。
python3.8.0之前,大版本大约18个月发布一次。这次修改后,我们可以预测一下,python3.9的发布时间:
Python3.9.0 : 2020/10/xx (预测)
Python3.8.0 : 2019/10/21
Python3.7.0 : 2018/06/27
Python3.6.0 : 2016/12/23
Python3.5.0 : 2015/09/13
Python3.4.0 : 2014/03/17
Python3.3.0 : 2012/09/29
Python3.2.0 : 2011/02/20
Python2.7.0 : 2010/07/03
Python3.1.0 : 2009/06/26
Python3.0.0 : 2008/12/03
Python2.6.0 : 2008/10/02
Python2.5.0 : 2006/09/19
Python2.4.0 : 2004/11/30
Python2.3.0 : 2003/07/29
Python2.2.0 : 2001/12/21
Python2.0.1 : 2001/06/22