Skip to content

Instantly share code, notes, and snippets.

@pydanny
Last active August 3, 2016 07:23
Show Gist options
  • Save pydanny/d6305eca4d065f2365dd to your computer and use it in GitHub Desktop.
Save pydanny/d6305eca4d065f2365dd to your computer and use it in GitHub Desktop.
  • 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:
tox
  • Use restview package to confirm long description will look nice on PyPI:
pip install restview
sudo restview --long-description --pypi-strict
  • Commit the changes:
git add .
git commit -m "Release 1.2.0"
  • Build the source distribution:
python setup.py sdist
  • Test that the sdist installs:
mktmpenv
cd dist
tar xzvf my_project-1.1.0.tar.gz
cd my_project-1.1.0/
python setup.py install
<try out my_project>
deactivate
  • Release on PyPI:
pip install -U 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
  • Tag the last git commit with the version number:
git tag -a 1.2.0

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, use the readme package, installable off of PyPI, to determine why.
  • 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.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment