Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Switch to draft-06 #48

Closed
wants to merge 2 commits into from
Closed

Switch to draft-06 #48

wants to merge 2 commits into from

Conversation

ChALkeR
Copy link
Contributor

@ChALkeR ChALkeR commented Jul 7, 2020

draft-04 is significantly outdated.
Note how this increases conformance on up-to-date validators.

This is half-issue, PR just to include the code if you decide to do this.
Wdyt?

Unfortunately, this also excludes is-my-json-valid and z-schema from the benchmark results.

Perhaps this can be made a separate branch as an easy way to keep track of the per-spec status without major changes to this repo? With a simple menu in header to switch between branches?
Same could be done for draft-07 and draft2019-09 then. #40 is related.

Tests run can be force-pushed out -- included just to demonstrate test result differences.

|[`skeemas`](https://github.com/Prestaul/skeemas#readme)|[221](https://github.com/ebdrup/json-schema-benchmark/blob/master/reports/skeemas.md)|
|[`schemasaurus`](https://github.com/AlexeyGrishin/schemasaurus)|[222](https://github.com/ebdrup/json-schema-benchmark/blob/master/reports/schemasaurus.md)|
|[`json-gate`](https://github.com/oferei/json-gate#readme)|[312](https://github.com/ebdrup/json-schema-benchmark/blob/master/reports/json-gate.md)|
|[`revalidator`](https://github.com/flatiron/revalidator)|[355](https://github.com/ebdrup/json-schema-benchmark/blob/master/reports/revalidator.md)|
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is a very strange result. Baseline () => true returns 358 failing, revalidator returns 355 failing.

Copy link
Contributor Author

@ChALkeR ChALkeR Jul 7, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Well, same on master: () => true -- 285 failures, revalidator -- 277 failures.
Not this PR fault.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this list can be pruned a bit - no much point keeping the bottom of the list. Also I am surprised djv fails so many tests - it was relatively compliant. I think it might be some API issue we could fix.

@epoberezkin
Copy link
Collaborator

Switching to draft-06 would also allow me to switch to the latest version of Ajv - it should pass all draft-06 tests and might be even faster (I was actually trying to benchmark it when I realised ajv v7 no longer supports draft-04.

@ebdrup unless have any strong objections, I think we should merge it - I can do it in a couple of weeks if you won't comment...

@epoberezkin
Copy link
Collaborator

@ChALkeR we could add vue-vuelidate-jsonschema and Hyperjump JSV - they support draft-06 (https://json-schema.org/implementations.html) - could you maybe add to PR?

@ebdrup
Copy link
Owner

ebdrup commented Nov 29, 2020

Hi @ChALkeR Sorry, I've had all my GitHub notifications turned off. I made you a collaborator to the repo. I think the idea of running the benchmark for draft 6 is great. Note: I just updated the test runner so the benchmark now automatically includes the top 6 validators that fail the least tests. Feel free to tweak that number to be the top 7, 8, ... if you want to have some of the faster validators still included.

@ebdrup ebdrup closed this in cceedec Nov 30, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants