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