Skip to content

Update dependency z-schema to v12#7914

Merged
pubkey merged 1 commit intomasterfrom
renovate/z-schema-12.x
Mar 3, 2026
Merged

Update dependency z-schema to v12#7914
pubkey merged 1 commit intomasterfrom
renovate/z-schema-12.x

Conversation

@renovate
Copy link
Contributor

@renovate renovate bot commented Feb 28, 2026

This PR contains the following updates:

Package Change Age Confidence
z-schema 11.0.112.0.0 age confidence

Release Notes

zaggino/z-schema (z-schema)

v12.0.0

Compare Source

⚠ BREAKING CHANGES
  • Default schema version changed from draft-07 to draft2020-12. If your schemas rely on draft-04/06/07 behavior, set version explicitly or declare $schema in every schema. See MIGRATION.md for details.
  • Format is annotation-only by default for draft-2019-09 / draft-2020-12. In these drafts, unknown formats no longer produce errors (per the specification). Set formatAssertions: null to restore the legacy always-assert behavior.
  • New maxRecursionDepth safeguard (default: 100). Deeply nested schemas or data that previously validated may now fail with MAX_RECURSION_DEPTH_EXCEEDED. Increase the value if needed.
Features
  • implement draft-2019-09 and draft-2020-12 support with draft2020-12 as the new default version (#​355) (c0c3a30)
    • draft-2019-09: $anchor, $recursiveRef/$recursiveAnchor, $defs, $vocabulary, dependentRequired, dependentSchemas, maxContains, minContains, unevaluatedItems, unevaluatedProperties
    • draft-2020-12: $dynamicRef/$dynamicAnchor, prefixItems, refined items (applies to remaining items after prefixItems)
    • Full annotation-based unevaluatedProperties/unevaluatedItems with applicator traversal through allOf, anyOf, oneOf, if/then/else, dependentSchemas, contains, $ref, $recursiveRef, $dynamicRef
  • add formatAssertions option to control format assertion behavior per draft (c0c3a30)
  • implement maxRecursionDepth safeguard (d3a2e4f)
  • new TypeScript types: JsonSchemaDraft201909, JsonSchemaDraft202012 with layered inheritance (ba1bd69)
  • new error codes: ARRAY_UNEVALUATED_ITEMS, OBJECT_UNEVALUATED_PROPERTIES, COLLECT_EVALUATED_DEPTH_EXCEEDED, MAX_RECURSION_DEPTH_EXCEEDED
Bug Fixes
  • formats: respect null overrides in isFormatSupported (077cc34)
  • make getId draft-aware to return id for draft-04 and $id for newer drafts (c7ec640)
  • fix "custome" typo in schema-validator comments (d5d504b)
Performance Improvements
  • convert difference() to use Set for O(1) lookups (da39595)
  • schema-cache: cache global_cache clone in instance cache on first access (21e2bca)
  • utils: optimize isUniqueArray with primitive fast path (de94b36)
Refactoring
  • split json-validation.ts into validation/keyword modules (type, numeric, string, array, object, combinators, ref) (121a5da)
  • populate draft-specific TypeScript interfaces with layered inheritance (ba1bd69)
  • replace ___$visited schema mutation with WeakSet in getResolvedSchema (161430c)
  • add Report.addAsyncTaskWithPath to encapsulate async path save/restore (dd64322)
  • replace factory @​ts-expect-error with module-private FACTORY_TOKEN symbol (7364904)
  • modernize loop patterns, indexOf, hasOwn, and unicode handling (e2a3edb)
  • deduplicate setRemoteReference, NON_SCHEMA_KEYWORDS, async task aggregation, and isInternalKey (003c413)
Tests
  • migrate ZSchemaTestSuite legacy JS fixtures to TypeScript (fc87835)
  • make error-ordering assertions order-independent (8f19ee4)

Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Enabled.

Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate bot force-pushed the renovate/z-schema-12.x branch 3 times, most recently from 6e8f02f to efc3181 Compare March 3, 2026 12:44
@renovate renovate bot force-pushed the renovate/z-schema-12.x branch from efc3181 to c2355ab Compare March 3, 2026 13:03
@pubkey pubkey merged commit a11df93 into master Mar 3, 2026
22 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant