Skip to content
This repository was archived by the owner on Jan 23, 2024. It is now read-only.

Conversation

@renovate
Copy link

@renovate renovate bot commented Feb 7, 2020

This PR contains the following updates:

Package Type Update Change
cypress devDependencies major 3.8.3 -> 4.9.0

Release Notes

cypress-io/cypress

v4.9.0

Compare Source

Released 6/23/2020

Features:

  • An animated progress bar now displays on every command in the Command Log indicating how long the command has left to run before reaching its command timeout. Addresses #​7642.
  • There is now an experimentalFetchPolyfill configuration option. When this option is true, Cypress will automatically replace window.fetch with a polyfill that Cypress can spy on and stub. Addresses #​7710.
  • You can now pass a --quiet flag to cypress run to silence any Cypress specific output from stdout. Addresses #​7714.

Bugfixes:

  • cy.wait() now correctly resolves when waiting for XHR requests that contain resource-like text in the XHR's query params or hash (like .js, .html, .css). #​7280.
  • We fixed a regression in 4.6.0 where errors thrown from the application under test as strings would not be correctly handled. Fixes #​7590.
  • We fixed a regression in 4.8.0 where .click() would hang if the subject had a shadow root and experimentalShadowDomSupport was not enabled. Fixes #​7679.
  • We fixed a regression in 4.6.0 so that .should('have.value') now properly asserts against <progress>, <meter> or <li> element's values. Fixes #​7603.
  • Cypress no longer responds with 413 responses during a recorded cypress run when the stdout is too large. Fixes #​7548.
  • We fixed an issue where Cypress could exit successfully even with failing tests when launched in global mode. Fixes #​7755.
  • Assertion logs now properly display as parent commands in the Command Log regardless of what is in the beforeEach hook. Fixes #​7731.
  • When experimentalShadowDomSupport is enabled, querying shadow dom in certain situations will no longer cause the error Cannot read property 'length' of undefined during cypress run. Fixes #​7676.
  • Highlighting of elements upon hover of a command in the Command Log are now visible when targeting absolute positioned elements. Fixes #​7762.
  • cypress run will no longer crash when provided an empty string to the --project flag. Fixes #​7743.

Misc:

  • There is now a loading state to indicated when tests are loading in the Command Log. Addresses #​7700.
  • The type definitions for fixturesFolder, pluginsFile, screenshotsFolders and videoCompression have been updated to allow false TypeScript types. Addresses #​7654.
  • The type definitions for cy.wait(ms) now correctly yield the type of the previous subject. Addresses #​7682.
  • The type definitions now allow for the 'key' keyword when chaining off 'any' or 'all' assertion chainers. Addresses #​7665.

Dependency Updates:

  • Upgraded arch from 2.1.1 to 2.1.2. Addressed in #​7672.
  • Upgraded eventemitter2 from 4.1.2 to 6.4.2. Addressed in #​7705 and #​7707.
  • Upgraded getos from 3.1.1 to 3.2.1. Addressed in #​7685.
  • Upgraded is-installed-globally from 0.1.0 to 0.3.2. Addressed in #​7703.
  • Upgraded jimp from 0.12.0 to 0.13.0. Addressed in #​7618.
  • Upgraded moment from 2.24.0 to 2.26.0. Addressed in #​7718.
  • Upgraded signal-exit from 3.0.2 to 3.0.3. Addressed in #​7738.

v4.8.0

Compare Source

Released 6/8/2020

Features:

