Repository navigation
feat: forward request headers on passthrough - #2786
Merged
Merged
Conversation
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Repository UI Review profile: CHILL Plan: Advanced Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
commit: |
kettanaito
marked this pull request as ready for review
September 18, 2026 11:46
renovate Bot
added a commit
to cigaleapp/cigale
that referenced
this pull request
Oct 13, 2026
##### [v3.0.2](https://github.com/mswjs/msw/releases/tag/v3.0.2) #### v3.0.2 (2026-10-03) ##### Bug Fixes - **vite:** support `virtual:msw` imports in vitest ([#2802](mswjs/msw#2802)) ([`e73c381`](mswjs/msw@e73c381)) [@kettanaito](https://github.com/kettanaito) ##### [v3.0.1](https://github.com/mswjs/msw/releases/tag/v3.0.1) #### v3.0.1 (2026-09-30) ##### Bug Fixes - treat `CONNECT` requests as the transport mechanism ([#2796](mswjs/msw#2796)) ([`7cad86a`](mswjs/msw@7cad86a)) [@kettanaito](https://github.com/kettanaito) ##### [v3.0.0](https://github.com/mswjs/msw/releases/tag/v3.0.0) #### v3.0.0 (2026-09-28) - v3.0.0 ([#2692](mswjs/msw#2692)) ([`2bb4342`](mswjs/msw@2bb4342)) [@kettanaito](https://github.com/kettanaito) [@Andarist](https://github.com/Andarist) #####⚠️ BREAKING CHANGES - **MSW is now ESM-only** ([#2765](mswjs/msw#2765)). - Deprecate support for Node.js v18 and v20 ([#2729](mswjs/msw#2729)). The minimal supported Node.js version is v22. - `msw/native` is removed in favor of [`@msw/react-native`](https://github.com/mswjs/react-native). - Require TypeScript 5.9 as the minimal version. - Deprecate support for TypeScript 5.1 and 5.2 ([#2730](mswjs/msw#2730)) - `worker.stop()` returns a Promise ([#2724](mswjs/msw#2724)). Awaiting it is relevant only for in-flight critical scenarios. - `graphql` is now exported as `msw/graphql` ([#2691](mswjs/msw#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](mswjs/msw#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](mswjs/msw#2721)). - Support GraphQL subscriptions ([#285](mswjs/msw#285), [#2763](mswjs/msw#2763)). - Migrate from `path-to-regexp` to `@msw/url` ([#2678](mswjs/msw#2678)). - Remove the following dependencies: - `graphql` - `path-to-regexp` - `picocolors` - `statuses` - `strict-event-emitter` - Adds a Vite plugin for MSW ([#2781](mswjs/msw#2781)). - Adds a `websocket:error` life cycle event to listen to WebSocket connection errors ([#2784](mswjs/msw#2784)). - Support modifying the intercepted request headers in passthrough scenarios ([#2786](mswjs/msw#2786)). - Support a new WebSocket Extension API that allows for better custom experiences ([#2791](mswjs/msw#2791)). ##### Bug fixes - Fix an issue where preventing a page closure via the `beforeunload` listener would unregister the MSW worker ([#1105](mswjs/msw#1105)). - Fix an issue that caused intermittent test failures in Vitest Browser Mode and Firefox if using `maxWorkers: 1` ([#2726](mswjs/msw#2726)). - Fix an issue where in-flight requests were incorrectly passthrough when performed before calling `worker.stop()` ([#2724](mswjs/msw#2724), [#2597](mswjs/msw#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.
renovate Bot
added a commit
to cigaleapp/cigale
that referenced
this pull request
Oct 17, 2026
##### [v3.0.3](https://github.com/mswjs/msw/releases/tag/v3.0.3) #### v3.0.3 (2026-10-10) ##### Bug Fixes - **HandlersController:** dispose of reset handlers ([#2810](mswjs/msw#2810)) ([`3818a81`](mswjs/msw@3818a81)) [@kettanaito](https://github.com/kettanaito) - expose network context on `enable` in network sources ([#2809](mswjs/msw#2809)) ([`d1fe8e6`](mswjs/msw@d1fe8e6)) [@kettanaito](https://github.com/kettanaito) ##### [v3.0.2](https://github.com/mswjs/msw/releases/tag/v3.0.2) #### v3.0.2 (2026-10-03) ##### Bug Fixes - **vite:** support `virtual:msw` imports in vitest ([#2802](mswjs/msw#2802)) ([`e73c381`](mswjs/msw@e73c381)) [@kettanaito](https://github.com/kettanaito) ##### [v3.0.1](https://github.com/mswjs/msw/releases/tag/v3.0.1) #### v3.0.1 (2026-09-30) ##### Bug Fixes - treat `CONNECT` requests as the transport mechanism ([#2796](mswjs/msw#2796)) ([`7cad86a`](mswjs/msw@7cad86a)) [@kettanaito](https://github.com/kettanaito) ##### [v3.0.0](https://github.com/mswjs/msw/releases/tag/v3.0.0) #### v3.0.0 (2026-09-28) - v3.0.0 ([#2692](mswjs/msw#2692)) ([`2bb4342`](mswjs/msw@2bb4342)) [@kettanaito](https://github.com/kettanaito) [@Andarist](https://github.com/Andarist) #####⚠️ BREAKING CHANGES - **MSW is now ESM-only** ([#2765](mswjs/msw#2765)). - Deprecate support for Node.js v18 and v20 ([#2729](mswjs/msw#2729)). The minimal supported Node.js version is v22. - `msw/native` is removed in favor of [`@msw/react-native`](https://github.com/mswjs/react-native). - Require TypeScript 5.9 as the minimal version. - Deprecate support for TypeScript 5.1 and 5.2 ([#2730](mswjs/msw#2730)) - `worker.stop()` returns a Promise ([#2724](mswjs/msw#2724)). Awaiting it is relevant only for in-flight critical scenarios. - `graphql` is now exported as `msw/graphql` ([#2691](mswjs/msw#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 compatibility. 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](mswjs/msw#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](mswjs/msw#2721)). - Support GraphQL subscriptions ([#285](mswjs/msw#285), [#2763](mswjs/msw#2763)). - Migrate from `path-to-regexp` to `@msw/url` ([#2678](mswjs/msw#2678)). - Remove the following dependencies: - `graphql` - `path-to-regexp` - `picocolors` - `statuses` - `strict-event-emitter` - Adds a Vite plugin for MSW ([#2781](mswjs/msw#2781)). - Adds a `websocket:error` life cycle event to listen to WebSocket connection errors ([#2784](mswjs/msw#2784)). - Support modifying the intercepted request headers in passthrough scenarios ([#2786](mswjs/msw#2786)). - Support a new WebSocket Extension API that allows for better custom experiences ([#2791](mswjs/msw#2791)). ##### Bug fixes - Fix an issue where preventing a page closure via the `beforeunload` listener would unregister the MSW worker ([#1105](mswjs/msw#1105)). - Fix an issue that caused intermittent test failures in Vitest Browser Mode and Firefox if using `maxWorkers: 1` ([#2726](mswjs/msw#2726)). - Fix an issue where in-flight requests were incorrectly passthrough when performed before calling `worker.stop()` ([#2724](mswjs/msw#2724), [#2597](mswjs/msw#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.
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.
Problem
Modifying request headers in the handler and passthrough that request never actually applied those header modifications to the outgoing request.
Todos