ChatterBot follows the following rules when it comes to new versions and updates.
ChatterBot follows semantic versioning as a set of guidelines for release versions.
- Major releases (2.0.0, 3.0.0, etc.) are used for large, almost entirely backwards incompatible changes.
- Minor releases (2.1.0, 2.2.0, 3.1.0, 3.2.0, etc.) are used for releases that contain small, backwards incompatible changes. Known backwards incompatibilities will be described in the release notes.
- Patch releases (e.g., 2.1.1, 2.1.2, 3.0.1, 3.0.10, etc.) are used for releases that contain bug fixes, features and dependency changes.
The following procedure is used to finalize a new version of ChatterBot.
- We make sure that all CI tests on the master branch are passing.
- We tag the release on GitHub.
- A new package is generated from the latest version of the master branch.
python setup.py sdist bdist_wheel
- The Python package files are uploaded to PyPi.
twine upload dist/*