Search code examples
pythonsemantic-versioningpep

Does PEP 0440 allow omitting the separator for development releases?


PEP 0440 includes the following two statements which seem to be contradictory:

Development releases allow a . , - , or a _ separator as well as omitting the separator all together. The normal form of this is with the . separator. This allows versions such as 1.2-dev2 or 1.2dev2 which normalize to 1.2.dev2 .

and

Note that devN and postN MUST always be preceded by a dot, even when used immediately following a numeric version (e.g. 1.0.dev456 , 1.0.post1 ).

Is the 2nd statement wrong? Is it allowed to omit the separator all together? If so, what is the process for alerting the PEP author to correct the PEP?


Solution

  • Martijn's comment is correct, the 2nd statement is regarding the normalized form.

    Donald Stufft confirmed on the distutils-sig@python.org mailer:

    Once normalized it must have a dot. The normalization is applied first.