Release HOWTO¶
Test¶
Tests can be run via pytest:
$ pip install -r extra/requirements-test.txt
$ pytest -v tests
When preparing a release it is important to check that jnrbase
works with all
supported Python versions, and that the documentation for executing them is
correct.
Prepare release¶
With the tests passing, do the following steps:
Update the version data in
jnrbase/_version.py
Update
NEWS.rst
with any user visible changesCommit the release notes and version changes
Create a signed tag for the release
Push the changes — including the new tag — to the GitHub repository
Create a new release on GitHub
Update PyPI¶
Create and upload the new release tarballs to PyPI using twine:
$ ./setup.py sdist bdist_wheel
$ gpg --detach-sign --armour dist/jnrbase-${version}.tar.gz
$ gpg --detach-sign --armour dist/jnrbase-${version}-*.whl
$ twine upload dist/jnrbase-${version}*
Fetch the uploaded tarballs, and check for errors.
You should also test installation from PyPI, to check the experience
jnrbase
’s end users will have.