Release process#

One-time setup

pip install --upgrade build twine
  1. All tests pass on continuous integration

  2. The changelog is up-to-date and dated

  3. The version number is correct in:

    • setup.py

    • docs/conf.py

    • csvkit/cli.py

  4. Check for new authors:

    git log --perl-regexp --author='^((?!James McKinney).*)$'
    
  5. Tag the release:

    git tag -a x.y.z -m 'x.y.z release.'
    git push --follow-tags