Description
Description
It would be useful to support PEP 440 versioning alongside, or instead of, semantic versioning (they are similar, with subtle differences in identifiers).
Use cases
Poetry enforces PEP 440. pip
, pypi
and setuptools
all will or currently do support it, and may also require it. Since this package is intended for python specifically, it would make sense to support versioning that adheres to the accepted format.
Possible implementation
Currently, there is a --prerelease
option. In PEP 440, you can also have post releases, dev releases, and local versions. It would be nice / required to have those options as kwarg flags as well (like --postrelease
, --dev
, --local
).
In terms of prerelease
, the prerelease_tag
would have to go from accepting any input to accepting only those valid in the spec (alpha
, beta
, pre
, preview
, a
, b
, c
, and rc
).
PEP 440 also provides regular expressions that can be used to check and extract existing version identifiers, which could be useful in automatically determining the next version of a valid release.