chore(deps): update cloudflare#9
Open
renovate[bot] wants to merge 1 commit into
Open
Conversation
renovate
Bot
force-pushed
the
renovate/cloudflare
branch
from
April 20, 2026 15:28
3be4e94 to
a7b37db
Compare
commit: |
renovate
Bot
force-pushed
the
renovate/cloudflare
branch
4 times, most recently
from
April 26, 2026 21:19
089bb05 to
6af78aa
Compare
renovate
Bot
force-pushed
the
renovate/cloudflare
branch
8 times, most recently
from
May 5, 2026 20:15
5ef7fa8 to
914c748
Compare
renovate
Bot
force-pushed
the
renovate/cloudflare
branch
7 times, most recently
from
May 12, 2026 11:43
610f6d1 to
57d74d8
Compare
renovate
Bot
force-pushed
the
renovate/cloudflare
branch
8 times, most recently
from
May 19, 2026 01:48
907241e to
460dfdc
Compare
renovate
Bot
force-pushed
the
renovate/cloudflare
branch
9 times, most recently
from
June 4, 2026 14:47
c09258b to
abe2551
Compare
renovate
Bot
force-pushed
the
renovate/cloudflare
branch
5 times, most recently
from
June 9, 2026 07:03
54ba801 to
5488588
Compare
|
Review the following changes in direct dependencies. Learn more about Socket for GitHub.
|
renovate
Bot
force-pushed
the
renovate/cloudflare
branch
8 times, most recently
from
June 16, 2026 02:55
d809724 to
60dc6a2
Compare
renovate
Bot
force-pushed
the
renovate/cloudflare
branch
6 times, most recently
from
June 20, 2026 02:13
3d94ec7 to
02608d4
Compare
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:
^0.13.1→^0.18.8^4.20260317.1→^4.20260702.1Release Notes
cloudflare/workers-sdk (@cloudflare/vitest-pool-workers)
v0.18.8Compare Source
Patch Changes
#14793
7b3fea6Thanks @trafgals! - Prevent worker disposal errors from failing otherwise successful test runsErrors raised while disposing test Workers are now logged for diagnostics rather than overriding the test result. Set
NODE_DEBUG=vitest-pool-workersto view these errors.Updated dependencies [
246ce92,c38a2c3,8416b33,c079ba3,4683ff8,95b026e,02232f3,c4bacec,f8a8c2c,3203b5d]:v0.18.7Compare Source
Patch Changes
#14713
de34449Thanks @allocsys! - Fix a non-ASCII path failure during the Miniflare WebSocket handshake: theMF-Vitest-Worker-Dataheader embedded the rawprocess.cwd()value, which threw a Latin-1/ASCII header encoding error when the workspace path contained non-ASCII characters (e.g. CJK characters) on Windows. The value is now percent-encoded on write and decoded on read, matching the fix applied to the module fallback redirect response.#14713
de34449Thanks @allocsys! - Fix a runtime start-up failure ("No such module "cloudflare:test-internal"") when the project workspace path contains non-ASCII characters (e.g. CJK characters) on Windows. The module fallback service's redirect response set the target file path directly as an HTTPLocationheader value, but headers are restricted to the Latin-1/ASCII byte range, so any non-ASCII byte in the path caused header construction to throw. Such paths are now percent-encoded (and tagged with a sentinel prefix) before being used as a header value, and decoded again only for the values we encoded, so the round-trip is unambiguous and a workspace path containing a literal%is left untouched instead of being mis-decoded.#14739
5eac99eThanks @Ankcorn! - Support testing Streaming Tail Workers in Vitest Pool Workers.#14763
538e867Thanks @gianghungtien! - TreatwebSocketMessage(),webSocketClose()andwebSocketError()as optional Durable Object handlersThe pool wraps each Durable Object class and installs a prototype method for every default handler before user code is loaded, so
workerdalways sees a handler and always dispatches. When the wrapped class didn't actually define one, the wrapper threw<ClassName> exported by <path> does not define a `webSocketClose()` method, even though deployed Workers silently ignore these events for classes that omit them. A hibernatable Durable Object defining onlywebSocketMessage()would log an uncaughtTypeErroron every close.These three handlers now no-op when absent, matching deployed behaviour.
alarm()is unchanged and still reports a missing handler, sinceworkerdrejectssetAlarm()up front on a class without one.Updated dependencies [
42af66d,a0a091b,f03b108,deae171,0df3d43,d83a476,4e92e32,d1d6945,4815711,a0c8bb1,a50f73a,2b390d7,c82d96b,34430b3,f75ae5d]:v0.18.6Compare Source
Patch Changes
#14678
4e62bbaThanks @apeacock1991! - Fix test runs hanging after a Durable Object logs and rejectsblockConcurrencyWhile()Console messages emitted from another Durable Object are now buffered until execution returns to the test runner, avoiding I/O that cannot complete after the object's input gate breaks.
Updated dependencies [
34e696d,d39ae01,3de70df,c79504f,9f04a7e,9f04a7e,cb30df3,cb6c3f9,c7dbe1a,3f3afbb,e6fbc4e,4e1a7a7,9f04a7e]:v0.18.5Compare Source
Patch Changes
7692a61,ed33326,018574b,eb99ab1,cdf3148,7692a61,7692a61,3015320,899c297,9da77ac,317ce1f]:v0.18.4Compare Source
Patch Changes
#14535
1b965c5Thanks @Naapperas! - Support dynamic retry delays for Workflow steps in local devA step's
retries.delaycan now be a function that computes the delay per failed attempt, in addition to a static duration. The function receives{ ctx, error }and returns a delay (a number of milliseconds or a duration string like"30 seconds"), and its result is fed into the configuredbackoff.The function is invoked once per failed attempt with a 5 second timeout. If it throws, times out, or returns an invalid value, the step fails without further retries.
Updated dependencies [
0283a1f,7b28392,1b965c5]:v0.18.3Compare Source
Patch Changes
#14489
e3f0cd6Thanks @edmundhung! - AddlistDurableObjectIds()to MiniflareMiniflare now exposes
listDurableObjectIds()for listing persisted Durable Object instance IDs by binding name. The Vitest pool now uses this shared Miniflare API internally instead of duplicating Miniflare's storage listing logic.Updated dependencies [
e3f0cd6,8511ddf,9f74a5f,e3f0cd6,c782e2a,2fedb1f,17d2fc1]:v0.18.2Compare Source
Patch Changes
54f74b8,0852346,54f74b8]:v0.18.1Compare Source
Patch Changes
#14409
16fbf81Thanks @matingathani! -reset()fromcloudflare:testnow resets ratelimit binding state between tests. Previously,RATE_LIMITERSbindings retained their in-memory bucket counts across test boundaries, causing later tests in the same file to see stale rate-limit exhaustion state.Updated dependencies [
e7e5780,d88555e,5fd8bee,5d9990e,bf49a41,1ac96a1,f416dd9,1ca8d8f,16fbf81,b973ed3]:v0.18.0Compare Source
Minor Changes
#14382
fd92d56Thanks @petebacondarwin! - Add support for declarative Durable Object exportswrangler deploynow accepts anexportsmap inwrangler.jsonas a declarative alternative to the legacymigrationsarray.Each entry in
exportsis keyed by Durable Object class name.typecarries the export kind (currently always"durable-object"); thestatefield carries the lifecycle and defaults to"created"(live) when omitted:{ "exports": { // Provision a new Durable Object class (`MyDO`) "MyDO": { "type": "durable-object", "storage": "sqlite" }, // Delete Durable Object class (`OldGone`) "OldGone": { "type": "durable-object", "state": "deleted" }, // Rename a Durable Object class (from `OldName` to `NewName`) "OldName": { "type": "durable-object", "state": "renamed", "renamed_to": "NewName" }, "NewName": { "type": "durable-object", "storage": "sqlite" }, // Transfer a Durable Object (`Outgoing`) to a new Worker (`target-worker`) "Outgoing": { "type": "durable-object", "state": "transferred", "transferred_to": "target-worker" }, // Prepare to receive the transfer of a Durable Object (`Incoming`) from another Worker (`source-worker`) "Incoming": { "type": "durable-object", "state": "expecting-transfer", "storage": "sqlite", "transfer_from": "source-worker" } } }When a Worker declares Durable Object class bindings but no lifecycle for them (neither a
migrationsarray nor anexportsmap), wrangler warns and now suggests a declarativeexportsentry for each class (previously it suggested a legacymigrationsblock).The deployment response now surfaces the server's reconciliation result — created namespaces, applied tombstones, structured per-scenario info entries, and a
removable_entrieshint for stale tombstones that are safe to delete from the config. Blocking errors return the structured per-class detail with scenario tags, suggested remediation, and any referencing-script context.wrangler versions uploadalso forwardsexports. Declarativeexportslifecycle changes are reconciled when the version is deployed (wrangler versions deployorwrangler deploy), so aversions uploadpayload can declare new classes inexportswithout immediately provisioning them. An actor binding (durable_objects.bindings) to a class declared only inexportson the sameversions uploadis rejected with a clear error (code 100406) — the binding cannot be resolved until the namespace is provisioned. Either stage the new class viactx.exports.X(no binding required) onversions uploadand add the binding at deploy time, or usewrangler deployto provision and bind in one step (the same constraint applies to themigrationsflow).Multi-version deploys (
wrangler versions deploy A@50% B@50%) where the selected versions disagree on declarativeexportsare rejected server-side with a clear message: deploy the version that changesexportsat 100% first, then run the percentage-split deploy. This prevents traffic on one branch routing to code that references unprovisioned or just-deleted DO namespaces. Single-version (100%) deploys are unaffected.Local development (
wrangler dev,vite devandunstable_startWorker) reads Durable Object SQLite storage settings from the newexportsfield, so applications using the declarative flow get correct local-dev storage without needing to also declare amigrationsblock.@cloudflare/vitest-pool-workersalso picks up Durable Object configuration fromexports, so tests against anexports-only Worker run with the correct local SQLite storage and can reach unbound Durable Object classes viactx.exports.X.wrangler typesis also aware ofexports. Live entries (includingexpecting-transfer, the receiving side of a two-phase transfer) are added toCloudflare.GlobalProps.durableNamespaces, which typesctx.exports.Xfor unbound Durable Objects declared only viaexports.Patch Changes
aa5d580,6b0ce98,fd92d56,bfe48db,be3f792,0277bfa,98793d8,e1532eb]:v0.17.0Compare Source
Minor Changes
#14490
75d8cb0Thanks @petebacondarwin! - Make Workflow introspectorget()asyncThe
introspectWorkflow(...).get()method now returns a promise, so callers must await it:This aligns Workflow introspection with the shared implementation used by
createTestHarness().Patch Changes
#14490
75d8cb0Thanks @petebacondarwin! - Supportrequire("./x.wasm?module")in CommonJS dependenciesPreviously, only literal
await import("./x.wasm?module")specifiers were rewritten through the static analysis path added in #11094. CommonJS dependencies that userequire("./x.wasm?module")reach the module-fallback service at runtime, where the?modulesuffix went unhandled. The fallback either failed withNo such module "<abs>/x.wasm?module"or, when aCompiledWasmrule was configured, attempted to evaluate the WebAssembly bytes as JavaScript.However, these
require()s work in deployed workers because esbuild's bundler statically rewrites theserequire()calls into ES dynamic imports. vitest-pool-workers' Vite-based pipeline doesn't do that rewrite and instead defers to the module-fallback at runtime.The module-fallback now strips
?modulefrom the resolved target and synthesizes a CommonJS wrapper that re-requires the underlying.wasmby absolute path, exposing it ondefaultto match what workerd produces forCompiledWasmmodules.Updated dependencies [
75d8cb0,75d8cb0,75d8cb0,75d8cb0,75d8cb0,f10d4ad,75d8cb0,75d8cb0,75d8cb0,75d8cb0,d292046,75d8cb0,75d8cb0,75d8cb0,75d8cb0,75d8cb0,75d8cb0,e0cc2cb,75d8cb0,75d8cb0,75d8cb0]:v0.16.20Compare Source
Patch Changes
#14398
c5014ccThanks @apeacock1991! - AddevictDurableObjectandevictAllDurableObjectstest helpers tocloudflare:testThese helpers let you exercise how a Durable Object behaves across evictions in your tests. Eviction is graceful: durable storage is preserved, in-memory state is reset by tearing down the instance, hibernatable WebSockets are hibernated rather than closed, and eviction waits for in-flight requests to drain.
#14394
8a5cf8cThanks @Partha-Shankar! - fix(d1): escapemigrationsTableNameand filenames in SQLite queriesD1 migration commands in both
wranglerand@cloudflare/vitest-pool-workersinterpolated themigrationsTableNameconfig value and migration filenames directly into SQL strings without any escaping. This meant:my"tablewould produce invalid SQL inCREATE TABLE,SELECT, andINSERTstatements, andwhat's-new.sql) would break theINSERT INTO ... VALUES ('...')statement appended after each migration inwrangler.Both identifiers are now properly escaped before interpolation:
migrationsTableNameis wrapped in double-quotes with internal double-quotes doubled (SQL-standard identifier quoting), and migration filenames used as string literals have their single-quotes doubled before insertion.Updated dependencies [
5f40dd5,34e0cef,3b743c1,daa5389,8a5cf8c]:v0.16.19Compare Source
Patch Changes
a085dec,9a0de8f,fab565f,3f02864,4ef872f,2a02858,e312dec]:v0.16.18Compare Source
Patch Changes
c6579d3,444b75e,b38823f,cfd6205,cfd6205]:v0.16.17Compare Source
Patch Changes
#14347
673b09eThanks @jamesopstad! - Update undici from 7.24.8 to 7.28.0#14314
5c3bb11Thanks @harryzcy! - Bump esbuild to 0.28.1This update includes several bug fixes from esbuild versions 0.27.3 through 0.28.1. See the esbuild changelog for details.
Updated dependencies [
673b09e,e930bd4,f6e49dd,5c3bb11,296ad65,594544d,a79b899,5dfb788,ca61558,36777db]:v0.16.16Compare Source
Patch Changes
0e055d3,27db82c,2a6a26b,9a424ed,ecfdd5a,604be26,1fb7ba5,208b3bb,41f391f,32f9307,8b2ce41,3578919,ee82c76,41f391f,21dbc12,7e63948,035917f]:v0.16.15Compare Source
Patch Changes
98c9afe,e305126,f3990b2,4597f08,25722ac,41f75c0,10b5538,818c105,2ae6099,2047a32,2047a32,e8561c2]:v0.16.14Compare Source
Patch Changes
23aecac,b932e47,d076bcc,24497d0,4bb572f,165adb2,776098c,0706fbf,7993711,48c4ff0,8cf8c61,8923f97,b205fb7,a61ac29]:v0.16.13Compare Source
Patch Changes
c6c61b5,c6c61b5,a3eea27,7a6b1a4,7539a9b,1fdd8de,3b8b80a,0bb2d55,8400fb9,b502d54,7949f81,d462013,c2280cd,3b8b80a,ea12b58,acf7817]:v0.16.12Compare Source
Patch Changes
#14152
3d7992eThanks @petebacondarwin! - Fix module resolution failing when project path contains spacesWhen a project lived under a directory with spaces (e.g.
/Users/me/Documents/Master CMS/project), the vitest pool would fail withNo such module "threads.js"before any test executed. The module fallback service now uses therawSpecifierfrom workerd's fallback request to correctly decodefile://URLs, avoiding the double-encoding of spaces (%20→%2520) that occurred when workerd resolved these URLs as relative paths.#14105
337e912Thanks @dario-piotrowicz! - Remove trailing periods from URLs in terminal outputURLs printed to the terminal with a sentence-ending period (e.g.
https://example.com/path.) would include the period when clicked in some terminal emulators, causing 404 errors. This removes trailing periods from all URLs displayed in CLI output across wrangler, miniflare, vitest-pool-workers, and workers-utils.#14112
3a746acThanks @penalosa! - Pin non-bundled runtime dependencies to exact versionsDependencies that are not bundled into a package's published output are installed directly into consumers' dependency trees, so they are now pinned to exact versions instead of semver ranges. This closes a supply-chain gap where an unpinned external dependency could resolve to a compromised upstream release on a fresh install. A new
pnpm check:pinned-depslint enforces this for all published packages (and for the shared pnpm catalog) going forward.#14061
da8e306Thanks @Vardiak! - Preserve Durable Object WebSocket handler invocation orderDurable Object WebSocket events could begin executing out of order in the Workers Vitest integration when several events arrived while the test wrapper was resolving user code.
Handler invocation now preserves arrival order while still allowing asynchronous handler completion to run concurrently.
Updated dependencies [
b210c5e,aec1bb8,e06cbb7,9a26191,5565823,4ef790b,890fca7,6fc9777,337e912,8e7b74f,e86489a,42288d4,65b5f9e,3a746ac,64ef9fd,94b29f7]:v0.16.11Compare Source
Patch Changes
#14087
e3c862aThanks @edmundhung! - Fix Durable Object RPC dispatch for constructors that return proxiesDurable Object RPC methods mediated by a returned
Proxyare now resolved through that proxy after validating prototype exposure. This allows wrappers that bind methods to the underlying instance to use private fields and methods in Vitest, while matching workerd's rejection of constructor-assigned RPC overrides.Updated dependencies [
e3c862a,cbb39bd,cbb39bd,408432a,1103c07,7bb5c7a,5b5cbd3,e3c862a,e3c862a,97d7d81,c647ccc,e3c862a,e3c862a,e3c862a,e3c862a,e3c862a,b64b7e4,e3c862a,e3c862a,e4c8fd9,2dffeeb,e3c862a,e3c862a,4c0da7b,972d13d,13cbadb,59e43e4]:v0.16.10Compare Source
Patch Changes
ca5b604,c1fd2fd,49c1a59,fee1ce4,b3962ff,d042705,420e457,8b1467e]:v0.16.9Compare Source
Patch Changes
#13933
90092c0Thanks @petebacondarwin! - Derive bundler externals frompackage.jsonand shrink the published bundleThe bundler's
externallist was previously hand-maintained and out of sync withpackage.json—undiciandsemverwere both listed as external despite being onlydevDependencies. The publisheddist/pool/index.mjsconsequently contained a top-levelimport { fetch } from "undici"that was only resolvable because pnpm happened to hoistundiciConfiguration
📅 Schedule: (UTC)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ 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.