That documentation seems like a "layman's explanation" of how semantic 
versioning works. I suspect anyone familiar with semantic versioning will read 
that and think, "Ah, yes, this is a semantic versioning scheme." 

Regardless of the semantics (har har) of whether Python "follows strict 
semantic versioning", a change to the versioning scheme (CalVer should be 
backwards compatible with SemVer, mind you, since (21, 0, 0) > (3, 8, 0)) 
should make it absolutely clear that Python is not following SemVer.

Counter-intuitively, I think the *fact* of pinning the major version number to 
3 is a worse signal of "we're not going to break everything" than switching to 
CalVer could. By switching to CalVer, you are removing the *ability* to signal 
a discontinuous major breaking change just by the version number. It is very 
much a "burn your boats so you can't retreat" philosophy to versioning.

Of course, if we want to reserve the ability to have sudden and major breaking 
changes, then yes, sticking with the current semi-SemVer system is fine, but I 
suspect that the fact that minor releases can break backwards compatibility 
will be confusing and annoying for most people (not me, because I know about it 
and I test against nightly), and as long as there's a "3" in the "major" slot, 
people will speculate about the possibility of a "4".

On 04/03/2018 09:07 AM, Paul Moore wrote:
> On 3 April 2018 at 13:51, Paul G <p...@ganssle.io> wrote:
>> Maybe this has already been discussed ad nauseum, but is the idea here that 
>> Python will stay on Python 3.x, but also start breaking backwards 
>> compatibility with old versions? That would seem to be a violation of 
>> semantic versioning.
> 
> Python's versions don't follow strict semantic versioning. See
> https://docs.python.org/3/faq/general.html#how-does-the-python-version-numbering-scheme-work
> 
> Paul
> 

Attachment: signature.asc
Description: OpenPGP digital signature

_______________________________________________
Python-Dev mailing list
Python-Dev@python.org
https://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com

Reply via email to