[tooling] Update schema generation #280
Merged
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.
We automatically generate JSON Schema for some of our data classes to help users manage our complex nested data structures. Previously, we simply tried to import the right modules and then search through the loaded modules for schemas to generate. This PR refines/fixes that approach by specifically targeting only and all the schemas needed to describe:
The first commit of this PR is just the code changes (including two bug fixes in Resource definitions), then the second commit is the consequence of deleting all the old schemas and then regenerating them. The latter commit has more changes than is absolutely necessary because a while back we switched to
sort_keys=True
when writing the JSON, but we don't overwrite old content if its data content is correct (just its keys are out of order).