Tim-Demo / JS-Demo

Apache License 2.0
0 stars 0 forks source link

Update dependency cypress to v4 - autoclosed #353

Closed mend-for-github-com[bot] closed 1 year ago

mend-for-github-com[bot] commented 1 year ago

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
cypress ^3.3.1 -> ^4.0.0 age adoption passing confidence

By merging this PR, the below issues will be automatically resolved and closed:

Severity CVSS Score CVE GitHub Issue
Critical 9.8 CVE-2021-44906 #294
Medium 5.6 CVE-2020-7598 #105

Release Notes

cypress-io/cypress ### [`v4.12.0`](https://togithub.com/cypress-io/cypress/releases/tag/v4.12.0): 4.12.0 [Compare Source](https://togithub.com/cypress-io/cypress/compare/v4.11.0...v4.12.0) *Released 8/3/2020* **Features:** - Now you can control whether screenshots are automatically taken on test failure during `cypress run` by setting [screenshotOnRunFailure](https://on.cypress.io/configuration#Screenshots) in your configuration. Addresses [#​5029](https://togithub.com/cypress-io/cypress/issues/5029). - The `pluginsFile` now has access to a readonly `version` property within the `config` object that returns the current Cypress version being run. This will allow plugins to better target specific Cypress versions. Addresses [#​6352](https://togithub.com/cypress-io/cypress/issues/6352). - During `cypress open`, you can now run a subset of all specs by [entering a text search filter and clicking 'Run n tests'](https://on.cypress.io/writing-and-organizing-tests#Run-filtered-specs). Addresses [#​6581](https://togithub.com/cypress-io/cypress/issues/6581). **Bugfixes:** - `position: fixed` elements that have a parent with `pointer-events: none` will now correctly evaluate as visible. Fixes [#​6675](https://togithub.com/cypress-io/cypress/issues/6675). - Applications using custom elements will no longer trigger infinite XHR request loops. Fixes [#​1068](https://togithub.com/cypress-io/cypress/issues/1068). - When snapshotting the DOM, Cypress no longer causes `attributeChangedCallback` to be triggered on custom elements. Fixes [#​7187](https://togithub.com/cypress-io/cypress/issues/7187). - Spec files containing `+` characters now properly run in Cypress. Fixes [#​5909](https://togithub.com/cypress-io/cypress/issues/5909). - When using the `fx` shortcut in [`cy.route()`](https://on.cypress.io/route), an error is now thrown when the fixture file cannot be found. Fixes [#​7818](https://togithub.com/cypress-io/cypress/issues/7818). - Cypress no longer thrown `Cannot read property '__error' of null` error when passing a file containing `null` content to [`cy.fixture()`](https://on.cypress.io/fixture). Fixes [#​8010](https://togithub.com/cypress-io/cypress/issues/8010). - Values containing exponential operators passed to `--env` via the command line are now properly read. Fixes [#​6891](https://togithub.com/cypress-io/cypress/issues/6891). - The "Open in IDE" button no longer disappears from hooks when the tests are manually rerun. Fixes [#​8094](https://togithub.com/cypress-io/cypress/issues/8094). - When [`experimentalSourceRewriting`](https://on.cypress.io/experiments) is enabled, AST rewriting will no longer return an output before the body is done being written. This would happen when the response body was too large and the response would be sent while the body was still being modified. Fixes [#​8043](https://togithub.com/cypress-io/cypress/issues/8043). - When using [`.type()`](https://on.cypress.io/type), Cypress now properly types into an input within an iframe that auto focuses the input. Fixes [#​8111](https://togithub.com/cypress-io/cypress/issues/8111). **Misc:** - Dependencies for our `cypress` npm package are no longer pinned to a specific version. This allows the use of `npm audit fix` to fix security vulnerabilities without needing a patch release from Cypress. Addresses [#​8046](https://togithub.com/cypress-io/cypress/issues/8046). - We now collect environment variables for AWS CodeBuild when recording to the Dashboard. Addressed [#​8101](https://togithub.com/cypress-io/cypress/issues/8101). - Types inside Module API are now accessible via the `CypressCommandLine` namespace. Addresses [#​7309](https://togithub.com/cypress-io/cypress/issues/7309). - We added more type definitions for the [`.should()`](https://on.cypress.io/should) command. Addresses [#​5573](https://togithub.com/cypress-io/cypress/issues/5573). - Cookie command's `expiry` property type is now a Number instead of a String. Addresses [#​8144](https://togithub.com/cypress-io/cypress/issues/8144). - There are some minor visual improvements to the Test Runner's Command Log when hovering, focusing and clicking on hook titles and pending tests. Addressed in [#​8153](https://togithub.com/cypress-io/cypress/pull/8153). **Dependency Updates:** - Upgraded `jimp` from `0.13.0` to `0.14.0`. Addressed in [#​8102](https://togithub.com/cypress-io/cypress/pull/8102). - Upgraded `moment` from `2.26.0` to `2.27.0`. Addressed in [#​8122](https://togithub.com/cypress-io/cypress/pull/8122). ### [`v4.11.0`](https://togithub.com/cypress-io/cypress/releases/tag/v4.11.0): 4.11.0 [Compare Source](https://togithub.com/cypress-io/cypress/compare/v4.10.0...v4.11.0) *Released 7/21/2020* **Features:** - You can now pass an `ensureScrollability: false` option to [`.scrollTo()`](https://on.cypress.io/scrollto) to skip checking whether the element is scrollable. Addresses [#​1924](https://togithub.com/cypress-io/cypress/issues/1924). - [`cy.clock()`](https://on.cypress.io/clock) now accepts Dates as well as a Number for now. Fixes [#​7786](https://togithub.com/cypress-io/cypress/issues/7786). **Bugfixes:** - Running multiple specs within Firefox during `cypress run` on Windows will no longer fail trying to make a connection to the browser. Fixes [#​6392](https://togithub.com/cypress-io/cypress/issues/6392). - Cypress will no longer throw a `Cannot read property 'isAttached' of undefined` error during `cypress run` on Firefox versions >= 75. Fixes [#​6813](https://togithub.com/cypress-io/cypress/issues/6813). - Fixed an issue where Cypress tests in Chromium-family browsers could randomly fail with the error "WebSocket is already in CLOSING or CLOSED state." Fixes [#​7180](https://togithub.com/cypress-io/cypress/issues/7180). - Taking a screenshot of an element that changes height upon scroll will no longer throw an `invalid for option "size"` error. Fixes [#​6099](https://togithub.com/cypress-io/cypress/issues/6099). - Setting `viewportHeight` or `viewportWidth` from within the [test configuration](https://on.cypress.io/writing-and-organizing-tests#test-configuration) now properly changes the viewport size for the duration of the suite or test. - Setting deep objects and arrays on `config` within the `pluginsFile` now sets the values correctly. Fixes [#​7959](https://togithub.com/cypress-io/cypress/issues/7959). - The progress bar for `cy.wait()` now reflects the correct `requestTimeout` and `responseTimeout` of the command. Fixes [#​7881](https://togithub.com/cypress-io/cypress/issues/7881). - The command's progress bar will not longer restart when its parent test is collapsed in the Command Log. Fixes [#​7912](https://togithub.com/cypress-io/cypress/issues/7912). - Key value pairs sent to `ELECTRON_EXTRA_LAUNCH_ARGS` as `key=value` will now be properly read in. Fixes [#​7994](https://togithub.com/cypress-io/cypress/issues/7994). - Stubbed responses responding with an empty string to [`cy.route()`](https://on.cypress.io/route) now correctly display as 'xhr stub' in the Test Runner's Command Log. Fixes [#​8018](https://togithub.com/cypress-io/cypress/issues/8018). - Quickly reclicking the "Run All Tests" button in the Test Runners' Command Log will no longer throw errors about undefined properties and the tests will no longer hang. Fixes [#​7968](https://togithub.com/cypress-io/cypress/issues/7968). **Misc:** - The error messages thrown from `pluginsFile` and `supportFile` now mention that `.ts` extensions are supported. Addresses [#​7940](https://togithub.com/cypress-io/cypress/issues/7940). - The style when focusing on tests in the Command Log has been updated. Addresses [#​7855](https://togithub.com/cypress-io/cypress/issues/7855). **Dependency Updates:** - Upgraded `@benmalka/foxdriver` from `0.4.0` to `0.4.1`. Addressed in [#​8040](https://togithub.com/cypress-io/cypress/pull/8040). - Upgraded `firefox-profile` from `1.3.1` to `2.0.0`. Addressed in [#​8000](https://togithub.com/cypress-io/cypress/pull/8000). - Upgraded `fix-path` from `2.1.0` to `3.0.0`. Addressed in [#​8028](https://togithub.com/cypress-io/cypress/pull/8028). - Upgraded `human-interval` from `0.1.6` to `1.0.0`. Addressed in [#​8031](https://togithub.com/cypress-io/cypress/pull/8031). - Upgraded `lodash` from `4.17.15` to `4.17.19`. Addressed in [#​7954](https://togithub.com/cypress-io/cypress/pull/7954). - Upgraded `plist` from `2.1.0` to `3.0.1`. Addressed in [#​8045](https://togithub.com/cypress-io/cypress/pull/8045). - Upgraded `proxy-from-env` from `1.0.0` to `1.1.0`. Addressed in [#​7900](https://togithub.com/cypress-io/cypress/pull/7900). - Upgraded `resolve` from `1.13.1` to `1.17.0`. Addressed in [#​7989](https://togithub.com/cypress-io/cypress/pull/7989). - Upgraded `systeminformation` from `4.21.1` to `4.26.9`. Addressed in [#​7975](https://togithub.com/cypress-io/cypress/pull/7975). - Upgraded `uuid` from `3.3.2` to `8.2.0`. Addressed in [#​7976](https://togithub.com/cypress-io/cypress/pull/7976), [#​8002](https://togithub.com/cypress-io/cypress/pull/8002), and [#​8011](https://togithub.com/cypress-io/cypress/pull/8011). ### [`v4.10.0`](https://togithub.com/cypress-io/cypress/releases/tag/v4.10.0): 4.10.0 [Compare Source](https://togithub.com/cypress-io/cypress/compare/v4.9.0...v4.10.0) *Released 7/7/2020* **Features:** - You can open a `before`, `beforeEach`, `after`, and `afterEach` hook definition in your IDE from the Test Runner's [Command Log](https://on.cypress.io/test-runner#Command-Log) by clicking the **Open in IDE** button. Addresses [#​7793](https://togithub.com/cypress-io/cypress/issues/7793). - `before`, `beforeEach`, `after`, and `afterEach` hook definitions now display separately in the Test Runner's [Command Log](https://on.cypress.io/test-runner#Command-Log) when defined in separate hook definitions. Addresses [#​7779](https://togithub.com/cypress-io/cypress/issues/7779). - You can now open a spec file directly from the **Tests** tab in the Test Runner by clicking the **Open in IDE** button. Addresses [#​7713](https://togithub.com/cypress-io/cypress/issues/7713) **Bugfixes:** - HTTP requests taking longer than the default `responseTimeout` will no longer be prematurely canceled by the Cypress proxy layer. Fixes [#​6426](https://togithub.com/cypress-io/cypress/issues/6426). - Using Cypress commands to traverse the DOM on an application with a global `parent` variable will no longer throw Illegal Invocation errors. Fixes [#​6412](https://togithub.com/cypress-io/cypress/issues/6412). - When [`experimentalShadowDomSupport`](https://on.cypress.io/experiments#Shadow-DOM) is enabled, using [`.type()`](https://on.cypress.io/type) on an input in the Shadow DOM will not result in an error. Fixes [#​7741](https://togithub.com/cypress-io/cypress/issues/7741). - When [`experimentalShadowDomSupport`](https://on.cypress.io/experiments#Shadow-DOM) is enabled, checking for visibility on a shadow dom host element will no longer hang if the host element was the foremost element and had an ancestor with fixed position. Fixes [#​7893](https://togithub.com/cypress-io/cypress/issues/7893). - Debug logs from the `@benmalka/foxdriver` module will no longer appear if any `DEBUG` environment variable was set. Fixed [#​7723](https://togithub.com/cypress-io/cypress/issues/7723). **Misc:** - We made some minor UI updates to the Test Runner. Addresses [#​7732](https://togithub.com/cypress-io/cypress/issues/7732) and [#​7803](https://togithub.com/cypress-io/cypress/issues/7803). **Dependency Updates:** - Upgraded `recast` from `0.18.8` to `0.19.1`. Addressed in [#​7898](https://togithub.com/cypress-io/cypress/pull/7898). ### [`v4.9.0`](https://togithub.com/cypress-io/cypress/releases/tag/v4.9.0): 4.9.0 [Compare Source](https://togithub.com/cypress-io/cypress/compare/v4.8.0...v4.9.0) *Released 6/23/2020* **Features:** - An animated progress bar now displays on every command in the [Command Log](https://on.cypress.io/test-runner#Command-Log) indicating how long the command has left to run before reaching its command timeout. Addresses [#​7642](https://togithub.com/cypress-io/cypress/issues/7642). - There is now an [`experimentalFetchPolyfill`](https://on.cypress.io/experiments) configuration option. When this option is `true`, Cypress will automatically replace `window.fetch` with a polyfill that Cypress can spy on and stub. Addresses [#​7710](https://togithub.com/cypress-io/cypress/issues/7710). - You can now pass a `--quiet` flag to [`cypress run`](https://on.cypress.io/command-line#cypress-run) to silence any Cypress specific output from stdout. Addresses [#​7714](https://togithub.com/cypress-io/cypress/issues/7714). **Bugfixes:** - [`cy.wait()`](https://on.cypress.io/wait) now correctly resolves when waiting for XHR requests that contain resource-like text in the XHR's query params or hash (like `.js`, .`html`, `.css`). [#​7280](https://togithub.com/cypress-io/cypress/issues/7280). - We fixed a regression in [4.6.0](https://on.cypress.io/changelog-4-6-0) where errors thrown from the application under test as strings would not be correctly handled. Fixes [#​7590](https://togithub.com/cypress-io/cypress/issues/7590). - We fixed a regression in [4.8.0](https://on.cypress.io/changelog-4-8-0) where [`.click()`](https://on.cypress.io/click) would hang if the subject had a shadow root and [`experimentalShadowDomSupport`](https://on.cypress.io/experiments#Shadow-DOM) was not enabled. Fixes [#​7679](https://togithub.com/cypress-io/cypress/issues/7679). - We fixed a regression in [4.6.0](https://on.cypress.io/changelog-4-6-0) so that [`.should('have.value')`](https://on.cypress.io/should) now properly asserts against ``, `` or `
  • ` element's values. Fixes [#​7603](https://togithub.com/cypress-io/cypress/issues/7603). - Cypress no longer responds with 413 responses during a recorded `cypress run` when the stdout is too large. Fixes [#​7548](https://togithub.com/cypress-io/cypress/issues/7548). - We fixed an issue where Cypress could exit successfully even with failing tests when launched in global mode. Fixes [#​7755](https://togithub.com/cypress-io/cypress/issues/7755). - Assertion logs now properly display as parent commands in the [Command Log](https://on.cypress.io/test-runner#Command-Log) regardless of what is in the `beforeEach` hook. Fixes [#​7731](https://togithub.com/cypress-io/cypress/issues/7731). - When [`experimentalShadowDomSupport`](https://on.cypress.io/experiments#Shadow-DOM) is enabled, querying shadow dom in certain situations will no longer cause the error `Cannot read property 'length' of undefined` during `cypress run`. Fixes [#​7676](https://togithub.com/cypress-io/cypress/issues/7676). - Highlighting of elements upon hover of a command in the [Command Log](https://on.cypress.io/test-runner#Command-Log) are now visible when targeting absolute positioned elements. Fixes [#​7762](https://togithub.com/cypress-io/cypress/issues/7762). - [`cypress run`](https://on.cypress.io/command-line#cypress-run) will no longer crash when provided an empty string to the `--project` flag. Fixes [#​7743](https://togithub.com/cypress-io/cypress/issues/7743). **Misc:** - There is now a loading state to indicated when tests are loading in the [Command Log](https://on.cypress.io/test-runner#Command-Log). Addresses [#​7700](https://togithub.com/cypress-io/cypress/issues/7700). - The type definitions for `fixturesFolder`, `pluginsFile`, `screenshotsFolders` and `videoCompression` have been updated to allow `false` TypeScript types. Addresses [#​7654](https://togithub.com/cypress-io/cypress/issues/7654). - The type definitions for `cy.wait(ms)` now correctly yield the type of the previous subject. Addresses [#​7682](https://togithub.com/cypress-io/cypress/issues/7682). - The type definitions now allow for the 'key' keyword when chaining off 'any' or 'all' assertion chainers. Addresses [#​7665](https://togithub.com/cypress-io/cypress/issues/7665). **Dependency Updates:** - Upgraded `arch` from `2.1.1` to `2.1.2`. Addressed in [#​7672](https://togithub.com/cypress-io/cypress/pull/7672). - Upgraded `eventemitter2` from `4.1.2` to `6.4.2`. Addressed in [#​7705](https://togithub.com/cypress-io/cypress/pull/7705) and [#​7707](https://togithub.com/cypress-io/cypress/pull/7707). - Upgraded `getos` from `3.1.1` to `3.2.1`. Addressed in [#​7685](https://togithub.com/cypress-io/cypress/pull/7685). - Upgraded `is-installed-globally` from `0.1.0` to `0.3.2`. Addressed in [#​7703](https://togithub.com/cypress-io/cypress/pull/7703). - Upgraded `jimp` from `0.12.0` to `0.13.0`. Addressed in [#​7618](https://togithub.com/cypress-io/cypress/pull/7618). - Upgraded `moment` from `2.24.0` to `2.26.0`. Addressed in [#​7718](https://togithub.com/cypress-io/cypress/pull/7718). - Upgraded `signal-exit` from `3.0.2` to `3.0.3`. Addressed in [#​7738](https://togithub.com/cypress-io/cypress/pull/7738). ### [`v4.8.0`](https://togithub.com/cypress-io/cypress/releases/tag/v4.8.0): 4.8.0 [Compare Source](https://togithub.com/cypress-io/cypress/compare/v4.7.0...v4.8.0) *Released 6/8/2020* **Features:** - You can now apply certain [test configuration](https://on.cypress.io/configuration#Test-Configuration) for the duration of a suite or test by passing a configuration object to the test or suite as the second argument. Addresses [#​7167](https://togithub.com/cypress-io/cypress/issues/7167). - [`Cypress.isBrowser()`](https://on.cypress.io/isbrowser) has been expanded to allow for new matcher arguments to assist in filtering matching browsers. Addresses [#​7168](https://togithub.com/cypress-io/cypress/issues/7168). - We now display the currently running file at the top of the Test Runner's Command Log. [That file can be opened](https://on.cypress.io/test-runner#Open-files-in-your-IDE) in your [preferred file opener](https://on.cypress.io/IDE-integration#File-Opener-Preference) by clicking the file. Addresses [#​7506](https://togithub.com/cypress-io/cypress/issues/7506). - We added experimental shadow DOM support through the [`experimentalShadowDomSupport`](https://on.cypress.io/experiments#Shadow-DOM) option. See the [Experiments page](https://on.cypress.io/experiments#Shadow-DOM) for more information. Addresses [#​144](https://togithub.com/cypress-io/cypress/issues/144). **Bugfixes:** - Upon domain navigation, `before` and `after` hooks defined in completed suites no longer erroneously rerun. Fixes [#​1987](https://togithub.com/cypress-io/cypress/issues/1987). - Errors thrown within root level `after` hooks now correctly display in the Test Runner's Command Log. Fixes [#​2296](https://togithub.com/cypress-io/cypress/issues/2296). - We fixed a regression in [4.6.0](https://on.cypress.io/changelog-4-6-0) where an XHR response without a body would cause Cypress to throw `Cannot read property '__error' of null`. Fixes [#​7518](https://togithub.com/cypress-io/cypress/issues/7518). - We fixed a regression in [4.6.0](https://on.cypress.io/changelog-4-6-0) where using [`cy.visit()`](https://on.cypress.io/visit) to an authenticated URL would error with `Request cannot be constructed from a URL that includes credentials: /__cypress/runner/./wasm/mappings.wasm` Fixes [#​7481](https://togithub.com/cypress-io/cypress/issues/7481). - We now properly load code from the `pluginsFile` or `supportFile` when they are TypeScript files. Fixes [#​7459](https://togithub.com/cypress-io/cypress/issues/7459). - utf-8 characters now properly display within error code frames. Fixes [#​7507](https://togithub.com/cypress-io/cypress/issues/7507). - Errors thrown in a [`cy.on('fail', fn)`](https://on.cypress.io/catalog-of-events#Cypress-Events) fail handler now display a stack trace and code frame pointing to the origin of the error. Fixes [#​7512](https://togithub.com/cypress-io/cypress/issues/7512). - [`.click()`](https://on.cypress.io/click) now properly clicks on wrapped inline elements when the first child element in the parent element has no width or height. Fixes [#​7434](https://togithub.com/cypress-io/cypress/issues/7434) and [#​7012](https://togithub.com/cypress-io/cypress/issues/7012). - [`cy.wrap()`](https://on.cypress.io/wrap) now properly respects the `timeout` option. It also better handles situations when passed a promise that never resolves. Fixes [#​5980](https://togithub.com/cypress-io/cypress/issues/5980). - When [`experimentalComponentTesting`](https://on.cypress.io/experiments#Component-Testing) is enabled, Cypress will no longer exit with SIGABRT in certain situations. Fixes [#​7572](https://togithub.com/cypress-io/cypress/issues/7572). - We fixed a regression in [3.8.0](https://on.cypress.io/changelog-3-8-0) where the "Tests" button in the Test Runner wouldn't take you back to the tests list in all browsers. Fixes [#​5948](https://togithub.com/cypress-io/cypress/issues/5948). - Using the `S` shortcut during [`.pause()`](https://on.cypress.io/pause) no longer does anything. This prevents the Test Runner from getting into a 'stuck' state. Fixes [#​6867](https://togithub.com/cypress-io/cypress/issues/6867). **Misc:** - The design of errors and some iconography displayed in the Test Runner's Command Log have been updated. Addresses [#​7499](https://togithub.com/cypress-io/cypress/issues/7499), [#​7542](https://togithub.com/cypress-io/cypress/issues/7542) and [#​7563](https://togithub.com/cypress-io/cypress/issues/7563). - The commands in the Test Runner's Command Log now display in the same casing as the original command. Addresses [#​5773](https://togithub.com/cypress-io/cypress/issues/5773). - The navigation links in the Test Runner now display the correct CSS styles when focused. Addresses [#​7491](https://togithub.com/cypress-io/cypress/issues/7491). - [`Cypress.config()`](https://on.cypress.io/config) now has TypeScript types for the `taskTimeout` option. Addresses [#​7531](https://togithub.com/cypress-io/cypress/issues/7531). - TypeScript types for [`cy.screenshot()`](https://on.cypress.io/screenshot) options and [`Cypress.log()`](https://on.cypress.io/cypress-log) have been updated to be more accurate. Addresses [#​7445](https://togithub.com/cypress-io/cypress/issues/7445). - TypeScript types for `Cypress.automation` have been added. Addresses [#​7519](https://togithub.com/cypress-io/cypress/issues/7519). - We now display a more accurate error message when passing a browser to the `--browser` flag that is not supported by Cypress. Addresses [#​6979](https://togithub.com/cypress-io/cypress/issues/6979). - We're continuing to make progress in converting our codebase from CoffeeScript to JavaScript. Addresses [#​2690](https://togithub.com/cypress-io/cypress/issues/2690) in [#​7588](https://togithub.com/cypress-io/cypress/pull/7588) and [#​7591](https://togithub.com/cypress-io/cypress/pull/7591). **Dependency Updates:** - Upgraded `chrome-remote-interface` from `0.28.1` to `0.28.2`. Addressed in [#​7615](https://togithub.com/cypress-io/cypress/pull/7615). - Upgraded `electron` from `8.3.0` to `8.3.1`. Addressed in [#​7599](https://togithub.com/cypress-io/cypress/pull/7599). ### [`v4.7.0`](https://togithub.com/cypress-io/cypress/releases/tag/v4.7.0): 4.7.0 [Compare Source](https://togithub.com/cypress-io/cypress/compare/v4.6.0...v4.7.0) *Released 5/26/2020* **Features:** - `cy.request()` now supports an `encoding` option that can be used to set the encoding of the response body, defaulting to `utf-8`. Addresses [#​2029](https://togithub.com/cypress-io/cypress/issues/2029) and [#​3576](https://togithub.com/cypress-io/cypress/issues/3576). **Bugfixes:** - We fixed a regression in [4.6.0](https://on.cypress.io/changelog-4-6-0) where the address bar of the application under test would disappear when scrolling commands ran and the application under test would visually shift after taking screenshots. Fixes [#​7443](https://togithub.com/cypress-io/cypress/issues/7443) and [#​7466](https://togithub.com/cypress-io/cypress/issues/7466). - We fixed a regression where test runs could hang when loading spec files with source maps. Fixes [#​7464](https://togithub.com/cypress-io/cypress/issues/7464). **Misc:** - We now display a more descriptive error message when the plugins file does not export a function. Addresses [#​6611](https://togithub.com/cypress-io/cypress/issues/6611). ### [`v4.6.0`](https://togithub.com/cypress-io/cypress/releases/tag/v4.6.0): 4.6.0 [Compare Source](https://togithub.com/cypress-io/cypress/compare/v4.5.0...v4.6.0) *Released 5/20/2020* **Features:** - [Errors](https://on.cypress.io/debugging#Errors) in the Test Runner now display a code frame to preview where the failure occurred with the relevant file, line number, and column number highlighted. Clicking on the file link will open the file in your [preferred file opener](https://on.cypress.io/IDE-integration#File-Opener-Preference) and highlight the line and column in editors that support it. Addresses [#​3762](https://togithub.com/cypress-io/cypress/issues/3762). - Cypress now utilizes [source maps](https://on.cypress.io/debugging#Source-maps) to enhance the error experience. Stack traces are translated so that your source files are shown instead of the generated file that is loaded by the browser. Cypress will include an inline source map in your spec file. If you [modify the preprocessor](https://on.cypress.io/preprocessors-api), ensure that inline source maps are enabled to get the same experience. Users of `@cypress/webpack-preprocessor` should upgrade to v5.4.1 or later of the package which will correctly inline source maps. Addresses [#​881](https://togithub.com/cypress-io/cypress/issues/881), [#​1761](https://togithub.com/cypress-io/cypress/issues/1761) and [#​3966](https://togithub.com/cypress-io/cypress/issues/3966). - Cypress now enables AST-based JS/HTML rewriting when setting the [`experimentalSourceRewriting`](https://on.cypress.io/experiments) configuration option to `true`. Addresses [#​5273](https://togithub.com/cypress-io/cypress/issues/5273). - Number arguments passed to `have.text`, `have.id`, `have.data`, `have.value`, and `have.attr` [assertions chainers](https://on.cypress.io/assertions#Chai-jQuery) are now automatically cast to strings for comparison. Addresses [#​7314](https://togithub.com/cypress-io/cypress/issues/7314). **Bugfixes:** - Default [TypeScript](https://on.cypress.io/typescript-support) options are now set to `module: commonJS` which Node.js and the browser expect. This fixes a situation where setting a different module in a `tsconfig.json` would cause errors to throw if you had `export`, `import` or `async` keywords in your code. Fixes [#​7005](https://togithub.com/cypress-io/cypress/issues/7005), [#​7011](https://togithub.com/cypress-io/cypress/issues/7011), [#​7043](https://togithub.com/cypress-io/cypress/issues/7043), and [#​7151](https://togithub.com/cypress-io/cypress/issues/7151). - When [`experimentalSourceRewriting`](https://on.cypress.io/experiments) is enabled, setting `location` or `location.href` to a relative href, or using `location.replace` or `location.assign` with a relative href will no longer navigate the AUT to the wrong URL. Fixes [#​3975](https://togithub.com/cypress-io/cypress/issues/3975) and [#​3994](https://togithub.com/cypress-io/cypress/issues/3994). - When [`experimentalSourceRewriting`](https://on.cypress.io/experiments) is enabled, the use of `window.top` and `window.parent` will no longer cause the AUT to break out of the Cypress iframe. Fixes [#​5271](https://togithub.com/cypress-io/cypress/issues/5271) and [#​1467](https://togithub.com/cypress-io/cypress/issues/1467). - When [`experimentalSourceRewriting`](https://on.cypress.io/experiments) is enabled, calls to `window.frames`, `window.parent.frames`, and other `frames` will no longer point to the wrong reference after being proxied through Cypress. Fixes [#​2664](https://togithub.com/cypress-io/cypress/issues/2664). - When [`experimentalSourceRewriting`](https://on.cypress.io/experiments) is enabled, scripts using the `integrity` attribute for sub-resource integrity (SRI) will now load after being proxied through Cypress. Fixes [#​2393](https://togithub.com/cypress-io/cypress/issues/2393). - When [`experimentalSourceRewriting`](https://on.cypress.io/experiments) is enabled, the use of `document.location` to set the URL will no longer navigate the AUT to the wrong URL. Fixes [#​7402](https://togithub.com/cypress-io/cypress/issues/7402). - Type definitions will no longer conflict when running Cypress in a project with Jest. Fixes [#​3536](https://togithub.com/cypress-io/cypress/issues/3536). - We increased the timeout for launching Firefox from 2.5 seconds to 50 seconds. Previously, users hitting this limit would encounter a "cannot open socket" error; now, the error will be wrapped. Fixes [#​7159](https://togithub.com/cypress-io/cypress/issues/7159). - [`.click`](https://on.cypress.io/click) will now click in the correct coordinates when either x or y coordinate options are zero. Fixes [#​7319](https://togithub.com/cypress-io/cypress/issues/7319). - Cypress no longer displays `onError is not a function` when a browser can't connect. Fixes [#​7217](https://togithub.com/cypress-io/cypress/issues/7217). - You can now pass the `force: true` option to [`.select()`](https://on.cypress.io/select) to select options within a disabled `