PEP 641: open issue for the idea of standardizing on double digit minor version numbers (#1715)

This commit is contained in:
Brett Cannon 2020-11-13 13:30:41 -08:00 committed by GitHub
parent 19bac6162a
commit acb6e4c0a0
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 25 additions and 0 deletions

View File

@ -125,6 +125,31 @@ updated to use an underscore as well (e.g. ``.pyc`` files, the import
path to the zip file for the stdlib). It is not known how useful it path to the zip file for the stdlib). It is not known how useful it
would be to make this pervasive. would be to make this pervasive.
Standardizing on double digit minor version numbers
---------------------------------------------------
An alternative suggestion has been made to disambiguate where the
major and minor versions start/stop by forcing the minor version to
always be two digits, padding with a ``0`` as required. The advantages
of this is it makes the current ``cp310`` interpreter tag accurate,
thus minimizing breakage. It also does differentiate going forward.
There are a couple of drawbacks, though. One is the disambiguation
only exists *if* you know that the minor version number is two digits;
compare that to ``cp3_10`` which is unambiguous regardless of your
base knowledge. The potential for a three digit minor version number
is also not addressed by this two digit requirement.
There is also the issue of other interpreters not following the
practice in the past, present, or future. For instance, it is
unknown if other people have used a three digit version portion of the
interpreter tag previously for another interpreter where this rule
would be incorrect. This change would also require interpreters that
currently have a single digit minor version -- e.g. PyPy 7.3 -- to
change from ``pp73`` to ``pp703`` or make the switch from their next
minor release onward (e.g. 7.4 or 8.0). Otherwise this would make this
rule exclusive to the ``cp`` interpreter type which would make it more
confusing for people.
References References
========== ==========