Config Maker¶
ConfigMaker assembles a Config with sensible
defaults. Each switch enables a family of comparison rules.
You can use Config directly if you need more detailed settings.
ConfigMaker only simplifies the process by including standard templates.
For detailed information about the allowed parameters, see make()
from jsonschema_diff import ConfigMaker
# Minimal default configuration
config = ConfigMaker.make()
# Fine tuned configuration
config = ConfigMaker.make(
tab_size=4,
list_comparator=False, # disable list diffing
additional_compare_rules={str: CustomComparator},
)
The resulting object is Config.
Comparator-specific settings (advanced)¶
Use Config.COMPARE_CONFIG for comparator-specific knobs.
For such cases, configure Config directly.
For CompareList:
DICT_MATCH_THRESHOLD(float, default:0.10) controls how strictly dictionary elements are matched inside arrays.This is intentionally not exposed as a dedicated
ConfigMakerargument.
from jsonschema_diff.core import Config
from jsonschema_diff.core.custom_compare import CompareList
config = Config(
compare_rules={
list: CompareList,
},
compare_config={
CompareList: {
"DICT_MATCH_THRESHOLD": 0.25,
},
},
)