Skip to content

chore(deps): update dependency @cloudflare/vitest-pool-workers to ^0.18.0#72

Open
renovate[bot] wants to merge 1 commit into
masterfrom
renovate/cloudflare-vitest-pool-workers-0.x
Open

chore(deps): update dependency @cloudflare/vitest-pool-workers to ^0.18.0#72
renovate[bot] wants to merge 1 commit into
masterfrom
renovate/cloudflare-vitest-pool-workers-0.x

Conversation

@renovate

@renovate renovate Bot commented Jul 4, 2026

Copy link
Copy Markdown
Contributor

This PR contains the following updates:

Package Change Age Confidence
@cloudflare/vitest-pool-workers (source) ^0.16.17^0.18.0 age confidence

Release Notes

cloudflare/workers-sdk (@​cloudflare/vitest-pool-workers)

v0.18.0

Compare Source

Minor Changes
  • #​14382 fd92d56 Thanks @​petebacondarwin! - Add support for declarative Durable Object exports

    wrangler deploy now accepts an exports map in wrangler.json as a declarative alternative to the legacy migrations array.

    Each entry in exports is keyed by Durable Object class name. type carries the export kind (currently always "durable-object"); the state field 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 migrations array nor an exports map), wrangler warns and now suggests a declarative exports entry for each class (previously it suggested a legacy migrations block).

    The deployment response now surfaces the server's reconciliation result — created namespaces, applied tombstones, structured per-scenario info entries, and a removable_entries hint 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 upload also forwards exports. Declarative exports lifecycle changes are reconciled when the version is deployed (wrangler versions deploy or wrangler deploy), so a versions upload payload can declare new classes in exports without immediately provisioning them. An actor binding (durable_objects.bindings) to a class declared only in exports on the same versions upload is rejected with a clear error (code 100406) — the binding cannot be resolved until the namespace is provisioned. Either stage the new class via ctx.exports.X (no binding required) on versions upload and add the binding at deploy time, or use wrangler deploy to provision and bind in one step (the same constraint applies to the migrations flow).

    Multi-version deploys (wrangler versions deploy A@50% B@50%) where the selected versions disagree on declarative exports are rejected server-side with a clear message: deploy the version that changes exports at 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 dev and unstable_startWorker) reads Durable Object SQLite storage settings from the new exports field, so applications using the declarative flow get correct local-dev storage without needing to also declare a migrations block.

    @cloudflare/vitest-pool-workers also picks up Durable Object configuration from exports, so tests against an exports-only Worker run with the correct local SQLite storage and can reach unbound Durable Object classes via ctx.exports.X.

    wrangler types is also aware of exports. Live entries (including expecting-transfer, the receiving side of a two-phase transfer) are added to Cloudflare.GlobalProps.durableNamespaces, which types ctx.exports.X for unbound Durable Objects declared only via exports.

Patch Changes

v0.17.0

Compare Source

Minor Changes
  • #​14490 75d8cb0 Thanks @​petebacondarwin! - Make Workflow introspector get() async

    The introspectWorkflow(...).get() method now returns a promise, so callers must await it:

    const introspector = await introspectWorkflow(env.MY_WORKFLOW);
    
    // Before
    const instances = introspector.get();
    
    // After
    const instances = await introspector.get();

    This aligns Workflow introspection with the shared implementation used by createTestHarness().

Patch Changes
  • #​14490 75d8cb0 Thanks @​petebacondarwin! - Support require("./x.wasm?module") in CommonJS dependencies

    Previously, only literal await import("./x.wasm?module") specifiers were rewritten through the static analysis path added in #​11094. CommonJS dependencies that use require("./x.wasm?module") reach the module-fallback service at runtime, where the ?module suffix went unhandled. The fallback either failed with No such module "<abs>/x.wasm?module" or, when a CompiledWasm rule was configured, attempted to evaluate the WebAssembly bytes as JavaScript.

    However, these require()s work in deployed workers because esbuild's bundler statically rewrites these require() 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 ?module from the resolved target and synthesizes a CommonJS wrapper that re-requires the underlying .wasm by absolute path, exposing it on default to match what workerd produces for CompiledWasm modules.

  • Updated dependencies [75d8cb0, 75d8cb0, 75d8cb0, 75d8cb0, 75d8cb0, f10d4ad, 75d8cb0, 75d8cb0, 75d8cb0, 75d8cb0, d292046, 75d8cb0, 75d8cb0, 75d8cb0, 75d8cb0, 75d8cb0, 75d8cb0, e0cc2cb, 75d8cb0, 75d8cb0, 75d8cb0]:

    • wrangler@​4.106.0
    • miniflare@​4.20260630.0

