Versioning & Release Policy
Nimbus follows semantic versioning and predictable release practices so teams can upgrade safely.
Semantic versioning
- Major (
X.0.0): breaking API/behavior changes. - Minor (
0.X.0/X.Y.0): backward-compatible features. - Patch (
X.Y.Z): backward-compatible fixes and security patches.
Backward compatibility commitments
- Public APIs are kept stable within a major version.
- Deprecations should be documented before removal.
- Behavioral changes affecting production should be called out in release notes.
Deprecation lifecycle
- Mark feature as deprecated in docs and changelog.
- Provide migration path and replacement API.
- Remove only in the next major release unless it is a critical security issue.
Release quality gates
Every release should pass the CI workflow:
go test ./...go test -race ./...go vet ./...
CI workflow location: .github/workflows/ci.yml
Upgrade guidance for teams
- Pin framework versions in production and upgrade in staging first.
- Run migrations and queue workers against the new version before rollout.
- Review release notes for deprecations and operational changes.