Change8

Migrating to Zod v4.3.0

Version v4.3.0 introduces 2 breaking changes. This guide details how to update your code.

Released: 12/31/2025

2
Breaking Changes
3
Migration Steps
14
Affected Symbols

⚠️ Check Your Code

If you use any of these symbols, you need to read this guide:

z.fromJSONSchemaz.xorz.looseRecordz.ZodObject.exactOptionalz.ZodType.applyz.ZodType.brandz.ZodType.refinez.ZodMapz.ZodType.withz.slugifyz.metaz.describez.intersectionz.strictObject

Breaking Changes

Issue #1

Intersections involving z.strictObject() now only reject keys unrecognized by BOTH sides of the intersection, rather than either side. This changes validation behavior for strict object intersections.

Issue #2

Bug fixes to .pick() and .omit() may cause breakages if code relied on previously unsound behavior (truncated in notes).

Migration Steps

  1. 1
    Review usage of z.intersection() with z.strictObject() as validation logic for unrecognized keys has changed.
  2. 2
    If using .check(), consider aliasing to .with() for better readability.
  3. 3
    Update locale imports if using Armenian or Uzbek translations.

Release Summary

Zod 4.x introduces major features including JSON Schema to Zod conversion, exclusive unions (xor), exact optional properties, and improved intersection logic for strict objects.

Need More Details?

View the full release notes and all changes for Zod v4.3.0.

View Full Changelog