jsondesc: Disallow unknown properties #1748

Merged
sb10q merged 1 commits from dpn/artiq:schema-disallow-unknown into master 2026-02-01 12:13:43 +08:00
Contributor

This helps to catch typos made in drafting core device schemata.
For instance, previously typo'ing "edge_counter": true as
"edge_counters": true would lead to it silently being ignored.

This required switching to a (meta-)schema version more recent by
one release, as unevaluatedProperties is not supported in draft-7
yet.


I am not very familar with JSON Schema, so alternative suggestions are very welcome, but in my limited tests, this appears to be doing the right thing (disallow properties not matched against in the various peripheral cases).

This helps to catch typos made in drafting core device schemata. For instance, previously typo'ing `"edge_counter": true` as `"edge_counters": true` would lead to it silently being ignored. This required switching to a (meta-)schema version more recent by one release, as unevaluatedProperties is not supported in draft-7 yet. --- I am not very familar with JSON Schema, so alternative suggestions are very welcome, but in my limited tests, this appears to be doing the right thing (disallow properties not matched against in the various peripheral cases).
dpn added 1 commit 2026-02-01 06:48:43 +08:00
This helps to catch typos made in drafting core device schemata.
For instance, previously typo'ing `"edge_counter": true` as
`"edge_counters": true` would lead to it silently being ignored.

This required switching to a (meta-)schema version more recent by
one release, as unevaluatedProperties is not supported in draft-7
yet.
sb10q merged commit dffb2c8f10 into master 2026-02-01 12:13:43 +08:00
dpn deleted branch schema-disallow-unknown 2026-02-01 19:52:01 +08:00
Sign in to join this conversation.