1. Tag the version, e.g.::

    $ git tag v1.2.3b4

2. Test-build and check the source and binary packages::

    $ rm -rf build dist
    $ python setup.py bdist_wheel sdist
    $ twine check dist/*

   Address any warnings or errors that appear.

3. Upload the packages to the TEST instance of PyPI::

    $ twine upload -r testpypi dist/*

4. Check at https://test.pypi.org/project/sdmx1/ that:

   - The package can be downloaded, installed and run.
   - The README is rendered correctly.
   - Links to the documentation go to the correct version.

   If not, modify the code and repeat from step 2.

5. Upload to PyPI::

    $ twine upload dist/*

6. Push the commit and tag to Github::

    $ git push --tags

7. Edit doc/whatsnew.rst, adding a new heading for the next release.
