[Python-ideas] module version number support for semver.org
Terry Reedy
tjreedy at udel.edu
Tue Apr 15 06:41:34 CEST 2014
On 4/14/2014 11:51 AM, Jörn Hees wrote:
> what do you think about officially supporting Semantic Versioning?
> ( http://semver.org )
> Key differences
> ===============
There are two types of differences. First are the syntax differences,
which you discuss and illustrate. The top-level x.y.z syntax of semver
is compatible with PEP440. The incompatibilites come in the postfix
tags, and in particular, the use of '.' versus '-' following 'z'.
Second are the semantic differences, which you did not discuss. PEP 440
does not prescribe a meaning for major, minor, micro(patch) numbers.
Semver does. As I read semver.org, semver syntax without semver
semantics is not Semantic Versioning. So officially supporting Semantic
Versioning should mean adopting the semantics. Indeed, a project could
use semver semantics for x.y.z while using PEP 440 syntax for postfix tags.
For Python, the semantics would require that each Python version get a
new major number, and that the minor number might always be 0. I don't
see that as useful. Semantic semver would only be practical on a module
by module basis (or in some cases, packages).
As I said in response to this same post on python-list, one problem with
mechanical semantic interpretation of version numbers, the supposed
justification for the system, is that such interpretation does not work
as soon as one accidentally makes a release that violates the semantic
rules.
--
Terry Jan Reedy
More information about the Python-ideas
mailing list