summaryrefslogtreecommitdiff
path: root/CONTRIBUTING.md
diff options
context:
space:
mode:
authorkotfu <kotfu@kotfu.net>2018-05-28 18:30:26 -0600
committerkotfu <kotfu@kotfu.net>2018-05-28 18:30:26 -0600
commit28dfc55c5b161fa2667b41b7d5310600afc7b1b6 (patch)
tree458072366505db37c9732a5d3cf5333e7c72742c /CONTRIBUTING.md
parent9e598bdec40555bc9e5884017c3190c7e8158d7d (diff)
downloadcmd2-git-28dfc55c5b161fa2667b41b7d5310600afc7b1b6.tar.gz
Add section for publishing a new release
Diffstat (limited to 'CONTRIBUTING.md')
-rw-r--r--CONTRIBUTING.md15
1 files changed, 14 insertions, 1 deletions
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index 7f381daf..1eb8395c 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -484,6 +484,19 @@ excellent support for debugging console applications.
[PyCharm](https://www.jetbrains.com/pycharm/) is also quite good and has very nice [Code Inspection](https://www.jetbrains.com/help/pycharm/code-inspection.html) capabilities.
-### Acknowledgement
+## Publishing a new release
+
+Since 0.9.2, the process of publishing a new release of `cmd2` to [PyPi](https://pypi.org/) has been
+mostly automated. The manual steps are all git operations. Here's the checklist:
+
+1. Make sure you are on the proper branch
+2. Make sure the version strings in `cmd2.py`, `conf.py`, `setup.py`, and `test_cmd2.py` are correct.
+3. Make sure all the unit tests pass.
+4. Make sure `CHANGELOG.md` describes the version and has the correct release date.
+5. Create and push a git tag that matches the version strings above.
+6. (Optional) Run `invoke pypi_test` to clean, build, and upload a new release to [Test PyPi](https://test.pypi.org)
+7. Run `invoke pypi` to clean, build, and upload a new release to [PyPi](https://pypi.org/)
+
+## Acknowledgement
Thanks to the good folks at [freeCodeCamp](https://github.com/freeCodeCamp/freeCodeCamp) for creating
an excellent `CONTRIBUTING` file which we have borrowed heavily from.