-
Verify that issues about new release are closed https://github.com/python-semver/python-semver/issues and verify that no pull requests that should be included in this release haven't been left out https://github.com/python-semver/python-semver/pulls
-
Verify that continuous integration for latest build was passing https://travis-ci.com/python-semver/python-semver
-
Verify that
__version__in semver.py have been updated and follow https://semver.org/ -
Verify that CHANGELOG have been updated. No WIP should be present in CHANGELOG during release!
-
If one or several supported Python versions have been removed or added, verify that the 3 following files have been updated:
-
Verify that doc reflecting new changes have been updated and are available at https://python-semver.readthedocs.io/en/latest/ If necessary, trigger doc build at https://readthedocs.org/projects/python-semver/
-
Add eventually new contributor(s) to CONTRIBUTORS
-
Ensure that long description (ie README.rst) can be correctly rendered by Pypi using
restview --long-description -
Upload it to TestPyPI first:
git clean -xfd python setup.py sdist bdist_wheel --universal twine upload --repository-url https://test.pypi.org/legacy/ dist/*If you have a
~/.pypircwith atestpyisection, the upload can be simplified:twine upload --repository testpyi dist/* -
Upload to PyPI
git clean -xfd python setup.py register sdist bdist_wheel --universal twine upload dist/* -
Go to https://pypi.org/project/semver/ to verify that new version is online and page is rendered correctly
-
Tag commit and push to github using command line interface
git tag -a x.x.x -m 'Version x.x.x' git push python-semver master --tags
or using GitHub web interface available at https://github.com/python-semver/python-semver/releases