build: update dependency cypress to v8 - autoclosed
This MR contains the following updates:
Package | Change | Age | Adoption | Passing | Confidence |
---|---|---|---|---|---|
cypress | 7.6.0 -> 8.7.0 |
Release Notes
cypress-io/cypress
v8.7.0
Released 10/25/2021
Features:
- There are changes to how "slow" tests are determined and displayed in Cypress.
Addresses #18496.
- Added a
slowTestThreshold
configuration option to customize when tests are considered "slow" duringcypress run
. A test that runs slower than the given threshold will display in orange text in the default 'spec' reporter. This configuration can be set in your Cypress config file or via specific test configuration. - The default slow test threshold was changed from 75ms (Mocha's default) to
10000ms for e2e tests and 250ms for component tests. To restore the old
behavior, you can add
"slowTestThreshold": 75
to your Cypress config file. - All tests will show the time the test ran in milliseconds during
cypress run
with the default 'spec' reporter.
- Added a
- Users can pass an
overwrite: true
option toCypress.Screenshot.defaults
to change default behavior to overwrite existing screenshots without having to setoverwrite
for eachcy.screenshot()
command. Addresses #7955.
Bugfixes:
- Fixed a regression introduced in 8.6.0 where videos recorded in Electron to the Dashboard were not playable in the Firefox or Safari browser and were not compatible with QuickTime player in MacOS.
- Fixed a regression introduced in 8.6.0 so that the warning about the
projectRoot
directory not being writeable will now display correctly. Fixes #18485. - Improved the error message when running Cypress without non-root permissions. Fixes #18445.
- An error now throws when invalid options are passed to the
selectorPriority
configuration option ofCypress.SelectorPlayground.defaults
. Valid values aredata-*
,id
,class
,tag
,attribute
, ornth-child
. Fixes #7745.
Dependency Updates:
- Pinned resolution of
ua-parser-js
to0.7.24
to avoid dependency resolution to the compromised package versions. Please read the security advisory and take actions advised as soon as possible. Addressed in #18611
v8.6.0
Released 10/11/2021
Features:
-
cy.screenshot()
now acceptsoverwrite: true
as an option to overwrite existing screenshots with the same file name. Addresses #7955. -
cy.select([])
can now be used to clear any selected options in a multi-value select. Addresses #4318. - Using
cy.pause()
when usingcypress run --headed --no-exit
will now pause a test. Addresses #4044.
Bugfixes:
- Fixed a regression introduced in 8.2.0 where certain XMLHttpRequests would not display their response bodies in the DevTools Console when clicked. Fixes #17656.
- Fixed a regression in 8.3.0 where capturing videos in Chrome versions earlier than 89 would result in choppy videos and skipped frames. Fixes #18021.
- Cypress displays the correct error when certain custom error types are thrown within a test. Fixes #18259.
- The Cypress App will no longer crash when passed a
--spec: {}
from the CLI and instead error when passed an invalid object argument. Fixes #3957. - Logging a plain object no longer results in the error "Cannot convert object to primitive value". Fixes #18143.
Misc:
- Updated the
cy.request()
error message when conflictingfailOnStatusCode
andretryOnStatusCodeFailure
options are passed to be clearer. Fixes #18271.
Dependency Updates:
- Upgraded the Chromium browser version used during
cypress run
and when selecting Electron browser incypress open
from91.0.4472.164
to93.0.4577.58
. - Upgraded
electron
from13.2.0
to14.1.0
. Addressed in #18318 and #18384.
v8.5.0
Released 09/27/2021
Features:
- You can now select an option by index within the
.select()
command. Addresses #757. - Cypress now captures the repository URL on Drone CI. Addresses #18210.
Bugfixes:
- The download of Cypress now respects the
NO_MROXY
environment variable when one is set. Fixes #17702. - When using a custom config file and setting it up to record to the Dashboard,
Cypress now writes the
projectId
in the custom config file instead ofcypress.json
. Fixes #5747.
Misc:
- Windows 32-bit has been deprecated and support will be removed in a later release. A deprecation warning will now display when using Cypress in a Windows 32-bit OS. See #17962 for more detail. Addresses #18094.
- Improved the error messages when an invalid argument type is passed to the
.select()
command. Addressed in #18234.
v8.4.1
Released 09/17/2021
Bugfixes:
- Cypress will no longer crash when setting up a project to record to the Dashboard or viewing the runs or record key for a previously set up project. Fixes #18129.
- The branch collected for Drone CI now correctly reflects the source MR branch for showing in the Cypress Dashboard. Fixes #17860.
v8.4.0
Released 09/13/2021
Features:
- When the URL contains non-ASCII characters, you can use the new
decode
option ofcy.url()
to decode it. Addresses #17399.
Bugfixes:
- Cypress now better handles situations where the extension was installed in a read-only location. Fixes #3852.
- A clearer error message is now thrown for
.check()
or.uncheck()
when there are no matching value attributes found. Fixes#7379. - Hooks will no longer rerun on unrelated tests in some situations after a domain navigation. Fixes #17705.
-
clientCertificate
types have been added for the Cypress configuration. Fixes #17799.
v8.3.1
Released 08/27/2021
Performance:
- Projects will now open much faster on MacOS Big Sur with improved browser detection performance. Fixes #17773.
Bugfixes:
- Fixed a regression in 8.3.0 where the
correct exit code would not be issued during
cypress run-ct
while running in the Electron browser. Fixes #17752 and #17885. - Fixed a regression in 8.3.0 where
Cypress would cause a
SIGSEGV
error on Mac when closing the Cypress app opened viacypress open
. Fixes #17766. - The
beforeinput
event now correctly fires in Firefox during keyboard events. Fixes #17583.
Misc:
-
cy.document()
typings now allow for thetimeout
option. Fixes #17695. -
cy.title()
typings now allow for thetimeout
option. Fixes #17781
Dependency Updates:
- Upgraded
electron
from13.1.7
to13.2.0
. Addressed in #17772. - Upgraded
@cypress/request
from2.88.5
to2.88.6
. Addresses #17622.
v8.3.0
Released 08/16/2021
Features:
- The instructions for recording a run have been updated for some users. Addressed in #17317.
Performance:
- We addressed an issue that increased CPU usage during video recording in Chrome 89+/Electron 12+. Fixes #16152.
- Fixed a regression in 7.2.0 that would
cause
cy.visit()
to take longer to fire its load event in some circumstances. Fixes #16671.
Bugfixes:
- Fixed an issue that could cause intermittent OpenSSL errors when the local CA cert cache becomes corrupted. Fixes #8705.
- Fixed a regression in 7.2.0 causing the menu bar of Cypress to not be clickable in Windows. Fixes #16323.
-
res.send
ofcy.intercept()
will no longer override JSON-related content types. Fixes #17084. - The
times
option ofcy.intercept
now works properly withreq.reply
. Fixes #17139. - Fixed a regression in 8.0.0 where
Cypress would always warn that
chromeWebSecurity
is set to "false" when it wasn't. Fixes #17614.
Dependency Updates:
- Upgraded Chrome browser version used during
cypress run
and when selecting Electron browser incypress open
from89
to91
. Addressed in #17408. - Upgraded bundled Node.js version from
14.6.0
to14.17.0
. Addressed in #17408. - Upgraded
electron
from12.0.0-beta.14
to13.1.7
. Addressed in #17408. - Upgraded
url-parse
from1.5.1
to1.5.2
. Addressed in #17719.
v8.2.0
Released 08/04/2021
Features:
- You can now cache and restore cookies,
localStorage
, andsessionStorage
in order to reduce test setup times by usingcy.session()
. Thesession
API is experimental and can be enabled by setting theexperimentalSessionSupport
flag totrue
in your Cypress config. See our blog and thecy.session()
doc for more detail. - The logging experience around HTTP requests has been updated.
-
fetch
requests are always displayed in the Command Log, regardless of ifexperimentalFetchSupport
is enabled. - Duplicate logs for XHRs, fetches, and
cy.intercept()
have been consolidated - Fixes #14843. - The user experience around the information displayed in the console when
clicking on
cy.intercept()
request logs has been improved. - Request logs now indicate if a request has gone to the origin or if it has been stubbed by displaying a filled or empty circle in the request log.
- Request logs now display information about if the request and/or response
was modified by a
cy.intercept()
. - The tooltip displayed when mousing over a request log now displays
information about the matched
cy.intercept()
/cy.route()
rules. - Fixed an issue where pending request logs were not ended between tests. Fixes #14655.
-
- There's now a
Cypress.currentTest
property to access name the currently executing test viaCypress.currentTest.title
andCypress.currentTest.titlePath
. Addresses #2972.
Bugfixes:
- A "removing cookie failed" error will no longer throw when cookies are cleared in Firefox. Fixes #6375.
- Cypress no longer throws the error "cannot read property split of undefined" in certain circumstances when application errors are thrown. Fixes #17378.
- Cypress now properly runs the final test when nested in a suite with a
before
hook. Fixes #9026. - Fixed a regression in 8.0.0 where an
error would longer throw when there is no
/etc/passwd
entry for the current user, such as in some Docker and GitHub Action setups. Fixes #17415. - Cypress now throws if a function is incorrectly passed as the second argument
to
cy.wait()
. Fixes #17436.
v8.1.0
Released 07/29/2021
Features:
- When using
experimentalStudio
, you can now generate assertions in Cypress Studio by right clicking on an element. Addressed in #16295. - When searching specs in the Test Runner during end-to-end testing, characters that are not letters will be ignored and don't have to be typed. Addressed in #17346.
Performance:
- The Test Runner's performance has been improved when running a large number of commands within a single test. Fixes #6783.
Bugfixes:
- Add Yarn v2 pnp support to our default webpack processor. Fixes #8008 and #16111.
- When running Cypress in global mode, an error will no longer be thrown when trying to add a new project to the Dashboard. Addressed in #17514.
- The Test Runner will no longer crash in some instances when creating a new spec file from the GUI. #17430.
v8.0.0
Released 07/19/2021
Summary:
We've made some updates to ensure a consistent run experience across browsers.
Now all browsers run via cypress run
run headlessly, with a device pixel ratio
of 1, and a screen size of 1280x720 by default.
Breaking Changes:
Please read our Migration Guide which explains the changes in more detail and how to change your code to migrate to Cypress 8.0.
- When running
cypress run
previous to 8.0, some browsers would launch headed while others were launched headless by default. Cypress now runs all browsers duringcypress run
as headless by default. Addresses #16832. - The default screen size when running a headless browser has been reverted back to 1280x720 pixels (pre 7.0 behavior). Addresses #16853.
- When running the
--headless
Chrome browser viacypress run
, the device pixel ratio will now be 1 by default, matching the behavior of all other browsers. This behavior can be overridden through the browser launch API. Addresses #17375. - Cypress now enforces version checks for browser launching and will error
during
cypress run
and not allow opening the browser incypress open
when attempting to open unsupported browser versions. Cypress supports Chrome >= 64, Firefox >= 86, and Edge >= 79. Addressed in #17355. - Arguments returned from a chained function will no longer incorrectly be of
type
jQuery
and instead have anany
type. Fixes #16669. - The
Cypress.ConfigOptions
,Cypress.ResolvedConfigOptions
andCypress.RuntimeConfigOption
types have been updated so thatConfigOptions
match the JSON schema. Addressed in #17251.
Features:
- You can now configure certificate authority (CA) and client certificates to
use within tests on a per-URL basis via a
clientCertificates
configuration option. See Client certificates for more detail. - Setting the environment variable
ELECTRON_RUN_AS_NODE
now starts Cypress as a normal Node.js process rather than an Electron process. See Running headless tests without Xvfb for more details. Addresses #16505.
Bugfixes:
-
console.log
andconsole.error
called within the plugins file will now be captured in thestdout
sent to the Cypress Dashboard, making it visible in Output logs in the Dashboard. Fixes #7434. - There are several fixes for
cy.intercept()
including: - When using the experimental Cypress Studio, there should be a reduced occurrence of "Studio failed to save commands" error messages. Fixes #14767.
-
cy.invoke()
now retains the properthis
context on nested object methods. Fixes #3871. - We no longer trigger unnecessary snapshot re-renders when hovering over the Command Log. Fixes #17257.
v7.7.0
Released 07/07/2021
Features:
- When using
experimentalStudio
, Cypress Studio can now copy all commands generated to your clipboard. Addressed in #16912.
Bugfixes:
- Cypress now respects
preventScroll
options passed toelement.focus()
calls within the application under test. Fixes #15294. - Using
.contains(0)
will now show the zero in the Command Log. Fixes #1119. - Cypress will no longer show a warning about allowed keys for the
showedOnBoardingModal
when runningcypress open
. Fixes #17095. - The Cypress Studio introduction modal will now display with the correct styling. Fixes #17102.
- The types for
.contains()
now correctly allow for theincludeShadowDom
option. Fixes #17066.
Misc:
- We updated the messaging when Cypress fails to start to be clearer that it's not always due to a dependency missing. Addresses #17112.
Configuration
-
If you want to rebase/retry this MR, click this checkbox.
This MR has been generated by Renovate Bot.