I use setuptools_scm for versioning hg-git, with the release-branch-semver scheme, where I have release branches named e.g. 1.0.x and 1.1.x. When doing a stable release, I do it on the release branch and merge it into default. Unfortunately, the devN is merely calculated as the length to the most recent tag, which then makes it decrease after a minor release is merged into the main development branch.
I checked, and I can reproduce this using both Mercurial and Git sources. For example, the version determined relative to 1.1.0 is 1.2.0.dev26+g7069705 whereas after the merge, it.s 1.2.0.dev17+g5b33fad.
As best I can tell, you cannot easily customise the devN part. For release-branch-semver, I believe it should either:
- Use some monotonically increasing value, like the date or a timestamp.
- Somehow take the minor into account, e.g. by multiplying the distance by 100 or 1000 times the minor release number.
I use
setuptools_scmfor versioning hg-git, with therelease-branch-semverscheme, where I have release branches named e.g.1.0.xand1.1.x. When doing a stable release, I do it on the release branch and merge it intodefault. Unfortunately, thedevNis merely calculated as the length to the most recent tag, which then makes it decrease after a minor release is merged into the main development branch.I checked, and I can reproduce this using both Mercurial and Git sources. For example, the version determined relative to
1.1.0is1.2.0.dev26+g7069705whereas after the merge, it.s1.2.0.dev17+g5b33fad.As best I can tell, you cannot easily customise the
devNpart. Forrelease-branch-semver, I believe it should either: