chore(deps): update dependency cypress to v13
This MR contains the following updates:
Package | Type | Update | Change |
---|---|---|---|
cypress (source) | devDependencies | major | ^8.7.0 -> ^13.14.2 |
Release Notes
cypress-io/cypress (cypress)
v13.14.2
Changelog: https://docs.cypress.io/guides/references/changelog#13-14-2
v13.14.1
Changelog: https://docs.cypress.io/guides/references/changelog#13-14-1
v13.14.0
Changelog: https://docs.cypress.io/guides/references/changelog#13-14-0
v13.13.3
Changelog: https://docs.cypress.io/guides/references/changelog#13-13-3
v13.13.2
Changelog: https://docs.cypress.io/guides/references/changelog#13-13-2
v13.13.1
Changelog: https://docs.cypress.io/guides/references/changelog#13-13-1
v13.13.0
Changelog: https://docs.cypress.io/guides/references/changelog#13-13-0
v13.12.0
Changelog: https://docs.cypress.io/guides/references/changelog#13-12-0
v13.11.0
Changelog: https://docs.cypress.io/guides/references/changelog#13-11-0
v13.10.0
Changelog: https://docs.cypress.io/guides/references/changelog#13-10-0
v13.9.0
Changelog: https://docs.cypress.io/guides/references/changelog#13-9-0
v13.8.1
Changelog: https://docs.cypress.io/guides/references/changelog#13-8-1
v13.8.0
Changelog: https://docs.cypress.io/guides/references/changelog#13-8-0
v13.7.3
Changelog: https://docs.cypress.io/guides/references/changelog#13-7-3
v13.7.2
Changelog: https://docs.cypress.io/guides/references/changelog#13-7-2
v13.7.1
Changelog: https://docs.cypress.io/guides/references/changelog#13-7-1
v13.7.0
Changelog: https://docs.cypress.io/guides/references/changelog#13-7-0
v13.6.6
Changelog: https://docs.cypress.io/guides/references/changelog#13-6-6
v13.6.5
Changelog: https://docs.cypress.io/guides/references/changelog#13-6-5
v13.6.4
Changelog: https://docs.cypress.io/guides/references/changelog#13-6-4
v13.6.3
Changelog: https://docs.cypress.io/guides/references/changelog#13-6-3
v13.6.2
Changelog: https://docs.cypress.io/guides/references/changelog#13-6-2
v13.6.1
Changelog: https://docs.cypress.io/guides/references/changelog#13-6-1
v13.6.0
Changelog: https://docs.cypress.io/guides/references/changelog#13-6-0
v13.5.1
Changelog: https://docs.cypress.io/guides/references/changelog#13-5-1
v13.5.0
: v.13.5.0
Changelog: https://docs.cypress.io/guides/references/changelog#13-5-0
v13.4.0
Changelog: https://docs.cypress.io/guides/references/changelog#13-4-0
v13.3.3
Changelog: https://docs.cypress.io/guides/references/changelog#13-3-3
v13.3.2
Changelog: https://docs.cypress.io/guides/references/changelog#13-3-2
v13.3.1
Changelog: https://docs.cypress.io/guides/references/changelog#13-3-1
v13.3.0
Changelog: https://docs.cypress.io/guides/references/changelog#13-3-0
v13.2.0
Changelog: https://docs.cypress.io/guides/references/changelog#13-2-0
v13.1.0
Changelog: https://docs.cypress.io/guides/references/changelog#13-1-0
v13.0.0
Changelog: https://docs.cypress.io/guides/references/changelog#13-0-0
v12.17.4
Changelog: https://docs.cypress.io/guides/references/changelog#12-17-4
v12.17.3
Changelog: https://docs.cypress.io/guides/references/changelog#12-17-3
v12.17.2
Changelog: https://docs.cypress.io/guides/references/changelog#12-17-2
v12.17.1
Changelog: https://docs.cypress.io/guides/references/changelog#12-17-1
v12.17.0
Changelog: https://docs.cypress.io/guides/references/changelog#12-17-0
v12.16.0
Changelog: https://docs.cypress.io/guides/references/changelog#12-16-0
v12.15.0
Changelog: https://docs.cypress.io/guides/references/changelog#12-15-0
v12.14.0
Changelog: https://docs.cypress.io/guides/references/changelog#12-14-0
v12.13.0
Changelog: https://docs.cypress.io/guides/references/changelog#12-13-0
v12.12.0
Changelog: https://docs.cypress.io/guides/references/changelog#12-12-0
v12.11.0
Changelog: https://docs.cypress.io/guides/references/changelog#12-11-0
v12.10.0
Changelog: https://docs.cypress.io/guides/references/changelog#12-10-0
v12.9.0
Changelog: https://docs.cypress.io/guides/references/changelog#12-9-0
v12.8.1
Changelog: https://docs.cypress.io/guides/references/changelog#12-8-1
v12.8.0
Changelog: https://docs.cypress.io/guides/references/changelog#12.8.0
v12.7.0
Changelog: https://docs.cypress.io/guides/references/changelog#12.7.0
v12.6.0
Changelog: https://docs.cypress.io/guides/references/changelog#12.6.0
v12.5.1
Changelog: https://docs.cypress.io/guides/references/changelog#12-5-1
v12.5.0
Changelog: https://docs.cypress.io/guides/references/changelog#12-5-0
v12.4.1
Changelog: https://docs.cypress.io/guides/references/changelog#12-4-1
v12.4.0
Changelog: https://docs.cypress.io/guides/references/changelog#12-4-0
v12.3.0
Changelog: https://docs.cypress.io/guides/references/changelog#12-3-0
v12.2.0
Changelog: https://docs.cypress.io/guides/references/changelog#12-2-0
v12.1.0
Changelog: https://docs.cypress.io/guides/references/changelog#12-1-0
v12.0.2
Changelog: https://docs.cypress.io/guides/references/changelog#12-0-2
v12.0.1
Changelog: https://docs.cypress.io/guides/references/changelog#12-0-1
v12.0.0
Changelog: https://docs.cypress.io/guides/references/changelog#12-0-0
v11.2.0
Changelog: https://docs.cypress.io/guides/references/changelog#11-2-0
v11.1.0
Changelog: https://docs.cypress.io/guides/references/changelog#11-1-0
v11.0.1
Changelog: https://docs.cypress.io/guides/references/changelog#11-0-1
v11.0.0
Changelog: https://docs.cypress.io/guides/references/changelog#11-0-0
v10.11.0
Changelog: https://docs.cypress.io/guides/references/changelog#10-11-0
v10.10.0
Changelog: https://docs.cypress.io/guides/references/changelog#10-10-0
v10.9.0
Changelog: https://docs.cypress.io/guides/references/changelog#10-9-0
v10.8.0
Changelog: https://docs.cypress.io/guides/references/changelog#10-8-0
v10.7.0
Changelog: https://docs.cypress.io/guides/references/changelog#10-7-0
v10.6.0
Changelog: https://docs.cypress.io/guides/references/changelog#10-6-0
v10.5.0
Changelog: https://docs.cypress.io/guides/references/changelog#10-5-0
v10.4.0
Changelog: https://docs.cypress.io/guides/references/changelog#10-4-0
v10.3.1
Changelog: https://docs.cypress.io/guides/references/changelog#10-3-1
v10.3.0
Changelog: https://docs.cypress.io/guides/references/changelog#10-3-0
v10.2.0
Changelog: https://docs.cypress.io/guides/references/changelog#10-2-0
v10.1.0
Changelog: https://docs.cypress.io/guides/references/changelog#10-1-0
v10.0.3
Changelog: https://docs.cypress.io/guides/references/changelog#10-0-3
v10.0.2
Changelog: https://docs.cypress.io/guides/references/changelog#10-0-2
v10.0.1
Changelog: https://docs.cypress.io/guides/references/changelog#10-0-1
v10.0.0
Changelog: https://docs.cypress.io/guides/references/changelog#10-0-0
v9.7.0
Released 5/23/2022
Features:
- The Electron version and shipped Chromium browser version has been updated. Addressed in #21418.
Deprecations:
- The
Cypress.Cookies.preserveOnce()
andCypress.Cookies.defaults()
Cypress APIs have been deprecated. In a future release, support forCypress.Cookies.preserveOnce()
andCypress.Cookies.defaults()
will be removed. Consider using the experimentalcy.session()
command instead to cache and restore cookies and other sessions details between tests. Fixed #21333.
Bugfixes:
- Updated the
cy.contains()
command to correctly error and retry if the provided regex pattern begins with an equal sign and a match was not initially found. Previously the command would incorrectly fail with a syntax error. Fixed #21108. - Corrected the
cy.session()
command log grouping and validation verbiage. This change provides better insights to logs associated with the command. Fixed #21377. - Removed
eventemitter2
third-party type definitions fromcy
andCypress
that were unintentionally exposed. Fixed #20556.
Dependency Updates:
- Upgraded the bundled node version shipped with Cypress from
16.5.0
to16.13.2
. Addressed in #21418. - Upgraded the Chromium browser version used during
cypress run
and when selecting Electron browser incypress open
from94.0.4606.81
to100.0.4896.75
. Addressed in #21418. - Upgraded
electron
dependency from15.5.1
to18.0.4
. Addressed in #21418.
v9.6.1
: 9.6.1
Released 5/9/2022
Bugfixes:
- Cypress can now launch on systems where Firefox is installed via Snapcraft. Fixed #19793.
- Updates were made to ensure XHR calls are properly displaying the response body in the command log. Fixed #21361.
- Fixed
cy.contains()
and.should('contain', ...)
to handle finding text that contains backslash characters. Fixed #19116 - Updated
.type('{enter}')
to support sending the Enter keystroke to submit buttons that are not rendered within a form html element, but are associated with a form via theform
attribute. Fixed #21163. - Fixed an issue with
cy.session()
such that re-running tests in open mode will now correctly recreate a session. Before this change, an error was thrown indicating the savedsetup
function was not a function because it was serialized. Fixed #17805.
v9.6.0
: 9.6.0
Released 4/25/2022
Features:
- Now you can easily test multi-domain workflows by using the experimental
cy.origin()
command. This feature allows you to test across different origins or domains within a single test. This experiment was designed to work side-by-side with thecy.session()
experimental feature. You can turn on use of this command by setting theexperimentalSessionAndOrigin
configuration option totrue
. For more details, read our blog post. Addressed #17336 and #944.- Added a new configuration option called
experimentalSessionAndOrigin
. This option enables support forcy.session()
andcy.origin()
. - The
experimentalSessionSupport
configuration option has been removed and replaced by theexperimentalSessionAndOrigin
configuration option. Please update your configuration to use the newexperimentalSessionAndOrigin
option to continue to opt-in to this experimental feature. - When
experimentalSessionAndOrigin
is enabled, cross-origin requests will no longer immediately fail, but instead, time out based on thepageLoadTimeout
configuration. This allows the request to be appropriately handled by thecy.origin()
command. - When
experimentalSessionAndOrigin
is enabled, Cypress will no longer wait on page loads between hooks before moving on to the next test.
- Added a new configuration option called
Bugfixes:
- Fixed an issue with Firefox 98+ where the Enter keystroke was not being sent
to an input element when using
.type('{enter}')
. Fixed #21033. - We now verify if an interruption while running tests was signaled by the user or if it came from an error in a plugin before showing the error message. Fixed #21010.
- Improved the error message observed on Windows platforms when unzipping the Cypress binary and the max file length is exceeded. Fixed in #21047.
- Updated the
Cypress.Commands.add()
TypeScript types to better reflect the attributes of the.add()
utility and the JQuery element, a possible previous subject type. #20376.
Dependency Updates:
- Upgraded
electron
dependency from15.3.5
to15.5.1
to consume fixes related to improve performance on macOS Big Sur and later. Addressed #21068.
v9.5.4
: 9.5.4
Released 4/11/2022
Bugfixes:
- Updates were made to silence Electron warnings related to being unable to connect to dbus. These errors are normal and expected, and do not result in test failures. Because they are always present when running Electron inside docker containers, it has incorrectly led people to believe it is the root-cause of an error within their test run. By silencing these errors, it will improve the debug experience to allow users to focus on meaningful warning and error messages. Fixed #19299.
- Updates were made to ensure that all
*.enable
events are sent if Cypress becomes disconnected from the Chrome DevTools Protocol and must re-establish a connection to ensure all command logs are displayed to the user. This fixes an issue where some command logs, like download or network events, are missing once Cypress has disconnected and then reconnected to the Chrome DevTools Protocol. Fixed #20618. - Fixed an issue where
cy.type('{enter}')
was not sending the Enter key for Firefoxv98+
. This was not an issue with Firefoxv97
and below. Fixed #20562. - Fixed a regression in 9.3.0 where glob
patterns provided to the
--spec
CLI parameter was incorrectly splitting the patterns in unexpected places when it should have split on commas. Fixes #20794. - Fixed an issue with
cy.root()
to respect thetimeout
option passed to the command. Previously, when thetimeout
option was provided, it was ignored and the default timeout was used. Fixed #19985. - Updates were made to decrease the length of the Cypress cache path for Windows to ensure installing pre-release versions of the Cypress binary are within the maximum path length of 260 characters. Fixed in #20961.
- Fixed a regression in 8.6.0 which
prevented
.pause()
from correctly executing when passing the--headed --no-exit
CLI flags tocypress run
. Fixed #20745. - Fixed a regression in 9.2.0 which would
sometimes throw an expected error on navigation with
cy.back()
andcy.go()
. Fixed #19749 and #20539. - Corrected the Typescript type for a cookie which was incorrectly typed as
any
when the correct type isCookie
. Fixed in #20513. - Added the missing
Cypress.Command.addAll()
Typescript types. Fixed #18886. - Fixed an uncommon error observed in
cy.session()
where an error was thrown when no cookies had been set for the session and the user clicks the session command log to view additional details in the DevTools console. Fixed in #20946.
Misc:
- A minor visual update was made to the
cy.session()
command log visuals. Fixed #20433.
Dependency Updates:
- Upgraded
ansi-regex
dependency from4.1.0
to4.1.1
to address the CVE-2021-3807 NVD security vulnerability. Addressed in #20807. - Upgraded
plist
dependency from3.0.4
to3.0.5
to address the CVE-2022-22912 NVD security vulnerability. Addressed in #20808.
v9.5.3
: 9.5.3
Released 3/28/2022
Bugfixes:
- Corrected a logging issue with
cy.intercept()
where the response status code and response body were sometimes missing from the log details inopen
mode. Fixed #18757. - Fixed an issue in
cy.readFile()
where the command would not retry or provide a meaningful error message ifnull
encoding was used and the file was not found. Fixed #20683. - Updated the Cypress Keyboard shortcuts to only run the shortcut when the
pressed shortcut key was not used in conjunction with either the
alt
,ctrl
, orshift
modifier keys. This fixed an issue where the Cypress shortcut handler would override the browser native keyboard shortcut for search (ctrl + f
). Fixed #20222. - Updates were made to correctly escape dollar signs in the
CYPRESS_DOWNLOAD_PATH_TEMPLATE
environment variable. Issues were seen utilizing this template when the env was provided from a package manager file. Fixed #19914. - Fix the
Cypress.Buffer
TypeScript type to reference the static constructor ofBuffer
, instead of incorrectly referencing theBuffer
instance which caused Type errors. Fixes #20542.
Dependency Updates:
- Upgraded
electron
dependency from15.3.4
to15.3.5
to address the CVE-2022-21718 NVD security vulnerability. Addressed in #20750. - Upgraded
minimist
dependency from1.2.5
to1.2.6
. Addressed in #20756. - Upgraded
nanoid
dependency from3.1.20
to3.1.31
to address the CVE-2021-23566 NVD security vulnerability. Addressed in #20726. - Upgraded
node-forge
dependency from1.0.0
to1.3.0
to address the CVE-2022-24771 NVD security vulnerability. Addressed in #20727.
v9.5.2
: 9.5.2
Released 3/14/2022
Bugfixes:
- Fixed an issue with
.type()
where click events could be fired on the incorrect target element because the target focus changed within a key-down event handler callback. Fixed in #20525. - Fixed a regression in 9.5.0 where ANSI
colors were not removed from the FireFox warning message about the
chromeWebSecurity
configuration option having no effect on the Firefox browser. Fixes #20496. - Updates were made to the pre-release build setup such that Cypress will use a
unique cache folder for each
pre-release installation
on a machine. This removes the need to run
cypress clear cache
before installing a new pre-release version of Cypress or before installing a new released version of Cypress after a pre-release version had been installed. Addressed in #20296.
Misc:
- Updates were made to explicitly disable the
Origin-Agent-Cluster
header for proxied responses to ensuredocument.domain
can continue to be set with Chrome v106+. This was necessary because Chrome is planning to makedocument.domain
immutable in v106+ to relax the same-origin policy by interpreting theOrigin-Agent-Cluster
astrue
, whereas it is currently interpreted asfalse
. Addresses #20147.
Dependency Updates:
- Upgraded
url-parse
dependency from1.5.6
to1.5.9
to address these NVD security vulnerabilities, CVE-2022-0639, CVE-2022-0686 and CVE-2022-0691. Addressed in #20386 and #20439.
v9.5.1
: 9.5.1
Released 2/28/2022
Bugfixes:
- Added a
ready
event to the Plugins process to ensure all plugins have successfully started before the configuration is loaded and the tests start. Fixed in #19792.- This fixes an issue where the plugin is never executed and leaves Cypress stuck in the initialization phase, where the user can only view the loading spinner.
- This enables support for node's experimental
--loader
flag for plugins.
- Made a change to the DNS lookup to improve test performances and reliability on MacOS machines that leverage the VMWare CBCloud SaaS solution. Before this change, random test failures were observed, as well as hanging tests and initially pending HTTP and HTTPS responses. Fixed in #20062.
- Fixed a regression in 9.5.0 where ANSI
colors were not removed from the
cy.fixtures()
error code frame. Fixes #20208. - Fixed a regression in 9.5.0 where the test config override errors were formatted incorrectly. Fixes #20208.
- Fixed an issue where Cypress would throw an error when reporting or wrapping errors with booleans or numbers. Fixes #19561.
Dependency Updates:
- Upgraded
url-parse
dependency from1.5.2
to1.5.6
to avoid authorization bypass through user-controlled key to address this NVD security vulnerability. Addressed in #20270.
v9.5.0
: 9.5.0
Released 2/15/2022
Features:
- Enhancements were made to the error experience in both run mode and open mode to improve readability and provide meaningful stack traces. Addressed in #20124.
- Updated the
cy.request()
log message to hide the origin when it matched the browser origin to make debugging easier. This reduces the length of the log message that could be partially hidden if a long url is requested. Addressed in #20009. - Updates were made to log the
ShadowRoot
andDocument
elements as HTML elements. Previously these would be logged as enumerated objects, which were difficult to evaluate. Addressed in #20049. - Updated the terminal output generated in Cypress run mode to de-emphasis the
node
path in the run header. Addressed in #20120.
Bugfixes:
- Fixed an issue where files attached during
.selectFile()
could have the wrongFile
prototype. Fixes #20003. - Updated
.select()
to only dispatch thechange
andinput
events when the selected option is not the currently selected option. This change aligns.select()
with the browser. Fixes #19494. - Updated
.type(' ')
to align with the W3C standards where a click event should be dispatched when the Space key is pressed and the current focus is on a state-changing element with typebutton
,image
,submit
orreset
. Fixes #20067.
v9.4.1
: 9.4.1
Released 1/31/2022
Bugfixes:
- Fixed a regression in 9.4.0 where the line endings in the public NPM package prevented some users from running Cypress. Fixes #19986.
v9.4.0
: 9.4.0
Released 1/31/2022
Features
- Enhancements were made to
.selectFile()
after receiving feedback after its initial release in 9.3.0.- The default behavior was updated to automatically infer the mime type of files based on their extension to correctly encode file uploads. Addressed in #19751.
- Added the
mimeType
property so you can explicitly set the mime type on files using themimeType
property. Addressed in #19751. - Updated file contents types to allow either a
TypedArray
instance or aCypress.Buffer
instance, where previously file contents were expected to only be an instance ofCypress.Buffer
. Addressed in #19751. - Updated
.selectFile()
to retain the fileName of files read from disk to work with aliases. Addressed in #19803.
Bugfixes:
- Fixed a regression in 9.3.0 to correctly
parse the
--spec
CLI parameter for glob patterns containing a range. Fixes #19783. - Fixed regression in 9.2.1 where the
--openssl-legacy-provider
flag was not being passed to the plugins' child process when the user's system Node version was Node 17+ built with OpenSSL v3+ which resulted in Cypress crashing when trying to run tests. Fixes #19712. - Update
cy.type('{enter}')
to align with the W3C standards where a click event should be dispatched when the Enter key is pressed and the current focus is on astate-changing element with typebutton
,image
,submit
orreset
. Fixes #19541.
v9.3.1
: 9.3.1
Released 1/19/2022
Bugfixes:
- Fixed an issue where the bin file was released with windows line breaks. Fixes #19747.
v9.3.0
: 9.3.0
Released 1/18/2022
Features:
- Added a new Cypress command, called
.selectFile()
, to select a file or files in an HTML5 input element or simulate dragging a file or files into the browser. The API is similar tocypress-file-upload
and we have provided a migration guide for previous users of that plugin. For more details, see our blog post. Fixes #19524 and #170. - Exposed the
Buffer
polyfill, asCypress.Buffer
, to enable working with binary data. Addressed in #19524. - Added the
CYPRESS_DOWNLOAD_PATH_TEMPLATE
environment variable which can be set to a string template for building the download URL for the Cypress binary. This environment variable is useful for users who are downloading the Cypress binary from a proxy that is not one-to-one with the Cypress's default download url. More information can be found in the Install Binary documentation. Fixes #15697.
Bugfixes:
- Fixed an issue where the
--spec
CLI parameter was not working properly when passing multiple glob patterns that are separated by commas. Fixes #16102. - Fixed an issue with how the
CYPRESS_VERIFY_TIMEOUT
environment variable was read so it can set in a project'spackage.json
or it's.npmrc
. Fixes #19559.
Dependency Updates:
- Upgraded
graceful-fs
from4.2.0
to4.2.9
. This upgrade resolves issues observed with using graceful-fs v4.2.0 with resolve v1.21+. Addressed in #19676 and resolves #19610.-
NOTE: This upgrade to
graceful-fs
breaks Cypress's compatibility with Yarn 2. We have observed errors with Yarn 2.4.2 withgraceful-fs
4.2.9. Before this change, Cypress had minimal Yarn 2 support (see #6377). Between Yarn 3 fixing multiple bugs and the migration path from Yarn 2 to Yarn 3 being minimal, we felt the best step forward was to support and recommend Yarn 3 over Yarn 2.
-
NOTE: This upgrade to
- Upgraded
electron
from15.2.0
to15.3.4
. Addressed in #19351.
v9.2.1
: 9.2.1
Released 1/10/2022
Bugfixes:
- Fixed a regression in 9.2.0 to keep
Cypress open after each spec finishes when the
--headed --no-exit
flags are passed tocypress run
. Fixes #19485. - Improve heuristic for verifying when the
--openssl-legacy-provider
option should be passed to the plugins' child process when the system Node version is v17+. This prevents Cypress from crashing when a user has Node 17 installed which was built with OpenSSL v1. Fixes #19320. - Correctly cast the
CYPRESS_VERIFY_TIMEOUT
environment variable as a number so Cypress will no longer throwTypeError: Expected the timeout option to be a non-negative integer
. Fixes #19476.
Dependency Updates:
- Update pinned resolution of
cli-table3
from~0.6.0
to~0.6.1
to avoid problems with the bug introduced in the colors.js v1.4.44-liberty-2 release. Addresses #19624.
v9.2.0
: 9.2.0
Released 12/20/2021
Features:
- Cypress will throw an error when a user attempts to update a configuration
value at run-time using either the Test Configuration or using
Cypress.config()
that is a readonly option. Addresses #6407 and #19001. - A
timeout
option has been added to thecy.writeFile()
command, with a default value ofdefaultCommandTimeout
. Addresses #3350. - The default
maxHttpBufferSize
for the internal socket server has been increased to Node's maximum Buffer size (size varies by OS) to allow large file writes withcy.writeFile()
. Addresses #19140. - Add
CYPRESS_VERIFY_TIMEOUT
environment variable to override the timeout duration of theverify
command. Addresses #18290.
Bugfixes:
- Prevent unnecessary snapshotting when running default assertions that would
unnecessarily increase CPU use in
cypress open
mode which lead to out of memory crashes on certain browsers. Fixes #18549. - Removed automatic retries for failed HTTP requests through the proxy. This fixes an issue where failed requests could be re-sent too many times in some conditions. This change could increase the number of failed requests that your app sees. Fixes #19043.
- Reduced the occurrence of an issue where logs for
fetch
andxhr
requests could be associated with the wrong request. Fixes #19043. - Tests that are skipped within
then
blocks will no longer throw errors causing the test to fail. Tests that are skipped outside ofthen
blocks will no longer trigger the fail event. This will prevent screenshots from happening from errors thrown by the fail event.Fixes #14867 and #17660. - Fixed a regression in 9.0.0 where a
fixture provided in a static response to
cy.intercept()
did not support passingnull
to encoding to read the fixture as a Buffer. This identified an undocumented 9.0.0 Breaking Change where the default read behavior of a fixture changed from a Buffer to being read withutf8
encoding. Fixes #19344. - Fixed a regression in 9.0.0 where
cy.contains()
attempted to ignore<script>
and<style>
elements found within<body>
. by deleting them from the dom. This behavior was corrected to ignore the elements without deleting them. Fixes #19377. - Cypress will no longer crash when proxying an ill formed request. For example,
if the application under test has a resource of
"http: //localhost/asset.js"
(notice the extraneous space), Cypress will now log a debug message and the asset will fail to load. Fixes #9220. - Correct
Cypress.Command.add()
andCypress.Command.override()
TypeScript types. Fixes #18879, #19095 and #18940.- Custom command implementations typings take into account
prevSubject
variants. - Custom command implementations now allows to NOT return a value.
- Custom command overwrites typings take into account
originalFn
function.
- Custom command implementations typings take into account
- Add types for
Cypress.session.clearAllSavedSessions()
. Fixes #19363.
Dependencies:
- Upgraded
ssri
from6.0.1
to6.0.2
to mitigate ssri vulnerability. Addressed in #19351.
v9.1.1
: 9.1.1
Released 12/03/2021
Bugfixes:
- Fixed a regression in 9.1.0 where our
built binary didn't contain patches to some dependencies. Addressed in
#19239. This fixed some
issues including:
- Requests containing
~
will no longer be improperly encoded. Fixes #19083, #19084, #19115, #19096, #19178. - A TypeError displaying
data.hasOwnProperty is not a function
will no longer throw in some situations. Fixes #19091. - Empty extra hooks will no longer be sent as data when recording to the Dashboard. Fixes #19087.
- The Runner hanging when baseUrl is set to null to load a local file. Fixes #19105
- Requests containing
- When using the default configuration of
"nodeVersion": "system"
with an installed system node >=17, Cypress will now work properly rather than throw an error incorrectly pointing to the user's plugin file. Fixes #18914. - Shadow DOM elements no longer error as hidden during actionability when the element is covered by its parent shadow root. Fixes #18008.
- When using
.type()
events now correctly propagate out of the shadow DOM. Fixes #17531. - The
this
context is now properly preserved when overwritingcy.clock()
. Fixes #19158.
Dependencies:
- Upgraded
@cypress/request
from2.88.7
to2.88.10
. Addressed in #19099.
v9.1.0
: 9.1.0
Released 11/22/2021
Features:
- A
CYPRESS
environment variable will be set to true in child processes where Cypress runs user code in Node.js. You can now detect that you're running in Cypress by looking forprocess.env.CYPRESS
. Addresses #18805.
Bugfixes:
- Specs with % in the filename will no longer fail to load and now behave as any other spec. Fixes #18871.
- When using the Selector Playground, the HTML attribute's value will be wrapped in double-quotes. Fixes #1884.
- The call count is now shown in the Command Log when using
cy.stub().log(false)
. Fixes #18907. - The warning message for retrying connection to a browser has been improved to indicate when it is still waiting. Fixes #18644.
- Cypress commands that rely on
this
context now have access tothis
when overridden. Fixes #18899.
v9.0.0
: 9.0.0
Released 11/10/2021
Breaking Changes:
- The
nodeVersion
configuration option now defaults tosystem
. The behavior of thesystem
option has changed to always use the Node.js binary/version that launched Cypress. If Cypress was not launched via the terminal, Cypress will use thebundled
Node.js version. This could change the behavior of code within yourpluginsFile
since it may be run in yoursystem
Node.js version. Addresses #18684. - Windows 32-bit is no longer supported in Cypress. Addresses #17962.
- An error will now be thrown if an invalid value is passed to
Cypress.config
. Previously invalid values were ignored and could cause unexpected behavior. Addresses #18589. -
cy.contains()
no longer yields the<body>
element when it matches the content of<script>
or<style>
tags. Addresses #14861. - Attempting to add an existing built-in Cypress command using
Cypress.Commands.add()
will now throw an error, indicating thatCypress.Commands.overwrite()
should be used instead to overwrite the behavior of existing commands. Addresses #18572. - Custom command implementations are now typed based on the declared custom chainables. Addresses #17496.
- The bundled Node.js version was upgraded from
14.17.0
to16.5.0
. This could change the behavior of code within thepluginsFile
when using the bundled Node.js version of Cypress. Addressed in #18317.
Deprecations:
- The
nodeVersion
configuration option has been deprecated and will be removed in a future release.
Features:
- When
null
is passed as the encoding tocy.readFile()
orcy.fixture()
, the file is treated as binary and read as a Buffer. Similarly,null
passed as the encoding tocy.writeFile()
allows direct writing of buffers. If the encoding is unspecified, the default remainsutf8
, matching the current behavior. Addresses #18534.
Bugfixes:
- Sticky elements within a fixed container will now be able to be properly scrolled to during action commands. Fixes #4233.
-
document.referrer
will now correctly reflect the correct value from the application under test aftercy.visit()
. Fixes #4295.
Dependencies:
Configuration
-
If you want to rebase/retry this MR, check this box
This MR has been generated by Renovate Bot.