fix: fix bad validation of definitions #616
Open
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.
Sometimes,
traverse
accidentally traverses a non-schema object, e.g. instead traversing theproperties
object of a schema.This then causes validation errors if one of these properties is "invalid" (e.g. you have a key called
deprecated
).Using
traverse
instead oftraverseObjectKeys
seems to fix this, since then we don't traverse on objects that containBLACKLISTED_KEYS
.For an example, see the test case I added. On the current
master
branch, shows the following error:For a real world use-case, I was trying to use the OpenAPI 3.1 JSON Schema in my app and I got this validation error.