Breaking Changes
-
The validation API may now throw errors if the provided JSON Schema is invalid.
-
The structure of ValidationError has changed to include further information such as the location of the failing instance. ValidationError was previous a String.
Enhancements
-
The failing required validation error message is now emitted for each individual required validation failure.
The following JSON Schema would emit two validation failures, one for missing property name and the other for missing property price when when an empty object was validated.
{ "required": ["name", "price"] }
-
Support for the
minContains
andmaxContains
keywords in JSON Schema draft 2019-09. -
Support for the
uuid
format in JSON Schema draft 2019-09.
Bug Fixes
-
The failing required validation error message incorrectly specified other found keys were missing under the case where another missing key validation failed.
#61 -
Fixed
const
andenum
comparisons where numbers inside collection types wouldn't be compared correctly (and thus[true]
would have been treated as equal to[1]
. -
Fixed
uniqueItems
so that numbers and booleans are not treated equal when found within a collection type (for example unique arrays or objects). -
The
ipv6
format will no longer allow IPv6 addresses containing a zone id. -
Zero terminates floats such as
1.0
will now validate against the integer type.