cypress-io/cypress
### [`v3.6.1`](https://togithub.com/cypress-io/cypress/releases/v3.6.1)
[Compare Source](https://togithub.com/cypress-io/cypress/compare/v3.6.0...v3.6.1)
_Released 11/08/2019_
**Bugfixes:**
- The Electron browser no longer hangs when testing applications that have a prompt in a `beforeunload` handler. Fixes [#2118](https://togithub.com/cypress-io/cypress/issues/2118).
- We fixed a regression in [3.5.0](https://on.cypress.io/changelog-3-5-0) where HTTP redirects could cause strange behavior, including cookies not being set as expected, leading to authentication issues and other problems. Fixes [#5436](https://togithub.com/cypress-io/cypress/issues/5436) and [#5432](https://togithub.com/cypress-io/cypress/issues/5432).
- When using [`cy.setCookie()`](https://on.cypress.io/setcookie) with the same `options` Object, Cypress now correctly sets the new cookie instead of the one passed into a previous [`cy.setCookie()`](https://on.cypress.io/setcookie). Fixes [#2701](https://togithub.com/cypress-io/cypress/issues/2701).
- We fixed a regression in [3.5.0](https://on.cypress.io/changelog-3-5-0) where [`cy.clearCookie()`](https://on.cypress.io/clearcookie) would not act as expected when using certain `baseUrls`. Fixes [#5453](https://togithub.com/cypress-io/cypress/issues/5453).
- Cypress no longer crashes with the error `Failed to parse or set cookie named "xxx"` when loading certain websites. Fixes [#4990](https://togithub.com/cypress-io/cypress/issues/4990).
- Cypress now sends the expected headers or request body in a [`cy.visit()`](https://on.cypress.io/visit) to an HTTPS URL using the default port, 443. Fixes [#5367](https://togithub.com/cypress-io/cypress/issues/5367).
- We fixed a regression in [3.6.0](https://on.cypress.io/changelog-3-6-0) where Cypress would crash with `TypeError: Cannot read property 'length' of null` on some network requests. Fixes [#5585](https://togithub.com/cypress-io/cypress/issues/5585).
- We fixed a regression in [3.5.0](https://on.cypress.io/changelog-3-5-0) that caused the red target to be rendered incorrectly when specifying offset coordinates to [`.click()`](https://on.cypress.io/click). Fixes [#5635](https://togithub.com/cypress-io/cypress/issues/5635).
- We fixed a regression in [3.6.0](https://on.cypress.io/changelog-3-6-0) that was causing an incorrect element to receive the `click` event during action commands. Fixes [#5578](https://togithub.com/cypress-io/cypress/issues/5578).
- We fixed a regression in [3.5.0](https://on.cypress.io/changelog-3-5-0) causing text after using modifier keys in [`.type()`](https://on.cypress.io/type) to not be typed. Fixes [#5622](https://togithub.com/cypress-io/cypress/issues/5622).
- Elements with `backface-visibility: hidden;` are now accounted for when asserting on the elemtent's visibility. Fixes [#2985](https://togithub.com/cypress-io/cypress/issues/2985).
- We fixed a bug where a failed Cypress commands would incorrectly throw `cannot read property 'replace' of undefined` if the error's stack was `undefined`. Fixes [#1669](https://togithub.com/cypress-io/cypress/issues/1669).
- The 'Log In' modal within Cypress when setting up a project now correctly closes when manually closed. Fixes [#5631](https://togithub.com/cypress-io/cypress/issues/5631).
**Misc:**
- We improved the user experience around inspecting events fired during [`.click()`](https://on.cypress.io/click) and [`.type()`](https://on.cypress.io/type) commands within the console. Addresses [#5553](https://togithub.com/cypress-io/cypress/issues/5553).
- We increased the timeout when connecting to the "Developer Tools Protocol" from 5 seconds to 20 seconds and also added logging for when the connection takes longer than 5 seconds. Addresses [#5610](https://togithub.com/cypress-io/cypress/issues/5610).
- There is no longer a warning about `Promise.defer` appearing in stderr when running with video recording enabled. Addresses [#5611](https://togithub.com/cypress-io/cypress/issues/5611).
- Types for [`.rightclick()`](https://on.cypress.io/rightclick) and [`.dblclick()`](https://on.cypress.io/dblclick) have been updated to correctly reflect their accepted options. Addresses [#5617](https://togithub.com/cypress-io/cypress/issues/5617).
- We're continuing to make progress in converting our codebase from CoffeeScript to JavaScript. Addresses [#2690](https://togithub.com/cypress-io/cypress/issues/2690) in [#5556](https://togithub.com/cypress-io/cypress/pull/5556)
### [`v3.6.0`](https://togithub.com/cypress-io/cypress/releases/v3.6.0)
[Compare Source](https://togithub.com/cypress-io/cypress/compare/v3.5.0...v3.6.0)
_Released 10/31/2019_
**Features:**
- [`testFiles`](https://on.cypress.io/configuration#Folders-Files) now also accepts an Array of glob patterns when specifying what test files to load in configuration. Addresses [#5401](https://togithub.com/cypress-io/cypress/issues/5401).
**Bugfixes:**
- We fixed a regression in [3.5.0](https://on.cypress.io/changelog-3-5-0) where the maximum size of an HTTP header or body in a stubbed [`cy.route()`](https://on.cypress.io/route) was limited to 8kb causing requests to fail with a 431 HTTP error. Fixes [#5431](https://togithub.com/cypress-io/cypress/issues/5431).
- We fixed a bug where certain types of uncaught errors originating from the application under test would not route through the [`uncaught:exception`](https://on.cypress.io/catalog-of-events#Uncaught-Exceptions) handler, and thus could not caught and ignored. These errors will also now correctly indicate that they came from application code. Fixes [#987](https://togithub.com/cypress-io/cypress/issues/987).
- We fixed a regression in [3.5.0](https://on.cypress.io/changelog-3-5-0) that would throw an error during `cypress verify` when running as a non-root user on a non-Windows machine. We now always set the `--no-sandbox` flag when verifying in Electron, even when running as a non-root user. Fixes [#5434](https://togithub.com/cypress-io/cypress/issues/5434).
- We fixed a regression in [3.5.0](https://on.cypress.io/changelog-3-5-0) where sometimes cookies were not set on the correct URL during a redirect inside of a [`cy.visit()`](https://on.cypress.io/visit) or [`cy.request()`](https://on.cypress.io/request). Fixes [#5432](https://togithub.com/cypress-io/cypress/issues/5432).
- We fixed a regression in [3.5.0](https://on.cypress.io/changelog-3-5-0) causing environment variables containing unicode values to be incorrectly resolved when read via [`Cypress.env()`](https://on.cypress.io/env). Fixes [#5435](https://togithub.com/cypress-io/cypress/issues/5435).
- We fixed a regression in [3.5.0](https://on.cypress.io/changelog-3-5-0) that prevented use of `.click()` or `.type()` inside of an iframe element. Fixes [#5449](https://togithub.com/cypress-io/cypress/issues/5449). Fixes [#5435](https://togithub.com/cypress-io/cypress/issues/5435).
- We now throw the proper error message when an element cannot be interacted with due to being covered by an element with `position:fixed`. Fixes [#5430](https://togithub.com/cypress-io/cypress/issues/5430).
- We fixed a regression in [3.5.0](https://on.cypress.io/changelog-3-5-0) that caused some `click` events to not be sent to the correct elements during `.click()`. Fixes [#5459](https://togithub.com/cypress-io/cypress/issues/5459).
- We updated `.type()` to properly respect focus selection changes during typing. Fixes [#5456](https://togithub.com/cypress-io/cypress/issues/5456).
- We fixed a regression in [3.5.0](https://on.cypress.io/changelog-3-5-0) that caused selected text to be overwritten while typing a modifer key during `.type()`. Fixes [#5439](https://togithub.com/cypress-io/cypress/issues/5439).
- We now send all the proper events during `.type()` to input elements with type `date`, `time`, and `datetime-local` so that it now behaves as it did prior to [3.5.0](https://on.cypress.io/changelog-3-5-0). Fixes [#5476](https://togithub.com/cypress-io/cypress/issues/5476).
- We now properly render iframe placeholder content when previewing DOM snapshots. Fixes [#5295](https://togithub.com/cypress-io/cypress/issues/5295).
**Misc:**
- We no longer log the default option `{multiple: true}` in the Command Log or the console during [`cy.dblclick()`](https://on.cypress.io/dblclick). Addresses [#5406](https://togithub.com/cypress-io/cypress/issues/5406).
- The text color of inactive tabs within the Cypress Chrome browser has been set to white for better readability. Addresses [#1661](https://togithub.com/cypress-io/cypress/issues/1661).
**Dependency Updates**
- Replaced `express-handlebars` with `squirrelly` to reduce dependency size. Addressed in [#5521](https://togithub.com/cypress-io/cypress/pull/5521).
- Upgraded `graceful-fs` from `4.2.0` to `4.2.3`. Addressed in [#5497](https://togithub.com/cypress-io/cypress/pull/5497).
### [`v3.5.0`](https://togithub.com/cypress-io/cypress/releases/v3.5.0)
[Compare Source](https://togithub.com/cypress-io/cypress/compare/v3.4.1...v3.5.0)
_Released 10/23/2019_
**Features:**
- We now record video during `cypress run` in Chrome, Chromium, and Canary browsers. This requires passing the name or path of the Chrome browser to the [`--browser` flag](https://on.cypress.io/command-line#cypress-run-browser-lt-browser-name-or-path-gt). Addresses [#4608](https://togithub.com/cypress-io/cypress/issues/4608).
- There is a new [`.rightclick()`](https://on.cypress.io/rightclick) command to right click on DOM elements. Addresses [#53](https://togithub.com/cypress-io/cypress/issues/53).
- Cypress now accepts a [`--config-file` argument](https://on.cypress.io/command-line#cypress-run-config-file-lt-config-file-gt) to specify a different file to be used for Cypress configuration. You can also pass `false` to the `--config-file` to not use any configuration file. Addresses [#1369](https://togithub.com/cypress-io/cypress/issues/1369).
- You can now use your system's Node version by setting the [`nodeVersion`](https://on.cypress.io/configuration#Node-version) to `system` in your configuration. This Node version will be used to build files in your [`integrationFolder`](https://on.cypress.io/configuration#Folders-Files) and "`supportFile`" configuration#Folders-Files and also be used to execute code in your "`pluginsFile`" configuration#Folders-Files. If not set, Cypress will continue to use the Node version bundled with Cypress. Addresses [#4432](https://togithub.com/cypress-io/cypress/issues/4432).
- "`.dblclick()` dblclick now accepts `position`, `x`, and `y` arguments. Addresses [#116](https://togithub.com/cypress-io/cypress/issues/116).
- "`.dblclick()` dblclick now accepts `force` and `multiple` in its `options`. Addresses [#116](https://togithub.com/cypress-io/cypress/issues/116).
- [`.screenshot()`](https://on.cypress.io/screenshot) now accepts a `padding` argument when screenshotting elements that will alter the dimensions of the screenshot of the element. Addresses [#4440](https://togithub.com/cypress-io/cypress/issues/4440).
- [`cy.visit()`](https://on.cypress.io/visit) now accepts a `qs` option representing an object of query paramaters to be used in the URL. Addresses [#5034](https://togithub.com/cypress-io/cypress/issues/5034).
- [`cy.viewport()`](https://on.cypress.io/viewport) now allows for viewport sizes up to 4,000 pixels. Addresses [#5181](https://togithub.com/cypress-io/cypress/issues/5181).
- [`cy.viewport()`](https://on.cypress.io/viewport) accepts new size presets for `iphone-xr`, `iphone-x`, `samsung-s10` and `samsung-note9`. Addresses [#4967](https://togithub.com/cypress-io/cypress/issues/4967).
- Passing a `~` to `CYPRESS_CACHE_FOLDER` will automatically resolve to the user's home directory. Addresses [#5386](https://togithub.com/cypress-io/cypress/issues/5386).
**Bugfixes:**
- "`.dblclick()` dblclick and [`.click()`](https://on.cypress.io/click) now fire all appropriate mouse events including `mouseover`, `mousemove`, `mouseout`, `pointerdown`, `pointerup`, and `pointermove`. Fixes [#1016](https://togithub.com/cypress-io/cypress/issues/1016), [#1847](https://togithub.com/cypress-io/cypress/issues/1847), [#2045](https://togithub.com/cypress-io/cypress/issues/2045), [#2521](https://togithub.com/cypress-io/cypress/issues/2521), [#2768](https://togithub.com/cypress-io/cypress/issues/2768), [#2928](https://togithub.com/cypress-io/cypress/issues/2928), [#2957](https://togithub.com/cypress-io/cypress/issues/2957), and [#3224](https://togithub.com/cypress-io/cypress/issues/3224).
- We updated "`.dblclick()` dblclick to follow the same actionability checks as [`.click()`](https://on.cypress.io/click). Fixes [#3798](https://togithub.com/cypress-io/cypress/issues/3798).
- Coordinates clicked during [`.click()`](https://on.cypress.io/click) are now correct if the element being clicked is within an iframe. Fixes [#4347](https://togithub.com/cypress-io/cypress/issues/4347).
- We now allow [`.type()`](https://on.cypress.io/type) to be used on any DOM element. The element will receive all of the type events. Fixes [#2166](https://togithub.com/cypress-io/cypress/issues/2166) and [#3661](https://togithub.com/cypress-io/cypress/issues/3661).
- If a typeable element gains focus during [`.type()`](https://on.cypress.io/type), Cypress now continues typing into the newly focused element. Fixes [#2240](https://togithub.com/cypress-io/cypress/issues/2240).
- We now correctly borrow the property getter for `maxLength` when using [.type()](https://on.cypress.io/type) on an input. Fixes [#4587](https://togithub.com/cypress-io/cypress/issues/4587).
- We fixed an issue where `datetime-local` inputs would not have their `value` updated during [`.type()`](https://on.cypress.io/type). Fixes [#2613](https://togithub.com/cypress-io/cypress/issues/2613).
- [`.type()`](https://on.cypress.io/type) now allows you to type `-` into number inputs with text selection. Fixes [#4767](https://togithub.com/cypress-io/cypress/issues/4767).
- We now fire an `input` event when using [`.type()`](https://on.cypress.io/type) typing `{enter}` inserts a newline. Fixes [#4870](https://togithub.com/cypress-io/cypress/issues/4870).
- We no longer input text when non-`{shift}` modifier keys are typed in [`.type()`](https://on.cypress.io/type). Fixes [#5424](https://togithub.com/cypress-io/cypress/issues/5424).
- We now properly send the `code` property during keyboard events triggered during [`.type()`](https://on.cypress.io/type). Fixes [#3722](https://togithub.com/cypress-io/cypress/issues/3722)
- Cypress now sends `screenX` and `screenY` properties to events triggered using [`.trigger()`](https://on.cypress.io/trigger). Fixes [#3187](https://togithub.com/cypress-io/cypress/issues/3187).
- We fixed a bug where Cypress could not intercept traffic sent through [`cy.visit()`](https://on.cypress.io/visit) to IP addresses over HTTPS, leading to `ERR_SSL_VERSION_OR_CIPHER_MISMATCH` errors. Fixes [#771](https://togithub.com/cypress-io/cypress/issues/771).
- We fixed a bug introduced in [3.3.0](https://on.cypress.io/changelog#3-3-0) where some HTTPS sites failed to load during [`cy.visit()`](https://on.cypress.io/visit) and [`cy.request()`](https://on.cypress.io/request) with a "handshake failed" error. Fixes [#4394](https://togithub.com/cypress-io/cypress/issues/4394).
- We fixed a bug where ECC SSL Certificates were not supported during [`cy.visit()`](https://on.cypress.io/visit) that was introduced in [3.3.0](https://on.cypress.io/changelog#3-3-0). Fixes [#4368](https://togithub.com/cypress-io/cypress/issues/4368).
- We fixed an issue introduced in [3.4.0](https://on.cypress.io/changelog#3-4-0) that would cause the Selector Playground to not properly highlight the currently hovered element. Fixes [#4872](https://togithub.com/cypress-io/cypress/issues/4872).
- [`Cypress.env()`](https://on.cypress.io/env) now escapes ` Githubissues.
Githubissues is a development platform for aggregating issues.
This PR contains the following updates:
3.4.0
->3.6.1
Release Notes
cypress-io/cypress
### [`v3.6.1`](https://togithub.com/cypress-io/cypress/releases/v3.6.1) [Compare Source](https://togithub.com/cypress-io/cypress/compare/v3.6.0...v3.6.1) _Released 11/08/2019_ **Bugfixes:** - The Electron browser no longer hangs when testing applications that have a prompt in a `beforeunload` handler. Fixes [#2118](https://togithub.com/cypress-io/cypress/issues/2118). - We fixed a regression in [3.5.0](https://on.cypress.io/changelog-3-5-0) where HTTP redirects could cause strange behavior, including cookies not being set as expected, leading to authentication issues and other problems. Fixes [#5436](https://togithub.com/cypress-io/cypress/issues/5436) and [#5432](https://togithub.com/cypress-io/cypress/issues/5432). - When using [`cy.setCookie()`](https://on.cypress.io/setcookie) with the same `options` Object, Cypress now correctly sets the new cookie instead of the one passed into a previous [`cy.setCookie()`](https://on.cypress.io/setcookie). Fixes [#2701](https://togithub.com/cypress-io/cypress/issues/2701). - We fixed a regression in [3.5.0](https://on.cypress.io/changelog-3-5-0) where [`cy.clearCookie()`](https://on.cypress.io/clearcookie) would not act as expected when using certain `baseUrls`. Fixes [#5453](https://togithub.com/cypress-io/cypress/issues/5453). - Cypress no longer crashes with the error `Failed to parse or set cookie named "xxx"` when loading certain websites. Fixes [#4990](https://togithub.com/cypress-io/cypress/issues/4990). - Cypress now sends the expected headers or request body in a [`cy.visit()`](https://on.cypress.io/visit) to an HTTPS URL using the default port, 443. Fixes [#5367](https://togithub.com/cypress-io/cypress/issues/5367). - We fixed a regression in [3.6.0](https://on.cypress.io/changelog-3-6-0) where Cypress would crash with `TypeError: Cannot read property 'length' of null` on some network requests. Fixes [#5585](https://togithub.com/cypress-io/cypress/issues/5585). - We fixed a regression in [3.5.0](https://on.cypress.io/changelog-3-5-0) that caused the red target to be rendered incorrectly when specifying offset coordinates to [`.click()`](https://on.cypress.io/click). Fixes [#5635](https://togithub.com/cypress-io/cypress/issues/5635). - We fixed a regression in [3.6.0](https://on.cypress.io/changelog-3-6-0) that was causing an incorrect element to receive the `click` event during action commands. Fixes [#5578](https://togithub.com/cypress-io/cypress/issues/5578). - We fixed a regression in [3.5.0](https://on.cypress.io/changelog-3-5-0) causing text after using modifier keys in [`.type()`](https://on.cypress.io/type) to not be typed. Fixes [#5622](https://togithub.com/cypress-io/cypress/issues/5622). - Elements with `backface-visibility: hidden;` are now accounted for when asserting on the elemtent's visibility. Fixes [#2985](https://togithub.com/cypress-io/cypress/issues/2985). - We fixed a bug where a failed Cypress commands would incorrectly throw `cannot read property 'replace' of undefined` if the error's stack was `undefined`. Fixes [#1669](https://togithub.com/cypress-io/cypress/issues/1669). - The 'Log In' modal within Cypress when setting up a project now correctly closes when manually closed. Fixes [#5631](https://togithub.com/cypress-io/cypress/issues/5631). **Misc:** - We improved the user experience around inspecting events fired during [`.click()`](https://on.cypress.io/click) and [`.type()`](https://on.cypress.io/type) commands within the console. Addresses [#5553](https://togithub.com/cypress-io/cypress/issues/5553). - We increased the timeout when connecting to the "Developer Tools Protocol" from 5 seconds to 20 seconds and also added logging for when the connection takes longer than 5 seconds. Addresses [#5610](https://togithub.com/cypress-io/cypress/issues/5610). - There is no longer a warning about `Promise.defer` appearing in stderr when running with video recording enabled. Addresses [#5611](https://togithub.com/cypress-io/cypress/issues/5611). - Types for [`.rightclick()`](https://on.cypress.io/rightclick) and [`.dblclick()`](https://on.cypress.io/dblclick) have been updated to correctly reflect their accepted options. Addresses [#5617](https://togithub.com/cypress-io/cypress/issues/5617). - We're continuing to make progress in converting our codebase from CoffeeScript to JavaScript. Addresses [#2690](https://togithub.com/cypress-io/cypress/issues/2690) in [#5556](https://togithub.com/cypress-io/cypress/pull/5556) ### [`v3.6.0`](https://togithub.com/cypress-io/cypress/releases/v3.6.0) [Compare Source](https://togithub.com/cypress-io/cypress/compare/v3.5.0...v3.6.0) _Released 10/31/2019_ **Features:** - [`testFiles`](https://on.cypress.io/configuration#Folders-Files) now also accepts an Array of glob patterns when specifying what test files to load in configuration. Addresses [#5401](https://togithub.com/cypress-io/cypress/issues/5401). **Bugfixes:** - We fixed a regression in [3.5.0](https://on.cypress.io/changelog-3-5-0) where the maximum size of an HTTP header or body in a stubbed [`cy.route()`](https://on.cypress.io/route) was limited to 8kb causing requests to fail with a 431 HTTP error. Fixes [#5431](https://togithub.com/cypress-io/cypress/issues/5431). - We fixed a bug where certain types of uncaught errors originating from the application under test would not route through the [`uncaught:exception`](https://on.cypress.io/catalog-of-events#Uncaught-Exceptions) handler, and thus could not caught and ignored. These errors will also now correctly indicate that they came from application code. Fixes [#987](https://togithub.com/cypress-io/cypress/issues/987). - We fixed a regression in [3.5.0](https://on.cypress.io/changelog-3-5-0) that would throw an error during `cypress verify` when running as a non-root user on a non-Windows machine. We now always set the `--no-sandbox` flag when verifying in Electron, even when running as a non-root user. Fixes [#5434](https://togithub.com/cypress-io/cypress/issues/5434). - We fixed a regression in [3.5.0](https://on.cypress.io/changelog-3-5-0) where sometimes cookies were not set on the correct URL during a redirect inside of a [`cy.visit()`](https://on.cypress.io/visit) or [`cy.request()`](https://on.cypress.io/request). Fixes [#5432](https://togithub.com/cypress-io/cypress/issues/5432). - We fixed a regression in [3.5.0](https://on.cypress.io/changelog-3-5-0) causing environment variables containing unicode values to be incorrectly resolved when read via [`Cypress.env()`](https://on.cypress.io/env). Fixes [#5435](https://togithub.com/cypress-io/cypress/issues/5435). - We fixed a regression in [3.5.0](https://on.cypress.io/changelog-3-5-0) that prevented use of `.click()` or `.type()` inside of an iframe element. Fixes [#5449](https://togithub.com/cypress-io/cypress/issues/5449). Fixes [#5435](https://togithub.com/cypress-io/cypress/issues/5435). - We now throw the proper error message when an element cannot be interacted with due to being covered by an element with `position:fixed`. Fixes [#5430](https://togithub.com/cypress-io/cypress/issues/5430). - We fixed a regression in [3.5.0](https://on.cypress.io/changelog-3-5-0) that caused some `click` events to not be sent to the correct elements during `.click()`. Fixes [#5459](https://togithub.com/cypress-io/cypress/issues/5459). - We updated `.type()` to properly respect focus selection changes during typing. Fixes [#5456](https://togithub.com/cypress-io/cypress/issues/5456). - We fixed a regression in [3.5.0](https://on.cypress.io/changelog-3-5-0) that caused selected text to be overwritten while typing a modifer key during `.type()`. Fixes [#5439](https://togithub.com/cypress-io/cypress/issues/5439). - We now send all the proper events during `.type()` to input elements with type `date`, `time`, and `datetime-local` so that it now behaves as it did prior to [3.5.0](https://on.cypress.io/changelog-3-5-0). Fixes [#5476](https://togithub.com/cypress-io/cypress/issues/5476). - We now properly render iframe placeholder content when previewing DOM snapshots. Fixes [#5295](https://togithub.com/cypress-io/cypress/issues/5295). **Misc:** - We no longer log the default option `{multiple: true}` in the Command Log or the console during [`cy.dblclick()`](https://on.cypress.io/dblclick). Addresses [#5406](https://togithub.com/cypress-io/cypress/issues/5406). - The text color of inactive tabs within the Cypress Chrome browser has been set to white for better readability. Addresses [#1661](https://togithub.com/cypress-io/cypress/issues/1661). **Dependency Updates** - Replaced `express-handlebars` with `squirrelly` to reduce dependency size. Addressed in [#5521](https://togithub.com/cypress-io/cypress/pull/5521). - Upgraded `graceful-fs` from `4.2.0` to `4.2.3`. Addressed in [#5497](https://togithub.com/cypress-io/cypress/pull/5497). ### [`v3.5.0`](https://togithub.com/cypress-io/cypress/releases/v3.5.0) [Compare Source](https://togithub.com/cypress-io/cypress/compare/v3.4.1...v3.5.0) _Released 10/23/2019_ **Features:** - We now record video during `cypress run` in Chrome, Chromium, and Canary browsers. This requires passing the name or path of the Chrome browser to the [`--browser` flag](https://on.cypress.io/command-line#cypress-run-browser-lt-browser-name-or-path-gt). Addresses [#4608](https://togithub.com/cypress-io/cypress/issues/4608). - There is a new [`.rightclick()`](https://on.cypress.io/rightclick) command to right click on DOM elements. Addresses [#53](https://togithub.com/cypress-io/cypress/issues/53). - Cypress now accepts a [`--config-file` argument](https://on.cypress.io/command-line#cypress-run-config-file-lt-config-file-gt) to specify a different file to be used for Cypress configuration. You can also pass `false` to the `--config-file` to not use any configuration file. Addresses [#1369](https://togithub.com/cypress-io/cypress/issues/1369). - You can now use your system's Node version by setting the [`nodeVersion`](https://on.cypress.io/configuration#Node-version) to `system` in your configuration. This Node version will be used to build files in your [`integrationFolder`](https://on.cypress.io/configuration#Folders-Files) and "`supportFile`" configuration#Folders-Files and also be used to execute code in your "`pluginsFile`" configuration#Folders-Files. If not set, Cypress will continue to use the Node version bundled with Cypress. Addresses [#4432](https://togithub.com/cypress-io/cypress/issues/4432). - "`.dblclick()` dblclick now accepts `position`, `x`, and `y` arguments. Addresses [#116](https://togithub.com/cypress-io/cypress/issues/116). - "`.dblclick()` dblclick now accepts `force` and `multiple` in its `options`. Addresses [#116](https://togithub.com/cypress-io/cypress/issues/116). - [`.screenshot()`](https://on.cypress.io/screenshot) now accepts a `padding` argument when screenshotting elements that will alter the dimensions of the screenshot of the element. Addresses [#4440](https://togithub.com/cypress-io/cypress/issues/4440). - [`cy.visit()`](https://on.cypress.io/visit) now accepts a `qs` option representing an object of query paramaters to be used in the URL. Addresses [#5034](https://togithub.com/cypress-io/cypress/issues/5034). - [`cy.viewport()`](https://on.cypress.io/viewport) now allows for viewport sizes up to 4,000 pixels. Addresses [#5181](https://togithub.com/cypress-io/cypress/issues/5181). - [`cy.viewport()`](https://on.cypress.io/viewport) accepts new size presets for `iphone-xr`, `iphone-x`, `samsung-s10` and `samsung-note9`. Addresses [#4967](https://togithub.com/cypress-io/cypress/issues/4967). - Passing a `~` to `CYPRESS_CACHE_FOLDER` will automatically resolve to the user's home directory. Addresses [#5386](https://togithub.com/cypress-io/cypress/issues/5386). **Bugfixes:** - "`.dblclick()` dblclick and [`.click()`](https://on.cypress.io/click) now fire all appropriate mouse events including `mouseover`, `mousemove`, `mouseout`, `pointerdown`, `pointerup`, and `pointermove`. Fixes [#1016](https://togithub.com/cypress-io/cypress/issues/1016), [#1847](https://togithub.com/cypress-io/cypress/issues/1847), [#2045](https://togithub.com/cypress-io/cypress/issues/2045), [#2521](https://togithub.com/cypress-io/cypress/issues/2521), [#2768](https://togithub.com/cypress-io/cypress/issues/2768), [#2928](https://togithub.com/cypress-io/cypress/issues/2928), [#2957](https://togithub.com/cypress-io/cypress/issues/2957), and [#3224](https://togithub.com/cypress-io/cypress/issues/3224). - We updated "`.dblclick()` dblclick to follow the same actionability checks as [`.click()`](https://on.cypress.io/click). Fixes [#3798](https://togithub.com/cypress-io/cypress/issues/3798). - Coordinates clicked during [`.click()`](https://on.cypress.io/click) are now correct if the element being clicked is within an iframe. Fixes [#4347](https://togithub.com/cypress-io/cypress/issues/4347). - We now allow [`.type()`](https://on.cypress.io/type) to be used on any DOM element. The element will receive all of the type events. Fixes [#2166](https://togithub.com/cypress-io/cypress/issues/2166) and [#3661](https://togithub.com/cypress-io/cypress/issues/3661). - If a typeable element gains focus during [`.type()`](https://on.cypress.io/type), Cypress now continues typing into the newly focused element. Fixes [#2240](https://togithub.com/cypress-io/cypress/issues/2240). - We now correctly borrow the property getter for `maxLength` when using [.type()](https://on.cypress.io/type) on an input. Fixes [#4587](https://togithub.com/cypress-io/cypress/issues/4587). - We fixed an issue where `datetime-local` inputs would not have their `value` updated during [`.type()`](https://on.cypress.io/type). Fixes [#2613](https://togithub.com/cypress-io/cypress/issues/2613). - [`.type()`](https://on.cypress.io/type) now allows you to type `-` into number inputs with text selection. Fixes [#4767](https://togithub.com/cypress-io/cypress/issues/4767). - We now fire an `input` event when using [`.type()`](https://on.cypress.io/type) typing `{enter}` inserts a newline. Fixes [#4870](https://togithub.com/cypress-io/cypress/issues/4870). - We no longer input text when non-`{shift}` modifier keys are typed in [`.type()`](https://on.cypress.io/type). Fixes [#5424](https://togithub.com/cypress-io/cypress/issues/5424). - We now properly send the `code` property during keyboard events triggered during [`.type()`](https://on.cypress.io/type). Fixes [#3722](https://togithub.com/cypress-io/cypress/issues/3722) - Cypress now sends `screenX` and `screenY` properties to events triggered using [`.trigger()`](https://on.cypress.io/trigger). Fixes [#3187](https://togithub.com/cypress-io/cypress/issues/3187). - We fixed a bug where Cypress could not intercept traffic sent through [`cy.visit()`](https://on.cypress.io/visit) to IP addresses over HTTPS, leading to `ERR_SSL_VERSION_OR_CIPHER_MISMATCH` errors. Fixes [#771](https://togithub.com/cypress-io/cypress/issues/771). - We fixed a bug introduced in [3.3.0](https://on.cypress.io/changelog#3-3-0) where some HTTPS sites failed to load during [`cy.visit()`](https://on.cypress.io/visit) and [`cy.request()`](https://on.cypress.io/request) with a "handshake failed" error. Fixes [#4394](https://togithub.com/cypress-io/cypress/issues/4394). - We fixed a bug where ECC SSL Certificates were not supported during [`cy.visit()`](https://on.cypress.io/visit) that was introduced in [3.3.0](https://on.cypress.io/changelog#3-3-0). Fixes [#4368](https://togithub.com/cypress-io/cypress/issues/4368). - We fixed an issue introduced in [3.4.0](https://on.cypress.io/changelog#3-4-0) that would cause the Selector Playground to not properly highlight the currently hovered element. Fixes [#4872](https://togithub.com/cypress-io/cypress/issues/4872). - [`Cypress.env()`](https://on.cypress.io/env) now escapes ` Githubissues.