Skip to content

Explicitly Inferred

Compare
Choose a tag to compare
@mattpolzin mattpolzin released this 14 Nov 00:47
· 49 commits to main since this release
b1d7ed3

What's Changed

  • Differentiate propertyless requirements (#343) / (#347)
  • Fix bug with conversion dropping explode property of parameters (#346)

Identifying required entries that do not refer to properties in the immediate JSON Schema

Take the following two schema snippets:

Foo:
  type: object
  properties:
    a:
      type: string
  required:
    - b

and

Foo:
  type: object
  properties:
    a:
      type: string
    b: {}
  required:
    - b

Prior to this version, both of those snippets would have been represented identically within OpenAPIKit. After this version, the first schema’s “b” property will answer true to the new JSONSchema inferred property and the second schema’s “b” property will answer false. In fact, the only current situation where a JSON Schema is considered "inferred" is when a .fragment schema is produced by an entry in an object's required array that has no matching properties entry on the same object; we say that the existence of such a property is inferred from the fact that such a property being required by name.

Full Changelog: 3.0.1...3.1.0