valibot
1.5.0 · 9 Sep 2026MIT32M / weekRepositoryHomepagenpmAtom feed
Upgrading valibot from 0.8.0 to 1.5.0
55 releases in betweennotes for 50
Counted from 50 of 55 release notes. Advisories are counted from the advisory database, in full.
Start here
Before you upgrade
Tick each one off as you go- breaking0.30.0
- breaking0.30.0
- breaking0.26.0
- breaking0.13.0
- deprecated0.20.0
- deprecated0.19.0
- deprecated0.15.0
Security
Fixes 1 advisory affecting 0.8.0
- Valibot: record() issue paths can make flatten() throw for inherited Object property namesmoderate · GHSA-5qjj-4xww-7phc
- 1.2.0
Fix ReDoS vulnerability in
EMOJI_REGEXused byemojiaction
Release by release
- new
Add
codePoints,maxCodePoints,minCodePointsandnotCodePointsvalidation actions to validate the number of Unicode code points (pull request #888) - new
Add
ksuidvalidation action to validate KSUIDs (pull request #1370) - fixed
Fix
stringifyJsonaction to preserve the dataset value whenJSON.stringifyreturnsundefined(pull request #1476) - fixed
Fix
literalschema andvalue,values,notValueandnotValuesactions to treatNaNas equal to itself (pull request #1573)
- new
- fixed
Fix word count actions to cache the
Intl.Segmenterfor non-primitive locales, preventing it from being recreated on everywords,minWords,maxWordsandnotWordsvalidation (pull request #1521) - fixed
Fix
flattenmethod to handle issue path keys that collide withObject.prototypemembers liketoStringinstead of throwing aTypeError(pull request #1522)
- fixed
- fixed
Fix
intersectschema to infer correct input and output types for non-tuple array options instead ofnever(pull request #1478)
- fixed
- new
Add
isoDateTimeSecondvalidation action to validate ISO date times with seconds (pull request #1418) - new
Add
toCamelCase,toKebabCase,toPascalCaseandtoSnakeCasetransformation actions to convert strings between common naming conventions (pull request #1457) - fixed
Change hot paths to reduce object allocations and improve runtime performance (pull request #1437)
- fixed
Fix
creditCardvalidation action to reject Mastercard numbers with invalid lengths (pull request #1462) - fixed
Fix
intersectschema to no longer mutate input values, allowing frozen objects and arrays to be merged (pull request #1463)
- new
1.3.1nothing new or fixed in the note
- new
Add
guardtransformation action to narrow types using type predicates (pull request #1204) - new
Add
parseBooleantransformation action to parse boolean values from strings and other types (pull request #1251) - new
Add
isrcvalidation action to validate ISRC codes (pull request #1373) - new
Add
cachemethod for caching schema output by input (pull request #1170)
- new
- new
Add
toBigint,toBoolean,toDate,toNumberandtoStringtransformation actions (pull request #1212) - new
Add
examplesaction to add example values to a schema (pull request #1199) - new
Add
isbnvalidation action to validate ISBN-10 and ISBN-13 strings (pull request #1097) - new
Add exports for
RawCheckAddIssue,RawCheckContext,RawCheckIssueInfo,RawTransformAddIssue,RawTransformContextandRawTransformIssueInfotypes for better developer experience withrawCheckandrawTransformactions (pull request #1359)
- new
- new
Add
messagemethod to overwrite local error message configuration of a schema (pull request #1103) - new
Add
summarizemethod to summarize issues into a pretty-printable multi-line string (pull request #1158) - new
Add
getTitle,getDescriptionandgetMetadatamethods to extract metadata of a schema (pull request #1154) - new
Add
minEntriesandmaxEntriesvalidation action to validate number of object entries (pull request #1100)
- new
85 other lines we could not sort, mostly version bumps
- 1.5.0
Change Standard Schema properties to use eager initialization for faster schema construction and replace internal
_getStandardPropsutility with_standardSchema(pull request #1534) - 1.5.0
Change
urlaction to useURL.canParsewhen available to avoid constructing URL objects (pull request #1608) - 1.4.0
Change internal
ReadonlyOutputKeysandOutputWithReadonlytypes ofobjectschemas andWithReadonlytype ofrecordschemas to improve TypeScript type performance (pull request #1442) - 1.4.0
Change build target to ES2020 so distributed output stays compatible with environments that lack support for newer syntax (pull request #1455)
- 1.4.0
Change internal
_isValidObjectKeyto useObject.prototype.hasOwnProperty.callinstead ofObject.hasOwnso the distributed output stays compatible with runtimes that lack the ES2022Object.hasOwnbuiltin (pull request #1421) - 1.4.0
Change
flattenmethod to accept readonly issue arrays (pull request #1269) - 1.3.1
Change
MAC48_REGEX,MAC64_REGEXandMAC_REGEXto drop theiflag for better JSON Schema compatibility (pull request #1430) - 1.2.0
Change build step to tsdown
- 1.1.0
Change implementation of
variantandvariantAsyncschema to improve performance by aborting validation of discriminators early (pull request #1110) - 1.1.0
Change name of
NanoIDActionandNanoIDIssueinterface toNanoIdActionandNanoIdIssue(pull request #1171)
1 internal line (docs, tests, tooling) left out.