Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Hopefully this is a simplification. JSONSchema is just really terrible in general for what we are trying to do. However it still has some uses when it comes to validation. This is just a wrapper around how the JSONSchema is generated so that we reduce mistakes.
When the old schema and the new schema were exported as json objects this was the diff between them:
This diff shows that the only things that changed were the ordering of
Custom
andCompoundCustomClass
in the globaltype
variable limiter enum. This change is desirable because now the order that is in the enum limiter is the same order as the checks appear.The other diff shows a similar movement of a field in the
CompoundCustomClass
schema definition of the valueclass
which also now aligns with its ordering in the properties. Additionally the final diff shows that we had missed adding "components" as a required field to theCompoundCustomClass
meaning that this change has already been able to catch a user error, caused from needless manual repetition.