Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
3.21.4
->3.23.8
Release Notes
colinhacks/zod (zod)
v3.23.8
Compare Source
Commits:
0f4d403
Add Bronze logos (#3470)1968731
Tweak tiers (#3471)eda7df3
Change RefinementCtx to interfaceca42965
v3.23.8v3.23.7
Compare Source
v3.23.6
Compare Source
v3.23.5
Compare Source
v3.23.4
Compare Source
Commits:
157b18d
Add 3.23 announcementaedf93f
Revert change to default Input45107f7
v3.23.4v3.23.3
Compare Source
v3.23.2
Compare Source
Commits:
c340558
Update protocolef588d0
Fix t3env9df70dd
3.23.2v3.23.1
Compare Source
v3.23.0
Compare Source
Zod 3.23 is now available. This is the final
3.x
release before Zod 4.0. To try it out:Features
z.string().date()
Zod can now validate ISO 8601 date strings. Thanks @igalklebanov! https://github.com/colinhacks/zod/pull/1766
z.string().time()
Zod can now validate ISO 8601 time strings. Thanks @igalklebanov! https://github.com/colinhacks/zod/pull/1766
You can specify sub-second precision using the
precision
option:z.string().duration()
Zod can now validate ISO 8601 duration strings. Thanks @mastermatt! https://github.com/colinhacks/zod/pull/3265
Improvements to
z.string().datetime()
Thanks @bchrobot https://github.com/colinhacks/zod/pull/2522
You can now allow unqualified (timezone-less) datetimes using the
local: true
flag.Plus, Zod now validates the day-of-month correctly to ensure no invalid dates (e.g. February 30th) pass validation. Thanks @szamanr! https://github.com/colinhacks/zod/pull/3391
z.string().base64()
Zod can now validate base64 strings. Thanks @StefanTerdell! https://github.com/colinhacks/zod/pull/3047
Improved discriminated unions
The following can now be used as discriminator keys in
z.discriminatedUnion()
:ZodOptional
ZodNullable
ZodReadonly
ZodBranded
ZodCatch
Misc
Breaking changes
There are no breaking changes to the public API of Zod. However some changes can impact ecosystem tools that rely on Zod internals.
ZodFirstPartySchemaTypes
Three new types have been added to the
ZodFirstPartySchemaTypes
union. This may impact some codegen libraries. https://github.com/colinhacks/zod/pull/3247Default generics in
ZodType
The third argument of the
ZodType
base class now defaults tounknown
. This makes it easier to define recursive schemas and write generic functions that accept Zod schemas.Unrecognized keys in
.pick()
and.omit()
This version fixes a bug where unknown keys were accidentally accepted in
.pick()
andomit()
. This has been fixed, which could cause compiler errors in some user code. https://github.com/colinhacks/zod/pull/3255Bugfixes and performance
ZodFirstPartySchemaTypes
by @MatthijsMud in https://github.com/colinhacks/zod/pull/3247input
of.required()
readonly by @KATT in https://github.com/colinhacks/zod/pull/3301addQuestionMarks
, fix #2184 by @colinhacks in https://github.com/colinhacks/zod/pull/3352src
forbun test
by @rotu in https://github.com/colinhacks/zod/pull/3038Docs and ecosystem
zod-dev
utility to eco-system section by @schalkventer in https://github.com/colinhacks/zod/pull/3113orval
to "X to Zod" ecosystems by @soartec-lab in https://github.com/colinhacks/zod/pull/3397New Contributors
Full Changelog: colinhacks/zod@v3.22.4...v3.23.0
v3.22.5
Compare Source
v3.22.4
Compare Source
Commits:
d931ea3
Lint8e634bd
Fix prettier4018d88
docs: add @sanity-typed/zod to ecosystem (#2731)15ba5a4
docs: addzod-sandbox
to README ecosystem links (#2707)699ccae
Export jsdoc with@deprecated
when building (#2717)dfe3719
Fix sanity-typed links (#2840)cd7991e
fix ulid regex (#2225)7cb4ba2
Remove stalebot9340fd5
Lazy emojiRegexe7a9b9b
3.22.4v3.22.3
Compare Source
Commits:
1e23990
Commit9bd3879
docs: remove obsolete text about readonly types (#2676)f59be09
clarify datetime ISO 8601 (#2673)64dcc8e
Update sponsors18115a8
Formatting28c1927
Update sponsorsad2ee9c
2718 Updated Custom Schemas documentation example to use type narrowing (#2778)ae0f7a2
docs: update ref to discriminated-unions docs (#2485)2ba00fe
[2609] fix ReDoS vulnerability in email regex (#2824)1e61d76
3.22.3v3.22.2
Compare Source
Commits:
13d9e6b
Fix lint0d49f10
docs: add typeschema to ecosystem (#2626)8e4af7b
X to Zod: add app.quicktype.io (#2668)792b3ef
Fix superrefine typesv3.22.1
Compare Source
Commits:
Fix handing of
this
in ZodFunction schemas. The parse logic for function schemas now requires theReflect
API.932cc47
Initial prototype fix for issue #2651 (#2652)0a055e7
3.22.1v3.22.0
Compare Source
ZodReadonly
This release introduces
ZodReadonly
and the.readonly()
method onZodType
.Calling
.readonly()
on any schema returns aZodReadonly
instance that wraps the original schema. The new schema parses all inputs using the original schema, then callsObject.freeze()
on the result. The inferred type is also marked asreadonly
.The inferred type uses TypeScript's built-in readonly types when relevant.
Commits:
6dad907
Comments56ace68
Fix deno test3809d54
Add superformsd1ad522
Add transloadita3bb701
Testing on Typescript 5.0 (#2221)51e14be
docs: update deprecated link (#2219)a263814
fixed Datetime & IP TOC links502384e
docs: add mobx-zod-form to form integrations (#2299)a8be450
docs: Addzocker
to Ecosystem section (#2416)15de22a
Allow subdomains and hyphens inZodString.email
(#2274)00f5783
Addzod-openapi
to ecosystem (#2434)0a17340
docs: fix minor typo (#2439)60a2134
Add masterborn0a90ed1
chore: moveexports.types
field to first spot @ package.json. (#2443)67f35b1
docs: allow Zod to be used in dev tools at site (#2432)6795c57
Fix not working Deno doc link. (#2428)37e9c55
Generalize uuidRegex0969950
adds ctx to preprocess (#2426)af08390
fix: super refinement function types (#2420)36fef58
Make email regex reasonable (#2157)f627d14
Document canarye06321c
docs: add tapiduck to API libraries (#2410)11e507c
docs: add ts as const example in zod enums (#2412)5427565
docs: add zod-fixture to mocking ecosystem (#2409)d3bf7e6
docs: addzodock
to mocking ecosystem (#2394)2270ae5
remove "as any" casts in createZodEnum (#2332)00bdd0a
fix proto pollution vulnerability (#2239)a3c5256
Fix error_handling unrecognized_keys example4f75cbc
Adds getters to Map for key + value (#2356)ca7b032
FMC (#2346)6fec8bd
docs: fix typo in link fragment (#2329)16f90bd
Update README.md2c80250
Update readmeeaf64e0
Update sponsorsc576311
Update readme5e23b4f
Add*.md
pattern to prettier (#2476)898dced
Revamp tests6309322
Update test runnersc0aece1
Add vitest config73a5610
Update script8d8e1a2
Fix deno test bug9eb2508
Clean up configscfbc7b3
Fix root jest config8677f68
docs(comparison-yup): Yup added partial() and deepPartial() in v1 (#2603)fb00edd
docs: add VeeValidate form library for Vue.js (#2578)ab8e717
docs: fix typo in z.object (#2570)d870407
docs: fix incomplete Records example (#2579)5adae24
docs: add conform form integration (#2577)8b8ab3e
Update README.md (#2562)6aab901
fix typo test name (#2542)81a89f5
Update nullish documentation to correct chaining order (#2457)78a4090
docs: update comparison withruntypes
(#2536)1ecd624
Fix prettier981d4b5
Add ZodReadonly (#2634)fba438c
3.22.0Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.