Update scripts/RELEASE_CHECKLIST.md

The list has had several changes - modifications relevant to the switch
between GitHub and Gitlab, and commit tagging information is now noted.

Importantly, the "Packaging Guide" was removed because it didn't add
anything to the document that wasn't already in the checklist, and the
"PyPI Credentials" section was removed because storing credentials in
plaintext is a bad idea so following it makes little sense.
This commit is contained in:
John Helmert
2019-09-16 14:32:38 -05:00
parent b6dc9da257
commit 16fbe589e2

View File

@@ -1,35 +1,17 @@
Release Checklist Release Checklist
----------------- -----------------
1. Switch to the master branch and stash any uncommited changes. 1. Switch to the master branch and stash/commit any uncommited changes.
2. Bump the version number in [tuir/\_\_version\_\_.py](tuir/__version__.py). 2. Bump the version number in [tuir/\_\_version\_\_.py](tuir/__version__.py).
3. Update the release notes in the [CHANGELOG.rst](CHANGELOG.rst). 3. Update the release notes in the [CHANGELOG.rst](CHANGELOG.rst).
<!-- TODO: Fix the build_authors script. For now it is good enough to edit manually. -->
4. Update the contributor list by running [``scripts/build_authors.py``](scripts/build_authors.py). 4. Update the contributor list by running [``scripts/build_authors.py``](scripts/build_authors.py).
5. Re-generate the manpage by running [``scripts/build_manpage.py``](scripts/build_manpage.py). 5. Re-generate the manpage by running [``scripts/build_manpage.py``](scripts/build_manpage.py).
6. Make sure the bundled packages are up-to-date by running [``scripts/update_packages.py``](scripts/update_packages.py). 6. Commit all changes to the correct branch and tag the correct commit with its version.
7. Commit all changes to the master branch. 7. Smoke test the new release on Python 2 and Python 3.
8. Clean out any old build/release files by running [``scripts/pip_clean.py``](scripts/pip_clean.py). 8. Push the unpublished changes and the tag.
9. Build the source tarball and binary wheel: ``$ python3 setup.py sdist bdist_wheel`` 9. Clean out any old build/release files by running [``scripts/pip_clean.py``](scripts/pip_clean.py).
10. Upload the packages to PyPI: ``$ twine upload dist/*`` 10. Build the source tarball and binary wheel: ``$ python3 setup.py sdist bdist_wheel``
11. Verify that the upload was successful: ``$ pip install tuir --upgrade --force-reinstall`` 11. Upload the packages to PyPI: ``$ twine upload dist/*``
12. Smoke test the new release on Python 2 and Python 3. 12. Verify that the upload was successful: ``$ pip install tuir --upgrade --force-reinstall``
12. Create a new release on Github and copy the release notes from the changelog. 13. Delete any old and unused branches that have been merged.
13. Use Github to delete any old branches that have been merged.
Packaging Guide
---------------
The most up-to-date and pragmatic guide on packaging for PyPI is given here (as of Fall 2017):
https://packaging.python.org/tutorials/distributing-packages/
PyPI Credentials
----------------
PyPI credentials are stored in plaintext in the **~/.pypirc** file.
```
[pypi]
username = michael-lazar
password = secret
```