-
Notifications
You must be signed in to change notification settings - Fork 397
Roadmap
This is definitely needed. The plan it to instantiate validators only once, which will mean quite a few changes, but it will be such a speed improvement that it cannot be ignored.
DONE, for both syntax validation and instance validation -- and the results are impressive: a more than 10 times performance boost compared to 0.2.1 with the test performance program now included.
Right now, validation will go as deeply as it can -- for instance it will check all items of an array even if the first one fails validation. Offer a mode which will make the validation fail at the first failing item.
Right now, JsonValidator validates both the schema and the instance. Offer a mode which will allow to validate only the instance (of course, if the schema is wrong, behavior will be undefined).
But first, understand that section and its implications...
Javascript is limited, by its specification, to operate on 64bit IEEE 754 numbers. The implementation handles arbitrarily large numbers, but this may be unneeded. Make a validation feature which will allow to use primitive types long and double only.
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... Ouch. This means a redesign.