Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update release process docs #1376

Merged
merged 1 commit into from May 18, 2018
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
1 change: 1 addition & 0 deletions changelog.d/1352.misc.rst
@@ -0,0 +1 @@
Added ``tox`` environment for documentation builds.
1 change: 1 addition & 0 deletions changelog.d/1353.doc.rst
@@ -0,0 +1 @@
Added coverage badge to README.
1 change: 1 addition & 0 deletions changelog.d/1356.doc.rst
@@ -0,0 +1 @@
Made small fixes to the developer guide documentation.
1 change: 1 addition & 0 deletions changelog.d/1376.doc.rst
@@ -0,0 +1 @@
Updated release process docs.
37 changes: 24 additions & 13 deletions docs/releases.txt
Expand Up @@ -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
-----------------
Expand Down
1 change: 0 additions & 1 deletion towncrier_template.rst
Expand Up @@ -8,7 +8,6 @@
{% for text, values in sections[section][category].items() %}
* {{ values|join(', ') }}: {{ text }}
{% endfor %}

{% else %}
* {{ sections[section][category]['']|join(', ') }}

Expand Down