chore(deps): update all non-major dependencies - #251
Open
renovate[bot] wants to merge 1 commit into
Open
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
|
renovate
Bot
force-pushed
the
renovate/all-minor-patch
branch
from
August 26, 2026 03:40
c9db7a9 to
51a2048
Compare
renovate
Bot
force-pushed
the
renovate/all-minor-patch
branch
from
August 26, 2026 06:37
51a2048 to
99bd6e6
Compare
renovate
Bot
force-pushed
the
renovate/all-minor-patch
branch
from
August 26, 2026 10:52
99bd6e6 to
d264941
Compare
renovate
Bot
force-pushed
the
renovate/all-minor-patch
branch
from
August 26, 2026 21:50
d264941 to
90a1748
Compare
renovate
Bot
force-pushed
the
renovate/all-minor-patch
branch
from
August 27, 2026 02:45
90a1748 to
2f1f8d9
Compare
renovate
Bot
force-pushed
the
renovate/all-minor-patch
branch
from
August 27, 2026 05:58
2f1f8d9 to
5287d4c
Compare
renovate
Bot
force-pushed
the
renovate/all-minor-patch
branch
from
August 27, 2026 14:37
5287d4c to
5db5634
Compare
renovate
Bot
force-pushed
the
renovate/all-minor-patch
branch
from
August 27, 2026 20:00
5db5634 to
d889347
Compare
renovate
Bot
force-pushed
the
renovate/all-minor-patch
branch
from
August 27, 2026 23:29
d889347 to
7e3179c
Compare
renovate
Bot
force-pushed
the
renovate/all-minor-patch
branch
from
August 28, 2026 01:28
7e3179c to
3091efd
Compare
renovate
Bot
force-pushed
the
renovate/all-minor-patch
branch
from
August 28, 2026 06:38
3091efd to
26b7e20
Compare
renovate
Bot
force-pushed
the
renovate/all-minor-patch
branch
from
August 28, 2026 14:04
26b7e20 to
9446eb6
Compare
renovate
Bot
force-pushed
the
renovate/all-minor-patch
branch
from
August 28, 2026 20:00
9446eb6 to
a630302
Compare
renovate
Bot
force-pushed
the
renovate/all-minor-patch
branch
from
August 29, 2026 21:04
77ae15d to
fad2a99
Compare
renovate
Bot
force-pushed
the
renovate/all-minor-patch
branch
from
August 30, 2026 01:53
fad2a99 to
662c0f8
Compare
renovate
Bot
force-pushed
the
renovate/all-minor-patch
branch
from
August 30, 2026 05:42
662c0f8 to
c3a0096
Compare
renovate
Bot
force-pushed
the
renovate/all-minor-patch
branch
from
August 30, 2026 09:15
c3a0096 to
b8a3dc8
Compare
renovate
Bot
force-pushed
the
renovate/all-minor-patch
branch
from
August 30, 2026 13:59
b8a3dc8 to
8d1fabc
Compare
renovate
Bot
force-pushed
the
renovate/all-minor-patch
branch
from
August 30, 2026 16:50
8d1fabc to
163840c
Compare
renovate
Bot
force-pushed
the
renovate/all-minor-patch
branch
from
August 30, 2026 20:43
163840c to
0bf6713
Compare
renovate
Bot
force-pushed
the
renovate/all-minor-patch
branch
from
August 31, 2026 02:01
0bf6713 to
b0f12de
Compare
renovate
Bot
force-pushed
the
renovate/all-minor-patch
branch
from
August 31, 2026 05:31
b0f12de to
1ad9f01
Compare
renovate
Bot
force-pushed
the
renovate/all-minor-patch
branch
from
August 31, 2026 12:48
1ad9f01 to
f140aed
Compare
renovate
Bot
force-pushed
the
renovate/all-minor-patch
branch
from
August 31, 2026 19:33
f140aed to
81808e6
Compare
renovate
Bot
force-pushed
the
renovate/all-minor-patch
branch
from
August 31, 2026 22:02
81808e6 to
99b33b5
Compare
renovate
Bot
force-pushed
the
renovate/all-minor-patch
branch
from
September 1, 2026 00:32
99b33b5 to
a5b64d4
Compare
renovate
Bot
force-pushed
the
renovate/all-minor-patch
branch
from
September 1, 2026 09:58
a5b64d4 to
18674c8
Compare
Contributor
Author
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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:
^1.2.126→^1.2.129^1.2.93→^1.2.94^1.2.75→^1.2.76^3.15.2→^3.16.0^1.38.2→^1.38.4^2.27.0→^2.28.1^2.4.0→^2.4.124.19.0→24.20.011.23.0→11.25.0^3.5.41→^3.5.42^5.2.0→^5.3.1^4.4.3→^4.5.4Release Notes
nuxt/content (@nuxt/content)
v3.16.0Compare Source
Bug Fixes
hub.db(#3822) (8841abc)#content/adapterto prevent prerender failure (#3830) (400390a)upstash/redis-js (@upstash/redis)
v1.38.4Compare Source
Patch Changes
7ac8182: Fix read-your-writes sending a staleupstash-sync-tokenA read issued straight after a write travelled with the token from before that
write, so the server was under no obligation to serve the write and
readYourWritessilently did not hold.HttpClient.request()snapshotted the outgoing headers withmergeHeaders(this.headers, ...)and only afterwards wrote the freshest token intothis.headers, so the token learned from response N first shipped with requestN+2. The assignment now happens before the merge.
This regressed in 1.34.5. In 1.34.0–1.34.4 the request options held
headers: this.headersby reference, so the late write was still picked up beforefetch; 1.34.5 introduced per-request header merging, which turned that referenceinto a copy without moving the assignment.
v1.38.3Compare Source
Patch Changes
f020866: Send anUpstash-Telemetry-Retryheader with the retry count on retried requests so retry rates are visible in server-side telemetry777dc30: Trim telemetry header values before deduplicating so whitespace around existing values does not defeat the dedup checkevloghq/evlog (evlog)
v2.28.1Compare Source
What's Changed
Continuous Integration 🔄
Documentation 📚
Dependency Updates 📦
Full Changelog: https://github.com/evloghq/evlog/compare/@evlog/cli@0.6.1...evlog@2.28.1
v2.28.0Compare Source
What's Changed
Bug Fixes 🐞
Full Changelog: https://github.com/HugoRCD/evlog/compare/evlog@2.27.1...evlog@2.28.0
v2.27.1Compare Source
What's Changed
Bug Fixes 🐞
Full Changelog: https://github.com/HugoRCD/evlog/compare/evlog@2.27.0...evlog@2.27.1
motiondivision/motion-vue (motion-v)
v2.4.1Compare Source
🐞 Bug Fixes
View changes on GitHub
actions/node-versions (node)
v24.20.0: 24.20.0Compare Source
Node.js 24.20.0
pnpm/pnpm (pnpm)
v11.25.0: pnpm 11.25Compare Source
Minor Changes
Added an opt-in proof of concept that lets installs reuse a dependency's build output across machines, by publishing and restoring signed, organization-scoped artifacts through pnpr instead of running the lifecycle scripts locally.
Configure it with the new
remoteSideEffectsCachesetting. A workspace names the eligibleorganizationandpackages; everything describing the act of signing —publish,keyId,builderId,trustedKeys,privateKeyand the provenance fields — is refused inpnpm-workspace.yamland read from the global config file or the environment instead.Added macOS and Windows x64 and arm64 support to remote shared build artifacts pnpm/pnpm#13771.
Added the
audit.ignorePrunesetting. When set totrue,pnpm audit --fixremoves ignored GHSA entries that no longer appear in the audit report.Generalized the experimental shared-artifact protocol so candidates and signed payloads identify a discriminated subject. Dependency side effects use package and source-integrity subjects, while workspace tasks use project and task subjects.
This changes shared-artifact request bodies and signed payloads. A pnpr server and its clients have to be on matching versions.
pnpm initnow pins the latest pnpm version, instead of the version of pnpm that ran the command. A project scaffolded by an outdated pnpm therefore no longer inherits that staleness through its owndevEngines.packageManager/packageManagerpin #7490.The version is read from the
latesttag on the package-manager registries. When that lookup cannot answer — no network, an unreachable or slow registry,offline, or alatestthat theminimumReleaseAge/trustPolicysettings reject —pnpm initpins the running version as before, and never fails or hangs on the lookup. Alatestthat is older than the running pnpm is never pinned either.A
scopeset in a project'spnpm-workspace.yamlis now ignored, with a warning naming where to set it instead.pnpm loginrecords the scope as a@scope:registryroute in the machine-globalauth.ini, which outranks~/.npmrcin every project — so a repository-committed file could redirect a scope such as@acmefor all of a user's other projects after one routine login. Use--scope, thePNPM_CONFIG_SCOPEenvironment variable, or the global config file instead #13557.Verified remote build artifacts are persisted in the shared store with their signed origin metadata. Later installs reverify the artifact against current trust, policy, platform, and source before reuse, while invalid remote variants are quarantined per channel (pnpm/pnpm#13771).
Persist completed recursive tasks so
--resume-fromskips exactly the work that passed during a matching interrupted or failedpnpm -r run/pnpm -r execinvocation. When no compatible state exists, pnpm retains its graph-based resume behavior.Allowed
pnpm update --patchesto refresh registry revisions through a configured pnpr server while retaining locked package versions.Added explicit registry revision selection with
<version>+rNandpnpm update --patchesfor refreshing revision artifacts without changing package versions. Registry-backed lockfile policy checks recognize historical revisions, and pnpr now preserves safe revision histories from upstream registries.Workspace install, rebuild, pack, publish, stage, and lifecycle work now starts as soon as its dependencies finish instead of waiting for an unrelated topological group.
pnpm stage approvenow approves several staged packages at once. Run it without a stage id to pick from the staged versions interactively, or pass a list of stage ids. The whole batch is approved with a single one-time password, and pnpm asks for a new one only once the registry stops accepting it. Inside a workspace, the selected packages are approved in dependency order, and a package whose workspace dependency could not be approved is skipped instead of being published against a dependency that never reached the registry.Added per-task concurrency limits to workspace task orchestration. Set
tasks.<name>.concurrencyinpnpm-workspace.yamlto limit how many instances of that task may run across workspace projects at once:Added support for registry replacement tarballs using standard integrity values, explicit revision fields, registry routing from the
registriessetting, non-redirecting integrity-addressed URLs, canonical safe-integer revision numbers, and pnpr proxying for immutable upstream revision artifacts.sideEffectsCachenow declares the whole of how a package's build output is reused — whether one is restored, whether one is saved, and the remote tier that shares it between machines:sideEffectsCache: true,sideEffectsCacheReadonly,remoteSideEffectsCache, and itsorganizationfield all keep working. Where a field is set under both spellings the one above wins; where it is set under only one, it is kept.Two behaviors change, both bringing this CLI in line with what the Rust one already did:
sideEffectsCacheReadonly: truenow blocks writing to the cache, and setting it alongsidesideEffectsCache: falsegives a read-only view rather than switching the cache off entirely. A cache can also be declared write-only now, to populate one the run does not read.Workspace task orchestration (pnpm/rfcs#23).
pnpm -r runandpnpm -r execnow schedule per task instead of in topological chunks: a task starts as soon as the tasks it depends on have finished, so a project no longer waits for unrelated projects that happen to share its chunk.A new
taskssection inpnpm-workspace.yamldeclares what a task depends on, using the^convention:^namemeans the named task in each of the project's workspace dependencies; a barenamemeans the task in the same project; an entry with nodependsOndeclares an empty dependency list. A task with no entry behaves asdependsOn: ['^<its own name>'], which is exactly what the previous chunked ordering implied — an unconfigured workspace gets the scheduler improvement and nothing else changes meaning. A project without the script is reported skipped and passes its edges through to its own dependencies, so a scriptless package does not sever a chain.Also part of this change:
ERR_PNPM_TASK_CYCLE) instead of silently running in an arbitrary order. SettingignoreWorkspaceCycles: truedowngrades the error to a warning: the cycle's tasks run in an arbitrary order relative to each other.--resume-fromnow skips exactly the transitive dependencies of the anchor package; work unrelated to the anchor still runs.--no-bail, tasks whose dependencies failed are reported as skipped, not failed, and do not add to the exit code.--bail(the default), the first failure still ends the run at once and nothing new is dispatched — including scripts already queued behind the concurrency limit.pnpm -r run --dry-run <script>prints the task graph that would execute without running anything (including skipping theverifyDepsBeforeRuncheck);--jsonemits the tasks and their resolved dependency edges.--workspace-concurrency=1, or the graph forces the scripts to run one after another).Patch Changes
An
_authentry in the global config file no longer decides which registry packages come from when something else says. Aregistryorregistriesdeclared inpnpm-workspace.yamlor the global config now wins over the route inferred from a stored credential, which still applies where nothing else declares one. Thepnpm_config__authenvironment variable is unchanged: it stays the way to point a CI runner at a mandated proxy, and still overrides what a repository declares.Prevent installs through a symlinked
node_modulesdirectory from rewriting the target checkout pnpm/pnpm#14286.Treat empty scripts selected by a regular expression as missing before running dependent tasks.
The options type of the
fetchcommand now declaresallowBuilds, a setting its handler already forwarded to the installer. Type-level only — whatpnpm fetchdoes is unchanged.Filter hidden scripts matched by a regular expression during recursive runs when a visible script also matches.
Fixed automatically switched pnpm versions forcing all descendant pnpm processes to use the same version pnpm/pnpm#14309.
Fixed
ERR_PNPM_UNUSED_PATCHvalidation during incremental installs pnpm/pnpm#13692.Fixed
pnpm deploy --prodfailing when an excluded dev dependency was also declared as an optional peer dependency pnpm/pnpm#14302.pnpm update -gno longer downgrades a global package.--latestresolves thelatestdist-tag, which can point at an older release than the one installed — afterpnpm add -g <pkg>@next, for instance #14270.pnpm update -galso no longer changes the pnpm version. pnpm's own global install belongs topnpm self-update#14270.Copying a built package to its other hoisted locations no longer replaces the destination directory. With
nodeLinker: hoisted, that replacement deleted the dependencies nested inside the destination'snode_modules, and made concurrent copies of the same build chunk fail withERR_PNPM_ENOENT: no such file or directory, rename '.../node_modules/_tmp_...'#12880.pnpm updateno longer replaces the specifier a project declares for a dependency that is also listed inoverrides. Acatalog:reference stays acatalog:reference, and a declared range stays as written, instead of being rewritten to the version the override resolved to #12115.pnpm updateno longer moves the range a project declares for a dependency thatoverridesalso lists, even when the override repeats that range verbatim. Previously the updatedpackage.jsondisagreed with the lockfile, so the nextpnpm install --frozen-lockfilefailed with a specifier mismatch #14224.Make
pnpm add --lockfile-onlyskip dependency linking pnpm/pnpm#14286.--productionis accepted again as an alias of--prodoninstall,fetch,prune,update,list,why, andsbom, and the install thatverifyDepsBeforeRunreproduces is now spelled with--prod.pnpm runno longer aborts with "unexpected argument '--production' found" after a production-only install #14147.The progress output no longer overwrites the lines above it once it grows taller than the terminal window #14270.
Restoring a dependency's build from the remote side-effects cache no longer downloads files the store already holds.
Forward
patchedDependencieshashes andpackageExtensionsto pnpr so server-side resolution preserves patches and package extensions in the lockfile and installed packages.Published the workspace task graph and scheduler as
@pnpm/workspace.task-schedulerso other workspace commands can use the same dependency-aware scheduling as recursive run and exec.The environment variables for the remote side-effects cache are named for the setting they configure:
PNPM_SIDE_EFFECTS_CACHE_REMOTE_KEY_ID,..._BUILDER_ID,..._IMAGE_DIGEST,..._ARCHITECTURE_BASELINE,..._PRIVATE_KEY,..._BUILD_ENV,..._TRUSTED_KEYSand..._PUBLISH. ThePNPM_REMOTE_SIDE_EFFECTS_CACHE_*names keep working, and the new one wins when both are set.A
devEngines.packageManagerrange pin on pnpm is now recorded inpnpm-lock.yaml'spackageManagerDependencieswhen the running pnpm already satisfies it, using the running version and keeping the range as the recorded specifier. Previously only an exact pin — or a range resolved on the way through a version switch — reached the lockfile, so a range pin written by hand (or by any tool other thanpnpm add/pnpm self-update) left the project without the shared resolution the pin exists to provide.Fixed recursive
runcleanup on Windows when a lifecycle script fails while another script's process tree is still running.The update notification now suggests
pnpm self-updatewhenPNPM_HOMEmanages the pnpm in use, and the standalone install script otherwise — under Corepack, or when another package manager installed pnpm.pnpm self-updateunder Corepack names the standalone install script too.Enforce
allowBuildswhen a prepared git dependency is reused from the shared store, and use the lockfile's canonical git resolution ID in approval suggestions.Topologically sorting workspace projects now runs in linear time, fixing installs and lockfile updates that stalled for seconds on workspaces with thousands of projects forming deep dependency chains #14149, #14151.
Platinum Sponsors
Gold Sponsors
v11.24.0: pnpm 11.24Compare Source
Minor Changes
Patch Changes
Fixed pnpm v11 incorrectly reporting
confirmModulesPurgeas unrecognized when set inpnpm-workspace.yaml. The Rust CLI now identifies the unsupported option as a pnpm v11 setting instead of suggesting an unrelated setting.pnpm install --frozen-lockfileno longer fails withERR_PNPM_FROZEN_LOCKFILE_WITH_OUTDATED_LOCKFILEwhen the pinned pnpm version recorded inpnpm-lock.yamlhas to be re-resolved before it can be installed. It runs the pnpm version the lockfile pins and leaves the lockfile unchanged #14124.Under
nodeLinker: hoisted, peer-resolution variants of an injected directory dependency (afile:snapshot) are materialized as separate copies again instead of collapsing onto the first-seen variant. Each copy keeps its own peer-resolved dependency set, so a project pinning one peer version no longer resolves another project's variant — Bit root components with conflicting peers across injected copies rely on this.Fixed
pnpm install --merge-git-branch-lockfiles --frozen-lockfilefailing withERR_PNPM_OUTDATED_LOCKFILEwhen a branch lockfile predates the removal of a dependency, or its move to another dependency group #13966. A dependency that no project declares anymore is no longer reinstated by the merge, and the packages it was the only path to are dropped with it.Batch workspace publishing accepts a shared scope-specific credential, rejects mismatched credentials for a registry before publishing, and runs the
publishandpostpublishscripts after each completed registry group pnpm/pnpm#14101.The Rust CLI now honors five settings it recognized but ignored:
updateNotifier,legacyDirFiltering,initAuthorName/initAuthorEmail/initAuthorUrl,initLicense, andinitVersion.pnpm installandpnpm addcheck once a day for a newer pnpm and print how to get it (turn it off withupdateNotifier: false); a{<dir>}filter selector can go back to matching the subtree below the directory withlegacyDirFiltering: true; andpnpm initwrites the configured author, license, and version into thepackage.jsonit scaffolds.PNPM_CONFIG_INIT_VERSIONis now read as well.maxsockets, npm's spelling ofmaxSockets, is no longer ignored: both spellings are read frompnpm-workspace.yaml, the global config file, the environment, and the command line, in that increasing order of precedence — a value passed on the command line now wins even when the two sides spelled the setting differently.A
lastUpdateChecktimestamp dated in the future — after a clock change, a restored snapshot, or a hand-edited state file — no longer silences the update check until that time comes around.legacyDirFilteringno longer reaches the workspace-root selectors pnpm generates for itself: the!{<workspace-root>}exclusion a recursiverun/exec/add/testappends, and the{<workspace-root>}inclusion--workspace-rootappends. Read as subtree matches they named every project below the root, so a recursive command under the setting selected nothing at all, and--workspace-rootpulled in every project below the root instead of the root alone #14101.pnpm install --frozen-lockfileno longer fails whenpnpm-lock.yamlrecords the pinned pnpm version alongside an engine package the running pnpm does not install it from. An entry pinning another version is still refused, and a plain install rewrites the block #14124.vuejs/core (vue)
v3.5.42Compare Source
Bug Fixes
vuejs/router (vue-router)
v5.3.1Compare Source
🐞 Bug Fixes
View changes on GitHub
v5.3.0Compare Source
🚀 Features
typeof useRoutein a type context - by @Anoesj in #2759 (7a4c8)🐞 Bug Fixes
falseinEditableTreeNode- by @Anoesj in #2752 (8e2e1)🏎 Performance
json5andyamlwithconfbox- by @danielroe in #2769 (aab28)View changes on GitHub
colinhacks/zod (zod)
v4.5.4Compare Source
Commits:
84e416ffix(v4): stop the cycle walk from firing a default factory (#6500)e8e206f4.5.4v4.5.3Compare Source
v4.5.2Compare Source
Commits:
a354314fix(docs): keep blog posts out of the docs collection (#6484)d378c42ci: drop canary publishing from the release workflow (#6487)212b941fix(v4): let a prototype method getter answer a bare call so vi.spyOn works (#6488)e7576f5docs(blog): let the page show through the navbar in dark mode (#6489)fedb06ffix(docs): match the blog TOC hover bar to the 2px active indicator6c932fcchore: bump devcontainer image to Node 24 (#6470)6635d9ddocs(blog): soften the "method memoization" attribution019ae29fix(docs): drop ISR on the docs route so the home page hydrates652bb43chore(docs): drop the scroll log from the route-change scroller571c8e8fix(docs): render blog tabs with the stock fumadocs tab card9a193aa4.5.2v4.5.1Compare Source
Commits:
2e862dbci: gate the GitHub release and JSR publish on the version being live on npm8e033804.5.1v4.5.0Compare Source
Zod 4.5 is now available.
At a glance:
z.compile()— the flagship feature of Zod 4.5z.creditCard()— 12–19 digits plus Luhn checksumz.properties()— the multi-property counterpart toz.property()z.deepPartial()/.exactPartial()z.validate(): boolean— a fast-path to verify input validity without a full parse (up to 16x faster on invalid data)bn), Central Kurdish (ckb), Hindi (hi), Kannada (kn), Norwegian Nynorsk (nn), Brazilian Portuguese (pt-BR), Slovak (sk), Turkmen (tk)z.compile()You can now pre-compile any Zod schema using
z.compile(schema). This dramatically speeds up parsing performance.A compiled schema can be used exactly like an uncompiled one. There are no special rules around compiled schemas. They're just faster.
On objects, arrays, and unions, this speeds up parsing by a factor of ~3–7. More complex schemas stand to benefit more than simpler ones.
Time per parse by schema type, standard parser vs compiled — lower is better (benchmark)
Below are the Moltar benchmark results comparing Zod (compiled and uncompiled) against the Moltar ParseSafe bench.
Throughput on the moltar benchmark fixture (parseSafe: returns a new object with unknown keys stripped) — higher is better (benchmark)
And the equivalent results for the Moltar AssertLoose bench. Tested against the new
z.validate(schema, input)function (detailed later in the post).Throughput on the moltar benchmark fixture (assertLoose: returns a boolean, unknown keys allowed) — higher is better (benchmark)
Zod's entire test suite runs twice—once normally and again with auto-compilation enabled globally—to ensure perfect fidelity.
How it works
Under the hood,
z.compile()walks the entire schema once and produces a hyperoptimized snippet of flat, loop-free JavaScript that can validate inputs far faster than a standard runtime validator. This snippet can be executed vianew Function()(effectively a more powerfuleval) to serve as a fast-path validator. Schemas use this to "fast check" validity, falling back to the regular runtime logic on validation failure to provide granular error information.Take this simple
Pointschema:Here is the generated snippet for it:
For the large majority of inputs, the generated function validates the data with the fastest logic JavaScript can express: straight-line
typeofchecks and property reads, with no interpreter in between. When it can't handle an input, Zod falls back to the standard parser.This is the function Zod generates for the
Playerschema above:Armed with the power of
new Function(), this happens in-process at runtime. There is no need to integrate with your build system.import "zod/compile"To compile every schema in an application, import
zod/compileonce at the top of your entry point. Every schema constructed after that import is automatically compiled the first time it's used to parse data.It also works as a Node.js CLI flag, which guarantees it runs before any module defines a schema:
Or set
preloadinbunfig.tomlornub.jsonc.{ "preload": ["zod/compile"] }All schemas benefit to varying degrees, though complex object/tuple/array schemas benefit more than simple scalar validators.
z.creditCard()A new string format: 12–19 digits, optionally separated by single spaces or hyphens, with a valid Luhn checksum. (#5931)
z.properties()The multi-property counterpart to
z.property(). (#5912)z.deepPartial()Back in functional form after being removed as a method in Zod 4. (#5928)
The result is still a
ZodObject, so.shapeand.extend()keep woConfiguration
📅 Schedule: (UTC)
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.
This PR was generated by Mend Renovate. View the repository job log.