Skip to content

chore(deps-dev): update dependency msw to v3 - #1564

Merged
gabrielseco merged 2 commits into
mainfrom
renovate/msw-3.x
Oct 14, 2026
Merged

gabrielseco merged 2 commits into
mainfrom
renovate/msw-3.x

Conversation

@renovate

@renovate renovate Bot commented Oct 14, 2026 •

Copy link
Copy Markdown
Contributor

This PR contains the following updates:

Package Change Age Confidence
msw (source) 2.15.0 → 3.0.2 age confidence

Release Notes

mswjs/msw (msw)

v3.0.2

Compare Source

v3.0.2 (2026-10-03)

Bug Fixes

v3.0.1

Compare Source

v3.0.1 (2026-09-30)

Bug Fixes

v3.0.0

Compare Source

v3.0.0 (2026-09-28)

⚠️ BREAKING CHANGES
  • MSW is now ESM-only (#​2765).
  • Deprecate support for Node.js v18 and v20 (#​2729). The minimal supported Node.js version is v22.
  • msw/native is removed in favor of @msw/react-native.
  • Require TypeScript 5.9 as the minimal version.
  • Deprecate support for TypeScript 5.1 and 5.2 (#​2730)
  • worker.stop() returns a Promise (#​2724). Awaiting it is relevant only for in-flight critical scenarios.
  • graphql is now exported as msw/graphql (#​2691). GraphQL is now handled as a proper optional peer dependency.
  • Removes the handleRequest() utility. Please use the defineNetwork() API instead.
  • GraphQLLinkHandlers type has been renamed to GraphQLLink.
  • The file:// requests now throw in Node.js as they normally do (not supported by fetch).
  • The Content-Length request header is now removed by bypass().
  • HTTP-to-WebSocket upgrade requests performed via fetch() now throw in Node.js as they normally do (not supported by fetch).
  • Cookies are no longer managed in Node.js for better compatibilty. Instead, whatever is the default behavior of your environment that's the cookie behavior you get. This has no effect on the browser.
  • WebSocket connection life cycle event has been renamed to websocket:connection (#​2783).
  • onUnhandledRequest option has been renamed to onUnhandledFrame.
  • The library no longer patches setTimeout to circumvent fake timers in test runners. You should advance the fake timers normally for delayed mocked responses to resolve.
  • The library no longer returns a mocked cookie string on request.headers.get('cookie') in the handlers. It returns null in all environments. Please use the cookies resolver argument to have cookie-based logic.
Features
  • Supports Node.js v24 and v26.
  • Supports TypeScript v6.0 and v7.0.
  • You can import individual utilities, like delay or passthrough, from the new msw/utils entrypoint for smaller footprint on your bundle.
  • Support GraphQL v17.0.
  • Support intercepting page navigations and form submissions (#​2721).
  • Support GraphQL subscriptions (#​285, #​2763).
  • Migrate from path-to-regexp to @msw/url (#​2678).
  • Remove the following dependencies:
    • graphql
    • path-to-regexp
    • picocolors
    • statuses
    • strict-event-emitter
  • Adds a Vite plugin for MSW (#​2781).
  • Adds a websocket:error life cycle event to listen to WebSocket connection errors (#​2784).
  • Support modifying the intercepted request headers in passthrough scenarios (#​2786).
  • Support a new WebSocket Extension API that allows for better custom experiences (#​2791).
Bug fixes
  • Fix an issue where preventing a page closure via the beforeunload listener would unregister the MSW worker (#​1105).
  • Fix an issue that caused intermittent test failures in Vitest Browser Mode and Firefox if using maxWorkers: 1 (#​2726).
  • Fix an issue where in-flight requests were incorrectly passthrough when performed before calling worker.stop() (#​2724, #​2597).
  • Fix an issue where persisting cookies in localStorage would cause a maximum quota exceeded errors.
  • Fix various issues related to the network interception in Node.js.

Configuration

📅 Schedule: (UTC)

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


Note

Medium Risk
Major MSW bump can change request matching and interception across the test suite; MSW 3 requires Node ≥22.12 while package.json still allows Node ≥20, which may break installs or tests on older Node in CI.

Overview
Upgrades the MSW dev dependency from 2.15.0 to 3.0.2, with lockfile updates for MSW’s new dependency graph (e.g. @msw/url, updated interceptors, Node ≥22.12 for MSW).

Test harness changes for MSW v3: server.listen now uses onUnhandledFrame instead of onUnhandledRequest. Contractor onboarding schema tests use explicit country codes in handler URLs (PRT/DEU/USA) instead of * wildcards. The job-title eligibility abort test asserts cancellation via fetch spy + AbortSignal rather than request.signal inside the MSW handler.

Reviewed by Cursor Bugbot for commit 80c60bf. Bugbot is set up for automated code reviews on this repo. Configure here.

@renovate
renovate Bot force-pushed the renovate/msw-3.x branch from a2fd573 to 17fe753 Compare October 14, 2026 06:57
@github-actions

Copy link
Copy Markdown
Contributor

📦 Bundle Size Report

Metric Current Previous Change Status
Total (gzip) 230.55 kB 230.55 kB 0 B (0%) 🟢
Total (raw) 642.09 kB 642.09 kB 0 B (0%) 🟢
CSS (gzip) 21.94 kB 21.94 kB 0 B (0%) 🟢
CSS (raw) 114.43 kB 114.43 kB 0 B (0%) 🟢

Size Limits

  • ✅ Total gzipped: 230.55 kB / 350 kB (65.9%)
  • ✅ Total raw: 642.09 kB / 850 kB (75.5%)
  • ✅ CSS gzipped: 21.94 kB / 25 kB (87.8%)

Largest Files (Top 5)

  1. index.esm-wIkXrqU6.js - 11.4 kB (0 B (0%))
  2. styles.css - 10.97 kB (0 B (0%))
  3. index.css - 10.97 kB (0 B (0%))
  4. internals-D6148AAY.js - 6.13 kB (0 B (0%))
  5. hooks-ThU7CDLI.js - 5.85 kB (0 B (0%))
View All Files (291 total)
File Size (gzip) Change
index.esm-wIkXrqU6.js 11.4 kB 0 B (0%)
styles.css 10.97 kB 0 B (0%)
index.css 10.97 kB 0 B (0%)
internals-D6148AAY.js 6.13 kB 0 B (0%)
hooks-ThU7CDLI.js 5.85 kB 0 B (0%)
sdk.gen-BRPiw4M1.js 5.58 kB 0 B (0%)
index.js 5.51 kB 0 B (0%)
flows/Onboarding/hooks.js 4.67 kB 0 B (0%)
utils-CUgvJHl4.js 4.07 kB 0 B (0%)
FieldSetField-QbfQb5Lp.js 4.04 kB 0 B (0%)

✅ Bundle size check passed

@github-actions

github-actions Bot commented Oct 14, 2026 •

Copy link
Copy Markdown
Contributor

Deploy preview for remote-flows ready!

Project:remote-flows
Status: ✅  Deploy successful!
Preview URL:https://remote-flows-nb27d9x3f-remotecom.vercel.app
Latest Commit:80c60bf

Deployed with vercel-action

@github-actions

github-actions Bot commented Oct 14, 2026 •

Copy link
Copy Markdown
Contributor

Deploy preview for adp-cost-calculator ready!

Project:adp-cost-calculator
Status: ✅  Deploy successful!
Preview URL:https://adp-cost-calculator-j9jik69qm-remotecom.vercel.app
Latest Commit:80c60bf

Deployed with vercel-action

@cursor cursor Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes and found 1 potential issue.

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, have a team admin enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit 17fe753. Configure here.

Comment thread package.json Resolved
- onUnhandledRequest was renamed to onUnhandledFrame, which fixes the type-check (lint CI job) failure
- scope the contractor schema-version handlers to their own country so a request from a neighbouring test can't satisfy them
- assert the job-title abort on the signal passed to fetch, since msw v3 no longer reflects the client abort on request.signal in this path

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
@github-actions

Copy link
Copy Markdown
Contributor

📊 Coverage Report

✅ Coverage increased! 🎉

Metric Current Previous Change Status
Lines 89.60% 89.58% +0.02% 🟢
Statements 89.48% 89.46% +0.02% 🟢
Functions 88.47% 88.47% 0% ⚪
Branches 81.23% 81.21% +0.02% 🟢

Detailed Breakdown

Lines Coverage
  • Covered: 5394 / 6020
  • Coverage: 89.60%
  • Change: +0.02% (1 lines)
Statements Coverage
  • Covered: 5459 / 6101
  • Coverage: 89.48%
  • Change: +0.02% (1 statements)
Functions Coverage
  • Covered: 1427 / 1613
  • Coverage: 88.47%
  • Change: 0% (0 functions)
Branches Coverage
  • Covered: 3346 / 4119
  • Coverage: 81.23%
  • Change: +0.02% (1 branches)

✅ Coverage check passed

@gabrielseco
gabrielseco merged commit 325922c into main Oct 14, 2026
17 checks passed
@gabrielseco
gabrielseco deleted the renovate/msw-3.x branch October 14, 2026 07:20
@gabrielseco gabrielseco mentioned this pull request Oct 14, 2026
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