Request a feature
It should be easy to parse a finite number. In Zod 4, z.number() rejects ±Infinity, but ArkType's "number" seems to accept them.
🤷 Motivation
When parsing a number, it is usually pretty rare for Infinity or -Infinity to be a valid value, and also easy to forget about it. This means that by default, ArkType will often accept invalid data.
💡 Solution
My preferred solution would be to match Zod's behavior: to change "number" so that it rejects Infinity and -Infinity.
Alternatively, you could provide a "number.finite" primitive.
Request a feature
It should be easy to parse a finite number. In Zod 4,
z.number()rejects ±Infinity, but ArkType's"number"seems to accept them.🤷 Motivation
When parsing a number, it is usually pretty rare for
Infinityor-Infinityto be a valid value, and also easy to forget about it. This means that by default, ArkType will often accept invalid data.💡 Solution
My preferred solution would be to match Zod's behavior: to change
"number"so that it rejectsInfinityand-Infinity.Alternatively, you could provide a
"number.finite"primitive.