-
Notifications
You must be signed in to change notification settings - Fork 5.5k
Release instructions
Ben Darnell edited this page Jun 10, 2022
·
9 revisions
- Each release is identified by a tag of the form
vX.Y.Z
(e.g.v4.4.0
). All three numbers are included in the tag, although the trailing.0
is generally omitted in other contexts. Beta releases have a suffix likeb1
. - Release tags (non-beta) are annotated: create the tag with
git tag -a v4.4.0
and paste in the release notes. - Branches named
branchX.Y
track the latest release in each series. These branches are also used onreadthedocs.org
to host the documentation for that version. - The branch named
stable
tracks the latest release (same as the most recentbranchX.Y
) and is used as the default version in the docs (so that URLs are stable across versions)
- For a patch release, work on the appropriate
branchX.Y
and cherry-pick as needed. - Release notes live in
docs/releases/vX.Y.Z.rst
, and must be linked fromdocs/releases.rst
. - Update version numbers in
tornado/__init__.py
. See the comments in__init__.py
about theversion_info
struct. - Tag the release:
git tag -a vX.Y.Z
and paste the release notes into the editor window that pops up. - Push the tag to github:
git push origin vX.Y.Z
. Also push all updated branches. - When a tag is pushed, source distributions and binary wheels are built on CI and pushed to pypi automatically.
- If this release creates a new
branchX.Y
, go toreadthedocs.org
and enable builds for that branch. - Update the version number on the master branch. In between releases the version number has a
.dev1
suffix (or occasionally.dev2
, etc, if we want to mark particular milestones in the in-development version): release4.4.0
is followed by version4.5.0.dev1
. - Announce on python-tornado and python-tornado-announce mailing lists.