Release processΒΆ

  1. Verify no high priority issues are outstanding.

  2. Run the full test suite with fresh environments for all versions: tox -r (Everything MUST pass.)

  3. Ensure these files all have the correct version number:
    • CHANGELOG
    • setup.py
    • csvkit/cli.py
    • docs/conf.py
  4. Tag the release: git tag -a x.y.z; git push --tags

  5. Roll out to PyPI: python setup.py sdist upload

  6. Iterate the version number in all files where it is specified. (see list above)

  7. Flag the new version for building on Read the Docs.

  8. Wait for the documentation build to finish.

  9. Flag the new release as the default documentation version.

  10. Announce the release on Twitter, etc.