-
Notifications
You must be signed in to change notification settings - Fork 27
Release Procedures
A release candidate should be created after the community has determined that a release should occur. These steps should be followed when generating a release candidate and when completing the release.
The version number of the release should be known at the point of release since it will have been discussed on the lists prior to the release process. However, AIT adheres to Semantic Versioning whenever possible. Review changes carefully and determine what version number increments are needed for the current release.
Append -rc#
, where # indicates the current release candidate number starting at 1, when creating a release candidate.
-
setup.py
- Core package version number -
doc/source/conf.py
- Documentation package version numbers
-
setup.py
- GUI package version number. It's very likely that a GUI release will coincide with a Core release so be sure to increment both if necessary. -
doc/source/conf.py
- Documentation package version numbers -
ait/gui/static/package.json
- GUI package version number
CHANGELOG.md
should be updated with changes since the previous release. Use of Github Changelog Generator is recommended and example calls that should be used are below. Otherwise, manually generating the updates is acceptable.
> github_changelog_generator --since-tag 0.34.0 -t <your github api key> --future-release <version # for this release>
> github_changelog_generator --since-tag 0.21.0 -t <your github api key> --future-release <version # for this release>
Note, the --since-tag
values are set to the above values to filter out changes made prior to the release to Github to ensure that issue numbers don't incorrectly link to unrelated tickets.
GUI static files require NPM dependencies to be installed. From the root directory of AIT GUI:
> cd ait/gui/static
> npm run build
Commit all changes made related to the release. At the minimum the commit message should include Preparation for <version> release
Tag the appropriate version and push to Github
> git tag <version>
> git push --tags
Email the lists regarding the release availability. If this is a release candidate notify the list of availability and propose a vote for release.
TODO
TODO