---
title: "8.0.0"
url: "https://www.cypress.io/releases/8-0-0"
description: "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…"
---

# 8.0.0

ReleasedReleased on July 18, 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](/app/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://github.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://github.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](/api/node-events/browser-launch-api#Override-the-device-pixel-ratio). Addresses [#17375](https://github.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://github.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://github.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://github.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](/app/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. Addresses [#16505](https://github.com/cypress-io/cypress/issues/16505).
    

**Bugfixes:**

-   `console.log` and `console.error` called within the [plugins file](/app/core-concepts/writing-and-organizing-tests#Plugins-file) will now be captured in the `stdout` sent to the Cypress Dashboard, making it visible in Output logs in the Dashboard. Fixes [#7434](https://github.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://github.com/cypress-io/cypress/issues/16821).
        
    -   `localhost` is now accepted as a valid `hostname` in the `RouteMatcher`. Fixes [#17015](https://github.com/cypress-io/cypress/issues/17015).
        
    -   `delay` now works correctly with a `statusCode` of 204. Fixes [#15188](https://github.com/cypress-io/cypress/issues/15188).
        
-   When using the experimental [Cypress Studio](/app/guides/cypress-studio), there should be a reduced occurrence of "Studio failed to save commands" error messages. Fixes [#14767](https://github.com/cypress-io/cypress/issues/14767).
    
-   [`cy.invoke()`](/api/commands/invoke) now retains the proper `this` context on nested object methods. Fixes [#3871](https://github.com/cypress-io/cypress/issues/3871).
    
-   We no longer trigger unnecessary snapshot re-renders when hovering over the Command Log. Fixes [#17257](https://github.com/cypress-io/cypress/issues/17257).