This document outlines the versioning and release strategy for the Autonomi GitHub Actions.
We follow Semantic Versioning (SemVer):
- MAJOR version when you make incompatible API changes
- MINOR version when you add functionality in a backwards compatible manner
- PATCH version when you make backwards compatible bug fixes
v1.0.0- Specific version tags for exact version pinningv1.0- Minor version tags (automatically updated)v1- Major version tags (automatically updated)
- Update version references in documentation
- Test thoroughly with different configurations
- Update CHANGELOG.md with new features/fixes
- Ensure all examples work with the new version
-
Create and push version tags:
git tag v1.0.0 git tag -f v1.0 # Move/create minor version tag git tag -f v1 # Move/create major version tag git push origin v1.0.0 git push origin v1.0 --force git push origin v1 --force
-
Create GitHub release with release notes
Update all documentation references to use the new version.
Use specific version tags for stability:
uses: maidsafe/autonomi-actions/spawn-autonomi-network@v1.0.0Use major version tags for latest features:
uses: maidsafe/autonomi-actions/spawn-autonomi-network@v1When introducing breaking changes:
- Increment MAJOR version
- Document migration path in CHANGELOG.md
- Provide deprecation warnings when possible
- Maintain backward compatibility for at least one minor version when feasible
main- Latest stable releasedevelop- Development branch for next releasev1.x- Maintenance branches for major versions (if needed)
- Test with multiple Autonomi versions
- Test different node counts (small, medium, large)
- Test with and without EVM
- Test cleanup under various failure scenarios
- Verify examples work correctly