backward_compatibility

Public interface

Semantic Versioning (or semver) depends on public interface changes.

protoprimer public interface contains these components:

  • schema (config files)

  • CLI (see EnvState.state_args_parsed)

  • API (public entries in protoprimer.primer_kernel)

Enforcement

The enforcement is implemented in local_test package via:

  • pydantic for schema compatibility

  • cliff for CLI compatibility

  • griffe for API compatibility