cypress-io/cypress
### [`v8.7.0`](https://togithub.com/cypress-io/cypress/releases/v8.7.0)
[Compare Source](https://togithub.com/cypress-io/cypress/compare/v8.6.0...v8.7.0)
*Released 10/25/2021*
**Features:**
- There are changes to how "slow" tests are determined and displayed in Cypress.
Addresses [#18496](https://togithub.com/cypress-io/cypress/pull/18496).
- Added a [`slowTestThreshold`](https://docs.cypress.io/guides/references/configuration#Timeouts)
configuration option to customize when tests are considered "slow" during
`cypress 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](https://docs.cypress.io/guides/core-concepts/writing-and-organizing-tests#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.
- Users can pass an `overwrite: true` option to `Cypress.Screenshot.defaults` to
change default behavior to overwrite existing screenshots without having to
set `overwrite` for each `cy.screenshot()` command. Addresses
[#7955](https://togithub.com/cypress-io/cypress/issues/7955).
**Bugfixes:**
- Fixed a regression introduced in [8.6.0](https://docs.cypress.io/guides/references/changelog#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](https://docs.cypress.io/guides/references/changelog#8-6-0) so that the warning about the
`projectRoot` directory not being writeable will now display correctly. Fixes
[#18485](https://togithub.com/cypress-io/cypress/issues/18485).
- Improved the error message when running Cypress without non-root permissions.
Fixes [#18445](https://togithub.com/cypress-io/cypress/issues/18445).
- An error now throws when invalid options are passed to the `selectorPriority`
configuration option of `Cypress.SelectorPlayground.defaults`. Valid values
are `data-*`, `id`, `class`, `tag`, `attribute`, or `nth-child`. Fixes
[#7745](https://togithub.com/cypress-io/cypress/issues/7745).
**Dependency Updates:**
- Pinned resolution of `ua-parser-js` to `0.7.24` to avoid dependency resolution
to the compromised package versions. Please read the
[security advisory](https://togithub.com/advisories/GHSA-pjwm-rvh2-c87w) and
take actions advised as soon as possible. Addressed in
[#18611](https://togithub.com/cypress-io/cypress/pull/18611)
### [`v8.6.0`](https://togithub.com/cypress-io/cypress/releases/v8.6.0)
[Compare Source](https://togithub.com/cypress-io/cypress/compare/v8.5.0...v8.6.0)
*Released 10/11/2021*
**Features:**
- `cy.screenshot()` now accepts `overwrite: true` as an option to overwrite
existing screenshots with the same file name. Addresses
[#7955](https://togithub.com/cypress-io/cypress/issues/7955).
- `cy.select([])` can now be used to clear any selected options in a multi-value
select. Addresses [#4318](https://togithub.com/cypress-io/cypress/issues/4318).
- Using `cy.pause()` when using `cypress run --headed --no-exit` will now pause
a test. Addresses [#4044](https://togithub.com/cypress-io/cypress/issues/4044).
**Bugfixes:**
- Fixed a regression introduced in [8.2.0](https://docs.cypress.io/guides/references/changelog#8-2-0) where certain XMLHttpRequests
would not display their response bodies in the DevTools Console when clicked.
Fixes [#17656](https://togithub.com/cypress-io/cypress/issues/17656).
- Fixed a regression in [8.3.0](https://docs.cypress.io/guides/references/changelog#8-3-0) where capturing videos in Chrome
versions earlier than 89 would result in choppy videos and skipped frames.
Fixes [#18021](https://togithub.com/cypress-io/cypress/issues/18021).
- Cypress displays the correct error when certain custom error types are thrown
within a test. Fixes
[#18259](https://togithub.com/cypress-io/cypress/issues/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](https://togithub.com/cypress-io/cypress/issues/3957).
- Logging a plain object no longer results in the error "Cannot convert object
to primitive value". Fixes [#18143](https://togithub.com/cypress-io/cypress/issues/18143).
**Misc:**
- Updated the `cy.request()` error message when conflicting `failOnStatusCode`
and `retryOnStatusCodeFailure` options are passed to be clearer. Fixes
[#18271](https://togithub.com/cypress-io/cypress/issues/18271).
**Dependency Updates:**
- Upgraded the Chromium browser version used during `cypress run` and when
selecting Electron browser in `cypress open` from `91.0.4472.164` to
`93.0.4577.58`.
- Upgraded `electron` from `13.2.0` to `14.1.0`. Addressed in
[#18318](https://togithub.com/cypress-io/cypress/issues/18318) and
[#18384](https://togithub.com/cypress-io/cypress/issues/18384).
### [`v8.5.0`](https://togithub.com/cypress-io/cypress/releases/v8.5.0)
[Compare Source](https://togithub.com/cypress-io/cypress/compare/v8.4.1...v8.5.0)
*Released 09/27/2021*
**Features:**
- You can now select an option by index within the
[`.select()`](https://docs.cypress.io/api/commands/select) command. Addresses
[#757](https://togithub.com/cypress-io/cypress/issues/757).
- Cypress now captures the repository URL on Drone CI. Addresses
[#18210](https://togithub.com/cypress-io/cypress/issues/18210).
**Bugfixes:**
- The download of Cypress now respects the `NO_PROXY` environment variable when
one is set. Fixes
[#17702](https://togithub.com/cypress-io/cypress/issues/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 of
`cypress.json`. Fixes
[#5747](https://togithub.com/cypress-io/cypress/issues/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](https://togithub.com/cypress-io/cypress/issues/17962) for more detail.
Addresses [#18094](https://togithub.com/cypress-io/cypress/issues/18094).
- Improved the error messages when an invalid argument type is passed to the [`.select()`](https://docs.cypress.io/api/commands/select) command. Addressed in [#18234](https://togithub.com/cypress-io/cypress/pull/18234).
### [`v8.4.1`](https://togithub.com/cypress-io/cypress/releases/v8.4.1)
[Compare Source](https://togithub.com/cypress-io/cypress/compare/v8.4.0...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](https://togithub.com/cypress-io/cypress/issues/18129).
- The branch collected for Drone CI now correctly reflects the source PR branch
for showing in the Cypress Dashboard. Fixes
[#17860](https://togithub.com/cypress-io/cypress/issues/17860).
### [`v8.4.0`](https://togithub.com/cypress-io/cypress/releases/v8.4.0)
[Compare Source](https://togithub.com/cypress-io/cypress/compare/v8.3.1...v8.4.0)
*Released 09/13/2021*
**Features:**
- When the URL contains non-ASCII characters, you can use the new `decode`
option of `cy.url()` to decode it. Addresses
[#17399](https://togithub.com/cypress-io/cypress/issues/17399).
**Bugfixes:**
- Cypress now better handles situations where the extension was installed in a
read-only location. Fixes
[#3852](https://togithub.com/cypress-io/cypress/issues/3852).
- A clearer error message is now thrown for `.check()` or `.uncheck()` when
there are no matching value attributes found.
Fixes[#7379](https://togithub.com/cypress-io/cypress/issues/7379).
- Hooks will no longer rerun on unrelated tests in some situations after a
domain navigation. Fixes
[#17705](https://togithub.com/cypress-io/cypress/issues/17705).
- `clientCertificate` types have been added for the Cypress configuration. Fixes
[#17799](https://togithub.com/cypress-io/cypress/issues/17799).
### [`v8.3.1`](https://togithub.com/cypress-io/cypress/releases/v8.3.1)
[Compare Source](https://togithub.com/cypress-io/cypress/compare/v8.3.0...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](https://togithub.com/cypress-io/cypress/issues/17773).
**Bugfixes:**
- Fixed a regression in [8.3.0](https://docs.cypress.io/guides/references/changelog#8-3-0) where the
correct exit code would not be issued during `cypress run-ct` while running in
the Electron browser. Fixes
[#17752](https://togithub.com/cypress-io/cypress/issues/17752) and
[#17885](https://togithub.com/cypress-io/cypress/issues/17885).
- Fixed a regression in [8.3.0](https://docs.cypress.io/guides/references/changelog#8-3-0) where
Cypress would cause a `SIGSEGV` error on Mac when closing the Cypress app
opened via `cypress open`. Fixes
[#17766](https://togithub.com/cypress-io/cypress/issues/17766).
- The `beforeinput` event now correctly fires in Firefox during keyboard events.
Fixes [#17583](https://togithub.com/cypress-io/cypress/issues/17583).
**Misc:**
- `cy.document()` typings now allow for the `timeout` option. Fixes
[#17695](https://togithub.com/cypress-io/cypress/issues/17695).
- `cy.title()` typings now allow for the `timeout` option. Fixes
[#17781](https://togithub.com/cypress-io/cypress/issues/17781)
**Dependency Updates:**
- Upgraded `electron` from `13.1.7` to `13.2.0`. Addressed in
[#17772](https://togithub.com/cypress-io/cypress/pull/17772).
- Upgraded `@cypress/request` from `2.88.5` to `2.88.6`. Addresses
[#17622](https://togithub.com/cypress-io/cypress/pull/17622).
### [`v8.3.0`](https://togithub.com/cypress-io/cypress/releases/v8.3.0)
[Compare Source](https://togithub.com/cypress-io/cypress/compare/v8.2.0...v8.3.0)
*Released 08/16/2021*
**Features:**
- The instructions for recording a run have been updated for some users.
Addressed in [#17317](https://togithub.com/cypress-io/cypress/issues/17317).
**Performance:**
- We addressed an issue that increased CPU usage during video recording in
Chrome 89+/Electron 12+. Fixes
[#16152](https://togithub.com/cypress-io/cypress/issues/16152).
- Fixed a regression in [7.2.0](https://docs.cypress.io/guides/references/changelog#7-2-0) that would
cause `cy.visit()` to take longer to fire its load event in some
circumstances. Fixes
[#16671](https://togithub.com/cypress-io/cypress/issues/16671).
**Bugfixes:**
- Fixed an issue that could cause intermittent OpenSSL errors when the local CA
cert cache becomes corrupted. Fixes
[#8705](https://togithub.com/cypress-io/cypress/issues/8705).
- Fixed a regression in [7.2.0](https://docs.cypress.io/guides/references/changelog#7-2-0) causing the
menu bar of Cypress to not be clickable in Windows. Fixes
[#16323](https://togithub.com/cypress-io/cypress/issues/16323).
- `res.send` of `cy.intercept()` will no longer override JSON-related content
types. Fixes [#17084](https://togithub.com/cypress-io/cypress/issues/17084).
- The `times` option of `cy.intercept` now works properly with `req.reply`.
Fixes [#17139](https://togithub.com/cypress-io/cypress/issues/17139).
- Fixed a regression in [8.0.0](https://docs.cypress.io/guides/references/changelog#8-0-0) where
Cypress would always warn that `chromeWebSecurity` is set to "false" when it
wasn't. Fixes [#17614](https://togithub.com/cypress-io/cypress/issues/17614).
**Dependency Updates:**
- Upgraded Chrome browser version used during `cypress run` and when selecting
Electron browser in `cypress open` from `89` to `91`. Addressed in
[#17408](https://togithub.com/cypress-io/cypress/pull/17408).
- Upgraded bundled Node.js version from `14.6.0` to `14.17.0`. Addressed in
[#17408](https://togithub.com/cypress-io/cypress/pull/17408).
- Upgraded `electron` from `12.0.0-beta.14` to `13.1.7`. Addressed in
[#17408](https://togithub.com/cypress-io/cypress/pull/17408).
- Upgraded `url-parse` from `1.5.1` to `1.5.2`. Addressed in
[#17719](https://togithub.com/cypress-io/cypress/pull/17719).
### [`v8.2.0`](https://togithub.com/cypress-io/cypress/releases/v8.2.0)
[Compare Source](https://togithub.com/cypress-io/cypress/compare/v8.1.0...v8.2.0)
*Released 08/04/2021*
**Features:**
- You can now cache and restore [cookies](https://docs.cypress.io/api/cypress-api/cookies),
[`localStorage`](https://developer.mozilla.org/en-US/docs/Web/API/Window/localStorage),
and
[`sessionStorage`](https://developer.mozilla.org/en-US/docs/Web/API/Window/sessionStorage)
in order to reduce test setup times by using
[`cy.session()`](/api/commands/session). The `session` API is experimental and
can be enabled by setting the
[`experimentalSessionSupport`](/guides/references/experiments) flag to `true`
in your Cypress config. See
[our blog](https://cypress.io/blog/2021/08/03/authenticate-faster-in-tests-cy-session-command/)
and the [`cy.session()`](/api/commands/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 if
`experimentalFetchSupport` is enabled.
- Duplicate logs for XHRs, fetches, and `cy.intercept()` have been
consolidated - Fixes
[#14843](https://togithub.com/cypress-io/cypress/issues/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](https://togithub.com/cypress-io/cypress/issues/14655).
- There's now a `Cypress.currentTest` property to access name the currently
executing test via `Cypress.currentTest.title` and
`Cypress.currentTest.titlePath`. Addresses
[#2972](https://togithub.com/cypress-io/cypress/issues/2972).
**Bugfixes:**
- A "removing cookie failed" error will no longer throw when cookies are cleared
in Firefox. Fixes [#6375](https://togithub.com/cypress-io/cypress/issues/6375).
- Cypress no longer throws the error "cannot read property split of undefined"
in certain circumstances when application errors are thrown. Fixes
[#17378](https://togithub.com/cypress-io/cypress/issues/17378).
- Cypress now properly runs the final test when nested in a suite with a
`before` hook. Fixes
[#9026](https://togithub.com/cypress-io/cypress/issues/9026).
- Fixed a regression in [8.0.0](https://docs.cypress.io/guides/references/changelog#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](https://togithub.com/cypress-io/cypress/issues/17415).
- Cypress now throws if a function is incorrectly passed as the second argument
to `cy.wait()`. Fixes
[#17436](https://togithub.com/cypress-io/cypress/issues/17436).
### [`v8.1.0`](https://togithub.com/cypress-io/cypress/releases/v8.1.0)
[Compare Source](https://togithub.com/cypress-io/cypress/compare/v8.0.0...v8.1.0)
*Released 07/29/2021*
**Features:**
- When using `experimentalStudio`, you can now generate assertions in
[Cypress Studio](https://docs.cypress.io/guides/core-concepts/cypress-studio) by right clicking on an
element. Addressed in
[#16295](https://togithub.com/cypress-io/cypress/pull/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](https://togithub.com/cypress-io/cypress/issues/17346).
**Performance:**
- The Test Runner's performance has been improved when running a large number of
commands within a single test. Fixes
[#6783](https://togithub.com/cypress-io/cypress/issues/6783).
**Bugfixes:**
- Add Yarn v2 pnp support to our default webpack processor. Fixes
[#8008](https://togithub.com/cypress-io/cypress/issues/8008) and
[#16111](https://togithub.com/cypress-io/cypress/issues/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](https://togithub.com/cypress-io/cypress/pull/17514).
- The Test Runner will no longer crash in some instances when creating a new
spec file from the GUI.
[#17430](https://togithub.com/cypress-io/cypress/issues/17430).
### [`v8.0.0`](https://togithub.com/cypress-io/cypress/releases/v8.0.0)
[Compare Source](https://togithub.com/cypress-io/cypress/compare/v7.7.0...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](https://docs.cypress.io/guides/references/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
during `cypress run` as headless by default. Addresses
[#16832](https://togithub.com/cypress-io/cypress/issues/16832).
- The default screen size when running a headless browser has been reverted back
to 1280x720 pixels (pre 7.0 behavior). Addresses
[#16853](https://togithub.com/cypress-io/cypress/issues/16853).
- When running the `--headless` Chrome browser via `cypress 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](https://docs.cypress.io/api/plugins/browser-launch-api#Override-the-device-pixel-ratio).
Addresses [#17375](https://togithub.com/cypress-io/cypress/issues/17375).
- Cypress now enforces version checks for browser launching and will error
during `cypress run` and not allow opening the browser in `cypress open` when
attempting to open unsupported browser versions. Cypress supports Chrome >=
64, Firefox >= 86, and Edge >= 79. Addressed in
[#17355](https://togithub.com/cypress-io/cypress/pull/17355).
- Arguments returned from a chained function will no longer incorrectly be of
type `jQuery` and instead have an `any` type. Fixes
[#16669](https://togithub.com/cypress-io/cypress/issues/16669).
- The `Cypress.ConfigOptions`, `Cypress.ResolvedConfigOptions` and
`Cypress.RuntimeConfigOption` types have been updated so that `ConfigOptions`
match the JSON schema. Addressed in
[#17251](https://togithub.com/cypress-io/cypress/pull/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](https://docs.cypress.io/guides/references/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](https://docs.cypress.io/guides/continuous-integration/introduction#Running-headless-tests-without-Xvfb)
for more details. Addresses
[#16505](https://togithub.com/cypress-io/cypress/issues/16505).
**Bugfixes:**
- `console.log` and `console.error` called within the
[plugins file](https://docs.cypress.io/guides/core-concepts/writing-and-organizing-tests.html#Plugin-files)
will now be captured in the `stdout` sent to the Cypress Dashboard, making it
visible in Output logs in the Dashboard. Fixes
[#7434](https://togithub.com/cypress-io/cypress/issues/7434).
- There are several fixes for [`cy.intercept()`](/api/commands/intercept)
including:
- The `times` option now works correctly with `req.continue`. Fixes
[#16821](https://togithub.com/cypress-io/cypress/issues/16821).
- `localhost` is now accepted as a valid `hostname` in the `RouteMatcher`.
Fixes [#17015](https://togithub.com/cypress-io/cypress/issues/17015).
- `delay` now works correctly with a `statusCode` of 204. Fixes
[#15188](https://togithub.com/cypress-io/cypress/issues/15188).
- When using the experimental
[Cypress Studio](https://docs.cypress.io/guides/core-concepts/cypress-studio), there should be a
reduced occurrence of "Studio failed to save commands" error messages. Fixes
[#14767](https://togithub.com/cypress-io/cypress/issues/14767).
- [`cy.invoke()`](/api/commands/invoke) now retains the proper `this` context on
nested object methods. Fixes
[#3871](https://togithub.com/cypress-io/cypress/issues/3871).
- We no longer trigger unnecessary snapshot re-renders when hovering over the
Command Log. Fixes
[#17257](https://togithub.com/cypress-io/cypress/issues/17257).
Configuration
π Schedule: At any time (no schedule defined).
π¦ 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 this update again.
[ ] If you want to rebase/retry this PR, click this checkbox.
This PR contains the following updates:
7.7.0
->8.7.0
Release Notes
cypress-io/cypress
### [`v8.7.0`](https://togithub.com/cypress-io/cypress/releases/v8.7.0) [Compare Source](https://togithub.com/cypress-io/cypress/compare/v8.6.0...v8.7.0) *Released 10/25/2021* **Features:** - There are changes to how "slow" tests are determined and displayed in Cypress. Addresses [#18496](https://togithub.com/cypress-io/cypress/pull/18496). - Added a [`slowTestThreshold`](https://docs.cypress.io/guides/references/configuration#Timeouts) configuration option to customize when tests are considered "slow" during `cypress 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](https://docs.cypress.io/guides/core-concepts/writing-and-organizing-tests#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. - Users can pass an `overwrite: true` option to `Cypress.Screenshot.defaults` to change default behavior to overwrite existing screenshots without having to set `overwrite` for each `cy.screenshot()` command. Addresses [#7955](https://togithub.com/cypress-io/cypress/issues/7955). **Bugfixes:** - Fixed a regression introduced in [8.6.0](https://docs.cypress.io/guides/references/changelog#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](https://docs.cypress.io/guides/references/changelog#8-6-0) so that the warning about the `projectRoot` directory not being writeable will now display correctly. Fixes [#18485](https://togithub.com/cypress-io/cypress/issues/18485). - Improved the error message when running Cypress without non-root permissions. Fixes [#18445](https://togithub.com/cypress-io/cypress/issues/18445). - An error now throws when invalid options are passed to the `selectorPriority` configuration option of `Cypress.SelectorPlayground.defaults`. Valid values are `data-*`, `id`, `class`, `tag`, `attribute`, or `nth-child`. Fixes [#7745](https://togithub.com/cypress-io/cypress/issues/7745). **Dependency Updates:** - Pinned resolution of `ua-parser-js` to `0.7.24` to avoid dependency resolution to the compromised package versions. Please read the [security advisory](https://togithub.com/advisories/GHSA-pjwm-rvh2-c87w) and take actions advised as soon as possible. Addressed in [#18611](https://togithub.com/cypress-io/cypress/pull/18611) ### [`v8.6.0`](https://togithub.com/cypress-io/cypress/releases/v8.6.0) [Compare Source](https://togithub.com/cypress-io/cypress/compare/v8.5.0...v8.6.0) *Released 10/11/2021* **Features:** - `cy.screenshot()` now accepts `overwrite: true` as an option to overwrite existing screenshots with the same file name. Addresses [#7955](https://togithub.com/cypress-io/cypress/issues/7955). - `cy.select([])` can now be used to clear any selected options in a multi-value select. Addresses [#4318](https://togithub.com/cypress-io/cypress/issues/4318). - Using `cy.pause()` when using `cypress run --headed --no-exit` will now pause a test. Addresses [#4044](https://togithub.com/cypress-io/cypress/issues/4044). **Bugfixes:** - Fixed a regression introduced in [8.2.0](https://docs.cypress.io/guides/references/changelog#8-2-0) where certain XMLHttpRequests would not display their response bodies in the DevTools Console when clicked. Fixes [#17656](https://togithub.com/cypress-io/cypress/issues/17656). - Fixed a regression in [8.3.0](https://docs.cypress.io/guides/references/changelog#8-3-0) where capturing videos in Chrome versions earlier than 89 would result in choppy videos and skipped frames. Fixes [#18021](https://togithub.com/cypress-io/cypress/issues/18021). - Cypress displays the correct error when certain custom error types are thrown within a test. Fixes [#18259](https://togithub.com/cypress-io/cypress/issues/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](https://togithub.com/cypress-io/cypress/issues/3957). - Logging a plain object no longer results in the error "Cannot convert object to primitive value". Fixes [#18143](https://togithub.com/cypress-io/cypress/issues/18143). **Misc:** - Updated the `cy.request()` error message when conflicting `failOnStatusCode` and `retryOnStatusCodeFailure` options are passed to be clearer. Fixes [#18271](https://togithub.com/cypress-io/cypress/issues/18271). **Dependency Updates:** - Upgraded the Chromium browser version used during `cypress run` and when selecting Electron browser in `cypress open` from `91.0.4472.164` to `93.0.4577.58`. - Upgraded `electron` from `13.2.0` to `14.1.0`. Addressed in [#18318](https://togithub.com/cypress-io/cypress/issues/18318) and [#18384](https://togithub.com/cypress-io/cypress/issues/18384). ### [`v8.5.0`](https://togithub.com/cypress-io/cypress/releases/v8.5.0) [Compare Source](https://togithub.com/cypress-io/cypress/compare/v8.4.1...v8.5.0) *Released 09/27/2021* **Features:** - You can now select an option by index within the [`.select()`](https://docs.cypress.io/api/commands/select) command. Addresses [#757](https://togithub.com/cypress-io/cypress/issues/757). - Cypress now captures the repository URL on Drone CI. Addresses [#18210](https://togithub.com/cypress-io/cypress/issues/18210). **Bugfixes:** - The download of Cypress now respects the `NO_PROXY` environment variable when one is set. Fixes [#17702](https://togithub.com/cypress-io/cypress/issues/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 of `cypress.json`. Fixes [#5747](https://togithub.com/cypress-io/cypress/issues/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](https://togithub.com/cypress-io/cypress/issues/17962) for more detail. Addresses [#18094](https://togithub.com/cypress-io/cypress/issues/18094). - Improved the error messages when an invalid argument type is passed to the [`.select()`](https://docs.cypress.io/api/commands/select) command. Addressed in [#18234](https://togithub.com/cypress-io/cypress/pull/18234). ### [`v8.4.1`](https://togithub.com/cypress-io/cypress/releases/v8.4.1) [Compare Source](https://togithub.com/cypress-io/cypress/compare/v8.4.0...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](https://togithub.com/cypress-io/cypress/issues/18129). - The branch collected for Drone CI now correctly reflects the source PR branch for showing in the Cypress Dashboard. Fixes [#17860](https://togithub.com/cypress-io/cypress/issues/17860). ### [`v8.4.0`](https://togithub.com/cypress-io/cypress/releases/v8.4.0) [Compare Source](https://togithub.com/cypress-io/cypress/compare/v8.3.1...v8.4.0) *Released 09/13/2021* **Features:** - When the URL contains non-ASCII characters, you can use the new `decode` option of `cy.url()` to decode it. Addresses [#17399](https://togithub.com/cypress-io/cypress/issues/17399). **Bugfixes:** - Cypress now better handles situations where the extension was installed in a read-only location. Fixes [#3852](https://togithub.com/cypress-io/cypress/issues/3852). - A clearer error message is now thrown for `.check()` or `.uncheck()` when there are no matching value attributes found. Fixes[#7379](https://togithub.com/cypress-io/cypress/issues/7379). - Hooks will no longer rerun on unrelated tests in some situations after a domain navigation. Fixes [#17705](https://togithub.com/cypress-io/cypress/issues/17705). - `clientCertificate` types have been added for the Cypress configuration. Fixes [#17799](https://togithub.com/cypress-io/cypress/issues/17799). ### [`v8.3.1`](https://togithub.com/cypress-io/cypress/releases/v8.3.1) [Compare Source](https://togithub.com/cypress-io/cypress/compare/v8.3.0...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](https://togithub.com/cypress-io/cypress/issues/17773). **Bugfixes:** - Fixed a regression in [8.3.0](https://docs.cypress.io/guides/references/changelog#8-3-0) where the correct exit code would not be issued during `cypress run-ct` while running in the Electron browser. Fixes [#17752](https://togithub.com/cypress-io/cypress/issues/17752) and [#17885](https://togithub.com/cypress-io/cypress/issues/17885). - Fixed a regression in [8.3.0](https://docs.cypress.io/guides/references/changelog#8-3-0) where Cypress would cause a `SIGSEGV` error on Mac when closing the Cypress app opened via `cypress open`. Fixes [#17766](https://togithub.com/cypress-io/cypress/issues/17766). - The `beforeinput` event now correctly fires in Firefox during keyboard events. Fixes [#17583](https://togithub.com/cypress-io/cypress/issues/17583). **Misc:** - `cy.document()` typings now allow for the `timeout` option. Fixes [#17695](https://togithub.com/cypress-io/cypress/issues/17695). - `cy.title()` typings now allow for the `timeout` option. Fixes [#17781](https://togithub.com/cypress-io/cypress/issues/17781) **Dependency Updates:** - Upgraded `electron` from `13.1.7` to `13.2.0`. Addressed in [#17772](https://togithub.com/cypress-io/cypress/pull/17772). - Upgraded `@cypress/request` from `2.88.5` to `2.88.6`. Addresses [#17622](https://togithub.com/cypress-io/cypress/pull/17622). ### [`v8.3.0`](https://togithub.com/cypress-io/cypress/releases/v8.3.0) [Compare Source](https://togithub.com/cypress-io/cypress/compare/v8.2.0...v8.3.0) *Released 08/16/2021* **Features:** - The instructions for recording a run have been updated for some users. Addressed in [#17317](https://togithub.com/cypress-io/cypress/issues/17317). **Performance:** - We addressed an issue that increased CPU usage during video recording in Chrome 89+/Electron 12+. Fixes [#16152](https://togithub.com/cypress-io/cypress/issues/16152). - Fixed a regression in [7.2.0](https://docs.cypress.io/guides/references/changelog#7-2-0) that would cause `cy.visit()` to take longer to fire its load event in some circumstances. Fixes [#16671](https://togithub.com/cypress-io/cypress/issues/16671). **Bugfixes:** - Fixed an issue that could cause intermittent OpenSSL errors when the local CA cert cache becomes corrupted. Fixes [#8705](https://togithub.com/cypress-io/cypress/issues/8705). - Fixed a regression in [7.2.0](https://docs.cypress.io/guides/references/changelog#7-2-0) causing the menu bar of Cypress to not be clickable in Windows. Fixes [#16323](https://togithub.com/cypress-io/cypress/issues/16323). - `res.send` of `cy.intercept()` will no longer override JSON-related content types. Fixes [#17084](https://togithub.com/cypress-io/cypress/issues/17084). - The `times` option of `cy.intercept` now works properly with `req.reply`. Fixes [#17139](https://togithub.com/cypress-io/cypress/issues/17139). - Fixed a regression in [8.0.0](https://docs.cypress.io/guides/references/changelog#8-0-0) where Cypress would always warn that `chromeWebSecurity` is set to "false" when it wasn't. Fixes [#17614](https://togithub.com/cypress-io/cypress/issues/17614). **Dependency Updates:** - Upgraded Chrome browser version used during `cypress run` and when selecting Electron browser in `cypress open` from `89` to `91`. Addressed in [#17408](https://togithub.com/cypress-io/cypress/pull/17408). - Upgraded bundled Node.js version from `14.6.0` to `14.17.0`. Addressed in [#17408](https://togithub.com/cypress-io/cypress/pull/17408). - Upgraded `electron` from `12.0.0-beta.14` to `13.1.7`. Addressed in [#17408](https://togithub.com/cypress-io/cypress/pull/17408). - Upgraded `url-parse` from `1.5.1` to `1.5.2`. Addressed in [#17719](https://togithub.com/cypress-io/cypress/pull/17719). ### [`v8.2.0`](https://togithub.com/cypress-io/cypress/releases/v8.2.0) [Compare Source](https://togithub.com/cypress-io/cypress/compare/v8.1.0...v8.2.0) *Released 08/04/2021* **Features:** - You can now cache and restore [cookies](https://docs.cypress.io/api/cypress-api/cookies), [`localStorage`](https://developer.mozilla.org/en-US/docs/Web/API/Window/localStorage), and [`sessionStorage`](https://developer.mozilla.org/en-US/docs/Web/API/Window/sessionStorage) in order to reduce test setup times by using [`cy.session()`](/api/commands/session). The `session` API is experimental and can be enabled by setting the [`experimentalSessionSupport`](/guides/references/experiments) flag to `true` in your Cypress config. See [our blog](https://cypress.io/blog/2021/08/03/authenticate-faster-in-tests-cy-session-command/) and the [`cy.session()`](/api/commands/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 if `experimentalFetchSupport` is enabled. - Duplicate logs for XHRs, fetches, and `cy.intercept()` have been consolidated - Fixes [#14843](https://togithub.com/cypress-io/cypress/issues/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](https://togithub.com/cypress-io/cypress/issues/14655). - There's now a `Cypress.currentTest` property to access name the currently executing test via `Cypress.currentTest.title` and `Cypress.currentTest.titlePath`. Addresses [#2972](https://togithub.com/cypress-io/cypress/issues/2972). **Bugfixes:** - A "removing cookie failed" error will no longer throw when cookies are cleared in Firefox. Fixes [#6375](https://togithub.com/cypress-io/cypress/issues/6375). - Cypress no longer throws the error "cannot read property split of undefined" in certain circumstances when application errors are thrown. Fixes [#17378](https://togithub.com/cypress-io/cypress/issues/17378). - Cypress now properly runs the final test when nested in a suite with a `before` hook. Fixes [#9026](https://togithub.com/cypress-io/cypress/issues/9026). - Fixed a regression in [8.0.0](https://docs.cypress.io/guides/references/changelog#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](https://togithub.com/cypress-io/cypress/issues/17415). - Cypress now throws if a function is incorrectly passed as the second argument to `cy.wait()`. Fixes [#17436](https://togithub.com/cypress-io/cypress/issues/17436). ### [`v8.1.0`](https://togithub.com/cypress-io/cypress/releases/v8.1.0) [Compare Source](https://togithub.com/cypress-io/cypress/compare/v8.0.0...v8.1.0) *Released 07/29/2021* **Features:** - When using `experimentalStudio`, you can now generate assertions in [Cypress Studio](https://docs.cypress.io/guides/core-concepts/cypress-studio) by right clicking on an element. Addressed in [#16295](https://togithub.com/cypress-io/cypress/pull/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](https://togithub.com/cypress-io/cypress/issues/17346). **Performance:** - The Test Runner's performance has been improved when running a large number of commands within a single test. Fixes [#6783](https://togithub.com/cypress-io/cypress/issues/6783). **Bugfixes:** - Add Yarn v2 pnp support to our default webpack processor. Fixes [#8008](https://togithub.com/cypress-io/cypress/issues/8008) and [#16111](https://togithub.com/cypress-io/cypress/issues/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](https://togithub.com/cypress-io/cypress/pull/17514). - The Test Runner will no longer crash in some instances when creating a new spec file from the GUI. [#17430](https://togithub.com/cypress-io/cypress/issues/17430). ### [`v8.0.0`](https://togithub.com/cypress-io/cypress/releases/v8.0.0) [Compare Source](https://togithub.com/cypress-io/cypress/compare/v7.7.0...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:** **Configuration
π Schedule: At any time (no schedule defined).
π¦ 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 this update again.
This PR has been generated by WhiteSource Renovate. View repository job log here.