- bump2version Version-bump your software with a single command
- bumpversion is the original project off of which
- tbump is a complete rewrite, with a nicer UX and additional features, like running commands (aka hooks) before or after the bump. It only works for Git repos right now.
- ADVbumpversion is another fork. It offered some features that are now incorporated by its author into
bump2version. This fork is thus now deprecated, and it recommends to use
- zest.releaser manages your Python package releases and keeps the version number in one location.
- setuptools-scm relies on version control tags and the state of your working copy to determine the version number.
- incremental integrates into setuptools and maintains the version number in
- Invocations packaging.release are a set of tasks for invoke. These assume your version is in
_version.pyand you’re using semantic versioning.
- python-semantic.release automatically bumps your (semantic) version number based on the types of commits (breaking/new/bugfix) in your source control.
- PyCalVer is very similar to bump2version, but with support for calendar based versioning.
Change log building
- towncrier assembles a changelog file from multiple snippets found in individual (merge) commits.
- releases helps build a Sphinx ReStructuredText changelog.
- gitchangelog searches the git commit history to make a configurable changelog file.
- Python Packaging User Guide
- Packaging and distributing projects
- The .pypirc file
- A sample Python project by pypa