From 7823fd26c83204af67dea5caf3221b8e22c44242 Mon Sep 17 00:00:00 2001 From: Riccardo Magliocchetti Date: Mon, 24 Oct 2022 18:01:53 +0200 Subject: RELEASE: document the release process --- RELEASE.md | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 RELEASE.md diff --git a/RELEASE.md b/RELEASE.md new file mode 100644 index 00000000..5d3b0106 --- /dev/null +++ b/RELEASE.md @@ -0,0 +1,27 @@ +## How to cut a new stable release + +Stable releases are tagged from the `uwsgi-2.0` branch. Changes to the `uwsgi-2.0` branch are +cherry-picked from the `master` branch. + +Before tagging a new release the release notes should be updated and a file named +`Changelog-2.0.XY.rst` where XY is the number of the release created in +the [uwsgi-docs repository](https://github.com/unbit/uwsgi-docs). The file should then be referenced +the newly created changelog file from the `index.rst`. + +In order to cut a new release you have to first bump the version and then tag with the same version +the last commit in git. All the commands are assumed to be run from the `uwsgi-2.0` branch. + +The the tag should be pushed to git and the source distribution created with the following commands. +Please remember to substitute XY with proper version. + +``` +git tag 2.0.XY +git push ---tags origin HEAD +git archive HEAD --prefix uwsgi-2.0.XY/ -o uwsgi-2.0.XY.tar.gz +``` + +Then the tarball must be uploaded to pypi with: + +``` +python3 -m twine upload uwsgi-2.0.XY.tar.gz +``` -- cgit v1.2.1