Schema comparison
Maps fields by fieldname and separates additions, removals, property changes and order movement into reviewable groups.
Day 024 / Frappe / Schema Comparison
A dependency-free Python CLI that compares two exported Frappe DocType definitions without connecting to a site or exposing record data.
Maps fields by fieldname and separates additions, removals, property changes and order movement into reviewable groups.
Ignores labels, descriptions, defaults and arbitrary metadata so diagnostic output stays focused on structural facts.
Provides text or JSON output and distinct exit codes for no change, differences found and invalid input.
Added and removed field detection
Safe structural property comparison
Field-order change reporting
Labels, descriptions and defaults omitted
No site connection or schema mutation
Ten passing standard-library tests
Argparse, pathlib and JSON provide the complete dependency-free command-line workflow.
Models fieldname identity, field order and allowlisted structural flags found in exported DocType definitions.
Ten tests cover differences, ordering, privacy boundaries, validation, formatting and command-line behavior.