Cypress v4.1.0stable Released Feb 28, 2020
Impact Score: 5/10

Cypress v4.1.0 โ€” Release Notes & Engineering Impact

Source available โ€” automated, not human-reviewed

Component: cypress ยท Channel: stable. Automated analysis, not a compatibility certification. How this works.

Analysis updated: 2026-11-01.

Compatibility not verified โ€” check source notes
๐Ÿ“„ .MD
โšก Executive Summary (TL;DR)

Cypress v4.1.0. Source highlight: *Released 2/28/2020*

Who Does This Impact? (Role-Based Analysis)

๐Ÿ’ป Software Engineers & Devs

Check the source notes against the package and APIs you use before upgrading.

๐Ÿ“Š Product & Engineering Leads

Use the documented changes to assess relevance to your product; release frequency alone is not a quality measure.

โš™๏ธ DevOps & Security

Verify the target version, runtime requirements and rollback procedure in the official documentation.

๐Ÿ”ง Bug Fixes & Patches (6)

  • Fixed a regression where Cypress could throw a "Maximum call stack size exceeded" error when transmitting a circular object over the internal WebSocket. Fixes #6582.
  • We fixed an issue where using Chromium-family browsers could cause Cypress to throw a "WebSocket is not open: readyState 3" error under certain conditions. Fixes #5685.
  • We now more thoroughly ensure the parent of an element exists when recursively calling visibility and existence checks in order to prevent some maximum call stack errors. Fixes #4373.
  • We fixed an issue where a maximum call stack error would throw in some circumstances when `xhr.onreadystatechange` is accessed. Fixes #5864.
  • We fixed a regression in 3.5.0 where typing into an iframe with a body element with the contenteditable attribute would throw an error. Fixes #5930.
  • We now set the default window size when running Chrome headlessly to 1280x720. Fixes #6210.
๐Ÿ“„ View Raw Release Notes (Original Developer Log)
*Released 2/28/2020* **Features:** - There is a new `cypress info` command to see the locally detected browsers and other information related to Cypress. Addresses [#4540](https://github.com/cypress-io/cypress/issues/4540). - You can now click a 'Try Again' button to recheck if the server at the designated `baseUrl` is running within the warning message during `cypress open`. Addresses [#3284](https://github.com/cypress-io/cypress/issues/3284). - There are "collapse all" and "expand all" links in the Test Runner's "Tests" tab to collapse or expand all folders within the "Integration Tests". Addresses [#6282](https://github.com/cypress-io/cypress/issues/6282). - The plugins file function's `config` argument now includes `projectRoot` (absolute path to the root of the project) and `configFile` (absolute path to the configuration file). Addresses [#5941](https://github.com/cypress-io/cypress/issues/5941). **Bugfixes:** - Fixed a regression where Cypress could throw a "Maximum call stack size exceeded" error when transmitting a circular object over the internal WebSocket. Fixes [#6582](https://github.com/cypress-io/cypress/issues/6582). - We fixed an issue where using Chromium-family browsers could cause Cypress to throw a "WebSocket is not open: readyState 3" error under certain conditions. Fixes [#5685](https://github.com/cypress-io/cypress/issues/5685). - We now more thoroughly ensure the parent of an element exists when recursively calling visibility and existence checks in order to prevent some maximum call stack errors. Fixes [#4373](https://github.com/cypress-io/cypress/issues/4373). - We fixed an issue where a maximum call stack error would throw in some circumstances when `xhr.onreadystatechange` is accessed. Fixes [#5864](https://github.com/cypress-io/cypress/issues/5864). - We fixed a regression in [3.5.0](https://on.cypress.io/changelog-3-5-0) where typing into an iframe with a body element with the contenteditable attribute would throw an error. Fixes [#5930](https://github.com/cypress-io/cypress/issues/5930). - We now set the default window size when running Chrome headlessly to 1280x720. Fixes [#6210](https://github.com/cypress-io/cypress/issues/6210). - We fixed an issue where `cypress install` would not complete on Node.js 8.0.0. Fixes [#6512](https://github.com/cypress-io/cypress/issues/6512) and [#6568](https://github.com/cypress-io/cypress/issues/6568). - {% url "`cy.clearLocalStorage()`" clearlocalstorage now properly accepts the `log` option to disable logging. Fixes [#6342](https://github.com/cypress-io/cypress/issues/6342). **Misc:** - The error messages displayed when rerouting to a non same-origin domain has been updated to more accurately reflect the rules around same-origin policy. Addresses [#6048](https://github.com/cypress-io/cypress/issues/6048). - We fixed an error message that would display the wrong available browser families during validation. Addressed in [#6517](https://github.com/cypress-io/cypress/pull/6517). - We fixed some typos in some of our error messages. Addressed in [#6508](https://github.com/cypress-io/cypress/pull/6508). - We're collecting more environment variables when running Cypress with GitLab CI. Addresses [#6231](https://github.com/cypress-io/cypress/issues/6231). - The typing of `cy.$$` has been updated to distinguish differences between it and `Cypress.$`. "More info here" $#Cypress-vs-cy Addresses [#2027](https://github.com/cypress-io/cypress/issues/2027). - We're continuing to make progress in converting our codebase from CoffeeScript to JavaScript. Addresses [#2690](https://github.com/cypress-io/cypress/issues/2690) in [#6552](https://github.com/cypress-io/cypress/pull/6552), [#6523](https://github.com/cypress-io/cypress/pull/6523), and [#6545](https://github.com/cypress-io/cypress/pull/6545). **Dependency Updates** - Upgraded `electron` from `7.1.10` to `7.1.13`. Addressed in [#6566](https://github.com/cypress-io/cypress/pull/6566).