diff options
author | Jeremy Bowman <jbowman@edx.org> | 2018-05-17 14:18:03 -0400 |
---|---|---|
committer | Jeremy Bowman <jbowman@edx.org> | 2018-05-17 14:23:53 -0400 |
commit | 37978a703cf4d306a3e0426d9dabfa1fb04e36d1 (patch) | |
tree | 6340ee753133ab5ef3e0a972a504c6aaa9471f58 /docs | |
parent | 50e3ba6e94a655dec916c9f9fe28b7434622547f (diff) | |
download | external_python_setuptools-37978a703cf4d306a3e0426d9dabfa1fb04e36d1.tar.gz external_python_setuptools-37978a703cf4d306a3e0426d9dabfa1fb04e36d1.tar.bz2 external_python_setuptools-37978a703cf4d306a3e0426d9dabfa1fb04e36d1.zip |
Update release process docs
Diffstat (limited to 'docs')
-rw-r--r-- | docs/releases.txt | 37 |
1 files changed, 24 insertions, 13 deletions
diff --git a/docs/releases.txt b/docs/releases.txt index 30ea084f..234f69ee 100644 --- a/docs/releases.txt +++ b/docs/releases.txt @@ -7,20 +7,31 @@ mechanical technique for releases, enacted by Travis following a successful build of a tagged release per `PyPI deployment <https://docs.travis-ci.com/user/deployment/pypi>`_. -Prior to cutting a release, please check that the CHANGES.rst reflects -the summary of changes since the last release. -Ideally, these changelog entries would have been added -along with the changes, but it's always good to check. -Think about it from the -perspective of a user not involved with the development--what would -that person want to know about what has changed--or from the -perspective of your future self wanting to know when a particular -change landed. - -To cut a release, install and run ``bump2version {part}`` where ``part`` +Prior to cutting a release, please use `towncrier`_ to update +``CHANGES.rst`` to summarize the changes since the last release. +To update the changelog: + +1. Install towncrier via ``pip install towncrier`` if not already installed. +2. Preview the new ``CHANGES.rst`` entry by running + ``towncrier --draft --version {new.version.number}`` (enter the desired + version number for the next release). If any changes are needed, make + them and generate a new preview until the output is acceptable. Run + ``git add`` for any modified files. +3. Run ``towncrier --version {new.version.number}`` to stage the changelog + updates in git. + +Once the changelog edits are staged and ready to commit, cut a release by +installing and running ``bump2version {part}`` where ``part`` is major, minor, or patch based on the scope of the changes in the -release. Then, push the commits to the master branch. If tests pass, -the release will be uploaded to PyPI (from the Python 3.6 tests). +release. Then, push the commits to the master branch:: + + $ git push origin master + $ git push --tags + +If tests pass, the release will be uploaded to PyPI (from the Python 3.6 +tests). + +.. _towncrier: https://pypi.org/project/towncrier/ Release Frequency ----------------- |