10.8.0

Released Released on September 12, 2022

Features:

Performance:

  • Several minor changes were made to reduce Cypress's memory footprint in the browser in an attempt to improve test times and reduce the likelihood of crashing the launched browser under test. Addressed in #23708, #23729, #23737, and #23738.

Bugfixes:

  • The Dashboard will now correctly show whether a video of the spec was uploaded to review. Before this change, the Dashboard would shows the error message The media could not be loaded when a passing test's video was not uploaded because videoUploadOnPasses was false. Fixes #2939.

  • Fixed an issue where the stack traces in run mode did not match the stack traces shown in open mode. Now, in the terminal, users will see the source map line and column number in the error stack trace. Fixes #7715.

  • Fixed a bug where projects using Node.js 16.17+ and 18.6+ with ES Modules and TypeScript were not working with Cypress. Fixes #22795, #23393, and #23552.

  • When searching for specs we now normalize OS-specific path separators so that Windows users can use back- and forward-slashes. Fixes #23426.

  • Fixed an regression introduced in Cypress 10.3.0, and further exposed in 10.4.0, that omitted same-site cookies when the URL Scheme, Domain, and Top Level Domain matched, but the ports are different (i.e. same-site). Fixes #23132.

  • Autoscrolling of the command log can no longer become disabled in run mode. This fixes an issue observed where the reporter randomly stops scrolling during a video recording and the Command log details are not visible. Fixes #16098 and #22199.

  • The cypress/react18 cy.mount() command's yielded rerender function has been updated to only create one ReactDom.Root element. This fixes the issue where state did not persist between rerenders, and all lifecycle hooks were reran when executed. Fixes #23357.

  • Fixed a regression introduced in Cypress 10.0.0 where Cypress was incompatible with Chrome v64 - v70. Fixes #23509.

  • Fixes an issue where outdated organization and project information could be shown in dialogs when connecting a project to the Cypress Dashboard. Fixes #23538.

  • The Sec-Fetch-Dest metadata request header is now set to document when the request is sent from the Application Under Test when the experimentalModifyObstructiveThirdPartyCode experiment is enabled. This was updated to prevent Google Authentication from returning 403 forbidden in Edge and Electron. Fixes #23720.

  • Correctly override the Electron userAgentwhen the userAgent configuration option is provided or experimentalModifyObstructiveThirdPartyCode experiment is enabled. Fixes #23597.

  • Fix regression introduced by Cypress 10.0.0 where the before:spec plugin event was not triggered in open mode when the experimentalInteractiveRunEvents experiment was enabled. Fixed #22360.

  • Fixed a regression introduced in 10.4.0 where referencing an aliased custom command would return undefined. Fixes #23652.

  • Users can now log into the Dashboard from the "Choose a browser" page of the Launchpad even if a browser is not open. Fixes #23779.

  • Fixed a bug where the cypress/svelte cy.mount() command was not logging by default. Fixed in #23771.

  • Fixed an issue where setting the testIsolation configuration at the suite-level would throw on the second test. Fixes #23644.

  • Removed misleading dependency warning in Launchpad for Next.js applications using component testing. Fixes #23598.

  • Added modifyObstructiveCode TypeScript types. Fixes #22146.

  • Assertions will no longer 'vibrate' in the command log when asserting on the text of elements with trailing whitespace. Fixed in #23727.

Misc:

  • There were some minor improvements made to the UI when configuration files are created for a project when using the Project Setup workflow. Addressed in #21847, #23260 and #23710.