Releasing Klein

Klein is released on a time-dependent basis, similar to Twisted.

Each version is numbered with the major portion being the last two digits of the year, and the minor portion being the zero-indexed release number. That is, the first release of 2016 would be 16.0, and the second would be 16.1.

Doing a Release

  1. Create a branch called “release-<version>”
  2. Run python incremental.update Klein --rc && python incremental.update Klein
  3. Commit, and push the branch
  4. Open a PR from the branch (follow the usual process for merging a PR).
  5. Pull latest master: git checkout master && git pull --rebase
  6. Clear the directory of any other changes using git clean -f -x -d  .
  7. Tag the release using git tag -s <release> -m "Tag <release> release"
  8. Push up the tag using git push --tags.
  9. Make a pull request for this changes. Continue when it is merged.
  10. Generate the tarball and wheel using python sdist bdist_wheel.
  11. Upload the tarball and wheel using twine upload dist/klein-*.