[Python-Dev] Python version numbers

Brett Cannon brett at python.org
Tue Apr 3 16:08:28 EDT 2018


On Tue, 3 Apr 2018 at 11:18 Barry Warsaw <barry at python.org> wrote:

> On Apr 3, 2018, at 05:51, Paul G <paul at ganssle.io> wrote:
>
> > Switching to CalVer is a pretty clear sign that there is now a "rolling
> backwards compatibility window", and it allows Python to skip right over
> the mythical "Python 4" and directly to "Python 21". Additionally, since
> the version number will be trivially predictable, deprecation warnings can
> actually include the version after which they will be dropped - so if a
> feature is slated to be removed 5 years after it is initially deprecated,
> just take the deprecation release version and add 5.
>
> Changing the versioning scheme is a topic that comes up every now and
> then, and I think it’s worth exploring, but I also don’t think we should do
> anything about it until the EOL of Python 2.7 at the earliest (if ever).
>
> That said, and assuming we keep the current scheme, I think there’s a
> natural place to label “Python 4” - we have to break the C API to get rid
> of the GIL and/or adopt GC over refcounting, or something of that nature.
> I think there is no interest or appetite for a Python source level breaking
> change like 2->3, so I wouldn’t expect anything more than the usual changes
> at the Python source level for 3.x->4.  Of course, you’d like to mitigate
> the breakage of extension modules as much as possible, but should that be
> unavoidable, then it would warrant a first digit version bump.
>
> OTOH, some calver-like scheme would be interesting too if we shorten the
> release cycle.  Could we release a new Python version every 12 months
> instead of 18?  Can we adopt a time-based release policy, so that whatever
> gets in, gets in, and the rest has to wait until the next release?  That’s
> certainly more painful when that wait is 18 months rather than something
> shorter.  But if releases come more quickly, that has implications for the
> deprecation policy too.  And it puts pressure on the second digit because
> something like Python 3.53 is distasteful (especially because it would be
> easily confused with 3.5.3).  Python 21.12 anyone? :)
>

Are we at the PEP/language summit topic point yet in this discussion since
Guido has said he's not interested in changing the status quo? ;)
Versioning is like naming variables, so this thread could go on forever.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/python-dev/attachments/20180403/2a019509/attachment.html>


More information about the Python-Dev mailing list