ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange |
1 | initial version |
The reason is that the release script tags the versions within the VCS (see octomap_mapping for example). With a subsequent release of different code for the same version, the previous one will be overwritten, causing future builds of the previously tagged version to fail. The debian packages themselves will be fine, but there will be all kinds of nasty surprises in the build process (I've been there...).
If your code is built with "rosmake" (=rosrelease-legacy), you can actually use four digits. I have used that in the past to differentiate between identical version which only differed in the release distro (e.g. depending on different stacks). So there was e.g. 1.2.0 for electric and 1.2.0.1 for fuerte.
When releasing with catkin and bloom, there is a debian-increment number that could be used for that, so the version is 1.2.0 while the released debian package has version 1.2.0-1 and 1.2.0-2.