Set version numbers. Since 0.12.0 the semantics plugins and features no longer have individual version numbers. Instead all plugins share the version of the corresponding release.
To set the version number in all pom files, manifests of all plugins and features, including their references in other files run the following script located in build/scripts/ in the semantics repository:
Code Block language bash
python version.py x.x.x
By the way, this is a good time to make sure that every plugin has a proper license file and proper metadata. Go check the nightly RCA build to make sure that plugin names and provider names are set correctly.
- Check if all plug-ins to be released are contained in a feature. This is particularly important for new plug-ins.
- Update the splash screen and about screen with the new version number.
- Create a release branch in the mainline repository. From this point on, the master branch can be used for normal development, while the release branch will only receive bugfixes and release-specific changes. Bugfixes are usually first developed on the master branch, and are then cherry-picked into the release branch.
- Increase the version numbers on the master branch. After the release the master should have the version of the next release.
Configure the build files in the repository. The build instruction in the repository must be configured for the release build. To apply the configuration run the following script located in build/scripts/:
Code Block language bash
python configure.py -release x.x.x
This script is also capable of configuring the repository for a nightly build, to force correct configuration or revert effects of a release cofiguation.
Tell Bamboo to build the release. Configure the build plan of the last release to build the new one. Change the following settings:
- Build Repository (corresponding release branch)Deploy target path (rsync) of both p2 and product task
- semanticsReleaseVersion Variable
- Plan name
- Publish a few release candidates for testing. Test! One aspect of testing is to assign demo videos to everyone to walk through. Make sure to create tickets for them so that everyone records his findings somewhere.
- Proclaim a commit freeze on the release branch. Once all tickets are fixed, no one has any business pushing stuff into the release branch anymore!
- Update top-level update site. This is done by adding the new update site URL to
compositeContent.xml. These two files are in
- Create a tag of the release.
- Publish release nodes and update download links in:
- Close the Jira version, set the new default version, and add a new version.
- Send the word out to the mailing list and do a release party!