ata-validator
1.61.3 · 29 Oct 2026MIT21.8k / weekRepositoryHomepagenpmAtom feed
Upgrading ata-validator from 1.27.0 to 1.27.1
1 release in betweenevery note read
Reading releases, release notes and advisories…
- 0
- changes to make
- 0
- advisories fixed
- 0
- new
- 2
- fixes
Security
- 1.27.1
Security patch.
Release by release
- fixed
A schema declaring a property named
__proto__with nested defaults wrote those defaults ontoObject.prototype, for every object in the process, on both engines, regardless of the input. The defaults machinery is now prototype-safe end to end: a default fills a property that is an own key or absent (Object.hasOwn, notin, so a property namedconstructoralso receives its default now), the nested applier refuses to walk a parent the instance does not carry as an own key, and fills of a property named__proto__go throughObject.defineProperty, because plain assignment of that name rewrites the object's prototype instead of creating a property. Type coercion skips that name for the same reason; the raw value still goes through validation. Reported with the initial fix - fixed
The AOT
parse()emitter received the same hardening (computed keys,Object.hasOwnpresence checks,definePropertyfor the one dangerous name), and its record loop, whose keys come from the input, now keeps a JSON-parsed own__proto__key as an own key in the output instead of silently rewriting the output's prototype.
- fixed