Download Latest Version v4.6.2 source code.zip (10.7 MB)
Email in envelope

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

Home / v4.6.0
Name Modified Size InfoDownloads / Week
Parent folder
README.md 2026-09-09 6.0 kB
v4.6.0 source code.tar.gz 2026-09-09 10.4 MB
v4.6.0 source code.zip 2026-09-09 10.7 MB
Totals: 3 Items   21.1 MB 0

Commits:

  • [908c9e] fix(docs): retry the GitHub stars fetch and log the real status
  • [93186c] docs(wiki): drop the zod-compiler benchmark (#6505)
  • [8ce9e8] feat(mini): publish Zod Mini as the standalone @zod/mini package (#6491)
  • [2956c4] chore(mini): sync @zod/mini to 4.5.4
  • [abd41a] docs(wiki): move plans and comparisons into a gitignored internal/ (#6506)
  • [810657] chore(docs): build with Turbopack
  • [c7ec94] ci: check zod and @zod/mini lockstep on npm after every publish (#6507)
  • [c46eef] chore: narrow blanket biome-ignore comments (#6504)
  • [a0898b] ci: wait hours for npm to serve a publish, not ten minutes (#6502)
  • [1c0bce] docs: bring the 4.5 charts and worked examples into the docs pages
  • [70eb2c] docs: drop the traits section and the compilation feature bullet
  • [43b9bf] docs: drop the bound-methods section from the Zod package page
  • [cd4f9a] perf(v4): report Standard Schema issues without constructing a ZodError (#6509)
  • [f3cb36] docs: surface the blog on the home page and in the sidebar
  • [f3e7c7] fix(docs): render the docs 404 page inside the (doc) layout once
  • [f41217] ci: publish @zod/mini to JSR in lockstep with npm (#6510)
  • [5ff956] Stop re-exporting the compile internals from zod/v4/core (#6511)
  • [40b4d0] fix(ci): read zod's latest version with npm view when picking the backfill dist-tag
  • [a6b493] Mark the compile internals @internal instead of hiding them (#6518)
  • [3195ed] docs: label the memory chart like the compile chart
  • [8cd125] docs: center the memory chart callout labels
  • [ff56a5] docs: center the memory chart callout labels and pad them off the number
  • [fb2fed] docs: tighten the memory chart callout, pad the canvas, say "less memory"
  • [93f3ab] docs: replace the blog navbar's GitHub icon with a star-count pill
  • [7ae49d] docs: drop the circle around the star pill's GitHub mark and center it on the pill's arc
  • [b80143] bench: add typebox (compiled and dynamic) to the moltar cross-library harness
  • [1ec6b7] docs: add an RSS feed to the blog at /blog/rss.xml
  • [08ba06] perf(v4): read Luhn digits with charCodeAt instead of string indexing (#6529)
  • [319f47] Emit a length-aware base64url pattern in toJSONSchema (#6527)
  • [a2a019] Accept enum-typed targets in z.toZod (#6528)
  • [74f9a6] docs: drop the toZod enum block from basics and pin the page's curation rule in a comment
  • [f83ab5] fix(v4): reject component-only strings from z.emoji() (#6532)
  • [84dd3b] perf: build literal and enum pattern regexes lazily (#6531)
  • [0227e5] docs: bump the star pill's GitHub mark to 20px
  • [68a609] Widen literal inputs in property check types (#6520)
  • [2ec972] refactor: collapse toZod's enum leaf normalizer to a dummy union (#6533)
  • [bc1157] docs: use a Response example for z.properties()
  • [07c43e] Keep the runtime base64 regexes linear so composed parse paths cannot overflow (#6534)
  • [bec73b] perf(v4): build the safeParse error on first read (#6519)
  • [bf9902] perf: move util.cached's accessor to a prototype (#6537)
  • [69f2a7] Collapse toZod's normalizer and move its docs to the API reference (#6539)
  • [abfb38] feat(v4): make z.properties() a schema, and give z.instanceof() a .properties() method (#6536)
  • [51caf0] refactor: collapse cachedInternal back into cached (#6540)
  • [81ded9] perf: answer z.validate from the compiled fast path on invalid input (#6538)
  • [eca968] fix(v4): enforce the six JSON Schema keywords fromJSONSchema silently dropped (#6535)
  • [68aca3] docs: cover the 4.5 API surface that never made it into the reference
  • [18e71c] Rename the JSON Schema process helper so bundler polyfills cannot collide (#6541)
  • [90269c] Keep a numeric TS enum's reverse-mapping keys out of .options (#6542)
  • [4d7308] Release the parsed input once a failing safeParse builds its error (#6543)
  • [cafbee] fix(v4): parse recursive schemas built by a factory (#6530)
  • [62e662] feat(v4): add .validate() and .validateAsync() to Zod Classic (#6547)
  • [07917f] test(v4): pin the lazy safeParse error's stack behavior (#6548)
  • [764ac5] perf(v4): settle z.validate on the first failure in parse order (#6544)
  • [e76047] docs: attribute the compiled failure cost to the fallback, not the double pass
  • [5489a5] test(v4): pin the check-chain case that keeps compiled validate's definite guard (#6551)
  • [7a0023] fix(v4): don't let format checks overwrite tighter min/max bounds (#6553)
  • [e4d67f] Migrate development and CI to Nub (#6562)
  • [6f0483] fix(v4): derive JSON Schema constraints by folding checks in the converter (#6554)
  • [804e0f] perf: seal the CommonJS exports so require("zod") stops reading through a getter (#6564)
  • [741981] perf(compile): for-in record walk, cheaper issue finalization, and a generative compile differential (#6567)
  • [eb1c10] ci: release only on workflow_dispatch behind the npm environment (#6569)
  • [277613] docs: move the release procedure to the maintainer-local notes
  • [dcbcf0] fix(compile): unwind the doc indent when a child generator throws (#6570)
  • [e54716] docs(ecosystem): add @apical-ts/craft (#5946)
  • [c5b9bc] bench: measure what a runtime island's leaked indent cost the generated source
  • [22bed6] feat(v4): add z.iban() string format with mod-97 checksum (#6571)
  • [36f179] fix(v4): stop the memoizer from pinning a finished parse (#6572)
  • [f7fd55] perf(v4): drop the lookaheads from the email regex (#6573)
  • [f9465d] docs: reconcile the sponsor listings with active sponsorships (#6576)
  • [213ee7] feat(compile): add z.withParser for externally generated parsers (#6575)
  • [6de10d] docs: reconcile the sponsor listings against every active sponsorship (#6579)
  • [661673] docs: make the 9thCO logo visible on the light theme
  • [1c51cb] 4.6.0
  • [3b1549] feat(lang): add Tajik (tg) locale
  • [c532d7] test(locales): cover Tajik error branches
  • [574d48] fix(locales): clarify Tajik discriminator value message
  • [dd9c36] fix(v4): defer recursive object index inference (#6580)
  • [b12aa5] fix: preserve unique tags with defaulted discriminators (#6582)
Source: README.md, updated 2026-09-09