Skip to content

Releases: everit-org/json-schema

Maintenance release

26 Jan 10:35
Compare
Choose a tag to compare

This is mainly a maintenance release of the library with compliance bugfixes. There are only a few new API changes.

Improvements

  • adding ValidationException#getAllMessages() - contributed by @srfarley
  • adding getters to some Schema properties ( StringSchema#formatValidator and NotSchema#mustNotMatch ) - requested in #53

Bugfixes

  • fixing seconds fraction parsing in date-time format validation - fixed by Deepak Halale
  • fixing minLength / maxLength validation for Unicode strings - fixed by @halvorgb
  • fixing schema loading in case of "implicit anyOf" types - fixed by @halvorgb

Docs / infrastructure improvements

  • measuring code coverage with JaCoCo and Corevalls.io - contributed by @agebhar1
  • README updates: license, build and code coverage badges, also updating some broken links - thanks again for @agebhar1

equals() , hashCode() and toString()

27 Sep 07:03
Compare
Choose a tag to compare

Improvements:

  • Schema subclasses now properly override the hashCode() and equals() methods - thanks for @tylersouthwick for implementing it
  • Schema subclasses also have a proper toString() implementation now, which means that the original schema JSON can be obtained from Schema instances

Validation failure reporting improvements

11 Aug 21:19
Compare
Choose a tag to compare

Improvements

  • added support to inspect which keyword was violated - kudos @rodrigosaito for implementing this
  • exposing raw programmer-readable error message (without the pointer to violation) in ValidationException#getErrorMessage() - thanks for @fernandostoiano
  • integration testing improvements: added mechanism for specifying expected exceptions. Credits go for @twbutler , docs here
  • added method for checking if a given property is defined by a schema instance: Schema#definesProperty() - thanks for @v1ctor for implementing this feature
  • combined schemas (allOf, anyOf , oneOf): reporting the exceptions of sub-schemas as failure causes (requested in #33)
  • improved way of counting causing exceptions (requested in #36)
  • validation failures now can be reported in JSON using ValidationException#toJSON(), docs here
  • upgrading to org.json:json:20160810

Bugfixes

  • fetching $ref references while loading schema objects even if "type" is also specified (reported in #38 )
  • bugfix in "enum" handling: now object comparison doesn't depend on the order of property names returned by JSONObject#getNames()

Relative URI support

16 Apr 16:27
Compare
Choose a tag to compare

Improvements

  • relative URI support in schema references (requested in #29 and #32 )

Bugfixes

  • integers are now parsed as Long values (reported in #31)
  • custom format validators didn't work (reported in #30)

Relative URI support & custom format validators fix - release candidate

10 Apr 21:01
Compare
Choose a tag to compare
1.3.0-RC1

bumping version number to 1.3.0-RC1

Adding "format" keyword support

15 Mar 18:51
Compare
Choose a tag to compare

Improvements

  • added support for the "format" keyword of the specification (requested in #22 )
  • support for custom (non-standard) formats - [https://github.com/everit-org/json-schema#format-validators](see the readme)
  • upgrading to JSON-java version 20160212 (it fixes #25 )

Bugfixes

  • schema properties occuring in an object containing a $ref reference now extend the referred schema (fixes #21 )
  • fixed incorrect error messages for schema violations where the schema forbids additional properties and the subject under validation has multiple additional properties (reported in #28 )

Reimplementing remote schema URI resolution

11 Jan 21:46
Compare
Choose a tag to compare

Fixed and reimplemented the handling of id and $ref attributes (reported here: #17 )

1.1.0: Collecting all schema violations

26 Nov 15:41
Compare
Choose a tag to compare

Improvement:

  • the validator now collects all schema violations instead of failing early on the first violation (requested at #6 ), each violation can be programmatically accessed (see the Investigating failures section for details)

Bugfix:

  • fixed NPE occuring if an empty object is validated by an ObjectSchema with additionalProperties = false (reported at #15 and #12 )

1.0.1

21 Oct 09:46
Compare
Choose a tag to compare

Fixed the resolution of recursive JSON pointers in remote schemas.