// the find
datacontract/datacontract-cli
Enforce Data Contracts
A CLI (and Python library) for the Open Data Contract Standard: it lints contract YAML, connects to 18+ real data sources to run schema and quality checks against actual tables, and converts contracts to and from 25+ formats (SQL DDL, Avro, dbt, JSON Schema, Iceberg, Excel, etc). Aimed at data engineers who want contracts to be enforced against production data, not just documented.
Tests run against live systems (Snowflake, BigQuery, Databricks, Postgres, Redshift...) rather than just validating YAML shape, so a passing contract means something. Breaking-change detection and changelog generation between two contract versions is a real CI gate, not a nice-to-have. Import/export is genuinely pluggable — separate importer/exporter modules per format make it easy to see what's actually supported versus half-implemented. dbt sync (generate dbt tests from a contract, or vice versa) closes a gap most contract tools leave to glue scripts.
The `[all]` extra pulls in drivers for a dozen unrelated warehouses (Oracle, HANA, Redshift, Snowflake, Kafka...) in one dependency tree, which is exactly the kind of install that breaks in a locked-down corporate environment. Tests are documented as broken on native Windows with a shrug toward WSL — a real cost if your data team isn't all on Linux/Mac. The Docker path calls out its own output as truncated to 80 columns with line breaks, which is a rough edge for anyone trying to capture output in a pipeline. It's a single CLI trying to be the front end for both authoring, testing, and format conversion — powerful, but the surface area means a schema or auth quirk in one connector (there are 18+) is easy to hit and hard to predict from the docs alone.