arktype
2.2.9 · 20 Oct 2026MIT3.4M / weekRepositoryHomepagenpmAtom feed
Upgrading arktype from 2.0.0 to 2.2.9
43 releases in betweenevery note read
Release by release
2.2.8 – 2.2.92 releases, nothing new or fixed in the notes
- fixed
Unions of objects disjoint at a key no longer throw
undefined is not a functionon Hermes (Expo, React Native), which doesn't preserveArraysubclasses throughmap. - fixed
scope.moduleno longer referencesthisfrom a static arrow function, which Turbopack could compile toundefined.
- fixed
2.2.1 – 2.2.65 releases, nothing new or fixed in the notes
- new
|>string-embeddable pipe operator - new
type.valueOffor TS enums - new
string.hex+string.regexkeywords - new
Serializable
ArkErrors(flatByPath,flatProblemsByPath,toJSON)
- new
2.1.29nothing new or fixed in the note
- new
Adds support for the new Standard JSON Schema interface (see standardschema.dev)
- new
Now accepts a
targetoption and can generate draft-07 in addition to draft-2020-12
- new
2.1.12 – 2.1.2716 releases, nothing new or fixed in the notes
- new
Expose
selectmethod directly onType(previously was only available on.internal)
- new
12 other lines we could not sort, mostly version bumps
- 2.2.9
A predicate, a second pattern, a
Datebound or an array's non-index props is dropped from the schema it constrains - 2.2.9
bigint,symbol, a non-JSON unit likeundefinedand any prototype other thanArraybecome{} - 2.2.9
A variadic tuple with postfix elements keeps its prefix and
minItems, but not itsitems - 2.2.9
A default that isn't JSON is omitted
- 2.1.11
Improve missing property error messages
- 2.1.8
Improve 3+ arg generic invocations
- 2.1.8
Switch from AggregateError to TraversalError for better crash formatting (thanks @LukeAbby - #1349)
- 2.1.0
"assert": acceptunknown, throw if none of the cases match - 2.1.0
"never": accept an input based on inferred cases, throw if none match - 2.1.0
"reject": acceptunknown, returnArkErrorsif none of the cases match