- Update HISTORY.rst
- Update version number in
my_project/__init__.py
- Update version number in
setup.py
- Install the package again for local development, but with the new version number:
python setup.py develop
- Run the tests:
python setup.py test
tox
- Commit the changes:
git add .
git commit -m "Release 0.1.1"
- Build the source distribution:
python setup.py sdist
- Test that the sdist installs:
mktmpenv
cd dist
tar xzvf my_project-0.1.1.tar.gz
cd my_project-0.1.1/
python setup.py install
<try out my_project>
deactivate
- Release on PyPI:
python setup.py sdist upload
- Test that it pip installs:
mktmpenv
pip install my_project
<try out my_project>
deactivate
- Tag the last git commit with the version number:
git tag -a 0.1.1
Put the same message as in HISTORY.rst.
- Push:
git push
- Push tags:
git push --tags
- Check the PyPI listing page to make sure that the README, release notes, and roadmap display properly. If not, copy and paste the RestructuredText into http://rst.ninjs.org/ to find out what broke the formatting.
- Edit the release on GitHub (e.g. https://github.com/audreyr/cookiecutter/releases). Paste the release notes into the release's release page, and come up with a title for the release.