Skip to content

Stability and deprecation policy

fastly-sync follows Semantic Versioning.

Versioning

  • MAJOR — incompatible API changes (feat! / BREAKING CHANGE:).
  • MINOR — backwards-compatible features (feat) and deprecations (deprecate) / removals after a deprecation window (remove).
  • PATCH — backwards-compatible fixes (fix) and performance (perf).

Versions are computed from Conventional Commits by multicz. While 0.x, treat minor bumps as potentially breaking.

Deprecation cadence (n + 2)

The project uses the standard Python n + 2 cadence:

  1. Announce + warn — in release n, mark the API deprecated with a DeprecationWarning and a deprecate: commit. The old behaviour still works.
  2. Grace period — release n + 1 keeps the deprecated API working.
  3. Remove — release n + 2 removes it with a remove: commit.

Each step is a normal release; the deprecation announcement is the breaking-change notice, so the removal itself is a minor bump.

What is covered

The documented CLI (fastly-sync sync and its flags) and the public Python API. Anything underscore-prefixed, undocumented, or explicitly marked internal may change at any time.