v0.16.20

Compare Source

Patch Changes
  • #​14398 c5014cc Thanks @​apeacock1991! - Add evictDurableObject and evictAllDurableObjects test helpers to cloudflare:test

    These 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.

    import { evictDurableObject, evictAllDurableObjects } from "cloudflare:test";
    import { env } from "cloudflare:workers";
    
    const id = env.COUNTER.idFromName("my-counter");
    const stub = env.COUNTER.get(id);
    
    // Evict the Durable Object instance pointed to by a specific stub
    await evictDurableObject(stub);
    await evictDurableObject(stub, { webSockets: "close" });
    
    // Evict all currently-running Durable Objects in evictable namespaces
    await evictAllDurableObjects();
  • #​14394 8a5cf8c Thanks @​Partha-Shankar! - fix(d1): escape migrationsTableName and filenames in SQLite queries

    D1 migration commands in both wrangler and @cloudflare/vitest-pool-workers interpolated the migrationsTableName config value and migration filenames directly into SQL strings without any escaping. This meant:

    • A table name such as my"table would produce invalid SQL in CREATE TABLE, SELECT, and INSERT statements, and
    • A migration filename containing an apostrophe (e.g. what's-new.sql) would break the INSERT INTO ... VALUES ('...') statement appended after each migration in wrangler.

    Both identifiers are now properly escaped before interpolation: migrationsTableName is 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]:

    • wrangler@​4.105.0
    • miniflare@​4.20260625.0

v0.16.19

Compare Source

Patch Changes

v0.16.18

Compare Source

Patch Changes

Configuration

📅 Schedule: (in timezone America/Boise)

  • Branch creation
    • At any time (no schedule defined)
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, 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.

@cloudflare-workers-and-pages

cloudflare-workers-and-pages Bot commented Jul 4, 2026

Copy link
Copy Markdown

Deploying with  Cloudflare Workers  Cloudflare Workers

The latest updates on your project. Learn more about integrating Git with Workers.

Status Name Latest Commit Preview URL Updated (UTC)
✅ Deployment successful!
View logs
aerealith 5b8ee04 Commit Preview URL

Branch Preview URL
Jul 05 2026, 05:40 PM

@github-actions

github-actions Bot commented Jul 4, 2026

Copy link
Copy Markdown

Dependency Review

✅ No vulnerabilities or license issues or OpenSSF Scorecard issues found.

OpenSSF Scorecard

PackageVersionScoreDetails
npm/@cloudflare/vitest-pool-workers 0.18.0 UnknownUnknown
npm/@cloudflare/workerd-darwin-64 1.20260701.1 UnknownUnknown
npm/@cloudflare/workerd-darwin-arm64 1.20260701.1 UnknownUnknown
npm/@cloudflare/workerd-linux-64 1.20260701.1 UnknownUnknown
npm/@cloudflare/workerd-linux-arm64 1.20260701.1 UnknownUnknown
npm/@cloudflare/workerd-windows-64 1.20260701.1 UnknownUnknown
npm/miniflare 4.20260701.0 UnknownUnknown
npm/workerd 1.20260701.1 UnknownUnknown
npm/wrangler 4.107.0 UnknownUnknown

Scanned Files

  • pnpm-lock.yaml

@github-code-quality

github-code-quality Bot commented Jul 4, 2026

Copy link
Copy Markdown

Code Coverage Overview

Languages: TypeScript

TypeScript / code-coverage/vitest

The overall coverage remains at 92%, unchanged from the branch.


