catkin_pkg_create and catkin_prepare_release should make valid semantic versions
sloretz opened this issue · 2 comments
By default catkin_create_pkg
creates a package with a version number 0.0.0
, and catkin_prepare_release
automatically bumps the patch version. This results in a lot of packages releasing version 0.0.1
, but semantic versioning recommends starting at 0.1.0
.
Proposed solution:
- make
catkin_create_pkg
default to version0.1.0
- Change the auto-bump-patch-version feature of
catkin_prepare_release
to only auto-bump if there exists a tag for the current version.- If the user manually provides a
--bump
option, thencatkin_prepare_release
should continue to honor that regardless of whether a tag is found.
- If the user manually provides a
Change the auto-bump-patch-version feature of catkin_prepare_release to only auto-bump if there exists a tag for the current version.
I don't like the idea of making the decision what to do based on more state. It just makes it more difficult for people to comprehend why it does different things in otherwise the same situation.
How about changing the default bump to use minor if your version is 0.0.1? The user will see the explicit prompt and should be able to explicitly request a patch bump.
Looks like 0.0.z
is valid after all. semver.org has a regular expression example that includes 0.0.4
as a valid version. Closing.