Bugfixes:

  • Upon domain navigation, before and after hooks defined in completed suites no longer erroneously rerun. Fixes #​1987.
  • Errors thrown within root level after hooks now correctly display in the Test Runner's Command Log. Fixes #​2296.
  • We fixed a regression in 4.6.0 where an XHR response without a body would cause Cypress to throw Cannot read property '__error' of null. Fixes #​7518.
  • We fixed a regression in 4.6.0 where using cy.visit() to an authenticated URL would error with Request cannot be constructed from a URL that includes credentials: /__cypress/runner/./wasm/mappings.wasm Fixes #​7481.
  • We now properly load code from the pluginsFile or supportFile when they are TypeScript files. Fixes #​7459.
  • utf-8 characters now properly display within error code frames. Fixes #​7507.
  • Errors thrown in a cy.on('fail', fn) fail handler now display a stack trace and code frame pointing to the origin of the error. Fixes #​7512.
  • .click() now properly clicks on wrapped inline elements when the first child element in the parent element has no width or height. Fixes #​7434 and #​7012.
  • cy.wrap() now properly respects the timeout option. It also better handles situations when passed a promise that never resolves. Fixes #​5980.
  • When experimentalComponentTesting is enabled, Cypress will no longer exit with SIGABRT in certain situations. Fixes #​7572.
  • We fixed a regression in 3.8.0 where the "Tests" button in the Test Runner wouldn't take you back to the tests list in all browsers. Fixes #​5948.
  • Using the S shortcut during .pause() no longer does anything. This prevents the Test Runner from getting into a 'stuck' state. Fixes #​6867.

Misc:

  • The design of errors and some iconography displayed in the Test Runner's Command Log have been updated. Addresses #​7499, #​7542 and #​7563.
  • The commands in the Test Runner's Command Log now display in the same casing as the original command. Addresses #​5773.
  • The navigation links in the Test Runner now display the correct CSS styles when focused. Addresses #​7491.
  • Cypress.config() now has TypeScript types for the taskTimeout option. Addresses #​7531.
  • TypeScript types for cy.screenshot() options and Cypress.log() have been updated to be more accurate. Addresses #​7445.
  • TypeScript types for Cypress.automation have been added. Addresses #​7519.
  • We now display a more accurate error message when passing a browser to the --browser flag that is not supported by Cypress. Addresses #​6979.
  • We're continuing to make progress in converting our codebase from CoffeeScript to JavaScript. Addresses #​2690 in #​7588 and #​7591.

Dependency Updates:

  • Upgraded chrome-remote-interface from 0.28.1 to 0.28.2. Addressed in #​7615.
  • Upgraded electron from 8.3.0 to 8.3.1. Addressed in #​7599.

v4.7.0

Compare Source

Released 5/26/2020

Features:

  • cy.request() now supports an encoding option that can be used to set the encoding of the response body, defaulting to utf-8. Addresses #​2029 and #​3576.

Bugfixes:

  • We fixed a regression in 4.6.0 where the address bar of the application under test would disappear when scrolling commands ran and the application under test would visually shift after taking screenshots. Fixes #​7443 and #​7466.
  • We fixed a regression where test runs could hang when loading spec files with source maps. Fixes #​7464.

Misc:

  • We now display a more descriptive error message when the plugins file does not export a function. Addresses #​6611.

v4.6.0

Compare Source

Released 5/20/2020

Features:

  • Errors in the Test Runner now display a code frame to preview where the failure occurred with the relevant file, line number, and column number highlighted. Clicking on the file link will open the file in your preferred file opener and highlight the line and column in editors that support it. Addresses #​3762.
  • Cypress now utilizes source maps to enhance the error experience. Stack traces are translated so that your source files are shown instead of the generated file that is loaded by the browser. Cypress will include an inline source map in your spec file. If you modify the preprocessor, ensure that inline source maps are enabled to get the same experience. Users of @cypress/webpack-preprocessor should upgrade to v5.4.1 or later of the package which will correctly inline source maps. Addresses #​881, #​1761 and #​3966.
  • Cypress now enables AST-based JS/HTML rewriting when setting the experimentalSourceRewriting configuration option to true. Addresses #​5273.
  • Number arguments passed to have.text, have.id, have.data, have.value, and have.attr assertions chainers are now automatically cast to strings for comparison. Addresses #​7314.

Bugfixes:

  • Default TypeScript options are now set to module: commonJS which Node.js and the browser expect. This fixes a situation where setting a different module in a tsconfig.json would cause errors to throw if you had export, import or async keywords in your code. Fixes #​7005, #​7011, #​7043, and #​7151.
  • When experimentalSourceRewriting is enabled, setting location or location.href to a relative href, or using location.replace or location.assign with a relative href will no longer navigate the AUT to the wrong URL. Fixes #​3975 and #​3994.
  • When experimentalSourceRewriting is enabled, the use of window.top and window.parent will no longer cause the AUT to break out of the Cypress iframe. Fixes #​5271 and #​1467.
  • When experimentalSourceRewriting is enabled, calls to window.frames, window.parent.frames, and other frames will no longer point to the wrong reference after being proxied through Cypress. Fixes #​2664.
  • When experimentalSourceRewriting is enabled, scripts using the integrity attribute for sub-resource integrity (SRI) will now load after being proxied through Cypress. Fixes #​2393.
  • When experimentalSourceRewriting is enabled, the use of document.location to set the URL will no longer navigate the AUT to the wrong URL. Fixes #​7402.
  • Type definitions will no longer conflict when running Cypress in a project with Jest. Fixes #​3536.
  • We increased the timeout for launching Firefox from 2.5 seconds to 50 seconds. Previously, users hitting this limit would encounter a "cannot open socket" error; now, the error will be wrapped. Fixes #​7159.
  • .click will now click in the correct coordinates when either x or y coordinate options are zero. Fixes #​7319.
  • Cypress no longer displays onError is not a function when a browser can't connect. Fixes #​7217.
  • You can now pass the force: true option to .select() to select options within a disabled <select>. Addresses #​107.
  • We now throw an error when attempting to .select() an <option> within a disabled <optgroup>. Fixes #​7226.
  • We fixed a regression in 4.3.0 where the message output during errors were not formatted correctly. Fixes #​6924.
  • Using Cypress._.capitalize now correctly behaves the same as Lodash's capitalize method. Fixes #​7222.
  • When experimentalComponentTesting is enabled, clicking on a component spec now watches the correct file without assuming it is an integration file. Fixes #​7244.
  • Firefox video recording no longer crashes Cypress when running very short spec files. Fixes #​6408.
  • Applications containing a DOM element with an id attribute containing 'jquery' will no longer throw an error during cy.visit(). Fixes #​6193.
  • Long errors generated when compiling or bundling the test file are now horizontally scrollable. Fixes #​6898.

Misc:

  • Cypress no longer requires write access to the root of the project, it instead will display a warning when no write access is given. Addresses #​1281.
  • We increased the timeout for launching Chrome from 20 seconds to 50 seconds. Addressed in #​7372.
  • We increased the timeout for macOS or Linux to exit from a --version command when looking for available browsers from 5 seconds to 30 seconds. Addressed in #​7366.
  • We improved error handling when Cypress launches Chromium-family browsers. Addresses #​6518.
  • We now export Cypress.ConfigOptions types as a partial of the full options interface. Addresses #​7238.
  • We're continuing to make progress in converting our codebase from CoffeeScript to JavaScript. Addresses #​2690 in #​7162, #​7216, #​7227, #​7320, #​7232, and #​7345.

Dependency Updates:

  • Upgraded @cypress/browserify-preprocessor from 2.2.2 to 2.2.3. Addressed in #​7291.
  • Upgraded cookie-parser from 1.4.4 to 1.4.5. Addressed in #​7389.
  • Upgraded cypress-multi-reporters from 1.2.4 to 1.4.0. Addressed in #​7431.
  • Upgraded electron from 8.2.3 to 8.3.0. Addressed in #​7236 and #​7387.
  • Upgraded image-size from 0.7.4 to 0.8.3. Addressed in #​7236.
  • Upgraded jimp from 0.9.3 to 0.12.0. Addressed in #​7408.
  • Upgraded return-deep-diff from 0.3.0 to 0.4.0. Addressed in #​7292.

v4.5.0

Compare Source

Released 4/28/2020

Features:

Bugfixes:

  • Custom Mocha reporters will now correctly use the version of Mocha bundled with Cypress. Fixes #​3537 and #​6984.
  • We better account for word boundaries in application scripts when modifyObstructiveCode is true. Fixes #​7138.
  • Fixed an issue where iterators in TypeScript were not properly transpiled. Fixes #​7098.

Misc:

  • The update window in the Test Runner now encourages yarn users to yarn upgrade Cypress instead of yarn add to help prevent installing 2 versions of Cypress when using yarn workspaces. Addressed in #​7101.
  • We're continuing to make progress in converting our codebase from CoffeeScript to JavaScript. Addresses #​2690 in #​7031 and #​7097.

Dependency Updates:

  • Upgraded electron from 8.2.0 to 8.2.3. Addressed in #​7079.

v4.4.1

Compare Source

Released 4/20/2020

Bugfixes:

  • Cypress can now launch on systems where Chromium is installed via Snapcraft. Fixes #​7020.
  • We now check whether the mouseup event's target element is detached before issuing the click event during .click(). Fixes #​6923.
  • We fixed a regression in 3.8.1 where the Test Runner could send an undefined organization ID during project setup when the default organization is preselected. Fixes #​7013.
  • We fixed a regression in 4.4.0 that caused projects to include bundled TypeScript. Fixes #​7036.
  • Fixed an issue where sites that set Feature-Policy: document-domain 'none' headers would fail to load in Cypress. Fixes #​6480.

Misc:

  • We fixed some extra spacing displaying below the project nav in the Test Runner. Addresses #​7023
  • The typings for run results when using the Module API now indicate they can be null or undefined. Addresses #​6126.
  • We're continuing to make progress in converting our codebase from CoffeeScript to JavaScript. Addresses #​2690 in #​7004.

v4.4.0

Compare Source

Released 4/13/2020

Features:

  • TypeScript test files are now supported without using special preprocessors plugins. Addresses #​1859.

Bugfixes:

  • We fixed an issue where Cypress could crash with a This socket has been ended by the other party error when testing applications that make use of WebSockets. Fixes #​6458.
  • Uncaught errors thrown from within application or test code now display their proper stack trace. Fixes #​6964.
  • Assertion errors now include a stack trace that includes the calling code. Fixes #​6969.
  • We now clone the options object passed into Cypress commands so that they're not mutated and receive the proper options. Fixes #​3171.
  • We fixed an issue where invalid Set-Cookie values could cause requests to fail with a cannot read property key of undefined error. Now, invalid Set-Cookie values will be ignored. Fixes #​6890.

Misc:

  • Cypress no longer hides output from cypress --version, cypress version, cypress cache path, or cypress cache list commands when npm log level is silent or warn. Addresses #​2705.
  • The cy.task() error message is now more specific about the promise resolution value required. Addresses #​6241.

Dependency Updates:

  • Upgraded http-proxy from 1.17.0 to 1.18.0. Addressed in #​6934.

v4.3.0

Compare Source

Released 3/30/2020

Features:

  • Errors shown in the Test Runner have a new design including an expandable stack trace, better highlighting of code elements, and 'Learn more' links that link to relevant Cypress documentation. This is part of our larger improvements to error display with more exciting features to come. Addresses #​3762.
  • When you open a Cypress project, clicking on the Settings tab and clicking into the Experiments panel will display the experimental features that are available and whether they are enabled for your project.
  • Added support for setting cookie sameSite values via cy.setCookie(). Addresses #​2437.
  • Added experimental support for adding sameSite values to the objects yielded from cy.setCookie(), cy.getCookie(), and cy.getCookies(). Users can enable this by setting the experimentalGetCookiesSameSite configuration value to true. In Cypress 5, this will be the default. Addresses #​2437.
  • Added support for the SameSite cookie attribute in cy.request(), cy.visit(), and proxied HTTP requests. Addresses #​6757.
  • When an assertion is retried (using .should()) and fails, it now shows the diff in the stdout. Addresses #​6722.

Bugfixes:

  • Fixed a regression in 4.2.0 where cypress installation could fail if Git is not installed. Fixes #​6752.
  • Fixed a regression in 3.5.0 where certain HTTP requests could fail with Parse Error: Invalid header value char or Parse Error: Header overflow. Fixes #​5602.
  • Fixed a regression in 4.2.0 where Electron deprecation warnings were printed to stderr in open mode. Fixes #​6750.
  • Cookies set with a Domain containing an unknown TLD are now sent along for all requests. For example, a cookie like foo=bar; Domain=.cypress.test will now be sent during cy.request() to http://local.cypress.test. Fixes #​6628.
  • We fixed a situation where a cross-origin errors could incorrectly throw in Chrome. Fixes #​5270.
  • Visibility checks against vue-fragment elements no longer throw an unexpected error. Fixes #​6745.
  • The stack trace is now properly shown in the console when clicking the command for tests having an .only that throw an error. Fixes #​6744.
  • firefoxGcInterval can now correctly be set to null. Fixes #​6825.
  • Cypress will no longer crash the process if an empty video chunk is received. Addressed in #​6818.
  • Assertions failures on DOM elements no longer show unexpected diffs when they weren't retried. Fixes #​6723.

Misc:

  • Security warnings no longer show in Mac OS when opening Cypress since our application now undergoes notarization from Apple. Addresses #​5791.
  • The previously used spec filter in the Test Runner is now saved and restored for projects without an ID. Addresses #​6739.
  • We collect more env information from Travis builds for potential use in the Cypress Dashboard. Addresses #​6808.
  • We now collect env information from Netlify builds (for example when using {% url "cypress-io/netlify-plugin-cypress" https://github.com/cypress-io/netlify-plugin-cypress) to send along to the Cypress Dashboard. Addresses #​6780.
  • Type added for tag property when using Module API. Addresses #​6795.
  • We're continuing to make progress in converting our codebase from CoffeeScript to JavaScript. Addresses #​2690 in #​6833.

Dependency Updates

  • Upgraded Chrome browser version used during cypress run and when selecting Electron browser in cypress open from 80.0.3987.141 to 80.0.3987.158. Addressed in #​6855.
  • Upgraded electron from 8.1.1 to 8.2.0. This bumps the bundled Chromium to 80.0.3987.158. Addressed in #​6855.
  • Upgraded @benmalka/foxdriver from 0.2.3 to 0.3.0. Addressed in #​6592.
  • Upgraded @cypress/get-windows-proxy from 1.6.0 to 1.6.1. Addressed in #​6823.
  • Upgraded execa from 1.0.0 to 4.0.0. Addressed in #​6013.
  • Upgraded extract-zip from 1.6.7 to 1.7.0. Addresses #​6845 in #​6845.
  • Upgraded firefox-profile from 1.3.0 to 1.3.1. Addressed in #​6594.
  • Upgraded get-port from 5.1.0 to 5.1.1. Addressed in #​6854.
  • Upgraded mime from 1.6.0 to 2.4.4. Addressed in #​6764.
  • Upgraded minimist from 1.2.2 to 1.2.5. Addressed in #​6747.
  • Upgraded squirrelly from 7.7.0 to 7.9.2. Addressed in #​6735.

v4.2.0

Compare Source

Released 3/16/2020

Features:

  • Videos can now be recorded when running Electron in --headed mode. Addresses #​1767.
  • cypress cache list now prints the last time the cached binary was accessed for each version present. Addresses #​6682.

Bugfixes:

  • We fixed a regression in 3.8.3 where HTTPS requests could experience slowdown. Fixes #​6659.
  • We now detect some installations of Firefox that were previously undetected. Fixes #​6669.
  • We fixed a race condition where an asynchronous error could fail to be caught when running the plugins file process. Fixes #​6570.
  • We now more thoroughly ensure the parent of an element exists when recursively calling actionability checks in order to prevent some maximum call stack errors. Fixes #​6707.
  • Specfiles containing & or % characters now correctly run instead of erroring. Fixes #​4210.
  • We added support for running tests on Jira plugins even when Jira scripts were not minified. Fixes #​1436.
  • We fixed a bug causing specs to hang after rerunning tests during cypress open when there was an exception if thrown in an after hook. Fixes #​6619.
  • cypress verify no longer incorrectly prints messaging about this being the first time using that Cypress version. Fixes #​6607.
  • Screenshots no longer fail to be taken in Electron when Cypress DEBUG logs are enabled. Fixes #​6662.

Misc:

  • A warning is now printed when setting the reserved key CYPRESS_INTERNAL_ENV to a non-production value. Addresses #​6436.
  • When DEBUG logs are printed from cypress:launcher, they now print a clearer log during browser detection for easier reading. Addresses #​6700.
  • The Test Runner now renders ANSI colors when there is a syntax error in the spec file. Addresses #​6533.
  • The Test Runner now has an icon indicating whether the specs list parent folder is collapsed. Addresses #​6277.
  • There's better type information for .click, .dblclick, and .rightclick command's position argument. Addresses #​6341.
  • There's a more robust type signature for .its() and .invoke(). Addresses #​6431.
  • Using Cypress.dom.isDetached no longer throws a type error in TypeScript projects. Addresses #​4408.
  • Using cy.clearLocalStorage({ log:false }) no longer throws a type error in TypeScript projects. Addresses #​6615.
  • We added types for Cypress.sinon. Addresses #​6720.
  • We've added the foundational work required to support experimental features in the Test Runner. Addresses #​6257.

Dependency Updates

  • Upgraded Chrome browser version used during cypress run and when selecting Electron browser in cypress open from 78 to 80. Addressed in #​6555.
  • Upgraded electron from 7.1.13 to 8.1.1. This bumps the bundled Chromium to 80.0.3987.141 and the bundled Node to 12.13.0. Addressed in #​6555.
  • Upgraded @ffmpeg-installer/ffmpeg from 1.0.19 to 1.0.20. Addressed in #​6686.
  • Upgraded minimist from 1.2.0 to 1.2.2. Addressed in #​6726.
  • Replaced deprecated request with cypress-io/request. Addressed in #​6679.

v4.1.0

Compare Source

Released 2/28/2020

Features:

  • There is a new cypress info command to see the locally detected browsers and other information related to Cypress. Addresses #​4540.
  • You can now click a 'Try Again' button to recheck if the server at the designated baseUrl is running within the warning message during cypress open. Addresses #​3284.
  • There are "collapse all" and "expand all" links in the Test Runner's "Tests" tab to collapse or expand all folders within the "Integration Tests". Addresses #​6282.
  • The plugins file function's config argument now includes projectRoot (absolute path to the root of the project) and configFile (absolute path to the configuration file). Addresses #​5941.

Bugfixes:

  • Fixed a regression where Cypress could throw a "Maximum call stack size exceeded" error when transmitting a circular object over the internal WebSocket. Fixes #​6582.
  • We fixed an issue where using Chromium-family browsers could cause Cypress to throw a "WebSocket is not open: readyState 3" error under certain conditions. Fixes #​5685.
  • We now more thoroughly ensure the parent of an element exists when recursively calling visibility and existence checks in order to prevent some maximum call stack errors. Fixes #​4373.
  • We fixed an issue where a maximum call stack error would throw in some circumstances when xhr.onreadystatechange is accessed. Fixes #​5864.
  • We fixed a regression in 3.5.0 where typing into an iframe with a body element with the contenteditable attribute would throw an error. Fixes #​5930.
  • We now set the default window size when running Chrome headlessly to 1280x720. Fixes #​6210.
  • We fixed an issue where cypress install would not complete on Node.js 8.0.0. Fixes #​6512 and #​6568.
  • {% url "cy.clearLocalStorage()" clearlocalstorage now properly accepts the log option to disable logging. Fixes #​6342.

Misc:

  • The error messages displayed when rerouting to a non same-origin domain has been updated to more accurately reflect the rules around same-origin policy. Addresses #​6048.
  • We fixed an error message that would display the wrong available browser families during validation. Addressed in #​6517.
  • We fixed some typos in some of our error messages. Addressed in #​6508.
  • We're collecting more environment variables when running Cypress with GitLab CI. Addresses #​6231.
  • The typing of cy.$$ has been updated to distinguish differences between it and Cypress.$. "More info here" $#Cypress-vs-cy Addresses #​2027.
  • We're continuing to make progress in converting our codebase from CoffeeScript to JavaScript. Addresses #​2690 in #​6552, #​6523, and #​6545.

Dependency Updates

  • Upgraded electron from 7.1.10 to 7.1.13. Addressed in #​6566.

v4.0.2

Compare Source

Released 2/14/2020

Bugfixes:

  • Fixed a bug where Firefox tests could fail to run on macOS if another instance of Firefox was open. Addresses #​6380.
  • Updated @cypress/browserify-preprocessor to 2.1.4, fixing a regression involving non-top-level require()s in tests. Addresses #​6403.
  • Fixed a bug where re-running a failed workflow in GitHub Actions would not generate a new Dashboard run. Addresses #​6450.
  • Fixed incorrect type definitions for Cypress.isBrowser. Addresses #​6447.
  • Fixed a regression introduced in 4.0.0 where using .should('contain', ...) on a cy.contains() would produce unexpected results. Addresses #​6384.

Misc:

  • Improved the error experience GUI when launching a browser fails. Addresses #​6432.
  • Improved the error experience when visiting the Cypress server outside of a Cypress-launched browser. Addresses #​6435.

v4.0.1

Compare Source

Released 2/7/2020

Bugfixes:

  • Fixed a bug where Chromium could not be detected on macOS. Addresses #​6358.
  • Fixed bugs where Edge and Firefox Nightly could not be detected on macOS. Addresses #​6354 and #​6345.
  • Fixed a bug where 64-bit editions of Firefox could not be detected on Windows. Addresses #​6355.
  • Fixed a bug where video recordings of Firefox would omit all frames from before the last cross-domain navigation of the test. Addresses #​6369.
  • Fixed a bug where Cypress could crash with the message "cannot read property 'on' of undefined" while running Firefox. Addresses #​6356.
  • Corrected a link to the screenshot API documentation in the type definitions. Addresses #​6359.

Misc:

  • Updated the default preferences set on Firefox to hide update notifications and otherwise improve the Firefox experience. Addresses #​6346.

v4.0.0

Compare Source

Released 2/6/2020

Summary:

Cypress 4.0.0 includes support for Mozilla Firefox browsers (beta support) and Microsoft Edge (Chromium based) browsers which is a big step forward for Cross Browser Testing in Cypress. We've also updated many of the underlying tools behind Cypress that bring new powerful features.

Breaking Changes:

⚠️ Please read our Migration Guide which explains the changes in more detail and how to change your code to migrate to Cypress 4.0.

  • Mocha, Chai, and Sinon.JS has been upgraded which includes a number of breaking changes and new features. Addresses #​2528, #​2529, #​2866.
  • During before:browser:launch, we no longer yield the second argument as an array of browser arguments and instead yield an options object with an args property in order to support more advanced browser launch options. Addresses #​6306.
  • We updated the Cypress browser objects of all Chromium-based browsers, including Electron, to have chromium set as their family field. Addresses #​6243.
  • The --browser flag no longer accepts canary as its sole argument to run Chrome Canary. You now have to specify chrome:canary to use the Chrome Canary browser. Addresses #​6243.
  • cy.writeFile() now yields null instead of the contents written to the file in order to more align with the behavior of fs. Addresses #​2466.
  • Installing Cypress on your system now requires Node.js 8+. Addresses #​5632.
  • Cypress no longer support CJSX. Addresses #​3469.

Features:

Bugfixes:

  • A test or suite appended with an .only when multiple tests or suites contained the same title now run correctly. Fixes #​5345.
  • The .its() command now properly supports 0 as a value for indexes or object keys. Fixes #​6216.

Documentation Changes:

Misc:

  • We now pass through errors caused when attempting to read arguments passed through config. Addresses #​6279.
  • We fixed a broken 'Learn more' link within the Node.js Version panel of the Test Runner Settings. Addresses #​6237.
  • The browser icons in the Test Runner now display as images with the proper branding. Addresses #​6188.
  • We updated the styling of browser dropdown in the Test Runner to look more like a button. Addresses #​6298.
  • The timer in the Test Runner now always displays at a consistent length. Addresses #​6168.
  • You can print debug information about the memory & CPU usage of Cypress, which can be accessed by enabling the cypress:server:util:process_profiler debug stream. Addresses #​6169.
  • We added types for plugin events. Addresses #​6322.

Dependency Updates

  • Added @benmalka/foxdriver. Addressed in #​1359.
  • Upgraded @cypress/browserify-preprocessor from 1.1.2 to 2.1.1. Addressed in #​4308 and #​4226.
  • Upgraded bluebird from 3.5.0 to 3.7.2. Addressed in #​4226.
  • Upgraded cachedir from 1.3.0 to 2.3.0. Addressed in #​4208 and #​4226.
  • Upgraded chai from 3.5.0 to 4.2.0. Addressed in #​2862 and #​4226.
  • Upgraded chai-as-promised from 6.0.0 to 7.1.1. Addressed in #​4226.
  • Upgraded chalk from 2.4.0 to 3.0.0. Addressed in #​4226.
  • Upgraded commander from 2.15.1 to 4.0.1. Addressed in #​4208 and #​4226.
  • Upgraded debug from 2.15.1 to 4.0.1. Addressed in #​4226.
  • Upgraded execa from 0.10.0 to 3.3.0. Addressed in #​4226.
  • Added firefox-profiler. Addressed in #​1359.
  • Added foxdriver. Addressed in #​1359.
  • Upgraded fs-extra from 5.0.0 to 8.1.0. Addressed in #​4226.
  • Upgraded getos from 3.1.1 to 3.1.4. Addressed in #​4226.
  • Upgraded is-ci from 1.2.1 to 2.0.0. Addressed in #​4226.
  • Upgraded mocha from 2.5.3 to 7.0.1. Addressed in #​2703 and #​4226.
  • Upgraded listr from 0.12.0 to 0.14.3. Addressed in #​4226.
  • Upgraded log-symbols from 2.2.0 to 3.0.0. Addressed in #​4226.
  • Added marionette-client. Addressed in #​1359.
  • Upgraded ramda from 0.24.1 to 0.26.1. Addressed in #​4226.
  • Upgraded sinon from 3.2.0 to 8.1.1. Addressed in #​2881 and #​4226.
  • Upgraded strip-ansi from 3.0.1 to 6.0.0. Addressed in #​1359.
  • Added systeminformation. Addressed in #​1359.
  • Upgraded support-colors from 5.5.0 to 7.1.0. Addressed in #​4208 and #​4226.
  • Upgraded untildify from 3.0.3 to 4.0.0. Addressed in #​4226.

Renovate configuration

📅 Schedule: "after 5pm on friday" (UTC).

🚦 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, check this box

This PR has been generated by WhiteSource Renovate. View repository job log here.

@renovate renovate bot force-pushed the renovate/cypress-4.x branch 2 times, most recently from afb8e80 to f70483e Compare February 14, 2020 23:32
@renovate renovate bot force-pushed the renovate/cypress-4.x branch from f70483e to 1711f50 Compare February 28, 2020 22:09
@renovate renovate bot force-pushed the renovate/cypress-4.x branch from 1711f50 to ed80866 Compare March 16, 2020 20:29
@renovate renovate bot force-pushed the renovate/cypress-4.x branch 3 times, most recently from ac3a8e5 to 27a7d06 Compare April 3, 2020 02:37
@renovate renovate bot force-pushed the renovate/cypress-4.x branch 2 times, most recently from 29b341f to 9c008f0 Compare April 20, 2020 18:51
@renovate renovate bot force-pushed the renovate/cypress-4.x branch 2 times, most recently from ccedaf2 to 9269b02 Compare April 29, 2020 15:00
@renovate renovate bot changed the title Update dependency cypress to v4 chore(deps): update dependency cypress to v4 Apr 29, 2020
@renovate renovate bot force-pushed the renovate/cypress-4.x branch 2 times, most recently from 2d3bd4e to 7d68562 Compare May 27, 2020 00:51
@renovate renovate bot force-pushed the renovate/cypress-4.x branch from 7d68562 to 7270655 Compare June 8, 2020 20:33
@renovate renovate bot force-pushed the renovate/cypress-4.x branch from 7270655 to 83a8519 Compare June 23, 2020 17:26
@sonarqubecloud
Copy link

Kudos, SonarCloud Quality Gate passed!

Bug A 0 Bugs
Vulnerability A 0 Vulnerabilities (and Security Hotspot 0 Security Hotspots to review)
Code Smell A 0 Code Smells

No Coverage information No Coverage information
No Duplication information No Duplication information

warning The version of Java (1.8.0_181) you have used to run this analysis is deprecated and we will stop accepting it from October 2020. Please update to at least Java 11.
Read more here

@dianjuar dianjuar merged commit 9ab3f01 into master Jun 30, 2020
@dianjuar dianjuar deleted the renovate/cypress-4.x branch June 30, 2020 16:05
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants