Skip to content

Roadmap

fge edited this page May 9, 2012 · 127 revisions

In 0.5

$ref support rewrite

$ref only works for a few cases, try and generalize it more. Also handle correctly $ref in the presence of other keywords.

DONE, albeit with a few (common sense) limitations.

Thread-safe validators

Enough said...

DONE

Re-introduce missing features from 0.4.x, but not all

To be reintroduced:

  • keyword registration,
  • schema switching,
  • fail-fast validation.

Draft v4 support is a next step but not just yet: there is still a lot of strife going on about what must really go in. I'll probably take the plunge and submit a draft for discussion.

And one or more from below

Switch to Gradle -- but still provide Maven artifacts

While attempting to complete the item below, I have inadvertently fallen prey to a well known Maven limitation, which is more than irritating: a child project's pom.xml file cannot reliably require its parent. Ugh.

This is just too serious an issue to ignore. Maven is too convoluted in general, in the sense that you have to act their way and cannot act your way in the build process, but this particular misfeature calls for a modern build system to take its place. It will very probably be Gradle.

Oust "format" keyword support to a separate package

Two reasons for that:

  • it is optional in draft v3, and it will more than likely be gone from draft v4 entirely;
  • this sole keyword's Maven-dictated dependencies account for more than 70% of the total project size -- ouch.

Streaming validation

Right now the whole instance is read in memory before proceeding -- not a smart move if you want to validate really big stuff. Try and stream the process instead.

Clone this wiki locally