cypress-io/cypress
### [`v5.5.0`](https://togithub.com/cypress-io/cypress/releases/v5.5.0)
[Compare Source](https://togithub.com/cypress-io/cypress/compare/v5.4.0...v5.5.0)
_Released 10/26/2020_
**Features:**
- [`cy.viewport()`](https://on.cypress.io/viewport) has a new `macbook-16` preset. Addresses [#8889](https://togithub.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://togithub.com/cypress-io/cypress/issues/7088).
**Bugfixes:**
- Updated the Cypress proxy layer to proxy HTTPS traffic from non-AUT origins. Addressed in [#8827](https://togithub.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://togithub.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://togithub.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://togithub.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://togithub.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://togithub.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 [#8799](https://togithub.com/cypress-io/cypress/issues/8799).
- 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://togithub.com/cypress-io/cypress/issues/8874).
**Misc:**
- Updated type definitions to allow for passed either `runMode` or `openMode` to `retries` alone. Addresses [#8869](https://togithub.com/cypress-io/cypress/issues/8869).
**Dependency Updates:**
- Upgraded `electron` from `10.1.3` to `10.1.5`. Addresses [#8927](https://togithub.com/cypress-io/cypress/issues/8927), [#8975](https://togithub.com/cypress-io/cypress/issues/8975).
- This addresses a Chrome security issue, CVE-2020-15999. Addresses [#8922](https://togithub.com/cypress-io/cypress/issues/8922).
- Upgraded `color-string` from `1.5.3` to `1.5.4`. Addresses [#8945](https://togithub.com/cypress-io/cypress/issues/8945).
- Upgraded `pretty-bytes` from `^5.3.0` to `^5.4.1`. Addresses [#8964](https://togithub.com/cypress-io/cypress/issues/8964).
### [`v5.4.0`](https://togithub.com/cypress-io/cypress/releases/v5.4.0)
[Compare Source](https://togithub.com/cypress-io/cypress/compare/v5.3.0...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://togithub.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://togithub.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://togithub.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://togithub.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://togithub.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://togithub.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://togithub.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://togithub.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://togithub.com/cypress-io/cypress/issues/2271) and [#8701](https://togithub.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://togithub.com/cypress-io/cypress/issues/2106), [#4672](https://togithub.com/cypress-io/cypress/issues/4672), [#4757](https://togithub.com/cypress-io/cypress/issues/4757), and [#5183](https://togithub.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://togithub.com/cypress-io/cypress/issues/4921).
- `/` is no longer added to the URL when `baseUrl` has param(s). Fixes [#2101](https://togithub.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://togithub.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://togithub.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://togithub.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://togithub.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://togithub.com/cypress-io/cypress/issues/8634).
**Misc:**
- Improved type definitions for [`cy.route2()`](https://on.cypress.io/route2). Addresses [#8694](https://togithub.com/cypress-io/cypress/issues/8694) and [#8782](https://togithub.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://togithub.com/cypress-io/cypress/issues/8702) and [#8803](https://togithub.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://togithub.com/cypress-io/cypress/pull/8406).
- Upgraded bundled Node.js version from `12.14.1` to `12.16.3`. Addressed in [#8406](https://togithub.com/cypress-io/cypress/pull/8406).
- Upgraded `electron` from `9.2.1` to `10.1.3`. Addressed in [#8406](https://togithub.com/cypress-io/cypress/pull/8406).
- Upgraded `firefox-profile` from `2.0.0` to `4.0.0`. Addressed in [#8786](https://togithub.com/cypress-io/cypress/pull/8786).
- Upgraded `node-forge` from `0.9.0` to `0.10.0`. Addressed in [#8800](https://togithub.com/cypress-io/cypress/pull/8800).
### [`v5.3.0`](https://togithub.com/cypress-io/cypress/releases/v5.3.0)
[Compare Source](https://togithub.com/cypress-io/cypress/compare/v5.2.0...v5.3.0)
_Released 9/28/2020_
**Features:**
- Firefox support is now out of beta! 🎉 Firefox 80 and newer are now officially stable when used with Cypress. Addresses [#8241](https://togithub.com/cypress-io/cypress/issues/8241).
- Versions of Firefox older than 80 can still be used, but will be subject to the `firefoxGcInterval` workaround. The desktop GUI will display a warning if such versions are used.
**Bugfixes:**
- Fixed a bug where `cy.route2` would not automatically JSONify an empty array handler. Addresses [#8532](https://togithub.com/cypress-io/cypress/issues/8532).
- Fixed a bug where objects yielded by using `cy.wait` on a `cy.route2` alias would not always have a `response` property. Addresses [#8536](https://togithub.com/cypress-io/cypress/issues/8536).
- Fixed an issue where `cy.route2` routes would not be able to intercept requests to HTTPS destinations on a different origin. Addresses [#8487](https://togithub.com/cypress-io/cypress/issues/8487).
- Fixed an issue where subjects became `undefined` after certain assertion failures. Addresses [#5763](https://togithub.com/cypress-io/cypress/issues/5763).
- Fixed an issue where a `cy.task` with no arguments passed would receive `null` as the first argument instead of `undefined`. Addresses [#5913](https://togithub.com/cypress-io/cypress/issues/5913).
- Fixed an issue preventing users from passing the config-file argument when starting cypress through the node module API. Addresses [#8632](https://togithub.com/cypress-io/cypress/issues/8632).
- Fixed an issue where `cy.visit()`s to a relative URL containing `..` would not work. Addresses [#5090](https://togithub.com/cypress-io/cypress/issues/5090).
- Fixed an issue where Mocha hooks could still be triggered after the Test Runner was manually stopped. Addresses [#8621](https://togithub.com/cypress-io/cypress/issues/8621).
- Fixed an issue where `cy.setCookie` failed when given a cookie name with a `__Host-` prefix. Addresses [#8261](https://togithub.com/cypress-io/cypress/issues/8261).
- Fixed an issue where a misleading error was displayed when test code threw an exception with a non-`Error` object. Addresses [#7870](https://togithub.com/cypress-io/cypress/issues/7870).
**Misc:**
- The proxy now omits the `Content-Security-Policy-Report-Only` header the same way that it does for `Content-Security-Policy`. Addresses [#7936](https://togithub.com/cypress-io/cypress/issues/7936).
- Added a `status` property to `CypressRunResult` objects. Addresses [#8580](https://togithub.com/cypress-io/cypress/issues/8580).
- Updated types to no longer use deprecated Mocha interfaces. Addresses [#5795](https://togithub.com/cypress-io/cypress/issues/5795).
- Passing an empty string to `CYPRESS_INSTALL_BINARY` now takes precedence over npm config. Addresses [#8488](https://togithub.com/cypress-io/cypress/issues/8488).
### [`v5.2.0`](https://togithub.com/cypress-io/cypress/releases/v5.2.0)
[Compare Source](https://togithub.com/cypress-io/cypress/compare/v5.1.0...v5.2.0)
_Released 9/15/2020_
**Features:**
- Added the configuration option `includeShadowDom` for enabling shadow DOM querying globally, per-suite, per-test, or programmatically. Addresses [#8442](https://togithub.com/cypress-io/cypress/issues/8442).
- Added a `followRedirect` option to request interception with `cy.route2()`, allowing redirects to be followed before continuing to response interception. Addresses [#7967](https://togithub.com/cypress-io/cypress/issues/7967).
- Added the capability to specify `delayMs` and `throttleKbps` when stubbing static responses with `cy.route2()`. Addresses [#7661](https://togithub.com/cypress-io/cypress/issues/7661).
- Installing Cypress pre-releases no longer requires setting the `CYPRESS_BINARY_INSTALL` environment variable. Addresses [#8482](https://togithub.com/cypress-io/cypress/issues/8482).
**Performance Improvements:**
- Fixed a performance issue which led to CPU bottlenecking during Cypress runs. Addresses [#8012](https://togithub.com/cypress-io/cypress/issues/8012) and [#8297](https://togithub.com/cypress-io/cypress/issues/8297).
**Bugfixes:**
- Fixed an issue where using TypeScript path aliases in the plugins file would error. Addresses [#8555](https://togithub.com/cypress-io/cypress/issues/8555).
- Fixed an issue where using `cy.contains()` within a shadow root would not yield the correct element. Addresses [#8494](https://togithub.com/cypress-io/cypress/issues/8494).
- Fixed an issue where querying the shadow DOM in a `cy.within()` callback would throw the error `root.getRootNode is not a function`. Addresses [#8478](https://togithub.com/cypress-io/cypress/issues/8478).
- Fixed an issue with `cy.type()` `{moveToStart}/{moveToEnd}` special characters moving the cursor to the current line instead of the entire text editable when typing in a `contenteditable` element. Addresses [#8465](https://togithub.com/cypress-io/cypress/issues/8465).
- Fixed an issue where typing into a manually-focused number input would prepend the number instead of appending it. Addresses [#7170](https://togithub.com/cypress-io/cypress/issues/7170).
- `cy.type()` now fires a `KeyboardEvent` event instead of an `Event` event. Addresses [#6125](https://togithub.com/cypress-io/cypress/issues/6125) and [#5650](https://togithub.com/cypress-io/cypress/issues/5650).
- Fixed long selectors in the selector playground text input overflowing other page elements. Addresses [#8247](https://togithub.com/cypress-io/cypress/issues/8247) and [#4184](https://togithub.com/cypress-io/cypress/issues/4184).
- Fixed an issue where assertions on `cy.getCookie()` would be called twice. Addresses [#6672](https://togithub.com/cypress-io/cypress/issues/6672).
- Fixed an issue that caused the "Open in IDE" button on hooks and tests not to appear in Firefox. Addresses [#8257](https://togithub.com/cypress-io/cypress/issues/8257).
- Fixed an issue causing Cypress to hang on test retry in run mode with certain assertions. Addresses [#8363](https://togithub.com/cypress-io/cypress/issues/8363).
**Documentation Changes:**
- Fixed examples of delaying and throttling responses with `cy.route2()`. Addresses [#8489](https://togithub.com/cypress-io/cypress/issues/8489).
- Added examples of using a response function with `cy.route2()`. Addresses [#8468](https://togithub.com/cypress-io/cypress/issues/8468).
- Removed unmaintained languages. English docs is the only supported language by the Cypress team. We greatly appreciate the contributions from the community for other languages, but these docs are largely stale, unmaintained, and partial. The Cypress team will seek out more scalable docs internalization implementation in the future.
**Misc:**
- The `experimentalShadowDomSupport` configuration flag has been removed. It is no longer necessary to enable shadow DOM testing.
- Improved the error message when the subject provided to `cy.shadow()` is not a shadow host. Addresses [#8530](https://togithub.com/cypress-io/cypress/issues/8530).
- Improved the error message when the Cypress binary is not executable. It now recommends trying to clear the cache and re-install. Addresses [#8397](https://togithub.com/cypress-io/cypress/issues/8397).
- Added missing type declarations for the `cy.route2()` command.
- Updated the type declaration for `Cypress.Commands.add()`, adding `Promise` to the list of allowed return types. Addresses [#7807](https://togithub.com/cypress-io/cypress/issues/7807).
Renovate configuration
:date: Schedule: "after 10pm every weekday,every weekend,before 5am every weekday" (UTC).
:vertical_traffic_light: Automerge: Enabled.
:recycle: Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
:no_bell: 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:
5.1.0
->5.5.0
Release Notes
cypress-io/cypress
### [`v5.5.0`](https://togithub.com/cypress-io/cypress/releases/v5.5.0) [Compare Source](https://togithub.com/cypress-io/cypress/compare/v5.4.0...v5.5.0) _Released 10/26/2020_ **Features:** - [`cy.viewport()`](https://on.cypress.io/viewport) has a new `macbook-16` preset. Addresses [#8889](https://togithub.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://togithub.com/cypress-io/cypress/issues/7088). **Bugfixes:** - Updated the Cypress proxy layer to proxy HTTPS traffic from non-AUT origins. Addressed in [#8827](https://togithub.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://togithub.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://togithub.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://togithub.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://togithub.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://togithub.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 [#8799](https://togithub.com/cypress-io/cypress/issues/8799). - 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://togithub.com/cypress-io/cypress/issues/8874). **Misc:** - Updated type definitions to allow for passed either `runMode` or `openMode` to `retries` alone. Addresses [#8869](https://togithub.com/cypress-io/cypress/issues/8869). **Dependency Updates:** - Upgraded `electron` from `10.1.3` to `10.1.5`. Addresses [#8927](https://togithub.com/cypress-io/cypress/issues/8927), [#8975](https://togithub.com/cypress-io/cypress/issues/8975). - This addresses a Chrome security issue, CVE-2020-15999. Addresses [#8922](https://togithub.com/cypress-io/cypress/issues/8922). - Upgraded `color-string` from `1.5.3` to `1.5.4`. Addresses [#8945](https://togithub.com/cypress-io/cypress/issues/8945). - Upgraded `pretty-bytes` from `^5.3.0` to `^5.4.1`. Addresses [#8964](https://togithub.com/cypress-io/cypress/issues/8964). ### [`v5.4.0`](https://togithub.com/cypress-io/cypress/releases/v5.4.0) [Compare Source](https://togithub.com/cypress-io/cypress/compare/v5.3.0...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://togithub.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://togithub.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://togithub.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://togithub.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://togithub.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://togithub.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://togithub.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://togithub.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://togithub.com/cypress-io/cypress/issues/2271) and [#8701](https://togithub.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://togithub.com/cypress-io/cypress/issues/2106), [#4672](https://togithub.com/cypress-io/cypress/issues/4672), [#4757](https://togithub.com/cypress-io/cypress/issues/4757), and [#5183](https://togithub.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://togithub.com/cypress-io/cypress/issues/4921). - `/` is no longer added to the URL when `baseUrl` has param(s). Fixes [#2101](https://togithub.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://togithub.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://togithub.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://togithub.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://togithub.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://togithub.com/cypress-io/cypress/issues/8634). **Misc:** - Improved type definitions for [`cy.route2()`](https://on.cypress.io/route2). Addresses [#8694](https://togithub.com/cypress-io/cypress/issues/8694) and [#8782](https://togithub.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://togithub.com/cypress-io/cypress/issues/8702) and [#8803](https://togithub.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://togithub.com/cypress-io/cypress/pull/8406). - Upgraded bundled Node.js version from `12.14.1` to `12.16.3`. Addressed in [#8406](https://togithub.com/cypress-io/cypress/pull/8406). - Upgraded `electron` from `9.2.1` to `10.1.3`. Addressed in [#8406](https://togithub.com/cypress-io/cypress/pull/8406). - Upgraded `firefox-profile` from `2.0.0` to `4.0.0`. Addressed in [#8786](https://togithub.com/cypress-io/cypress/pull/8786). - Upgraded `node-forge` from `0.9.0` to `0.10.0`. Addressed in [#8800](https://togithub.com/cypress-io/cypress/pull/8800). ### [`v5.3.0`](https://togithub.com/cypress-io/cypress/releases/v5.3.0) [Compare Source](https://togithub.com/cypress-io/cypress/compare/v5.2.0...v5.3.0) _Released 9/28/2020_ **Features:** - Firefox support is now out of beta! 🎉 Firefox 80 and newer are now officially stable when used with Cypress. Addresses [#8241](https://togithub.com/cypress-io/cypress/issues/8241). - Versions of Firefox older than 80 can still be used, but will be subject to the `firefoxGcInterval` workaround. The desktop GUI will display a warning if such versions are used. **Bugfixes:** - Fixed a bug where `cy.route2` would not automatically JSONify an empty array handler. Addresses [#8532](https://togithub.com/cypress-io/cypress/issues/8532). - Fixed a bug where objects yielded by using `cy.wait` on a `cy.route2` alias would not always have a `response` property. Addresses [#8536](https://togithub.com/cypress-io/cypress/issues/8536). - Fixed an issue where `cy.route2` routes would not be able to intercept requests to HTTPS destinations on a different origin. Addresses [#8487](https://togithub.com/cypress-io/cypress/issues/8487). - Fixed an issue where subjects became `undefined` after certain assertion failures. Addresses [#5763](https://togithub.com/cypress-io/cypress/issues/5763). - Fixed an issue where a `cy.task` with no arguments passed would receive `null` as the first argument instead of `undefined`. Addresses [#5913](https://togithub.com/cypress-io/cypress/issues/5913). - Fixed an issue preventing users from passing the config-file argument when starting cypress through the node module API. Addresses [#8632](https://togithub.com/cypress-io/cypress/issues/8632). - Fixed an issue where `cy.visit()`s to a relative URL containing `..` would not work. Addresses [#5090](https://togithub.com/cypress-io/cypress/issues/5090). - Fixed an issue where Mocha hooks could still be triggered after the Test Runner was manually stopped. Addresses [#8621](https://togithub.com/cypress-io/cypress/issues/8621). - Fixed an issue where `cy.setCookie` failed when given a cookie name with a `__Host-` prefix. Addresses [#8261](https://togithub.com/cypress-io/cypress/issues/8261). - Fixed an issue where a misleading error was displayed when test code threw an exception with a non-`Error` object. Addresses [#7870](https://togithub.com/cypress-io/cypress/issues/7870). **Misc:** - The proxy now omits the `Content-Security-Policy-Report-Only` header the same way that it does for `Content-Security-Policy`. Addresses [#7936](https://togithub.com/cypress-io/cypress/issues/7936). - Added a `status` property to `CypressRunResult` objects. Addresses [#8580](https://togithub.com/cypress-io/cypress/issues/8580). - Updated types to no longer use deprecated Mocha interfaces. Addresses [#5795](https://togithub.com/cypress-io/cypress/issues/5795). - Passing an empty string to `CYPRESS_INSTALL_BINARY` now takes precedence over npm config. Addresses [#8488](https://togithub.com/cypress-io/cypress/issues/8488). ### [`v5.2.0`](https://togithub.com/cypress-io/cypress/releases/v5.2.0) [Compare Source](https://togithub.com/cypress-io/cypress/compare/v5.1.0...v5.2.0) _Released 9/15/2020_ **Features:** - Added the configuration option `includeShadowDom` for enabling shadow DOM querying globally, per-suite, per-test, or programmatically. Addresses [#8442](https://togithub.com/cypress-io/cypress/issues/8442). - Added a `followRedirect` option to request interception with `cy.route2()`, allowing redirects to be followed before continuing to response interception. Addresses [#7967](https://togithub.com/cypress-io/cypress/issues/7967). - Added the capability to specify `delayMs` and `throttleKbps` when stubbing static responses with `cy.route2()`. Addresses [#7661](https://togithub.com/cypress-io/cypress/issues/7661). - Installing Cypress pre-releases no longer requires setting the `CYPRESS_BINARY_INSTALL` environment variable. Addresses [#8482](https://togithub.com/cypress-io/cypress/issues/8482). **Performance Improvements:** - Fixed a performance issue which led to CPU bottlenecking during Cypress runs. Addresses [#8012](https://togithub.com/cypress-io/cypress/issues/8012) and [#8297](https://togithub.com/cypress-io/cypress/issues/8297). **Bugfixes:** - Fixed an issue where using TypeScript path aliases in the plugins file would error. Addresses [#8555](https://togithub.com/cypress-io/cypress/issues/8555). - Fixed an issue where using `cy.contains()` within a shadow root would not yield the correct element. Addresses [#8494](https://togithub.com/cypress-io/cypress/issues/8494). - Fixed an issue where querying the shadow DOM in a `cy.within()` callback would throw the error `root.getRootNode is not a function`. Addresses [#8478](https://togithub.com/cypress-io/cypress/issues/8478). - Fixed an issue with `cy.type()` `{moveToStart}/{moveToEnd}` special characters moving the cursor to the current line instead of the entire text editable when typing in a `contenteditable` element. Addresses [#8465](https://togithub.com/cypress-io/cypress/issues/8465). - Fixed an issue where typing into a manually-focused number input would prepend the number instead of appending it. Addresses [#7170](https://togithub.com/cypress-io/cypress/issues/7170). - `cy.type()` now fires a `KeyboardEvent` event instead of an `Event` event. Addresses [#6125](https://togithub.com/cypress-io/cypress/issues/6125) and [#5650](https://togithub.com/cypress-io/cypress/issues/5650). - Fixed long selectors in the selector playground text input overflowing other page elements. Addresses [#8247](https://togithub.com/cypress-io/cypress/issues/8247) and [#4184](https://togithub.com/cypress-io/cypress/issues/4184). - Fixed an issue where assertions on `cy.getCookie()` would be called twice. Addresses [#6672](https://togithub.com/cypress-io/cypress/issues/6672). - Fixed an issue that caused the "Open in IDE" button on hooks and tests not to appear in Firefox. Addresses [#8257](https://togithub.com/cypress-io/cypress/issues/8257). - Fixed an issue causing Cypress to hang on test retry in run mode with certain assertions. Addresses [#8363](https://togithub.com/cypress-io/cypress/issues/8363). **Documentation Changes:** - Fixed examples of delaying and throttling responses with `cy.route2()`. Addresses [#8489](https://togithub.com/cypress-io/cypress/issues/8489). - Added examples of using a response function with `cy.route2()`. Addresses [#8468](https://togithub.com/cypress-io/cypress/issues/8468). - Removed unmaintained languages. English docs is the only supported language by the Cypress team. We greatly appreciate the contributions from the community for other languages, but these docs are largely stale, unmaintained, and partial. The Cypress team will seek out more scalable docs internalization implementation in the future. **Misc:** - The `experimentalShadowDomSupport` configuration flag has been removed. It is no longer necessary to enable shadow DOM testing. - Improved the error message when the subject provided to `cy.shadow()` is not a shadow host. Addresses [#8530](https://togithub.com/cypress-io/cypress/issues/8530). - Improved the error message when the Cypress binary is not executable. It now recommends trying to clear the cache and re-install. Addresses [#8397](https://togithub.com/cypress-io/cypress/issues/8397). - Added missing type declarations for the `cy.route2()` command. - Updated the type declaration for `Cypress.Commands.add()`, adding `Promise` to the list of allowed return types. Addresses [#7807](https://togithub.com/cypress-io/cypress/issues/7807).Renovate configuration
:date: Schedule: "after 10pm every weekday,every weekend,before 5am every weekday" (UTC).
:vertical_traffic_light: Automerge: Enabled.
:recycle: Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
:no_bell: Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by WhiteSource Renovate. View repository job log here.