We follow Semantic Versioning and aim to minimize upgrade pain.
Once something is marked Deprecated, removal will happen no earlier than:
- two minor releases (e.g. deprecated in
1.3.x→ earliest removal in1.5.0), or - six (6) months from the announcement date — whichever is later.
- Runtime
DeprecationWarningwhere feasible (with a suggested alternative). - Changelog entries with introduced / deprecated / removed versions.
- Documentation notes and migration hints.
- Where possible, shims/redirected imports kept for the whole grace period.
- Stability of public imports from the root package
rbacx(seeAPI_STABILITY.md). Any change here goes through deprecation with a proper transition period.
Critical security fixes may require immediate behavior changes.