output a single formatted message to console (#1820) (2ead3922f3ec5a4750e3b9e09e75aeb20f13c736) @kettanaito
prevent one-time handlers from incorrectly marking themselves as used (#1822) (a179b68e2dfd3667999c31b1dbd3870a0b92568c) @joshkel
resolve the "eventTargets" error in JSDOM by dropping "instanceof" (#1813) (f6e5112fa0f1ebbd97fb95bcbda1c47a0cc750f9) @mattcosta7
v2.0.1 (2023-10-28)
Bug Fixes
clone response early for response logging (#1799) (5c5470a0f2204b4164fcc65e210471661208ce4d) @kunmagg
v2.0.0 (2023-10-23)
[!IMPORTANT]
This release is a BREAKING CHANGE. Please follow the Migration guidelines to upgrade. This release took a lot of effort to make, and I expect a bit of that effort on your part while upgrading. Most of the changes are mechanical, and a simple Find/Replace All will get you a long way. For the rest of it, you will learn how to handle requests and responses using the standard JavaScript API. Thank you!
Breaking changes
Drops support for Node.js 16. Please upgrade to Node.js 18 or later to use the global Fetch API.
Drops support for TypeScript < 4.7.
All browser-side exports, like setupWorker, SetupWorkerApi, etc., must be imported from msw/browser now.
Renames the rest object to http (rest.get -> http.get).
Response resolver call signature is no longer (req, res, ctx) => res() but instead ({ request }) => new Response().
The following exports are removed due to no longer being needed:
response
context and related exports (defaultContext, restContext, graphqlContext).
compose and createResponseComposition
res.once() is removed in favor of the { once: boolean } option on the request handler.
Replaces the .printHandlers() method with .listHandlers().
Removes the NetworkError class in favor of the standard Response.error().
Moves request error handling from the worker thread to the client thread.
Changes the call signature of the Life-cycle Events API to accept a single object argument.
Uses crypto.randomUUID() instead of Math.random() in the worker.
For the full list of changes and detailed instructions on how to upgrade please see the Migration guidelines.
Features
Adopts Fetch API primitives. Represent intercepted requests and mocked responses as Request and Response instances respectively.
Supports Node.js v18.
Supports ReadableStream as a mocked response body.
Supports reading the intercepted request body as FormData.
Supports FormData as a mocked response body.
Uses File polyfill in Node.js.
Supports XMLHttpRequest “upload” events when responding with a mocked stream response.
Allows mocking a network error once using the { once: true } request handler option.
Makes the RequestHandler API public.
Bug fixes
Fixes the issue where the request body couldn’t be properly read as FormData.
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Bumps msw from 1.3.2 to 2.0.2.
Release notes
Sourced from msw's releases.
... (truncated)
Commits
dff7fac
chore(release): v2.0.22ead392
fix: output a single formatted message to console (#1820)a179b68
fix: prevent one-time handlers from incorrectly marking themselves as used (#...05edb43
docs: update chat url in readme (#1821)9e9c5a1
chore: use vitest for tests (#1817)f6e5112
fix: resolve the "eventTargets" error in JSDOM by dropping "instanceof" (#1813)88c45ea
chore(release): v2.0.15c5470a
fix: clone response early for response logging (#1799)1d1fbca
docs: add egghead banner to readme (#1798)48d8fdf
docs: add codacy to gold sponsors (#1797)Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase
.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show