This PR adds prerelease support in a stricter fashion than is defined in semver v2.0.0-rc.1
Instead of allowing any string to represent the prerelease, scmversion enforces a <type>.<version> format for the prerelease segment, for example:
1.2.3-alpha.1 instead of 1.2.3-alpha
This is easier to automate and sort and provides as much expressiveness as would otherwise be gained by a fully to spec prerelease implementation.
I also added comments in several places where they were lacking and added some new specs on old functionality to bring up the overall code quality as I came across deficient areas.
Build # support came along with this feature:
1.2.3+build.1
1.2.3-alpha.2+build.123
Note that this is a backwards incompatible change as it changes the default action on auto bump.
Further, as per semver, we should have already passed the 1.0.0 release as people depend on our API. For both these reasons, this PR should prompt a 1.0.0 release.
This PR adds prerelease support in a stricter fashion than is defined in semver v2.0.0-rc.1
Instead of allowing any string to represent the prerelease, scmversion enforces a
<type>.<version>
format for the prerelease segment, for example:1.2.3-alpha.1
instead of1.2.3-alpha
This is easier to automate and sort and provides as much expressiveness as would otherwise be gained by a fully to spec prerelease implementation.
I also added comments in several places where they were lacking and added some new specs on old functionality to bring up the overall code quality as I came across deficient areas.
Build # support came along with this feature:
1.2.3+build.1
1.2.3-alpha.2+build.123
Note that this is a backwards incompatible change as it changes the default action on auto bump.
Further, as per semver, we should have already passed the 1.0.0 release as people depend on our API. For both these reasons, this PR should prompt a 1.0.0 release.