Skip to main content

Crate panproto_check

Crate panproto_check 

Source
Expand description

§panproto-check

Breaking change detection for panproto.

This crate analyzes schema migrations and lens definitions to determine whether a proposed change is backward-compatible, producing detailed diagnostics when breaking changes are found.

The pipeline is:

  1. diff() two schemas to produce a SchemaDiff.
  2. classify() the diff against a Protocol to get a CompatReport.
  3. Render via report_text (human-readable) or report_json (machine-readable).

Re-exports§

pub use classify::BreakingChange;
pub use classify::Classification;
pub use classify::CompatReport;
pub use classify::NonBreakingChange;
pub use classify::classify;
pub use classify::classify_with_schemas;
pub use diff::ConstraintChange;
pub use diff::ConstraintDiff;
pub use diff::KindChange;
pub use diff::SchemaDiff;
pub use diff::apply_renames;
pub use diff::diff;
pub use error::CheckError;
pub use report::report_json;
pub use report::report_text;
pub use scope::ElementStatus;
pub use scope::NamedElement;
pub use scope::ScopeChange;
pub use scope::ScopeChangeKind;
pub use scope::ScopeReport;
pub use scope::report_by_scope;
pub use scope::report_scope_json;
pub use scope::report_scope_text;

Modules§

classify
Classification of schema diffs into breaking vs. non-breaking changes.
diff
Structural diffing of two schemas.
error
Error types for the check crate.
report
Human-readable and machine-readable report generation.
scope
Scope-level diff reporting.