Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore(deps): update dependency cypress to v5 #4836

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

mesosphere-renovate
Copy link
Contributor

@mesosphere-renovate mesosphere-renovate commented Aug 19, 2020

This PR contains the following updates:

Package Type Update Change
cypress devDependencies major 4.12.1 -> 5.5.0

Release Notes

cypress-io/cypress

v5.5.0

Compare Source

Released 10/26/2020

Features:

  • cy.viewport() has a new macbook-16 preset. Addresses #​8889.
  • .type() now fires the beforeInput event during typing. Note: Firefox does not support the beforeinput event. Addresses #​7088.

Bugfixes:

  • Updated the Cypress proxy layer to proxy HTTPS traffic from non-AUT origins. Addressed in #​8827.
    • This fixed an issue with cy.route2 where HTTPS requests to a non-AUT origin would not be intercepted as expected.
  • cy.route2() now properly handles passing a method as its first argument. Fixes #​8729.
  • Fixed an issue with cy.route2() where a "Cannot set property response of undefined" error would occasionally occur. Fixes #​8858.
  • Headers field names passed to `cy.route2() now case-insensitively match against the field names of incoming HTTP requests. Fixes #​8921.
  • Routes that stub fixtures for binary resources (including images) made with cy.route2() now serve the correct mime-type and content. Fixes #​8623.
  • When experimentalNetworkStubbing is enabled, using cy.visit() to URLs that redirect and set Transfer-Encoding: chunked will no longer fail in Cypress with a "Parse Error". Fixes #​8497.
  • cypress.run() through the Module API now has a status property in the results matching the correct CLI types ("failed" or "finished"). Addresses #​8799.
  • When a value containing an e character is passed to the --ci-build-id flag, Cypress now properly reads it as a string. Fixes #​8874.

Misc:

  • Updated type definitions to allow for passed either runMode or openMode to retries alone. Addresses #​8869.

Dependency Updates:

  • Upgraded electron from 10.1.3 to 10.1.5. Addresses #​8927, #​8975.
  • Upgraded color-string from 1.5.3 to 1.5.4. Addresses #​8945.
  • Upgraded pretty-bytes from ^5.3.0 to ^5.4.1. Addresses #​8964.

v5.4.0

Compare Source

Released 10/14/2020

Features:

  • You can now run cypress cache prune to delete all installed Cypress versions from the cache except for the currently-installed version. Addresses #​5972.
  • There's a new --size option for the cypress cache list command that prints the sizes of the Cypress cache folders. Addresses #​6404.
  • For video recordings of runs, there is now a video chapter key for each test. If your video player supports chapters, you can move to the start of each test right away. Addresses #​3626.
  • In Windows, you can now append the browser type to the end of the path passed to the --browser flag, like cypress open --browser C:/User/App/browser.exe:chrome, to help detect the browser type. Addresses #​6389.
  • cy.viewport() has new iphone-7, iphone-8, and iphone-se2 presets. Addressed in #​8624
  • When there is a new version of Cypress available, the update modal has a new design with 'copy to clipboard' buttons to copy the upgrade commands. Addressed in #​8751.
  • The Command Log can be hidden by passing the CYPRESS_NO_COMMAND_LOG=1 environment variable during cypress open or cypress run to be used as a tool to debug performance issues. Addressed in #​8689.

Bugfixes:

  • We fixed a regression in 5.0.0 where the chromeWebSecurity option had no effect in Electron. Fixes #​8399.
  • Tests will no longer hang and now properly throw when there is an error thrown from a test:after:run event listener. Fixes #​2271 and #​8701.
  • When a command is chained after .within() and "cy.get()" is called inside it, the scope will no longer permanently change. Fixes #​2106, #​4672, #​4757, and #​5183.
  • Dual commands like cy.contains() when used after an .each() commands now query as expected. Fixes #​4921.
  • / is no longer added to the URL when baseUrl has param(s). Fixes #​2101.
  • When using cy.route2() the route handler timeouts will no longer leak into other tests and cause random failures. Addressed in #​8727.
  • Re-running failed build steps in Bitbucket will no longer create a new run on the Cypress Dashboard. Fixes #​8720.
  • The forced garbage collection timer will no longer display when using a version of Firefox newer than 80. Fixes #​8725.
  • The browser dropdown is no longer covered when opened from the Runs tab in the Test Runner. Fixed in #​8745.
  • Fixed an issue where preprocessor-related plugins would cause tests not to run and a duplicate instance of Cypress to be spawned. Fixes #​8634.

Misc:

  • Improved type definitions for cy.route2(). Addresses #​8694 and #​8782.
  • The Test Runner now shows an indicator in the footer and a toast notification if there is a new version available. Addressed in #​8702 and #​8803.

Dependency Updates:

  • Upgraded Chrome browser version used during cypress run and when selecting Electron browser in cypress open from 83 to 85. Addressed in #​8406.
  • Upgraded bundled Node.js version from 12.14.1 to 12.16.3. Addressed in #​8406.
  • Upgraded electron from 9.2.1 to 10.1.3. Addressed in #​8406.
  • Upgraded firefox-profile from 2.0.0 to 4.0.0. Addressed in #​8786.
  • Upgraded node-forge from 0.9.0 to 0.10.0. Addressed in #​8800.

v5.3.0

Compare Source

Released 9/28/2020

Features:

  • Firefox support is now out of beta! 🎉 Firefox 80 and newer are now officially stable when used with Cypress. Addresses #​8241.
    • Versions of Firefox older than 80 can still be used, but will be subject to the firefoxGcInterval workaround. The desktop GUI will display a warning if such versions are used.

Bugfixes:

  • Fixed a bug where cy.route2 would not automatically JSONify an empty array handler. Addresses #​8532.
  • Fixed a bug where objects yielded by using cy.wait on a cy.route2 alias would not always have a response property. Addresses #​8536.
  • Fixed an issue where cy.route2 routes would not be able to intercept requests to HTTPS destinations on a different origin. Addresses #​8487.
  • Fixed an issue where subjects became undefined after certain assertion failures. Addresses #​5763.
  • Fixed an issue where a cy.task with no arguments passed would receive null as the first argument instead of undefined. Addresses #​5913.
  • Fixed an issue preventing users from passing the config-file argument when starting cypress through the node module API. Addresses #​8632.
  • Fixed an issue where cy.visit()s to a relative URL containing .. would not work. Addresses #​5090.
  • Fixed an issue where Mocha hooks could still be triggered after the Test Runner was manually stopped. Addresses #​8621.
  • Fixed an issue where cy.setCookie failed when given a cookie name with a __Host- prefix. Addresses #​8261.
  • Fixed an issue where a misleading error was displayed when test code threw an exception with a non-Error object. Addresses #​7870.

Misc:

  • The proxy now omits the Content-Security-Policy-Report-Only header the same way that it does for Content-Security-Policy. Addresses #​7936.
  • Added a status property to CypressRunResult objects. Addresses #​8580.
  • Updated types to no longer use deprecated Mocha interfaces. Addresses #​5795.
  • Passing an empty string to CYPRESS_INSTALL_BINARY now takes precedence over npm config. Addresses #​8488.

v5.2.0

Compare Source

Released 9/15/2020

Features:

  • Added the configuration option includeShadowDom for enabling shadow DOM querying globally, per-suite, per-test, or programmatically. Addresses #​8442.
  • Added a followRedirect option to request interception with cy.route2(), allowing redirects to be followed before continuing to response interception. Addresses #​7967.
  • Added the capability to specify delayMs and throttleKbps when stubbing static responses with cy.route2(). Addresses #​7661.
  • Installing Cypress pre-releases no longer requires setting the CYPRESS_BINARY_INSTALL environment variable. Addresses #​8482.

Performance Improvements:

  • Fixed a performance issue which led to CPU bottlenecking during Cypress runs. Addresses #​8012 and #​8297.

Bugfixes:

  • Fixed an issue where using TypeScript path aliases in the plugins file would error. Addresses #​8555.
  • Fixed an issue where using cy.contains() within a shadow root would not yield the correct element. Addresses #​8494.
  • Fixed an issue where querying the shadow DOM in a cy.within() callback would throw the error root.getRootNode is not a function. Addresses #​8478.
  • Fixed an issue with cy.type() {moveToStart}/{moveToEnd} special characters moving the cursor to the current line instead of the entire text editable when typing in a contenteditable element. Addresses #​8465.
  • Fixed an issue where typing into a manually-focused number input would prepend the number instead of appending it. Addresses #​7170.
  • cy.type() now fires a KeyboardEvent event instead of an Event event. Addresses #​6125 and #​5650.
  • Fixed long selectors in the selector playground text input overflowing other page elements. Addresses #​8247 and #​4184.
  • Fixed an issue where assertions on cy.getCookie() would be called twice. Addresses #​6672.
  • Fixed an issue that caused the "Open in IDE" button on hooks and tests not to appear in Firefox. Addresses #​8257.
  • Fixed an issue causing Cypress to hang on test retry in run mode with certain assertions. Addresses #​8363.

Documentation Changes:

  • Fixed examples of delaying and throttling responses with cy.route2(). Addresses #​8489.
  • Added examples of using a response function with cy.route2(). Addresses #​8468.
  • Removed unmaintained languages. English docs is the only supported language by the Cypress team. We greatly appreciate the contributions from the community for other languages, but these docs are largely stale, unmaintained, and partial. The Cypress team will seek out more scalable docs internalization implementation in the future.

Misc:

  • The experimentalShadowDomSupport configuration flag has been removed. It is no longer necessary to enable shadow DOM testing.
  • Improved the error message when the subject provided to cy.shadow() is not a shadow host. Addresses #​8530.
  • Improved the error message when the Cypress binary is not executable. It now recommends trying to clear the cache and re-install. Addresses #​8397.
  • Added missing type declarations for the cy.route2() command.
  • Updated the type declaration for Cypress.Commands.add(), adding Promise to the list of allowed return types. Addresses #​7807.

v5.1.0

Compare Source

Released 9/1/2020

Features:

  • Introducing experimental full network stubbing support 🎉.
    • With experimentalNetworkStubbing enabled, the cy.route2 command is available.
    • By using cy.route2(), your tests can intercept, modify, and wait on any type of HTTP request originating from your app, including XMLHttpRequests, fetch requests, beacons, and subresources (like iframes and scripts).
    • Outgoing HTTP requests can be modified before reaching the destination server, and the HTTP response can be intercepted as well before it reaches the browser.
    • See the cy.route2() docs for more information on how to enable this experiment.
  • cy.trigger() now accepts an eventConstructor option for specifying the constructor with which to create the event to trigger. Addresses #​5650.

Bugfixes:

  • Improved warnings for when user is exceeding test limits of the free Dashboard plan. Addresses #​8409.
  • Added retries to TestOptions types. Addresses #​8405.
  • Added types for specType field on Cypress.spec. Addresses #​8256.
  • Fixed a typo in type definitions. Addresses #​8417.
  • Cypress now resolves and loads tsconfig.json for TypeScript projects starting from the plugins directory. Addresses #​8359.
  • Fixed an issue where, if npm config's noproxy is set, unexpected behavior could occur. Addresses #​8287.
  • Fixed an issue where nesting hooks within other hooks caused the test to never finish. Addresses #​8350.
  • Fixed an issue in where tests would unexpectedly fail with a "Can't resolve 'async_hooks'" error. Addresses #​8375.
  • Fixed an issue where return values from blob utils were mistaken for promises and could cause errors. Addresses #​8365.
  • Fixed an issue with loading .mjs files. Addresses #​8361.
  • Fixed an issue causing tests to run slowly in Electron. Addresses #​7930.
  • Using .should with only chainer assertions will now throw an error. Addresses #​883.
  • cy.trigger() now includes the view property in the event object when appropriate. Addresses #​3686.
  • Fixed an issue where Cypress would not detect newer 64-bit installations of Chrome on Windows. Addresses #​8425.
  • Fixed an issue where Cypress would not detect per-user Firefox installations on Windows. Addresses #​8432.

Dependency Updates:

  • Updated dependency iconv-lite to version 0.6.2. Addresses #​8387.
  • Updated dependency command-exists to version 1.2.9. Addresses #​8388.
  • Updated dependency electron to version 9.2.1. Addresses #​8436.

v5.0.0

Compare Source

Released 8/19/2020

Summary:

Cypress now includes support for test retries! Similar to how Cypress will retry assertions when they fail, test retries will allow you to automatically retry a failed test prior to marking it as failed. Read our new guide on Test Retries for more details.

Breaking Changes:

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

  • The cypress-plugin-retries plugin has been deprecated in favor of test retries built into Cypress. Addresses #​1313.
  • The Cypress.Cookies.defaults() whitelist option has been renamed to preserve to more closely reflect its behavior. Addressed in #​7782.
  • The blacklistHosts configuration has been renamed to blockHosts to more closely reflect its behavior. Addressed in #​7622.
  • The cy.server() whitelist option has been renamed to ignore to more closely reflect its behavior. Addresses #​6642.
  • libgbm-dev is now a requirement to run Cypress on Linux. Addressed in #​7791.
  • Values yielded by cy.setCookie(), cy.getCookie(), and cy.getCookies() will now contain the sameSite property if specified. Addresses #​6892.
  • The experimentalGetCookiesSameSite configuration flag has been removed, since this behavior is now the default. Addresses #​6892.
  • The return type of the Cypress.Blob methods arrayBufferToBlob, base64StringToBlob, binaryStringToBlob, and dataURLToBlob have changed from Promise<Blob> to Blob. Addresses #​6001.
  • Cypress no longer supports file paths with a question mark ? in them. We now use the webpack preprocessor by default and it does not support files with question marks. Addressed in #​7982.
  • For TypeScript compilation of spec, support, and plugins files, the esModuleInterop option is no longer coerced to true. If you need to utilize esModuleInterop, set it in your tsconfig.json. Addresses #​7575.
  • Cypress now requires TypeScript 3.4+. Addressed in #​7856.
  • Installing Cypress on your system now requires Node.js 10+. Addresses #​6574.
  • In spec files, the values for the globals __dirname and __filename no longer include leading slashes. Addressed in #​7982.

Features:

  • There's a new retries configuration option to configure the number of times to retry a failing test. Addresses #​1313.
  • .click(), .dblclick(), and .rightclick() now accept options altKey, ctrlKey, metaKey, and shiftKey to hold down key combinations while clicking. Addresses #​486.
  • You can now chain .snapshot() off of cy.stub() and cy.spy() to disabled snapshots during those commands. For example: cy.stub().snapshot(false). Addresses #​3849.

Bugfixes:

  • The error Cannot set property 'err' of undefined will no longer incorrectly throw when rerunning tests in the Test Runner. Fixes #​7874 and #​8193.
  • Cypress will no longer throw a Cannot read property 'isAttached' of undefined error during cypress run on Firefox versions >= 75. Fixes #​6813.
  • The error Maximum call stack size exceeded will no longer throw when calling scrollIntoView on an element in the shadow dom. Fixes #​7986.
  • Cypress environment variables that accept arrays as their value will now properly evaluate as arrays. Fixes #​6810.
  • Elements having display: inline will no longer be considered hidden if it has child elements within it that are visible. Fixes #​6183.
  • When experimentalShadowDomSupport is enabled, .parent() and .parentsUntil() commands now work correctly in shadow dom as well as passing a selector to .parents() when the subject is in the shadow dom. Fixed in #​8202.
  • Screenshots will now be correctly taken when a test fails in an afterEach or beforeEach hook after the hook has already passed. Fixes #​3744.
  • Cypress will no longer report screenshots overwritten in a cy.screenshot() onAfterScreenshot option as a unique screenshot. Fixes #​8079.
  • Taking screenshots will no longer fail when the screenshot names are too long for the filesystem to accept. Fixes #​2403.
  • The "last used browser" will now be correctly remembered during cypress open if a non-default-channel browser was selected. Fixes #​8281.
  • For TypeScript projects, tsconfig.json will now be loaded and used to configure TypeScript compilation of spec and support files. Fixes #​7006 and #​7503.
  • reporterStats now correctly show the number of passed and failed tests when a test passes but the afterEach fails. Fixes #​7730.
  • The Developer Tools menu will now always display in Electron when switching focus from Specs to the Test Runner. Fixes #​3559.

Documentation Changes:

  • We have a new guide on Test Retries.
  • Our Migration Guide has a new section for 5.0 migration.

Misc:

  • Cypress now uses the webpack preprocessor by default to preprocess spec files.
  • The Runs tab within the Test Runner has a new improved design when the project has not been set up or login is required. Addressed in #​8141.
  • The type for the Window object returned from cy.window() is now correct. Addresses #​7856.
  • The type definition for Cypress's ApplicationWindow can now be extended. Addresses #​7856.
  • The type definition for reporterOptions has been added. Addresses #​7877.

Dependency Updates

  • Upgraded Chrome browser version used during cypress run and when selecting Electron browser in cypress open from 80 to 83. Addressed in #​7791.
  • Upgraded bundled Node.js version from 12.8.1 to 12.14.1. Addressed in #​7791.
  • Upgraded chalk from 2.4.2 to 4.1.0. Addressed in #​7650.
  • Upgraded cli-table3 from 0.5.1 to 0.6.0. Addressed in #​7650.
  • Upgraded electron from 8.3.1 to 9.2.0. Addressed in #​7791 and #​8235.
  • Upgraded execa from 1.0.0 to 4.0.2. Addressed in #​7650.
  • Upgraded express from 4.16.4 to 4.17.1. Addressed in #​8179.
  • Upgraded fs-extra from 8.1.0 to 9.0.1. Addressed in #​7650.
  • Upgraded log-symbols from 3.0.0 to 4.0.0. Addressed in #​7650.
  • Upgraded tmp from 0.1.0 to 0.2.1. Addressed in #​7650.

Renovate 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 if you modify the PR title to begin with "rebase!".

🔕 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

Available now for Enterprise: Renovate Pro with real-time webhook handling and priority job queue.

pierrebeitz referenced this pull request Sep 21, 2020
We have flaky CI for master. Many test fails due to
> Timed out retrying: Expected to find element
This change should fix it for now until we debug real cause.
@mesosphere-renovate
Copy link
Contributor Author

PR has been edited

👷 This PR has received other commits, so Renovate will stop updating it to avoid conflicts or other problems. If you wish to abandon your changes and have Renovate start over you may click the "rebase" checkbox in the PR body/description.

@mesosphere-renovate mesosphere-renovate force-pushed the renovate/cypress-5.x branch 2 times, most recently from 4624f0a to 6cbdf9d Compare October 21, 2020 09:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants