9.3.0

Released Released on January 17, 2022

Features:

  • Added a new Cypress command, called .selectFile(), to select a file or files in an HTML5 input element or simulate dragging a file or files into the browser. The API is similar to cypress-file-upload and we have provided a migration guide for previous users of that plugin. For more details, see our blog post. Fixes #19524 and #170.

  • Exposed the Buffer polyfill, as Cypress.Buffer, to enable working with binary data. Addressed in #19524.

  • Added the CYPRESS_DOWNLOAD_PATH_TEMPLATE environment variable which can be set to a string template for building the download URL for the Cypress binary. This environment variable is useful for users who are downloading the Cypress binary from a proxy that is not one-to-one with the Cypress's default download url. More information can be found in the Install Binary documentation. Fixes #15697.

Bugfixes:

  • Fixed an issue where the --spec CLI parameter was not working properly when passing multiple glob patterns that are separated by commas. Fixes #16102.

  • Fixed an issue with how the CYPRESS_VERIFY_TIMEOUT environment variable was read so it can set in a project's package.json or its .npmrc. Fixes #19559.

Dependency Updates:

  • Upgraded graceful-fs from 4.2.0 to 4.2.9. This upgrade resolves issues observed with using graceful-fs v4.2.0 with resolve v1.21+. Addressed in #19676 and resolves #19610.

    • NOTE: This upgrade to graceful-fs breaks Cypress's compatibility with Yarn 2. We have observed errors with Yarn 2.4.2 with graceful-fs 4.2.9. Before this change, Cypress had minimal Yarn 2 support (see #6377). Between Yarn 3 fixing multiple bugs and the migration path from Yarn 2 to Yarn 3 being minimal, we felt the best step forward was to support and recommend Yarn 3 over Yarn 2.

  • Upgraded electron from 15.2.0 to 15.3.4. Addressed in #19351.