On 04. 04. 21 16:34, Łukasz Langa wrote:
On 4 Apr 2021, at 01:15, Miro Hrončok <email@example.com mailto:firstname.lastname@example.org> wrote:
However, I need to ask: Would this also happen if there was a rc version of 3.9.3?
Good question. The RC would not help. Most importantly, 3.9.3 was itself an expedited release due to its security content. When I *did* use an RC phase for 3.9.2, which also contained security fixes, it met with considerable backlash and urges to release the update faster. And I ultimately did, two days after the RC was out. Informed by this experience, I would have likely skipped the RC for 3.9.3 anyway.
More generally, RCs historically provided little value. Since Python 3.4 we've provided 55 bugfix releases. Five of those included an RC2, suggesting testing caught a regression. Let's look closer:
- *none* of those happened for 3.8 and 3.9 releases;
- two of those are a single issue in 3.7.1rc1 and 3.6.7rc1:
- one was found by a third-party during "*preparation for Python 3.8*" and it
- one was found by a third-party using *nightly* Python builds in CI
- one was found by a core developer *running regression tests* on what
So, we're looking at a single instance of a bug found an RC1 installer being out there. Python 3.0 through 3.3 had limited user penetration so looking at those isn't informative. But we can look at Python 2.7, and that one had a *single* rc2 in its 10 years of bugfix releases. That was 2.7.3rc2, in *2012*. It was in the Windows help file, discovered by a core developer looking through it.
In the time of 3.8 and 3.9 so far, there was a single hotfix release which was due to a regression not caught by a published release candidate (https://bugs.python.org/issue41304 https://bugs.python.org/issue41304).
Given the information above, I stand by my decision (confirmed with other release managers) to skip RCs for bugfix releases.
Thanks for the thoughtful analysis, Łukasz!