cypress-io/cypress (@cypress/react)
### [`v8.0.2`](https://redirect.github.com/cypress-io/cypress/compare/@cypress/react-v8.0.1...@cypress/react-v8.0.2)
[Compare Source](https://redirect.github.com/cypress-io/cypress/compare/@cypress/react-v8.0.1...@cypress/react-v8.0.2)
### [`v8.0.1`](https://redirect.github.com/cypress-io/cypress/compare/@cypress/react-v8.0.0...@cypress/react-v8.0.1)
[Compare Source](https://redirect.github.com/cypress-io/cypress/compare/@cypress/react-v8.0.0...@cypress/react-v8.0.1)
### [`v8.0.0`](https://redirect.github.com/cypress-io/cypress/releases/tag/v8.0.0): 8.0.0
[Compare Source](https://redirect.github.com/cypress-io/cypress/compare/@cypress/react-v7.0.3...@cypress/react-v8.0.0)
*Released 07/19/2021*
**Summary:**
We've made some updates to ensure a consistent run experience across browsers.
Now all browsers run via `cypress run` run headlessly, with a device pixel ratio
of 1, and a screen size of 1280x720 by default.
**Breaking Changes:**
** Please read our
[Migration Guide](https://docs.cypress.io/guides/references/migration-guide) which explains the changes
in more detail and how to change your code to migrate to Cypress 8.0.**
- When running `cypress run` previous to 8.0, some browsers would launch headed
while others were launched headless by default. Cypress now runs all browsers
during `cypress run` as headless by default. Addresses
[#16832](https://redirect.github.com/cypress-io/cypress/issues/16832).
- The default screen size when running a headless browser has been reverted back
to 1280x720 pixels (pre 7.0 behavior). Addresses
[#16853](https://redirect.github.com/cypress-io/cypress/issues/16853).
- When running the `--headless` Chrome browser via `cypress run`, the device
pixel ratio will now be 1 by default, matching the behavior of all other
browsers. This behavior can be overridden through the
[browser launch API](https://docs.cypress.io/api/plugins/browser-launch-api#Override-the-device-pixel-ratio).
Addresses [#17375](https://redirect.github.com/cypress-io/cypress/issues/17375).
- Cypress now enforces version checks for browser launching and will error
during `cypress run` and not allow opening the browser in `cypress open` when
attempting to open unsupported browser versions. Cypress supports Chrome >=
64, Firefox >= 86, and Edge >= 79. Addressed in
[#17355](https://redirect.github.com/cypress-io/cypress/pull/17355).
- Arguments returned from a chained function will no longer incorrectly be of
type `jQuery` and instead have an `any` type. Fixes
[#16669](https://redirect.github.com/cypress-io/cypress/issues/16669).
- The `Cypress.ConfigOptions`, `Cypress.ResolvedConfigOptions` and
`Cypress.RuntimeConfigOption` types have been updated so that `ConfigOptions`
match the JSON schema. Addressed in
[#17251](https://redirect.github.com/cypress-io/cypress/pull/17251).
**Features:**
- You can now configure certificate authority (CA) and client certificates to
use within tests on a per-URL basis via a `clientCertificates` configuration
option. See [Client certificates](https://docs.cypress.io/guides/references/client-certificates) for
more detail.
- Setting the environment variable `ELECTRON_RUN_AS_NODE` now starts Cypress as
a normal Node.js process rather than an Electron process. See
[Running headless tests without Xvfb](https://docs.cypress.io/guides/continuous-integration/introduction#Running-headless-tests-without-Xvfb)
for more details. Addresses
[#16505](https://redirect.github.com/cypress-io/cypress/issues/16505).
**Bugfixes:**
- `console.log` and `console.error` called within the
[plugins file](https://docs.cypress.io/guides/core-concepts/writing-and-organizing-tests.html#Plugin-files)
will now be captured in the `stdout` sent to the Cypress Dashboard, making it
visible in Output logs in the Dashboard. Fixes
[#7434](https://redirect.github.com/cypress-io/cypress/issues/7434).
- There are several fixes for [`cy.intercept()`](/api/commands/intercept)
including:
- The `times` option now works correctly with `req.continue`. Fixes
[#16821](https://redirect.github.com/cypress-io/cypress/issues/16821).
- `localhost` is now accepted as a valid `hostname` in the `RouteMatcher`.
Fixes [#17015](https://redirect.github.com/cypress-io/cypress/issues/17015).
- `delay` now works correctly with a `statusCode` of 204. Fixes
[#15188](https://redirect.github.com/cypress-io/cypress/issues/15188).
- When using the experimental
[Cypress Studio](https://docs.cypress.io/guides/core-concepts/cypress-studio), there should be a
reduced occurrence of "Studio failed to save commands" error messages. Fixes
[#14767](https://redirect.github.com/cypress-io/cypress/issues/14767).
- [`cy.invoke()`](/api/commands/invoke) now retains the proper `this` context on
nested object methods. Fixes
[#3871](https://redirect.github.com/cypress-io/cypress/issues/3871).
- We no longer trigger unnecessary snapshot re-renders when hovering over the
Command Log. Fixes
[#17257](https://redirect.github.com/cypress-io/cypress/issues/17257).
### [`v7.0.3`](https://redirect.github.com/cypress-io/cypress/compare/@cypress/react-v7.0.2...@cypress/react-v7.0.3)
[Compare Source](https://redirect.github.com/cypress-io/cypress/compare/@cypress/react-v7.0.2...@cypress/react-v7.0.3)
### [`v7.0.2`](https://redirect.github.com/cypress-io/cypress/compare/@cypress/react-v7.0.1...@cypress/react-v7.0.2)
[Compare Source](https://redirect.github.com/cypress-io/cypress/compare/@cypress/react-v7.0.1...@cypress/react-v7.0.2)
### [`v7.0.1`](https://redirect.github.com/cypress-io/cypress/releases/tag/v7.0.1): 7.0.1
[Compare Source](https://redirect.github.com/cypress-io/cypress/compare/@cypress/react-v7.0.0...@cypress/react-v7.0.1)
*Released 04/07/2021*
**Bugfixes:**
- Fixed a regression in 7.0.0 that caused the test runner not to check for updates. Fixes [#15829](https://redirect.github.com/cypress-io/cypress/issues/15829).
- The component testing spec list search input no longer throws an exception when hitting `Enter`. Addressed in [#15833](https://redirect.github.com/cypress-io/cypress/pull/15833).
- The preferred file opener modal no longer appears behind the command log. Addressed in [#15831](https://redirect.github.com/cypress-io/cypress/pull/15831).
- Cypress no longer crashes in certain circumstances when running in Docker without `--ipc=host`. Fixes [#15814](https://redirect.github.com/cypress-io/cypress/issues/15814) and [#350](https://redirect.github.com/cypress-io/cypress/issues/350).
- Node.js warnings are no longer incorrectly printed to `stderr` in production builds of Cypress. Addressed in [#15817](https://redirect.github.com/cypress-io/cypress/pull/15817).
- Cypress no longer prints a warning to `stdout` when the video cannot be found after a run. Addressed in [#15828](https://redirect.github.com/cypress-io/cypress/pull/15828).
- A warning is no longer displayed when running a TypeScript spec without a `tsconfig.json` file present. Addressed in [#15828](https://redirect.github.com/cypress-io/cypress/pull/15828).
**Misc:**
- The "New Spec File" in the Desktop GUI has a less pronounced style. Addressed in [#15835](https://redirect.github.com/cypress-io/cypress/pull/15835).
### [`v7.0.0`](https://redirect.github.com/cypress-io/cypress/releases/tag/v7.0.0): 7.0.0
[Compare Source](https://redirect.github.com/cypress-io/cypress/compare/@cypress/react-v6.2.1...@cypress/react-v7.0.0)
*Released 04/05/2021*
**Summary:**
🎉 Introducing the **Cypress Component Test Runner** - now in alpha. Today's release includes a brand new test runner designed to replace your Node-based component tests. Our Component Test Runner tests your components in the browser, just like a user would. And, since it runs in the browser, you get to debug your components using your favorite developer tools. Read our [Component Testing Guide](https://on.cypress.io/component-testing) for more details.
**Breaking Changes:**
** Please read our [Migration Guide](https://on.cypress.io/migration-guide) which explains the changes in more detail and how to change your code to migrate to Cypress 7.0.**
- We introduced several breaking changes to [cy.intercept()](https://on.cypress.io/intercept). See the [cy.intercept()](/api/commands/intercept) docs for full usage examples. Breaking changes:
- Request handlers supplied to `cy.intercept()` are now matched starting with the most recently defined request interceptor. This allows users to override request handlers by calling `cy.intercept()` again. This matches the previous behavior that was default in `cy.route()`. Addresses [#9302](https://redirect.github.com/cypress-io/cypress/issues/9302).
- `cy.intercept()` now automatically parses more JSON MIME types, including 'application/vnd.api+json'. You can now remove `JSON.parse(req.body)` or `JSON.parse(res.body)` from some tests that previously required it. Addresses [#14763](https://redirect.github.com/cypress-io/cypress/issues/14763).
- Falsy values (with the exception of `undefined`) supplied as the body of a `StaticResponse` to `cy.intercept()` will now be JSONified and sent as the body. Previously, an empty string was sent instead. Addresses [#15234](https://redirect.github.com/cypress-io/cypress/issues/15234) and [#14205](https://redirect.github.com/cypress-io/cypress/issues/14205).
- The `matchUrlAgainstPath` `RouteMatcher` property has been removed from `cy.intercept()`.
- The "substring match" from `cy.intercept()` URL matching has been removed. Previously, a URL would match if it contained the supplied string anywhere. Now, the URL (including querystring) only matches if it is an equality match or a minimatch.
- The `delay` option for StaticResponses used with `cy.intercept()` has been removed. Please go back to using the `delayMS` option. Addresses [#15255](https://redirect.github.com/cypress-io/cypress/issues/15255).
- `cy.route2()` was previously aliased to `cy.intercept()`. Now the alias `cy.route2()` has been removed. Please update usage of `cy.route2()` to `cy.intercept()`. Addressed in [#14709](https://redirect.github.com/cypress-io/cypress/pull/14709).
- Component tests have been migrated to use a dedicated test runner and are bundled differently. See the [Migration Guide](https://on.cypress.io/migration-guide) for full examples on how to migrate. Addressed in [#14479](https://redirect.github.com/cypress-io/cypress/pull/14479).
- Component tests will not be executed when running `cypress open` or `cypress run`. Now, they need to be executed by running `cypress open-ct` or `cypress run-ct`. Addressed in [#15701](https://redirect.github.com/cypress-io/cypress/pull/15701).
- `experimentalComponentTesting` must be removed from yoru configuration file, `cypress.json` by default, or it will throw an error. Addressed in [#15701](https://redirect.github.com/cypress-io/cypress/pull/15701).
- The `file:preprocessor` event is no longer used to compile component tests. Now, a `dev-server:start` event must be registered.
- Cypress now catches uncaught errors and fails the test even if the application under test has defined `window.onerror`. Addresses [#8802](https://redirect.github.com/cypress-io/cypress/pull/8802).
- Cypress now fails tests if there is an unhandled promise rejection in the application under test. Unhandled rejections will trigger the `uncaught:exception` event with the promise as the third argument. Addresses [#243](https://redirect.github.com/cypress-io/cypress/issues/243).
- Cypress now throws an error if the application under test redirects more than 20 times. The number of times allowed to redirect is configurable via the [`redirectionLimit`](https://on.cypress.io/configuration#Global) config. Addresses [#14445](https://redirect.github.com/cypress-io/cypress/issues/14445).
- The default preprocessor now targets a more modern version of ECMAScript. Addressed in [#15274](https://redirect.github.com/cypress-io/cypress/issues/15274).
- We now enable [`contextIsolation`](https://www.electronjs.org/docs/tutorial/context-isolation) by default in the Electron browser. You can override this option if needed within the `before:browser:launch` API. Addressed in [#15493](https://redirect.github.com/cypress-io/cypress/pull/15493).
- `Cypress.moment()` has been removed. Please migrate to a different datetime formatter. See [our recipe](https://redirect.github.com/cypress-io/cypress-example-recipes/tree/master/examples/blogs\_\_dayjs) for example replacements. Addresses [#8714](https://redirect.github.com/cypress-io/cypress/issues/8714).
- The bundled Node.js version was upgraded from `12.18.3` to `14.16.0`. This could change the behavior of code within the `pluginsFile` when using the [bundled Node.js version](https://on.cypress.io/configuration#Node-version) of Cypress. Addressed in [#15292](https://redirect.github.com/cypress-io/cypress/pull/15292).
- Installing Cypress on your system now requires Node.js 12+. Addresses [#9545](https://redirect.github.com/cypress-io/cypress/issues/9545).
- The default headless browser window size has been increased to 1920x1080 pixels to capture [High-definition videos and screenshots](https://www.cypress.io/blog/2021/03/01/generate-high-resolution-videos-and-screenshots/). Addresses [#15752](https://redirect.github.com/cypress-io/cypress/issues/15752), [#15730](https://redirect.github.com/cypress-io/cypress/issues/15730), and [#15481](https://redirect.github.com/cypress-io/cypress/issues/15481).
**Features:**
- A command log entry is now displayed when there is an uncaught exception or unhandled rejection. Addresses [#8236](https://redirect.github.com/cypress-io/cypress/issues/8236).
- We added several features to [cy.intercept()](/api/commands/intercept). See the [cy.intercept()](https://on.cypress.io/intercept) docs for full usage examples. Addressed in [#14543](https://redirect.github.com/cypress-io/cypress/pull/14543). New features:
- There are new events on the req object for `cy.intercept()` including `before:response`, `response`, and `after:response`.
- Response handlers (supplied via event handlers or via `req.continue(cb)`) supplied to `cy.intercept()` will be called in reverse order until `res.send` is called or until there are no more response handlers.
- A new option, `middleware`, has been added to the `RouteMatcher` type. If true, the supplied request handler will be called before any non-middleware request handlers.
- A new function, `req.continue(cb)`, is available on request objects yielded by `cy.intercept()`. It is functionally the same as `req.reply(cb)` - the request will stop propagating to other event handlers, will be sent outgoing, and the response will be handled by cb.
- `cy.intercept()` can now be called with a new overload: `cy.intercept(url, routeMatcher, handler)`. `routeMatcher` will be merged with `url`, and the handler is required.
- [`cy.visit()`](https://on.cypress.io/visit) can now visit pages with `application/xhtml*` content-type. Addresses [#15738](https://redirect.github.com/cypress-io/cypress/issues/15738).
- You can now pass runner specific configuration in order to pass different configuration values to `component` tests versus `e2e` tests. Addressed in [#15526](https://redirect.github.com/cypress-io/cypress/pull/15526).
- There's a new keyboard shortcut (`ctrl/cmd + f`) to search spec files in the Test Runner based on your OS. Addresses [#6229](https://redirect.github.com/cypress-io/cypress/issues/6229).
- You can now create a new spec file directly from the Test Runner in the Desktop. Addressed in [#15335](https://redirect.github.com/cypress-io/cypress/issues/15335).
- [`cy.tick()`](https://on.cypress.io/tick) now accepts a `log` option. Addresses [#15180](https://redirect.github.com/cypress-io/cypress/issues/15180).
- The Cypress proxy now adds a `keep-alive` header to all proxy responses. Addressed in [#15292](https://redirect.github.com/cypress-io/cypress/pull/15292)
- Cypress no longer forces specific `NODE_OPTIONS`. Addressed in [#15292](https://redirect.github.com/cypress-io/cypress/pull/15292)
**Bugfixes:**
- The `response.body` of [`cy.intercept()`](https://on.cypress.io/intercept) is now correct after stubbing a response using `res.send({ fixture })` in a `req.continue` callback or a `before:response` or `response` handler. Addressed in [#14543](https://redirect.github.com/cypress-io/cypress/pull/14543).
- Fixed an issue where only the first matching alias for a route would yield a response object on [`cy.wait()`](https://on.cypress.io/wait). Fixes [#14522](https://redirect.github.com/cypress-io/cypress/issues/14522).
- [`.click()`](https://on.cypress.io/click) will no longer fail with "coordsHistory must be at least 2 sets of coords" when specifying `{ multiple: true }`. Fixes [#3738](https://redirect.github.com/cypress-io/cypress/issues/3738).
- Cypress now checks visibility correctly when an element has CSS "position: sticky". Fixes [#14938](https://redirect.github.com/cypress-io/cypress/issues/14938).
- After selecting a project in global mode and clicking the back button, Cypress will no longer crash. Fixes [#15089](https://redirect.github.com/cypress-io/cypress/issues/15089).
- Errors `Refused to apply style` are gone from the console in `open-ct` during Component Testing. Addressed in [#15661](https://redirect.github.com/cypress-io/cypress/issues/15661).
- Some memory leaks were fixed in `@cypress/vue`. Addressed in [#15275](https://redirect.github.com/cypress-io/cypress/issues/15275).
**Misc:**
- The types for `set-cookie` allow `string[]`, so the header's type has been changed to reflect this. Addresses [#15419](https://redirect.github.com/cypress-io/cypress/pull/15419).
- The type definition for [`cy.writeFile()`](https://on.cypress.io/writefile) now allows 4 arguments. Addresses [#15353](https://redirect.github.com/cypress-io/cypress/issues/15353).
- [`.then()`](https://on.cypress.io/then) will show the correct type when raw HTMLElements are provided. Addresses [#14875](https://redirect.github.com/cypress-io/cypress/issues/14875)
- The Cypress Studio icon now displays properly for tests with long titles. Addresses [#15182](https://redirect.github.com/cypress-io/cypress/issues/15182).
- There were some minor improvements made to the UI when setting up a project in the Test Runner. Addressed in [#15665](https://redirect.github.com/cypress-io/cypress/pull/15665).
**Dependency Updates**
- Upgraded Chrome browser version used during `cypress run` and when selecting Electron browser in `cypress open` from `87` to `89`. Addressed in [#15292](https://redirect.github.com/cypress-io/cypress/pull/15292).
- Upgraded bundled Node.js version from `12.18.3` to `14.16.0`. Addressed in [#15292](https://redirect.github.com/cypress-io/cypress/pull/15292).
- Upgraded `electron` from `11.3.0` to `12.0.0`. Addressed in [#15292](https://redirect.github.com/cypress-io/cypress/pull/15292).
### [`v6.2.1`](https://redirect.github.com/cypress-io/cypress/releases/tag/v6.2.1): 6.2.1
[Compare Source](https://redirect.github.com/cypress-io/cypress/compare/@cypress/react-v6.2.0...@cypress/react-v6.2.1)
*Released 1/4/2021*
**Bugfixes:**
- Test retries, when retrying on several failed tests, will no longer cause hanging during `cypress run`. Fixes [#9040](https://redirect.github.com/cypress-io/cypress/issues/9040).
- `multipart/form-data` is no longer wrongly encoded when using [`cy.intercept()`](https://on.cypress.io/intercept). This should prevent `Unexpected end of multipart data` errors on the back end service where the request was pointing to. Fixes [#9359](https://redirect.github.com/cypress-io/cypress/issues/9359).
- [`cy.contains()`](https://on.cypress.io/contains) no longer throws an error when a single quote is used inside its argument when RegExp. Fixes [#8626](https://redirect.github.com/cypress-io/cypress/issues/8626).
- Passing `capture: 'runner'` to a [`cy.screenshot()`](https://on.cypress.io/screenshot) command inside [`.within()`](https://on.cypress.io/within) now screenshots the entire Test Runner as expected. Fixes [#14253](https://redirect.github.com/cypress-io/cypress/issues/14253).
- [`Cypress.dom.isJquery()`](https://on.cypress.io/dom#Is-jQuery) now always returns a boolean instead of `undefined` sometimes. Fixes [#14278](https://redirect.github.com/cypress-io/cypress/issues/14278).
- `calledOnceWith` and `calledOnceWithExactly` sinon matchers no longer throw an error when used within Cypress. Fixes [#9644](https://redirect.github.com/cypress-io/cypress/issues/9644).
- We now pass `--disable-backgrounding-occluded-windows` as a default flag to Chrome to prevent backgrounding rendering when the Cypress window is occluded. Fixes [#9604](https://redirect.github.com/cypress-io/cypress/issues/9604).
**Misc:**
- After login, if a name is undefined on your profile, the Test Runner will show the profile's email and link to instructions to update the name. Addresses [#14288](https://redirect.github.com/cypress-io/cypress/issues/14288).
**Dependency Updates:**
- Upgraded `devtools-protocol` from `0.0.734984` to `0.0.839267`. Addressed in [#14353](https://redirect.github.com/cypress-io/cypress/issues/14353).
- Upgraded `electron` from `11.0.3` to `11.1.1`. Addressed in [#14352](https://redirect.github.com/cypress-io/cypress/issues/14352).
### [`v6.2.0`](https://redirect.github.com/cypress-io/cypress/releases/tag/v6.2.0): 6.2.0
[Compare Source](https://redirect.github.com/cypress-io/cypress/compare/@cypress/react-v6.1.1...@cypress/react-v6.2.0)
*Released 12/21/2020*
**Features:**
- You can now listen to `before:run` and `after:run` events in the plugins file. See the [`before:run`](https://on.cypress.io/before-run-api) and [`after:run`](https://on.cypress.io/after-run-api) docs for more information. Addressed in [#14238](https://redirect.github.com/cypress-io/cypress/issues/14238) and [#14263](https://redirect.github.com/cypress-io/cypress/issues/14263).
- You can now listen to `before:spec` and `after:spec` events in the plugins file. See the [`before:spec`](https://on.cypress.io/before-spec-api) and [`after:spec`](https://on.cypress.io/after-spec-api) docs for more information. Addressed in [#9646](https://redirect.github.com/cypress-io/cypress/issues/9646) and [#14178](https://redirect.github.com/cypress-io/cypress/issues/14178).
- The `Timed out retrying` error message now displays the amount of time Cypress retried. Addresses [#5781](https://redirect.github.com/cypress-io/cypress/issues/5781).
**Bugfixes:**
- Getting an alias of [`cy.intercept()`](https://on.cypress.io/intercept) using [`cy.get()`](https://on.cypress.io/get) will no longer always yield `null`. Fixes [#9306](https://redirect.github.com/cypress-io/cypress/issues/9306).
- [`cy.intercept()`](https://on.cypress.io/intercept) will now automatically responds to CORS preflight requests (HTTP `OPTIONS` requests) that match defined routes. Fixes [#9599](https://redirect.github.com/cypress-io/cypress/issues/9599).
- Response errors from `forceNetworkError` can now be awaited using [`cy.intercept()`](https://on.cypress.io/intercept) and [`cy.wait()`](https://on.cypress.io/wait). Fixes [#9062](https://redirect.github.com/cypress-io/cypress/issues/9062).
- Using [`cy.log()`](https://on.cypress.io/log) inside [`.then()`](https://on.cypress.io/then) no longer breaks the subject value in the command chain. Fixes [#8084](https://redirect.github.com/cypress-io/cypress/issues/8084).
- Using [`Cypress.Commands.overwrite`](https://on.cypress.io/custom-commands#Overwrite-Existing-Commands) to overwrite [`.then()`](https://on.cypress.io/then) now preserves the proper `this` context and sets aliases correctly. Fixes [#5101](https://redirect.github.com/cypress-io/cypress/issues/5101).
- Using [`Cypress.Commands.overwrite`](https://on.cypress.io/custom-commands#Overwrite-Existing-Commands) to overwrite [`cy.route()`](https://on.cypress.io/route) or [`cy.intercept()`](https://on.cypress.io/intercept) and wait on its alias now properly works. Fixes [#3890](https://redirect.github.com/cypress-io/cypress/issues/3890) and [#9580](https://redirect.github.com/cypress-io/cypress/issues/9580).
- Cypress no longer fails to find specs if you set the fixtures folder to be the same as the integration folder. Fixes [#14226](https://redirect.github.com/cypress-io/cypress/issues/14226).
- Cypress no longer fails to show error code frames if the spec filename has a space in it, fixes [#7553](https://redirect.github.com/cypress-io/cypress/issues/7553).
**Misc:**
- `scrollBehavior` is now an allowed type when passed as test configuration. Addresses [#9643](https://redirect.github.com/cypress-io/cypress/issues/9643).
- The `FileObject` type for the file argument of the `file:preprocessor` event now includes the `EventEmitter` type. Addresses [#9276](https://redirect.github.com/cypress-io/cypress/issues/9276).
**Dependency Updates:**
- Upgraded `electron` from `11.0.2` to `11.0.3`. Addressed in [#9409](https://redirect.github.com/cypress-io/cypress/issues/9409).
### [`v6.1.1`](https://redirect.github.com/cypress-io/cypress/compare/@cypress/react-v6.1.0...@cypress/react-v6.1.1)
[Compare Source](https://redirect.github.com/cypress-io/cypress/compare/@cypress/react-v6.1.0...@cypress/react-v6.1.1)
### [`v6.1.0`](https://redirect.github.com/cypress-io/cypress/releases/tag/v6.1.0): 6.1.0
[Compare Source](https://redirect.github.com/cypress-io/cypress/compare/@cypress/react-v6.0.0...@cypress/react-v6.1.0)
*Released 12/07/2020*
**Features:**
- There's a new `scrollBehavior` configuration option that controls the viewport position when an element is scrolled prior to action commands. Possible values are `'top'`, `'bottom'`, `'center'`, `'nearest'`, and `false`, with `'top'` being the default. `scrollBehavior: false` disables scrolling altogether. `scrollBehavior` can be specified in [global configuration](https://on.cypress.io/configuration#Actionability), [test configuration](https://on.cypress.io/writing-and-organizing-tests#Test-Configuration) or individual [action commands](https://on.cypress.io/interacting-with-elements) via `options`. Addresses [#871](https://redirect.github.com/cypress-io/cypress/issues/871) and [#4356](https://redirect.github.com/cypress-io/cypress/issues/4356).
- The **Tests** tab in the Test Runner now orders folders before files. This matches the ordering of most IDEs' file explorers. Addresses [#7334](https://redirect.github.com/cypress-io/cypress/issues/7334).
**Bugfixes:**
- Responses stubbed from [`cy.intercept()`](https://on.cypress.io/intercept) will now automatically set `Access-Control-Allow-Origin` and `Access-Control-Allow-Credentials` to permissive values unless explicitly overridden. Fixes [#9264](https://redirect.github.com/cypress-io/cypress/issues/9264).
- The `Cannot read property "fireChangeEvent" of undefined` error will no longer throw during a race condition when using [`cy.intercept()`](https://on.cypress.io/intercept). [https://github.com/cypress-io/cypress/issues/9170](https://redirect.github.com/cypress-io/cypress/issues/9170)
- HTTP responses that cannot have a body (like HTTP 304 and HTTP 204) can now be awaited using [`cy.intercept()`](https://on.cypress.io/intercept). Fixes [#8934](https://redirect.github.com/cypress-io/cypress/issues/8934) and [#8999](https://redirect.github.com/cypress-io/cypress/issues/8999).
- We fixed an issue where HTTP redirects could not be awaited using [`cy.intercept()`](https://on.cypress.io/intercept) unless dynamically intercepted. Addressed in [#9097](https://redirect.github.com/cypress-io/cypress/issues/9097).
- Tests will no longer hang in certain situations when there's an error in a `before()` hook. Fixes [#9162](https://redirect.github.com/cypress-io/cypress/issues/9162).
- We no longer strip `/` from URLs when they are explicitly passed with query paramaters. Fixes [#9360](https://redirect.github.com/cypress-io/cypress/issues/9360).
- Fixed the regression in `Cypress.dom.isVisible` behavior for elements with `position: fixed`, addresses [#8998](https://redirect.github.com/cypress-io/cypress/issues/8998) and [#9031](https://redirect.github.com/cypress-io/cypress/issues/9031).
**Deprecations:**
Deprecations still work as before but will be removed from Cypress in a future release. We encourage you to update your code now to remove uses of deprecations.
- [`Cypress.moment`](https://on.cypress.io/moment) has been deprecated and will be replaced in a future release. Consider migrating to a different datetime formatter. Addresses [#8714](https://redirect.github.com/cypress-io/cypress/issues/8714).
**Misc:**
- We collect more environment variables from Bitbucket to better detect reruns. Addresses [#9309](https://redirect.github.com/cypress-io/cypress/issues/9309).
- `waitForAnimations` and `animationDistanceThreshold` types are now included for all actionable commands. Addresses [#8854](https://redirect.github.com/cypress-io/cypress/issues/8854).
**Dependency Updates:**
- Upgraded `mocha-junit-reporter` from `1.23.1` to `2.0.0`. Addressed in [#9528](https://redirect.github.com/cypress-io/cypress/issues/9528).
### [`v6.0.0`](https://redirect.github.com/cypress-io/cypress/releases/tag/v6.0.0): 6.0.0
[Compare Source](https://redirect.github.com/cypress-io/cypress/compare/@cypress/react-v5.12.5...@cypress/react-v6.0.0)
*Released 11/23/2020*
**Summary:**
Cypress now offers full network stubbing support with the introduction of the [`cy.intercept()`](https://on.cypress.io/intercept) command (previously `cy.route2()`). With [`cy.intercept()`](https://on.cypress.io/intercept) your tests can intercept, modify and wait on any type of HTTP request originating from your app.
**Breaking Changes:**
**Please read our [Migration Guide](https://on.cypress.io/migration-guide) which explains the changes in more detail and how to change your code to migrate to Cypress 6.0.**
- Cypress now always throws an error when asserting on an element that doesn't exist in the DOM (unless you're asserting that the element should `not.exist`). Assertions such as `not.visible`, `not.contains`, `not.have.class`, etc will now fail when used on non-existent DOM elements. Addresses [#205](https://redirect.github.com/cypress-io/cypress/issues/205).
- DOM elements where the CSS style (or ancestors) are `opacity: 0` are no longer considered visible. However these are still considered [actionable](https://on.cypress.io/interacting-with-elements) and "any action commands" interacting-with-elements#Actionability used to interact with the element will perform the action. This matches browser's implementation on how they regard elements with `opacity: 0`. Addresses [#4474](https://redirect.github.com/cypress-io/cypress/issues/4474).
- The type yielded by [`cy.wait(alias)`](https://on.cypress.io/wait) has changed in order to support use of [`cy.intercept()`](https://on.cypress.io/intercept). Addressed in [#9266](https://redirect.github.com/cypress-io/cypress/issues/9266).
- The `experimentalNetworkStubbing` option has been removed and made the default behavior. You can safely removed this configuration option. Addressed in [#9185](https://redirect.github.com/cypress-io/cypress/issues/9185).
- When using [`.type()`](https://on.cypress.io/type) and [`.click()`](https://on.cypress.io/click) on elements inside a `contenteditable` element, the events are now properly triggered on the inside elements. This may cause unintended consequences if you were relying on the previous behavior. Addressed in [#9066](https://redirect.github.com/cypress-io/cypress/issues/9066).
- We removed several deprecation errors around APIs that were removed in versions of Cypress prior to 4.0.0. This will not cause any changes for anyone upgrading from a 4.0+ version of Cypress. For a full list of all APIs affected see [#8946](https://redirect.github.com/cypress-io/cypress/issues/8946).
- We updated our HTTP status codes and reason phrases to match Node.js `http.STATUS_CODES`. If you have code that relies on a reason phrase, then this could affect you. Addressed in [#8969](https://redirect.github.com/cypress-io/cypress/issues/8969).
- JSON request and response bodies captured by [`cy.intercept()`](https://on.cypress.io/intercept) are now automatically parsed, removing the need to manually do `JSON.parse`. Addressed in [#9280](https://redirect.github.com/cypress-io/cypress/issues/9280).
**Deprecations:**
Deprecations still work as before but will be removed from Cypress in a future release. We encourage you to update your code now to remove uses of deprecations.
- `cy.server()` and `cy.route()` have been deprecated. In a future release, support for `cy.server()` and `cy.route()` will be moved to a plugin. We encourage you to use [`cy.intercept()`](https://on.cypress.io/intercept) instead. Addressed in [#9185](https://redirect.github.com/cypress-io/cypress/issues/9185).
- `experimentalFetchPolyfill` has been deprecated. We encourage you to use [`cy.intercept()`](https://on.cypress.io/intercept) to intercept requests using the Fetch API instead.
- `cy.route2()` was renamed to [`cy.intercept()`](https://on.cypress.io/intercept). We encourage you to update usages of `cy.route2()` to use [`cy.intercept()`](https://on.cypress.io/intercept). Addressed in [#9182](https://redirect.github.com/cypress-io/cypress/issues/9182).
**Features:**
- The new [`cy.intercept()`](https://on.cypress.io/intercept) command can be used to manage the behavior of HTTP requests at the network layer. Addressed in [#9182](https://redirect.github.com/cypress-io/cypress/issues/9182).
- We now pass `—disable-dev-shm-usage` to the Chrome browser flags by default. This will write shared memory files into `/tmp` instead of `/dev/shm`. If you're passing this flag in your `plugins` file, you can now remove this code. Addresses [#5336](https://redirect.github.com/cypress-io/cypress/issues/5336).
- A warning is now displayed when passing invalid configuration keys through the CLI. Addresses [#428](https://redirect.github.com/cypress-io/cypress/issues/428).
- The `cypress version` command now also displays the current Electron and bundled Node versions. Addresses [#9180](https://redirect.github.com/cypress-io/cypress/issues/9180).
- The `cypress version` command now accepts a `--component` flag that allows you to print the version of specific components of Cypress. ie Electron, Node, etc. Addresses [#9214](https://redirect.github.com/cypress-io/cypress/issues/9214).
**Bugfixes:**
- We fixed a regression introduced in [3.5.0](https://on.cypress.io/changelog#3-5-0) that would cause [`.type()`](https://on.cypress.io/type) to not type the entire string when focus was called away from the target element. Fixes [#9254](https://redirect.github.com/cypress-io/cypress/issues/9254).
- [`.type()`](https://on.cypress.io/type) and [`.click()`](https://on.cypress.io/click) now properly work on elements inside a `contenteditable` element. Fixes [#2717](https://redirect.github.com/cypress-io/cypress/issues/2717) and [#7721](https://redirect.github.com/cypress-io/cypress/issues/7721).
- We fixed a regression introduced in [5.6.0](https://on.cypress.io/changelog#5-6-0) that would cause the Test Runner to crashes and display a white page when switching tabs while tests are running. Fixes [#9151](https://redirect.github.com/cypress-io/cypress/issues/9151).
- Fixed an issue where `Content-Length` for `cy.route2` request bodies could be incorrectly recalculated. Fixes [#9166](https://redirect.github.com/cypress-io/cypress/issues/9166).
**Documentation Changes:**
- Our [Migration Guide](https://on.cypress.io/migration-guide) has a new section for 6.0 migration.
- Many of our docs examples have been updated to use [`cy.intercept()`](https://on.cypress.io/intercept) in place of `cy.route()` including our [Network Requests](https://on.cypress.io/network-requests) doc.
**Misc:**
- Added the type of `redirects` and changed `redirectedToUrl` optional for Response types. Addresses [#9275](https://redirect.github.com/cypress-io/cypress/issues/9275).
**Dependency Updates**
- Upgraded Chrome browser version used during `cypress run` and when selecting Electron browser in `cypress open` from `85` to `87`. Addressed in [#9222](https://redirect.github.com/cypress-io/cypress/pull/9222).
- Upgraded bundled Node.js version from `12.16.3` to `12.18.3`. Addressed in [#9222](https://redirect.github.com/cypress-io/cypress/pull/9222).
- Upgraded `electron` from `10.1.5` to `11.0.2`. Addressed in [#9222](https://redirect.github.com/cypress-io/cypress/pull/9222).
### [`v5.12.5`](https://redirect.github.com/cypress-io/cypress/compare/@cypress/react-v5.12.4...@cypress/react-v5.12.5)
[Compare Source](https://redirect.github.com/cypress-io/cypress/compare/@cypress/react-v5.12.4...@cypress/react-v5.12.5)
### [`v5.12.4`](https://redirect.github.com/cypress-io/cypress/compare/@cypress/react-v5.12.3...@cypress/react-v5.12.4)
[Compare Source](https://redirect.github.com/cypress-io/cypress/compare/@cypress/react-v5.12.3...@cypress/react-v5.12.4)
### [`v5.12.3`](https://redirect.github.com/cypress-io/cypress/compare/@cypress/react-v5.12.2...@cypress/react-v5.12.3)
[Compare Source](https://redirect.github.com/cypress-io/cypress/compare/@cypress/react-v5.12.2...@cypress/react-v5.12.3)
### [`v5.12.2`](https://redirect.github.com/cypress-io/cypress/compare/@cypress/webpack-preprocessor-v5.12.1...@cypress/webpack-preprocessor-v5.12.2)
[Compare Source](https://redirect.github.com/cypress-io/cypress/compare/@cypress/react-v5.12.1...@cypress/react-v5.12.2)
### [`v5.12.1`](https://redirect.github.com/cypress-io/cypress/compare/@cypress/webpack-preprocessor-v5.12.0...@cypress/webpack-preprocessor-v5.12.1)
[Compare Source](https://redirect.github.com/cypress-io/cypress/compare/@cypress/react-v5.12.0...@cypress/react-v5.12.1)
### [`v5.12.0`](https://redirect.github.com/cypress-io/cypress/compare/@cypress/webpack-preprocessor-v5.11.1...@cypress/webpack-preprocessor-v5.12.0)
[Compare Source](https://redirect.github.com/cypress-io/cypress/compare/@cypress/react-v5.11.0...@cypress/react-v5.12.0)
### [`v5.11.0`](https://redirect.github.com/cypress-io/cypress/compare/@cypress/webpack-preprocessor-v5.10.0...@cypress/webpack-preprocessor-v5.11.0)
[Compare Source](https://redirect.github.com/cypress-io/cypress/compare/@cypress/react-v5.10.3...@cypress/react-v5.11.0)
### [`v5.10.3`](https://redirect.github.com/cypress-io/cypress/compare/@cypress/react-v5.10.2...@cypress/react-v5.10.3)
[Compare Source](https://redirect.github.com/cypress-io/cypress/compare/@cypress/react-v5.10.2...@cypress/react-v5.10.3)
### [`v5.10.2`](https://redirect.github.com/cypress-io/cypress/compare/@cypress/react-v5.10.1...@cypress/react-v5.10.2)
[Compare Source](https://redirect.github.com/cypress-io/cypress/compare/@cypress/react-v5.10.1...@cypress/react-v5.10.2)
### [`v5.10.1`](https://redirect.github.com/cypress-io/cypress/compare/@cypress/react-v5.10.0...@cypress/react-v5.10.1)
[Compare Source](https://redirect.github.com/cypress-io/cypress/compare/@cypress/react-v5.10.0...@cypress/react-v5.10.1)
### [`v5.10.0`](https://redirect.github.com/cypress-io/cypress/compare/@cypress/webpack-preprocessor-v5.9.1...@cypress/webpack-preprocessor-v5.10.0)
[Compare Source](https://redirect.github.com/cypress-io/cypress/compare/@cypress/react-v5.9.4...@cypress/react-v5.10.0)
### [`v5.9.4`](https://redirect.github.com/cypress-io/cypress/compare/@cypress/react-v5.9.3...@cypress/react-v5.9.4)
[Compare Source](https://redirect.github.com/cypress-io/cypress/compare/@cypress/react-v5.9.3...@cypress/react-v5.9.4)
### [`v5.9.3`](https://redirect.github.com/cypress-io/cypress/compare/@cypress/react-v5.9.2...@cypress/react-v5.9.3)
[Compare Source](https://redirect.github.com/cypress-io/cypress/compare/@cypress/react-v5.9.2...@cypress/react-v5.9.3)
### [`v5.9.2`](https://redirect.github.com/cypress-io/cypress/compare/@cypress/react-v5.9.1...@cypress/react-v5.9.2)
[Compare Source](https://redirect.github.com/cypress-io/cypress/compare/@cypress/react-v5.9.1...@cypress/react-v5.9.2)
### [`v5.9.1`](https://redirect.github.com/cypress-io/cypress/compare/@cypress/webpack-preprocessor-v5.9.0...@cypress/webpack-preprocessor-v5.9.1)
[Compare Source](https://redirect.github.com/cypress-io/cypress/compare/@cypress/react-v5.9.0...@cypress/react-v5.9.1)
### [`v5.9.0`](https://redirect.github.com/cypress-io/cypress/compare/@cypress/webpack-preprocessor-v5.8.0...@cypress/webpack-preprocessor-v5.9.0)
[Compare Source](https://redirect.github.com/cypress-io/cypress/compare/@cypress/react-v5.8.1...@cypress/react-v5.9.0)
### [`v5.8.1`](https://redirect.github.com/cypress-io/cypress/compare/@cypress/react-v5.8.0...@cypress/react-v5.8.1)
[Compare Source](https://redirect.github.com/cypress-io/cypress/compare/@cypress/react-v5.8.0...@cypress/react-v5.8.1)
### [`v5.8.0`](https://redirect.github.com/cypress-io/cypress/compare/@cypress/webpack-preprocessor-v5.7.0...@cypress/webpack-preprocessor-v5.8.0)
[Compare Source](https://redirect.github.com/cypress-io/cypress/compare/@cypress/react-v5.7.0...@cypress/react-v5.8.0)
### [`v5.7.0`](https://redirect.github.com/cypress-io/cypress/compare/@cypress/webpack-preprocessor-v5.6.0...@cypress/webpack-preprocessor-v5.7.0)
[Compare Source](https://redirect.github.com/cypress-io/cypress/compare/@cypress/react-v5.6.0...@cypress/react-v5.7.0)
### [`v5.6.0`](https://redirect.github.com/cypress-io/cypress/releases/tag/v5.6.0): 5.6.0
[Compare Source](https://redirect.github.com/cypress-io/cypress/compare/@cypress/react-v5.5.0...@cypress/react-v5.6.0)
*Released 11/09/2020*
**Features:**
- You can now dynamically add aliases for requests intercepted via [`cy.route2()`](https://on.cypress.io/route2). [See an example](https://on.cypress.io/route2#Aliasing-individual-requests). Addresses [#387](https://redirect.github.com/cypress-io/cypress/issues/387).
- You can now run all integration specs or all component specs separately (or a filtered list of specs) by clicking the appropriate button in the Test Runner in the *Tests* tab. Addresses [#8203](https://redirect.github.com/cypress-io/cypress/issues/8203).
- Added a new modifier syntax to [`cy.type()`](https://on.cypress.io/type). You can now type shortcuts like `{ctrl+z}`. Addressed in [#5694](https://redirect.github.com/cypress-io/cypress/issues/5694).
- We now show a modal with release notes when available when there is a new version of Cypress. Addressed in [#9006](https://redirect.github.com/cypress-io/cypress/issues/9006).
- In the Test Runner's *Settings* and *Runs* tab you can now quickly copy the project id configuration and record key using a copy to clipboard icon. Addresses [#9002](https://redirect.github.com/cypress-io/cypress/issues/9002).
**Bugfixes:**
- Fixed a regression introduced in [4.12.0](https://on.cypress.io/changelog#4-12-0) where snapshotting caused images to load too many times. Fixes [#8679](https://redirect.github.com/cypress-io/cypress/issues/8679).
- Using [`cy.visit()`](https://on.cypress.io/visit) on sites with `content-type` of `text-html` followed by parameters (like `text/html;charset=utf-8`) will no longer throw an error about visiting a site with an invalid content-type. Fixes [#8506](https://redirect.github.com/cypress-io/cypress/issues/8506)
- The `Cannot access 'continueSent' before initialization` error will no longer throw when using [`cy.route2()`](https://on.cypress.io/route2). Fixes [#8926](https://redirect.github.com/cypress-io/cypress/issues/8926).
- Awaiting a request body when providing a static response stub in [`cy.route2()`](https://on.cypress.io/route2) should now work properly. Addressed in [#9059](https://redirect.github.com/cypress-io/cypress/issues/9059).
- The way that intercepted [`cy.route2()`](https://on.cypress.io/route2) requests are displayed in the Command Log has been improved, including showing the progress bar correctly. Addresses [#9053](https://redirect.github.com/cypress-io/cypress/issues/9053).
- The `Cannot read property 'replace' of undefined` error will no longer throw when attempting to generate the stack trace from an error thrown in the application. Fixes [#7915](https://redirect.github.com/cypress-io/cypress/issues/7915).
- Stack traces in the Command Log originating from application errors where the location is unavailable will no longer show as a clickable link to open in IDE. Fixes [#9106](https://redirect.github.com/cypress-io/cypress/issues/9106).
- When using the `fixture:` prefix as a stubbed response to [`cy.route()`](https://on.cypress.io/route), JSON fixtures containing only a number or boolean will no longer throw an error. Fixes [#4899](https://redirect.github.com/cypress-io/cypress/issues/4899).
- Fixed an issue causing failed subresource integrity checks for external scripts. Fixes [#8983](https://redirect.github.com/cypress-io/cypress/issues/8983), [#9049](https://redirect.github.com/cypress-io/cypress/issues/9049), and [#8992](https://redirect.github.com/cypress-io/cypress/issues/8992).
**Misc:**
- Typings for [`.invoke()`](https://on.cypress.io/invoke) and [`.its()`](https://on.cypress.io/its) now allow for a `timeout` option. Addresses [#9079](https://redirect.github.com/cypress-io/cypress/issues/9079).
- Typings for `cy.task()` now allow for parameterizing the task return type. Addresses [#7136](https://redirect.github.com/cypress-io/cypress/issues/7136).
- A clearer error is printed during `cypress cache list` when no cached versions are found. Addresses [#6303](https://redirect.github.com/cypress-io/cypress/issues/6303).
**Dependency Updates:**
- Upgraded `commander` from `^4.1.1` to `^5.1.0`. Addressed in [#8979](https://redirect.github.com/cypress-io/cypress/issues/8979).
- Upgraded `semver` from `6.3.0` to `7.3.2`. Addressed in [#9068](https://redirect.github.com/cypress-io/cypress/issues/9068).
- Upgraded `systeminformation` from `4.26.9` to `4.27.11`. Addressed in [#8979](https://redirect.github.com/cypress-io/cypress/issues/8979).
- Removed `node-webkit-updater`. This should remove some security warnings that were shown during install. Addresses [#8314](https://redirect.github.com/cypress-io/cypress/issues/8314).
### [`v5.5.0`](https://redirect.github.com/cypress-io/cypress/releases/tag/v5.5.0): 5.5.0
[Compare Source](https://redirect.github.com/cypress-io/cypress/compare/@cypress/react-v5.4.2...@cypress/react-v5.5.0)
*Released 10/26/2020*
**Features:**
- [`cy.viewport()`](https://on.cypress.io/viewport) has a new `macbook-16` preset. Addresses [#8889](https://redirect.github.com/cypress-io/cypress/issues/8889).
- [`.type()`](https://on.cypress.io/type) now fires the `beforeInput` event during typing. *Note: Firefox does not support the `beforeinput` event*. Addresses [#7088](https://redirect.github.com/cypress-io/cypress/issues/7088).
**Bugfixes:**
- Updated the Cypress proxy layer to proxy HTTPS traffic from non-AUT origins. Addressed in [#8827](https://redirect.github.com/cypress-io/cypress/issues/8827).
- This fixed an issue with [`cy.route2`](https://on.cypress.io/route2) where HTTPS requests to a non-AUT origin would not be intercepted as expected.
- [`cy.route2()`](https://on.cypress.io/route2) now properly handles passing a method as its first argument. Fixes [#8729](https://redirect.github.com/cypress-io/cypress/issues/8729).
- Fixed an issue with [`cy.route2()`](https://on.cypress.io/route2) where a "Cannot set property response of undefined" error would occasionally occur. Fixes [#8858](https://redirect.github.com/cypress-io/cypress/issues/8858).
- Headers field names passed to [\`cy.route2()](https://on.cypress.io/route2) now case-insensitively match against the field names of incoming HTTP requests. Fixes [#8921](https://redirect.github.com/cypress-io/cypress/issues/8921).
- Routes that stub fixtures for binary resources (including images) made with [`cy.route2()`](https://on.cypress.io/route2) now serve the correct mime-type and content. Fixes [#8623](https://redirect.github.com/cypress-io/cypress/issues/8623).
- When [`experimentalNetworkStubbing`](https://on.cypress.io/experiments) is enabled, using [`cy.visit()`](https://on.cypress.io/visit) to URLs that redirect and set Transfer-Encoding: chunked will no longer fail in Cypress with a "Parse Error". Fixes [#8497](https://redirect.github.com/cypress-io/cypress/issues/8497).
- `cypress.run()` through the [Module API](https://on.cypress.io/module-api) now has a `status` property in the results matching the correct CLI types (`"failed"` or `"finished"`). Addresses [#8798](https://redirect.github.com/cypress-io/cypress/issues/8798).
- When a value containing an `e` character is passed to the `--ci-build-id` flag, Cypress now properly reads it as a string. Fixes [#8874](https://redirect.github.com/cypress-io/cypress/issues/8874).
**Misc:**
- Updated type definitions to allow for passed either `runMode` or `openMode` to `retries` alone. Addresses [#8869](https://redirect.github.com/cypress-io/cypress/issues/8869).
**Dependency Updates:**
- Upgraded `electron` from `10.1.3` to `10.1.5`. Addresses [#8927](https://redirect.github.com/cypress-io/cypress/issues/8927), [#8975](https://redirect.github.com/cypress-io/cypress/issues/8975).
- This addresses a Chrome security issue, CVE-2020-15999. Addresses [#8922](https://redirect.github.com/cypress-io/cypress/issues/8922).
- Upgraded `color-string` from `1.5.3` to `1.5.4`. Addresses [#8945](https://redirect.github.com/cypress-io/cypress/issues/8945).
- Upgraded `pretty-bytes` from `^5.3.0` to `^5.4.1`. Addresses [#8964](https://redirect.github.com/cypress-io/cypress/issues/8964).
### [`v5.4.2`](https://redirect.github.com/cypress-io/cypress/compare/bfdc37d43d9a721b069de722a8fa456149e6ecdd...a0c45b8942968316989a41632f3d1f13a8fad2ce)
[Compare Source](https://redirect.github.com/cypress-io/cypress/compare/@cypress/react-v5.4.1...@cypress/react-v5.4.2)
### [`v5.4.1`](https://redirect.github.com/cypress-io/cypress/compare/v5.4.0...bfdc37d43d9a721b069de722a8fa456149e6ecdd)
[Compare Source](https://redirect.github.com/cypress-io/cypress/compare/@cypress/react-v5.4.0...@cypress/react-v5.4.1)
### [`v5.4.0`](https://redirect.github.com/cypress-io/cypress/releases/tag/v5.4.0): 5.4.0
[Compare Source](https://redirect.github.com/cypress-io/cypress/compare/@cypress/react-v5.3.4...@cypress/react-v5.4.0)
*Released 10/14/2020*
**Features:**
- You can now run [`cypress cache prune`](https://on.cypress.io/command-line#cypress-cache-prune) to delete all installed Cypress versions from the cache except for the currently-installed version. Addresses [#5972](https://redirect.github.com/cypress-io/cypress/issues/5972).
- There's a new `--size` option for the [`cypress cache list`](https://on.cypress.io/command-line#cypress-cache-list) command that prints the sizes of the Cypress cache folders. Addresses [#6404](https://redirect.github.com/cypress-io/cypress/issues/6404).
- For video recordings of runs, there is now a video chapter key for each test. If your video player supports chapters, you can move to the start of each test right away. Addresses [#3626](https://redirect.github.com/cypress-io/cypress/issues/3626).
- In Windows, you can now append the browser type to the end of the path passed to the `--browser` flag, like `cypress open --browser C:/User/App/browser.exe:chrome`, to help detect the browser type. Addresses [#6389](https://redirect.github.com/cypress-io/cypress/issues/6389).
- [`cy.viewport()`](https://on.cypress.io/viewport) has new `iphone-7`, `iphone-8`, and `iphone-se2` presets. Addressed in [#8624](https://redirect.github.com/cypress-io/cypress/issues/8624)
- When there is a new version of Cypress available, the update modal has a new design with 'copy to clipboard' buttons to copy the upgrade commands. Addressed in [#8751](https://redirect.github.com/cypress-io/cypress/issues/8751).
- The [Command Log](https://on.cypress.io/test-runner#Command-Log) can be hidden by passing the `CYPRESS_NO_COMMAND_LOG=1` environment variable during `cypress open` or `cypress run` to be used as a tool to debug performance issues. Addressed in [#8689](https://redirect.github.com/cypress-io/cypress/issues/8689).
**Bugfixes:**
- We fixed a regression in [5.0.0](https://on.cypress.io/changelog-5-8-0) where the `chromeWebSecurity` option had no effect in Electron. Fixes [#8399](https://redirect.github.com/cypress-io/cypress/issues/8399).
- Tests will no longer hang and now properly throw when there is an error thrown from a `test:after:run` event listener. Fixes [#2271](https://redirect.github.com/cypress-io/cypress/issues/2271) and [#8701](https://redirect.github.com/cypress-io/cypress/issues/8701).
- When a command is chained after [`.within()`](https://on.cypress.io/within) and "`cy.get()`" is called inside it, the scope will no longer permanently change. Fixes [#2106](https://redirect.github.com/cypress-io/cypress/issues/2106), [#4672](https://redirect.github.com/cypress-io/cypress/issues/4672), [#4757](https://redirect.github.com/cypress-io/cypress/issues/4757), and [#5183](https://redirect.github.com/cypress-io/cypress/issues/5183).
- Dual commands like [`cy.contains()`](https://on.cypress.io/contains) when used after an [`.each()`](https://on.cypress.io/each) commands now query as expected. Fixes [#4921](https://redirect.github.com/cypress-io/cypress/issues/4921).
- `/` is no longer added to the URL when `baseUrl` has param(s). Fixes [#2101](https://redirect.github.com/cypress-io/cypress/issues/2101).
- When using [`cy.route2()`](https://on.cypress.io/route2) the route handler timeouts will no longer leak into other tests and cause random failures. Addressed in [#8727](https://redirect.github.com/cypress-io/cypress/issues/8727).
- Re-running failed build steps in Bitbucket will no longer create a new run on the Cypress Dashboard. Fixes [#8720](https://redirect.github.com/cypress-io/cypress/issues/8720).
- The forced garbage collection timer will no longer display when using a version of Firefox newer than 80. Fixes [#8725](https://redirect.github.com/cypress-io/cypress/issues/8725).
- The browser dropdown is no longer covered when opened from the Runs tab in the Test Runner. Fixed in [#8745](https://redirect.github.com/cypress-io/cypress/issues/8745).
- Fixed an issue where preprocessor-related plugins would cause tests not to run and a duplicate instance of Cypress to be spawned. Fixes [#8634](https://redirect.github.com/cypress-io/cypress/issues/8634).
**Misc:**
- Improved type definitions for [`cy.route2()`](https://on.cypress.io/route2). Addresses [#8694](https://redirect.github.com/cypress-io/cypress/issues/8694) and [#8782](https://redirect.github.com/cypress-io/cypress/issues/8782).
- The Test Runner now shows an indicator in the footer and a toast notification if there is a new version available. Addressed in [#8702](https://redirect.github.com/cypress-io/cypress/issues/8702) and [#8803](https://redirect.github.com/cypress-io/cypress/issues/8803).
**Dependency Updates:**
- Upgraded Chrome browser version used during `cypress run` and when selecting Electron browser in `cypress open` from `83` to `85`. Addressed in [#8406](https://redirect.github.com/cypress-io/cypress/pull/8406).
- Upgraded bundled Node.js version from `12.14.1` to `12.16.3`. Addressed in [#8406](https://redirect.github.com/cypress-io/cypress/pull/8406).
- Upgraded `electron` from `9.2.1` to `10.1.3`. Addressed in [#8406](https://redirect.github.com/cypress-io/cypress/pull/8406).
- Upgraded `firefox-profile` from `2.0.0` to `4.0.0`. Addressed in [#8786](https://redirect.github.com/cypress-io/cypress/pull/8786).
- Upgraded `node-forge` from `0.9.0` to `0.10.0`. Addressed in [#8800](https://redirect.github.com/cypress-io/cypress/pull/8800).
### [`v5.3.4`](https://redirect.github.com/cypress-io/cypress/compare/@cypress/react-v5.3.3...@cypress/react-v5.3.4)
[Compare Source](h
Configuration
📅 Schedule: Branch creation - "every weekend" in timezone America/New_York, Automerge - At any time (no schedule defined).
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR is behind base branch, 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 contains the following updates:
4.16.4
->8.0.2
Release Notes
cypress-io/cypress (@cypress/react)
### [`v8.0.2`](https://redirect.github.com/cypress-io/cypress/compare/@cypress/react-v8.0.1...@cypress/react-v8.0.2) [Compare Source](https://redirect.github.com/cypress-io/cypress/compare/@cypress/react-v8.0.1...@cypress/react-v8.0.2) ### [`v8.0.1`](https://redirect.github.com/cypress-io/cypress/compare/@cypress/react-v8.0.0...@cypress/react-v8.0.1) [Compare Source](https://redirect.github.com/cypress-io/cypress/compare/@cypress/react-v8.0.0...@cypress/react-v8.0.1) ### [`v8.0.0`](https://redirect.github.com/cypress-io/cypress/releases/tag/v8.0.0): 8.0.0 [Compare Source](https://redirect.github.com/cypress-io/cypress/compare/@cypress/react-v7.0.3...@cypress/react-v8.0.0) *Released 07/19/2021* **Summary:** We've made some updates to ensure a consistent run experience across browsers. Now all browsers run via `cypress run` run headlessly, with a device pixel ratio of 1, and a screen size of 1280x720 by default. **Breaking Changes:** **Configuration
📅 Schedule: Branch creation - "every weekend" in timezone America/New_York, Automerge - At any time (no schedule defined).
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.