Expand description
Backward-compatibility checks for evolving JSON Schema documents and OpenAPI 3.1 contracts.
Build input documents with SchemaDocument::from_json, then call
check_compat with a Role. This crate intentionally exposes only the
document-level JSON Schema compatibility API; lower-level resolved IR types
live in json_schema_ast. OpenAPI validation and lowering live in the
sibling jsoncompat_openapi crate; this crate layers compatibility reports
over those lowered request and response schemas.
Structs§
- Open
ApiCompatibility Issue - Open
ApiCompatibility Report - Open
ApiDocument - Schema
Document - Fully resolved JSON Schema document.
- Schema
History - Schema
Version Entry - Stamp
Bundle - Stamp
Manifest - Stamp
Result
Enums§
- Compatibility
Error - Compatibility-check failures that are distinct from a proven incompatibility.
- Compatibility
Warning - Compatibility diagnostics that do not prevent a modeled comparison.
- Open
ApiCompatibility Error - Open
ApiCompatibility Surface - Open
ApiError - Open
ApiLowering Error - Role
- The role under which a compatibility check is performed.
- Stamp
Error - Stamp
Status
Constants§
Functions§
- canonical_
schema_ hash - check_
compat - Return whether
newis backward-compatible witholdunderrole. - check_
openapi_ compat - compatibility_
warnings - Return non-fatal compatibility diagnostics for one schema document.
- explain_
compat_ failure - Return a best-effort static explanation for the first incompatibility under
role, orOk(None)when the checker finds no incompatibility to explain. - stamp_
schema - validate_
compatibility_ input - Return whether this schema can participate in compatibility checks.
- validate_
openapi_ compatibility_ input - Return whether an OpenAPI document is fully supported by the compatibility layer.
- write_
stamp_ manifest_ atomic
Type Aliases§
- Schema
Build Error - Public schema-build error name used by
SchemaDocument::from_json.