Updated July 05, 2026 17:40 UTC
Code Coverage is in Public Preview. Learn more and provide us with your feedback.

@codecov

codecov Bot commented Jul 4, 2026

Copy link
Copy Markdown

Bundle Report

Bundle size has no change ✅

@github-actions

github-actions Bot commented Jul 4, 2026

Copy link
Copy Markdown

Coverage Report for Aerealith Vitest Coverage (.)

Status Category Percentage Covered / Total
🔵 Lines 91.78% 893 / 973
🔵 Statements 91.79% 895 / 975
🔵 Functions 86.41% 267 / 309
🔵 Branches 87.2% 402 / 461
File CoverageNo changed files found.
Generated in workflow #233 for commit 5b8ee04 by the Vitest Coverage Report Action

@codecov

codecov Bot commented Jul 4, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ All tests successful. No failed tests found.

📢 Thoughts on this report? Let us know!

@github-actions github-actions Bot added type: build Build tooling, packaging, bundling, or release pipeline work. automated Created or updated by automation, bots, or repository workflows. dependencies Dependency update, package maintenance, or lockfile change. area: tooling Nx, pnpm, TypeScript, ESLint, Prettier, testing, or local development tooling. labels Jul 4, 2026
@github-actions

github-actions Bot commented Jul 4, 2026

Copy link
Copy Markdown

Aerealith CI

Overall result: ✅ Passed
Run: #233

Check Result
Dependency install ✅ Passed
Nx installation ✅ Passed
Nx workspace reset ✅ Passed
Git comparison range ✅ Passed
Nx affected validation ✅ Passed
MegaLinter ✅ Passed

Cache

  • pnpm store: miss
  • Nx task cache: managed by Nx Cloud when configured for this workspace.
Run details
  • Base SHA: 29f4bb5372032cd5a0e975601929da430abcc9dc
  • Head SHA: 5b8ee0490f3d1bf5a319216c1769c0b26a8fba04
  • Validation targets: lint, typecheck, test, build
  • Logs: download the ci-logs artifact from the workflow run.

@renovate renovate Bot force-pushed the renovate/cloudflare-vitest-pool-workers-0.x branch from 7de7282 to 0781f73 Compare July 5, 2026 03:22
@alwaysmeticulous

alwaysmeticulous Bot commented Jul 5, 2026

Copy link
Copy Markdown

Test suite: Aerealith

✅ Meticulous spotted 0 visual differences across 2 screens tested: view results.

Expected differences? Click here. Last updated for commit 5b8ee04 chore(deps): update dependency @cloudflare/vitest-pool-workers to ^0.18..... This comment will update as new commits are pushed.

@renovate renovate Bot force-pushed the renovate/cloudflare-vitest-pool-workers-0.x branch from 0781f73 to d58250a Compare July 5, 2026 04:12
@Sinless777 Sinless777 moved this to Inbox in Aerealith Delivery Jul 5, 2026
@Sinless777 Sinless777 moved this from Inbox to In Review in Aerealith Delivery Jul 5, 2026
@renovate renovate Bot force-pushed the renovate/cloudflare-vitest-pool-workers-0.x branch from d58250a to 8677395 Compare July 5, 2026 09:17
@renovate renovate Bot force-pushed the renovate/cloudflare-vitest-pool-workers-0.x branch from 8677395 to 5b8ee04 Compare July 5, 2026 17:39
@renovate renovate Bot changed the title chore(deps): update dependency @cloudflare/vitest-pool-workers to ^0.17.0 chore(deps): update dependency @cloudflare/vitest-pool-workers to ^0.18.0 Jul 5, 2026
@sonarqubecloud

sonarqubecloud Bot commented Jul 5, 2026

Copy link
Copy Markdown

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area: tooling Nx, pnpm, TypeScript, ESLint, Prettier, testing, or local development tooling. automated Created or updated by automation, bots, or repository workflows. dependencies Dependency update, package maintenance, or lockfile change. type: build Build tooling, packaging, bundling, or release pipeline work.

Projects

Status: In Review

Development

Successfully merging this pull request may close these issues.

1 participant