The following are the steps to follow when doing a release of the Scribble project:
<work in progress>
Update the version in the source
The version number is defined in each pom.xml file, but when referenced in dependencies, is referred to using a property defined in the top level pom.xml (or tools/pom.xml for the tools build).
All of these locations need to be updated within the pom.xml files.
If dealing with a snapshot version (if moving from or to), then don't forget that within the pom.xml files, the format of the version is <major>.<minor>.<point>-SNAPSHOT. Whereas when dealing with non-snapshot releases, the format is <major>.<minor>.<point>.<tag>.
The value of the tag will dependent upon the nature of the release. The Scribble project uses the following conventions:
- <date>-M? - milestone, where ? represents a numerical value. The reason for the date prefix is to ensure that it is lexically in the correct order in respect of the other tags that come later in the cycle.
- CR? - candidate release, where ? represents a numerical value.
- Final - final release.
The other location where version information is defined is within the OSGi bundle and Eclipse plugin MANIFEST.MF files.
For the OSGi bundles, the MANIFEST.MF bundle version should be <major>.<minor>.<point>-SNAPSHOT or the release version as above.
For the Eclipse plugins, the MANIFEST.MF bundle version should be <major>.<minor>.<point>.qualifier or the release version as above. If the release version is not set, then maven/tycho will complain when building the release, that the qualifier based version does not match the version being used in the pom.xml.