Is the 'one-version-per-repo' limitation with Bloom, GIT only?
In the "Releasing a new version of a catkin Package" [1] tutorial for Bloom, the following statement can be found under "1. Preparing the Upstream Repository":
Even if you do not use this tool, you must have one or more valid package.xml(s) with the same version and a matching tag in your upstream repository.
Since one cannot tag only part of a GIT repository, this seems to imply that all packages in a repository must be released with the same version. The Groovy wikipage [2] states the following:
bloom allows a source code repository to contain any number of packages, related or not. The only caveat to having multiple packages in a single repository is that they must be released with a common version number, i.e. one release version number per repository.
which seems to confirm this.
I'm wondering whether this limitation is due to the use of GIT as an upstream repository, or if this is the result of a limitation in Bloom (or I could also be misunderstanding something).
Would using a subversion repository as an upstream work around this (ie: by tagging individual package directories)?
For my particular use case I'd like to be able to release packages independently, even if they share the same repository. I'd like to be able to add and change packages without having to re-release any of the already existing or unchanged ones (while taking dependencies into account of course). I'm getting the impression from the documentation that this is not possible, at least not with the Bloom & Catkin combination.
Is creating separate repositories for packages that should be independendently 'releasable' the only option?
- www.ros.org/wiki/bloom/Tutorials/ReleaseCatkinPackage
- ros.org/wiki/groovy