unstale

npm / valibot

valibot

What changed in valibot 1, from its official release notes, upgrade guides and advisories. Sources checked 2026-10-17.

4 breaking3 security30 new APIs and options3 performance1 behavior and defaults1 tooling21 fixes and other

See which of these apply to your code, ranked, in your agent:

npx @unstale/cli init

@unstale/cli 0.1.0 on npm

valibot 163 changes

Breaking changes 4

  • Rejects non-ASCII characters accepted by Unicode case folding.

    1.5.0release notes

  • Drops the i flag for better JSON Schema compatibility.

    1.3.1release notes

  • Drops the i flag for better JSON Schema compatibility.

    1.3.1release notes

  • Drops the i flag for better JSON Schema compatibility.

    1.3.1release notes

Security 3

New APIs and options 30

  • Adds a validation action to validate the number of Unicode code points.

    1.5.0release notes

  • Adds a validation action to validate KSUIDs.

    1.5.0release notes

  • Adds a validation action to validate the number of Unicode code points.

    1.5.0release notes

  • Adds a validation action to validate the number of Unicode code points.

    1.5.0release notes

  • Adds a validation action to validate the number of Unicode code points.

    1.5.0release notes

  • Adds a validation action for ISO date times with seconds.

    1.4.0release notes

  • Adds a transformation action to convert strings to camel case.

    1.4.0release notes

  • Adds a transformation action to convert strings to kebab case.

    1.4.0release notes

  • Adds a transformation action to convert strings to Pascal case.

    1.4.0release notes

  • Adds a transformation action to convert strings to snake case.

    1.4.0release notes

  • Adds a method for caching schema output by input.

    1.3.0release notes

  • Adds a validation action for domain names.

    1.3.0release notes

  • Adds a transformation action that narrows types using type predicates.

    1.3.0release notes

  • Adds a validation action for ISRC codes.

    1.3.0release notes

  • Adds a validation action for JWS compact strings.

    1.3.0release notes

  • Adds a transformation action to parse boolean values from strings and other types.

    1.3.0release notes

  • Adds an action for adding example values to a schema.

    1.2.0release notes

  • Adds a method for extracting example values from a schema.

    1.2.0release notes

  • Adds a validation action for ISBN-10 and ISBN-13 strings.

    1.2.0release notes

  • Exports this type to improve the developer experience with rawCheck and rawTransform actions.

    1.2.0release notes

  • Exports this type to improve the developer experience with rawCheck and rawTransform actions.

    1.2.0release notes

  • Exports this type to improve the developer experience with rawCheck and rawTransform actions.

    1.2.0release notes

  • Exports this type to improve the developer experience with rawCheck and rawTransform actions.

    1.2.0release notes

  • Exports this type to improve the developer experience with rawCheck and rawTransform actions.

    1.2.0release notes

  • Exports this type to improve the developer experience with rawCheck and rawTransform actions.

    1.2.0release notes

  • Adds a transformation action that converts values to bigint.

    1.2.0release notes

  • Adds a transformation action that converts values to boolean.

    1.2.0release notes

  • Adds a transformation action that converts values to Date.

    1.2.0release notes

  • Adds a transformation action that converts values to number.

    1.2.0release notes

  • Adds a transformation action that converts values to string.

    1.2.0release notes

Performance 3

  • Uses URL.canParse when available to avoid constructing URL objects.

    1.5.0release notes

  • Word count actions cache Intl.Segmenter for non-primitive locales instead of recreating it for each validation.

    1.4.2release notes

  • Changes hot paths to reduce object allocations and improve runtime performance.

    1.4.0release notes

Behavior and default changes 1

  • The flatten method now accepts readonly issue arrays.

    1.4.0release notes

Tooling 1

  • Changes the build target to ES2020 so distributed output stays compatible with environments that lack support for newer syntax.

    1.4.0release notes

Fixes and other changes 21

  • Clones issues from a cached dataset so parent schemas do not add their path item to the same issue on every cache hit.

    1.5.0release notes

  • Clones issues from a cached dataset so parent schemas do not add their path item to the same issue on every cache hit.

    1.5.0release notes

  • Merges matching NaN values and invalid dates.

    1.5.0release notes

  • Ignores inherited properties when merging objects, preserves own properties without invoking inherited setters, and does not change the output prototype.

    1.5.0release notes

  • Ignores inherited properties when merging objects, preserves own properties without invoking inherited setters, and does not change the output prototype.

    1.5.0release notes

  • Treats NaN as equal to itself.

    1.5.0release notes

  • Treats NaN as equal to itself.

    1.5.0release notes

  • Treats NaN as equal to itself.

    1.5.0release notes

  • Preserves the dataset value when JSON.stringify returns undefined.

    1.5.0release notes

  • Object schemas and their async variants correctly handle unknown input keys that collide with Object.prototype members.

    1.5.0release notes

  • Treats NaN as equal to itself.

    1.5.0release notes

  • Treats NaN as equal to itself.

    1.5.0release notes

  • The intersect schema now merges object keys that collide with Object.prototype members such as toString.

    1.4.2release notes

  • Fixes inferred input and output types for non-tuple array options, which were previously inferred as never.

    1.4.1release notes

  • Fixes validation to reject Mastercard numbers with invalid lengths.

    1.4.0release notes

  • Stops mutating input values, allowing frozen objects and arrays to be merged.

    1.4.0release notes

  • Fixes a potential RangeError caused by spreading large issue arrays.

    1.4.0release notes

  • The hash action uses case-expanded character classes instead of the i flag.

    1.3.1release notes

  • Allows 13-digit Visa card numbers.

    1.3.0release notes

  • Fixes types for deeply readonly default and fallback values.

    1.3.0release notes

  • Allows an optional space before the UTC offset for PostgreSQL timestamptz compatibility.

    1.3.0release notes