Download Latest Version v1.4.2 source code.zip (5.3 MB)
Email in envelope

Get an email when there's a new version of Valibot

Home / v1.4.0
Name Modified Size InfoDownloads / Week
Parent folder
README.md 2026-05-05 1.9 kB
v1.4.0 source code.tar.gz 2026-05-05 3.4 MB
v1.4.0 source code.zip 2026-05-05 5.3 MB
Totals: 3 Items   8.7 MB 0

Many thanks to @ksaurav24, @heiwen, @compulim, @ysknsid25, @alaycock-stripe, @IlyaSemenov, @wszgrcy, @LMGO, @yslpn, @EltonLobo07 and @Eronmmer for contributing to this release.

Read the release notes on our website for a quick overview of the most exciting new features in this release.

  • Add isoDateTimeSecond validation action to validate ISO date times with seconds (pull request [#1418])
  • Add toCamelCase, toKebabCase, toPascalCase and toSnakeCase transformation actions to convert strings between common naming conventions (pull request [#1457])
  • Change internal ReadonlyOutputKeys and OutputWithReadonly types of object schemas and WithReadonly type of record schemas to improve TypeScript type performance (pull request [#1442])
  • Change hot paths to reduce object allocations and improve runtime performance (pull request [#1437])
  • Change build target to ES2020 so distributed output stays compatible with environments that lack support for newer syntax (pull request [#1455])
  • Change internal _LruCache to use a TypeScript private method instead of a #private class field to avoid runtime helpers in the transpiled output (pull request [#1455])
  • Change internal _isValidObjectKey to use Object.prototype.hasOwnProperty.call instead of Object.hasOwn so the distributed output stays compatible with runtimes that lack the ES2022 Object.hasOwn builtin (pull request [#1421])
  • Change flatten method to accept readonly issue arrays (pull request [#1269])
  • Fix potential RangeError caused by spreading large issue arrays (pull request [#1437])
  • Fix creditCard validation action to reject Mastercard numbers with invalid lengths (pull request [#1462])
  • Fix intersect schema to no longer mutate input values, allowing frozen objects and arrays to be merged (pull request [#1463])
Source: README.md, updated 2026-05-05