ata-validator
1.61.3 · 29 Oct 2026MIT21.8k / weekRepositoryHomepagenpmAtom feed
1.61.3 is the newest release of 1.x.
Release note
Fixed
Where new Function is unavailable, validation now runs on the interpreted engine instead of degrading quietly.
Cloudflare Workers, Deno Deploy and pages under a strict Content-Security-Policy refuse code generation. The closure-based JS path does not call new Function itself, so it survived the refusal and went on to handle schemas it gets wrong, rather than deferring to the interpreted engine which is both eval-free and more correct.
Against the full Draft 2020-12 suite with code generation blocked, ata scored 1188 of 1290 and failed to build 30 schemas. It now scores 1286 of 1290 with none, which is one better than the compiled path. Draft 7 is 910 of 922 against 911.
tests/test_no_eval.js blocks eval and new Function before ata is loaded and runs the whole suite through it, so this is a checked guarantee rather than a property the architecture happens to have. It runs as part of npm test.
Nothing changes for environments that allow code generation: the compiled path is selected exactly as before, and validation throughput is unchanged.