Contributing to AGFusion
April 14, 2026 ยท View on GitHub
Releasing a New Version
AGFusion uses bump2version to manage versioning. It automatically updates the version in setup.py, commits the change, and creates a git tag. Pushing a tag triggers the PyPI deployment workflow automatically.
Install bump2version:
pip install bump2version
Stable releases
# Patch release (e.g. 1.4.3 -> 1.4.4)
bump2version patch
# Minor release (e.g. 1.4.3 -> 1.5.0)
bump2version minor
# Major release (e.g. 1.4.3 -> 2.0.0)
bump2version major
Pre-releases (alpha / beta / release candidate)
Use --new-version to set the exact pre-release version following PEP 440 conventions (a = alpha, b = beta, rc = release candidate):
# Start an alpha (e.g. next minor alpha)
bump2version --new-version 1.6.0a1 minor
# Increment alpha number
bump2version --new-version 1.6.0a2 minor
# Promote to beta
bump2version --new-version 1.6.0b1 minor
# Promote to release candidate
bump2version --new-version 1.6.0rc1 minor
# Final stable release
bump2version --new-version 1.6.0 minor
Pre-releases are published to PyPI and are installable with:
pip install --pre agfusion
Push to trigger deployment
After bumping, push the commit and tag to GitHub โ the CI workflow will publish to PyPI automatically:
git push && git push --tags