Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
^5.6.0
->^9.2.0
Release Notes
cypress-io/cypress
v9.2.0
Compare Source
Released 12/20/2021
Features:
value at run-time using either the Test Configuration or using
Cypress.config()
that is areadonly option.
Addresses #6407 and
#19001.
timeout
option has been added to thecy.writeFile()
command, with adefault value of
defaultCommandTimeout
. Addresses#3350.
maxHttpBufferSize
for the internal socket server has beenincreased to
Node's maximum Buffer size
(size varies by OS) to allow large file writes with
cy.writeFile()
.Addresses #19140.
CYPRESS_VERIFY_TIMEOUT
environment variable to override the timeoutduration of the
verify
command. Addresses#18290.
Bugfixes:
unnecessarily increase CPU use in
cypress open
mode which lead to out ofmemory crashes on certain browsers. Fixes
#18549.
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.
fetch
andxhr
requestscould be associated with the wrong request. Fixes
#19043.
then
blocks will no longer throw errorscausing the test to fail. Tests that are skipped outside of
then
blocks willno longer trigger the fail event. This will prevent screenshots from happening
from errors thrown by the fail event.Fixes
#14867 and
#17660.
fixture provided in a static response to
cy.intercept()
did not supportpassing
null
to encoding to read the fixture as a Buffer. This identified anundocumented 9.0.0 Breaking Change where the default read behavior of a
fixture changed from a Buffer to being read with
utf8
encoding. Fixes#19344.
cy.contains()
attempted to ignore<script>
and<style>
elements foundwithin
<body>
. by deleting them from the dom. This behavior was corrected toignore the elements without deleting them. Fixes
#19377.
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.
Cypress.Command.add()
andCypress.Command.override()
TypeScripttypes. Fixes #18879,
#19095 and
#18940.
prevSubject
variants.
originalFn
function.Cypress.session.clearAllSavedSessions()
. Fixes#19363.
Dependencies:
ssri
from6.0.1
to6.0.2
to mitigatessri vulnerability. Addressed in
#19351.
v9.1.1
Compare Source
Released 12/03/2021
Bugfixes:
built binary didn't contain patches to some dependencies. Addressed in
#19239. This fixed some
issues including:
~
will no longer be improperly encoded. Fixes#19083,
#19084,
#19115,
#19096,
#19178.
data.hasOwnProperty is not a function
will nolonger throw in some situations. Fixes
#19091.
Dashboard. Fixes
#19087.
#19105
"nodeVersion": "system"
with aninstalled system node >=17, Cypress will now work properly rather than throw
an error incorrectly pointing to the user's plugin file. Fixes
#18914.
element is covered by its parent shadow root. Fixes
#18008.
.type()
events now correctly propagate out of the shadow DOM.Fixes #17531.
this
context is now properly preserved when overwritingcy.clock()
.Fixes #19158.
Dependencies:
@cypress/request
from2.88.7
to2.88.10
. Addressed in#19099.
v9.1.0
Compare Source
Released 11/22/2021
Features:
CYPRESS
environment variable will be set to true in child processes whereCypress runs user code in Node.js. You can now detect that you're running in
Cypress by looking for
process.env.CYPRESS
. Addresses#18805.
Bugfixes:
other spec. Fixes
#18871.
in double-quotes. Fixes
#1884.
cy.stub().log(false)
. Fixes#18907.
indicate when it is still waiting. Fixes
#18644.
this
context now have access tothis
whenoverridden. Fixes #18899.
v9.0.0
Compare Source
Released 11/10/2021
Breaking Changes:
nodeVersion
configuration option now defaults tosystem
. The behaviorof the
system
option has changed to always use the Node.js binary/versionthat launched Cypress. If Cypress was not launched via the terminal, Cypress
will use the
bundled
Node.js version. This could change the behavior of codewithin your
pluginsFile
since it may be run in yoursystem
Node.jsversion. Addresses
#18684.
#17962.
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 thecontent of
<script>
or<style>
tags. Addresses#14861.
Cypress.Commands.add()
will now throw an error, indicating thatCypress.Commands.overwrite()
should be used instead to overwrite thebehavior of existing commands. Addresses
#18572.
chainables. Addresses
#17496.
14.17.0
to16.5.0
. Thiscould change the behavior of code within the
pluginsFile
when using thebundled Node.js version of Cypress. Addressed in
#18317.
Deprecations:
nodeVersion
configuration option has been deprecated and will be removedin a future release.
Features:
null
is passed as the encoding tocy.readFile()
orcy.fixture()
,the file is treated as binary and read as a Buffer. Similarly,
null
passedas the encoding to
cy.writeFile()
allows direct writing of buffers. If theencoding is unspecified, the default remains
utf8
, matching the currentbehavior. Addresses
#18534.
Bugfixes:
scrolled to during action commands. Fixes
#4233.
document.referrer
will now correctly reflect the correct value from theapplication under test after
cy.visit()
. Fixes#4295.
Dependencies:
cypress run
and when selectingElectron browser in
cypress open
from91
to94
. Addressed in#15292.
14.17.0
to16.5.0
. Addressed in#15292.
electron
from14.1.0
to15.2.0
. Addressed in#15292.
v8.7.0
Compare Source
Released 10/25/2021
Features:
Addresses #18496.
slowTestThreshold
configuration option to customize when tests are considered "slow" during
cypress run
. A test that runs slower than the given threshold will displayin orange text in the default 'spec' reporter. This configuration can be set
in your Cypress config file or via specific
test configuration.
10000ms for e2e tests and 250ms for component tests. To restore the old
behavior, you can add
"slowTestThreshold": 75
to your Cypress config file.cypress run
with the default 'spec' reporter.overwrite: true
option toCypress.Screenshot.defaults
tochange default behavior to overwrite existing screenshots without having to
set
overwrite
for eachcy.screenshot()
command. Addresses#7955.
Bugfixes:
Electron to the Dashboard were not playable in the Firefox or Safari browser
and were not compatible with QuickTime player in MacOS.
projectRoot
directory not being writeable will now display correctly. Fixes#18485.
Fixes #18445.
selectorPriority
configuration option of
Cypress.SelectorPlayground.defaults
. Valid valuesare
data-*
,id
,class
,tag
,attribute
, ornth-child
. Fixes#7745.
Dependency Updates:
ua-parser-js
to0.7.24
to avoid dependency resolutionto the compromised package versions. Please read the
security advisory and
take actions advised as soon as possible. Addressed in
#18611
v8.6.0
Compare Source
Released 10/11/2021
Features:
cy.screenshot()
now acceptsoverwrite: true
as an option to overwriteexisting screenshots with the same file name. Addresses
#7955.
cy.select([])
can now be used to clear any selected options in a multi-valueselect. Addresses #4318.
cy.pause()
when usingcypress run --headed --no-exit
will now pausea test. Addresses #4044.
Bugfixes:
would not display their response bodies in the DevTools Console when clicked.
Fixes #17656.
versions earlier than 89 would result in choppy videos and skipped frames.
Fixes #18021.
within a test. Fixes
#18259.
--spec: {}
from the CLIand instead error when passed an invalid object argument. Fixes
#3957.
to primitive value". Fixes #18143.
Misc:
cy.request()
error message when conflictingfailOnStatusCode
and
retryOnStatusCodeFailure
options are passed to be clearer. Fixes#18271.
Dependency Updates:
cypress run
and whenselecting Electron browser in
cypress open
from91.0.4472.164
to93.0.4577.58
.electron
from13.2.0
to14.1.0
. Addressed in#18318 and
#18384.
v8.5.0
Compare Source
Released 09/27/2021
Features:
.select()
command. Addresses#757.
#18210.
Bugfixes:
NO_PROXY
environment variable whenone is set. Fixes
#17702.
Cypress now writes the
projectId
in the custom config file instead ofcypress.json
. Fixes#5747.
Misc:
release. A deprecation warning will now display when using Cypress in a
Windows 32-bit OS. See
#17962 for more detail.
Addresses #18094.
.select()
command. Addressed in #18234.v8.4.1
Compare Source
Released 09/17/2021
Bugfixes:
Dashboard or viewing the runs or record key for a previously set up project.
Fixes #18129.
for showing in the Cypress Dashboard. Fixes
#17860.
v8.4.0
Compare Source
Released 09/13/2021
Features:
decode
option of
cy.url()
to decode it. Addresses#17399.
Bugfixes:
read-only location. Fixes
#3852.
.check()
or.uncheck()
whenthere are no matching value attributes found.
Fixes#7379.
domain navigation. Fixes
#17705.
clientCertificate
types have been added for the Cypress configuration. Fixes#17799.
v8.3.1
Compare Source
Released 08/27/2021
Performance:
detection performance. Fixes
#17773.
Bugfixes:
correct exit code would not be issued during
cypress run-ct
while running inthe Electron browser. Fixes
#17752 and
#17885.
Cypress would cause a
SIGSEGV
error on Mac when closing the Cypress appopened via
cypress open
. Fixes#17766.
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:
electron
from13.1.7
to13.2.0
. Addressed in#17772.
@cypress/request
from2.88.5
to2.88.6
. Addresses#17622.
v8.3.0
Compare Source
Released 08/16/2021
Features:
Addressed in #17317.
Performance:
Chrome 89+/Electron 12+. Fixes
#16152.
cause
cy.visit()
to take longer to fire its load event in somecircumstances. Fixes
#16671.
Bugfixes:
cert cache becomes corrupted. Fixes
#8705.
menu bar of Cypress to not be clickable in Windows. Fixes
#16323.
res.send
ofcy.intercept()
will no longer override JSON-related contenttypes. Fixes #17084.
times
option ofcy.intercept
now works properly withreq.reply
.Fixes #17139.
Cypress would always warn that
chromeWebSecurity
is set to "false" when itwasn't. Fixes #17614.
Dependency Updates:
cypress run
and when selectingElectron browser in
cypress open
from89
to91
. Addressed in#17408.
14.6.0
to14.17.0
. Addressed in#17408.
electron
from12.0.0-beta.14
to13.1.7
. Addressed in#17408.
url-parse
from1.5.1
to1.5.2
. Addressed in#17719.
v8.2.0
Compare Source
Released 08/04/2021
Features:
localStorage
,and
sessionStorage
in order to reduce test setup times by using
cy.session()
. Thesession
API is experimental andcan be enabled by setting the
experimentalSessionSupport
flag totrue
in your Cypress config. See
our blog
and the
cy.session()
doc for more detail.fetch
requests are always displayed in the Command Log, regardless of ifexperimentalFetchSupport
is enabled.cy.intercept()
have beenconsolidated - Fixes
#14843.
clicking on
cy.intercept()
request logs has been improved.been stubbed by displaying a filled or empty circle in the request log.
was modified by a
cy.intercept()
.information about the matched
cy.intercept()
/cy.route()
rules.Fixes #14655.
Cypress.currentTest
property to access name the currentlyexecuting test via
Cypress.currentTest.title
andCypress.currentTest.titlePath
. Addresses#2972.
Bugfixes:
in Firefox. Fixes #6375.
in certain circumstances when application errors are thrown. Fixes
#17378.
before
hook. Fixes#9026.
error would longer throw when there is no
/etc/passwd
entry for the currentuser, such as in some Docker and GitHub Action setups. Fixes
#17415.
to
cy.wait()
. Fixes#17436.
v8.1.0
Compare Source
Released 07/29/2021
Features:
experimentalStudio
, you can now generate assertions inCypress Studio by right clicking on an
element. Addressed in
#16295.
that are not letters will be ignored and don't have to be typed. Addressed in
#17346.
Performance:
commands within a single test. Fixes
#6783.
Bugfixes:
#8008 and
#16111.
trying to add a new project to the Dashboard. Addressed in
#17514.
spec file from the GUI.
#17430.
v8.0.0
Compare Source
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 ratioof 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.
cypress run
previous to 8.0, some browsers would launch headedwhile others were launched headless by default. Cypress now runs all browsers
during
cypress run
as headless by default. Addresses#16832.
to 1280x720 pixels (pre 7.0 behavior). Addresses
#16853.
--headless
Chrome browser viacypress run
, the devicepixel 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.
during
cypress run
and not allow opening the browser incypress open
whenattempting to open unsupported browser versions. Cypress supports Chrome >=
64, Firefox >= 86, and Edge >= 79. Addressed in
#17355.
type
jQuery
and instead have anany
type. Fixes#16669.
Cypress.ConfigOptions
,Cypress.ResolvedConfigOptions
andCypress.RuntimeConfigOption
types have been updated so thatConfigOptions
match the JSON schema. Addressed in
#17251.
Features:
use within tests on a per-URL basis via a
clientCertificates
configurationoption. See Client certificates for
more detail.
ELECTRON_RUN_AS_NODE
now starts Cypress asa 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 theplugins file
will now be captured in the
stdout
sent to the Cypress Dashboard, making itvisible in Output logs in the Dashboard. Fixes
#7434.
cy.intercept()
including:
times
option now works correctly withreq.continue
. Fixes#16821.
localhost
is now accepted as a validhostname
in theRouteMatcher
.Fixes #17015.
delay
now works correctly with astatusCode
of 204. Fixes#15188.
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 onnested object methods. Fixes
#3871.
Command Log. Fixes
#17257.
v7.7.0
Compare Source
Released 07/07/2021
Features:
experimentalStudio
, Cypress Studio can now copy all commands generated to your clipboard. Addressed in #16912.Bugfixes:
preventScroll
options passed toelement.focus()
calls within the application under test. Fixes #15294..contains(0)
will now show the zero in the Command Log. Fixes #1119.showedOnBoardingModal
when runningcypress open
. Fixes #17095..contains()
now correctly allow for theincludeShadowDom
option. Fixes #17066.Misc:
v7.6.0
Compare Source
Released 06/23/2021
Features:
.type()
withCypress.Keyboard.defaults()
or via test configuration. Addresses #566.cypress open
has been improved. Addressed in #15826.cy.intercept()
(req
) now has areq.query
property, which is a getter/setter for the query parameters on the request URL. Addresses #16327.ArrayBuffer
as a request / response body withcy.intercept()
. Addresses #16722Bugfixes:
dev-server:start
event for component testing. Fixes #16860.cy.intercept()
now correctly sets the response body as a string instead of an ArrayBuffer when it contains multi-byte characters. Fixes #16292.cy.intercept()
won't corrupt certain binary responses. Fixes #16722.spawn UNKNOWN
errors when launching Cypress with code signing required by policy on Windows. Fixes #2543EPERM
errors when accessing the project directory instead of erroring. Fixes #16933.CyHttpMessages.BaseMessage.headers
to support the value being an array of strings. Fixes #16734.Dependency Updates:
enquirer
dependency. Fixes #16846.v7.5.0
Compare Source
Released 06/07/2021
Features:
cy.request()
now accepts a generic in TypeScript for specifying the type of the request body. Addresses #9109.Bugfixes:
hasBinary
infinite recursive call. Fixes #16476.--config-file
option now correctly handles absolute paths. Fixes #6136.cy.location(<key>)
will now retry if the remote location returns an empty string, which is possible during otherwise harmless redirects. Fixes #16463.<value>.should()
syntax. Fixes #16548.Dependency Updates:
listr
withlistr2
. Addressed in #16663.v7.4.0
Compare Source
Released 05/24/2021
Features:
.pause()
and to toggle auto-scrolling of the Test Runner (a). Addresses #248.Bugfixes:
cy.request()
can now send binary files in form data. Fixes #1647.cy.request()
can now send blob data. Fixes #6178.cy.wait()
could yield the incorrect result when used withcy.intercept()
and several simultaneous requests. Fixes #16451.cy.intercept()
matchers are displayed in the Command Log when usingRouteMatcher
properties besidesurl
andmethod
. Fixes #9403.cy.intercept()
argument validation has been improved. Invalid hostnames and extra arguments passed tocy.intercept()
now result in an error. Addressed in #16577.cy.screenshot()
no longer incorrectly captures parts of the Test Runner UI during component testing. Fixes #16543.cypress open-ct
. Fixes #16278.componentFolder
andtestFiles
values from returned from plugins in the component testing runner. Fixes #16424.projectRoot
will now open in IDE and generate studio commands when saved. Fixes #16255.config
in the plugins file will now display in alphabetical order. Fixes #16564.Dependency Updates:
dependency-tree
from7.0.2
to8.1.0
. Addressed in #16464.extract-zip
from1.7.0
to2.0.1
. Fixes #6896v7.3.0
Compare Source
Released 05/10/2021
Features:
testingType: 'component'
via the newtestingType
property. ThetestingType
will default toe2e
. Addresses #16302.cy.intercept()
now accepts atimes
option in theRouteMatcher
.times
will specify the number of times that a particularcy.intercept()
should be applied. Addresses #4460 and #8531.cy.intercept()
now accepts invocation usingcy.intercept(url, routeMatcher, handler)
, whereurl
is a regular expression. Previously, this only worked ifurl
was a string. Addresses #16390.DEBUG=cypress:server:record:ci-info
will print commit information and CI provider information that's sent to the Dashboard as debug logs. Addresses #16236.CYPRESS_DOWNLOAD_USE_CA
is specified. See "Using a custom CA" for more information. Addresses #8825.Bugfixes:
/__/
whenlocation.href
is set to a relative path within the call stack of an XHR event handler. Fixes #3975 and #7439._top
or_parent
so that it no longer redirects the parent frame. Fixes #1244.RangeError: Maximum call stack size exceeded at _deconstructPacket
error. Most commonly, this occurred when handling network errors withcy.request()
. Fixes #15101.ERR_INVALID_ARG_TYPE
type error when testing a binary file upload. Fixes #15898 and #16223..then()
only accepting functions to display. Fixes #15281.cy.intercept()
now adds aaccess-control-expose-headers: '*'
header by default for CORS requests unless overridden. Fixes #15050.cy.intercept()
andcy.route()
requests with multiple aliases are displayed in the command log. Addressed in #16382.Cypress.cookies.debug(true)
will now correctly show cookie-related messages on the console. Fixes #15032.cy.log()
will now show all arguments, not only the first 2. Fixes #16068..select()
now correctly selects option elements with values that have
characters. Fixes #16045.e2e
andcomponent
configuration values will now correctly show when previewing resolved configuration in the Test Runner. Fixes #16282.—quiet
flag, Cypress will no longer print uploading output to Stdout. Fixes #16268./
hotkey in Firefox, Cypress will select the SpecList's SearchInput as it does in other browsers. Fixes #16309.Dependency Updates:
classnames
from2.2.6
to2.3.1
. Addressed in #8337.color-string
from1.5.4
to1.5.5
. Addressed in #16362.lodash
from4.17.19
to4.17.21
. Addressed in #16406.registry-js
from1.13.0
to1.15.0
. Addressed in #16409.url-parse
from1.4.7
to1.5.0
. Addressed in #16408.v7.2.0
Compare Source
Released 04/26/2021
Features:
Performance:
Bugfixes:
ERR_INVALID_ARG_TYPE
type error. We now correctly detect a utf8 request body with multi-byte Unicode characters. Fixes #15901.cy.intercept()
aliases will now work as expected. Fixes #15823.cy.intercept
. Fixes #16117.cypress run-ct
no longer hangs on Windows machines. Fixes #15976.Cannot read property 'name' of null
. Fixes #15816..select()
an<option>
within a disabled<fieldset>
. Fixes #5951..type()
will no longer change thevalue
attribute of button-like inputs with type button, submit, reset, image, radio, or checkbox. Fixes #15913.componentFolder
outside of the root project when specifying--project
. Fixes #16053.Misc:
Cypress.Cookies.defaults()
now returns the correct type instead ofvoid
. Addresses #15426..then()
will show the correct type when a collection of HTMLElements is provided. Addressed in #15869.cy.intercept()
. Addressed in #16167.Dependency Updates:
cypress run
and when selecting Electron browser incypress open
from89.0.4348.1
to89.0.4328.0
. This was done to address a performance regression introduced in 7.0.0. Addressed in #16113.systeminformation
from5.3.1
to5.6.4
. Addressed in #15819.lolex
with@sinonjs/fake-timers
. Addressed in #15595.v7.1.0
Compare Source
Released 04/12/2021
Features:
before:spec
,after:spec
,before:run
, andafter:run
now fire in interactive mode in addition to run mode. This requires theexperimentalInteractiveRunEvents
flag to be enabled. Addressed in #15787.Bugfixes:
cypress.json
is now correctly applied in the Component Test Runner. Fixes #15899.cy.intercept(routeMatcher, staticResponse)
would still be sent to the destination server. Fixes #15841.v7.0.1
Compare Source
Released 04/07/2021
Bugfixes:
Enter
. Addressed in #15833.--ipc=host
. Fixes #15814 and #350.stderr
in production builds of Cypress. Addressed in #15817.stdout
when the video cannot be found after a run. Addressed in #15828.tsconfig.json
file present. Addressed in #15828.Misc:
Configuration
📅 Schedule: "before 7am on Tuesday" in timezone Australia/Sydney.
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about these updates again.
This PR has been generated by WhiteSource Renovate. View repository job log here.