Skip to content

Instantly share code, notes, and snippets.

@audreyfeldroy
Last active March 9, 2020 19:26
Show Gist options
  • Star 12 You must be signed in to star a gist
  • Fork 3 You must be signed in to fork a gist
  • Save audreyfeldroy/9f1564ea049c14f682f4 to your computer and use it in GitHub Desktop.
Save audreyfeldroy/9f1564ea049c14f682f4 to your computer and use it in GitHub Desktop.
My PyPI Release Checklist 2 (now with bumpversion)
  • Update HISTORY.rst
  • Commit the changes:
git add HISTORY.rst
git commit -m "Changelog for upcoming release 0.1.1."
  • Update version number (can also be patch or major)
bumpversion minor
  • Install the package again for local development, but with the new version number:
python setup.py develop
  • Run the tests:
tox
  • Release on PyPI by uploading both sdist and wheel:
python setup.py sdist upload
python setup.py bdist_wheel upload
  • Test that it pip installs:
mktmpenv
pip install my_project
<try out my_project>
deactivate
  • 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.
@westurner
Copy link

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.

From https://github.com/pypa/readme , this should parse the python package long_description string with docutils:

pip install readme
python setup.py check -r -s

@westurner
Copy link

@discdiver
Copy link

Thanks for this great resource! Twine is now the recommended way to package for building and uploading packages to PyPI. Instructions are on the linked URL.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment