The old repository A tag jumps in Plop —-after Matsuo Basho (1644-1694)
7.7.1. Releasing principles¶
- Cross-check CI green lights. Are all Travis builds green? Is nightly Jenkins build green?
- Cross-check Read The Docs documentation builds. Are docs building fine? Is this check done as part of the continuous integration? If not, add it.
- Cross-check demo site builds. Is demo site working?
- check-manifest Are all files included in the release? Is this check done as part of the continuous integration? If not, add it.
- Update I18N message catalogs.
- Update version number. Stick to semantic versioning.
- Generate release notes. Use kwalitee prepare release v1.1.0.. to generate release notes. Use empty commits with “AMENDS” to amend wrong past messages before releasing.
- Push a pre-release to testpypi. Try a test install from there.
- Tag it. Push it. Sign the tag with your GnuPG key. Push it to PyPI. Is the PyPI deployment done automatically as part of the continuous integration? If not, add it.
- Bump it. Don’t forget the issue the pull request with a post-release
version bump. Use
- Add release notes on GitHub. Tweet it. Post it. Make publicity for production-ready releases. This is not automated yet.
7.7.2. Structured release notes¶
The release notes are prepared from the commit log messages that should include the following labels:
|commit label||release notes section|
|(AMENDS)||(amending past messages)|
For more, see kwalitee.