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

dependencies: Update dependency cypress to v5 #2251

Closed
wants to merge 1 commit into from

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Oct 14, 2020

This PR contains the following updates:

Package Type Update Change
cypress devDependencies major 3.8.3 -> 5.3.0

Release Notes

cypress-io/cypress

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.

v4.12.1

Compare Source

Released 8/5/2020

Bugfixes:

  • The error Cannot set property 'err' of undefined will no longer incorrectly throw when rerunning tests in the Test Runner. Fixes #​7874.
  • Skipping the last test before a nested suite with a before hook will now correctly run the tests in the suite following the skipped test. Fixes #​8086.

Dependency Updates:

  • Upgraded md5 from 2.2.1 to 2.3.0. Addressed in #​8161.
  • Upgraded electron-context-menu from 0.15.1 to 2.2.0. Addressed in #​8180.

v4.12.0

Compare Source

Released 8/3/2020

Features:

Bugfixes:

  • position: fixed elements that have a parent with pointer-events: none will now correctly evaluate as visible. Fixes #​6675.
  • Applications using custom elements will no longer trigger infinite XHR request loops. Fixes #​1068.
  • When snapshotting the DOM, Cypress no longer causes attributeChangedCallback to be triggered on custom elements. Fixes #​7187.
  • Spec files containing + characters now properly run in Cypress. Fixes #​5909.
  • When using the fx shortcut in cy.route(), an error is now thrown when the fixture file cannot be found. Fixes #​7818.
  • Cypress no longer thrown Cannot read property '__error' of null error when passing a file containing null content to cy.fixture(). Fixes #​8010.
  • Values containing exponential operators passed to --env via the command line are now properly read. Fixes #​6891.
  • The "Open in IDE" button no longer disappears from hooks when the tests are manually rerun. Fixes #​8094.
  • When experimentalSourceRewriting is enabled, AST rewriting will no longer return an output before the body is done being written. This would happen when the response body was too large and the response would be sent while the body was still being modified. Fixes #​8043.
  • When using .type(), Cypress now properly types into an input within an iframe that auto focuses the input. Fixes #​8111.

Misc:

  • Dependencies for our cypress npm package are no longer pinned to a specific version. This allows the use of npm audit fix to fix security vulnerabilities without needing a patch release from Cypress. Addresses #​8046.
  • We now collect environment variables for AWS CodeBuild when recording to the Dashboard. Addressed #​8101.
  • Types inside Module API are now accessible via the CypressCommandLine namespace. Addresses #​7309.
  • We added more type definitions for the .should() command. Addresses #​5573.
  • Cookie command's expiry property type is now a Number instead of a String. Addresses #​8144.
  • There are some minor visual improvements to the Test Runner's Command Log when hovering, focusing and clicking on hook titles and pending tests. Addressed in #​8153.

Dependency Updates:

  • Upgraded jimp from 0.13.0 to 0.14.0. Addressed in #​8102.
  • Upgraded moment from 2.26.0 to 2.27.0. Addressed in #​8122.

v4.11.0

Compare Source

Released 7/21/2020

Features:

  • You can now pass an ensureScrollability: false option to .scrollTo() to skip checking whether the element is scrollable. Addresses #​1924.
  • cy.clock() now accepts Dates as well as a Number for now. Fixes #​7786.

Bugfixes:

  • Running multiple specs within Firefox during cypress run on Windows will no longer fail trying to make a connection to the browser. Fixes #​6392.
  • Cypress will no longer throw a Cannot read property 'isAttached' of undefined error during cypress run on Firefox versions >= 75. Fixes #​6813.
  • Fixed an issue where Cypress tests in Chromium-family browsers could randomly fail with the error "WebSocket is already in CLOSING or CLOSED state." Fixes #​7180.
  • Taking a screenshot of an element that changes height upon scroll will no longer throw an invalid for option "size" error. Fixes #​6099.
  • Setting viewportHeight or viewportWidth from within the test configuration now properly changes the viewport size for the duration of the suite or test.
  • Setting deep objects and arrays on config within the pluginsFile now sets the values correctly. Fixes #​7959.
  • The progress bar for cy.wait() now reflects the correct requestTimeout and responseTimeout of the command. Fixes #​7881.
  • The command's progress bar will not longer restart when its parent test is collapsed in the Command Log. Fixes #​7912.
  • Key value pairs sent to ELECTRON_EXTRA_LAUNCH_ARGS as key=value will now be properly read in. Fixes #​7994.
  • Stubbed responses responding with an empty string to cy.route() now correctly display as 'xhr stub' in the Test Runner's Command Log. Fixes #​8018.
  • Quickly reclicking the "Run All Tests" button in the Test Runners' Command Log will no longer throw errors about undefined properties and the tests will no longer hang. Fixes #​7968.

Misc:

  • The error messages thrown from pluginsFile and supportFile now mention that .ts extensions are supported. Addresses #​7940.
  • The style when focusing on tests in the Command Log has been updated. Addresses #​7855.

Dependency Updates:

  • Upgraded @benmalka/foxdriver from 0.4.0 to 0.4.1. Addressed in #​8040.
  • Upgraded firefox-profile from 1.3.1 to 2.0.0. Addressed in #​8000.
  • Upgraded fix-path from 2.1.0 to 3.0.0. Addressed in #​8028.
  • Upgraded human-interval from 0.1.6 to 1.0.0. Addressed in #​8031.
  • Upgraded lodash from 4.17.15 to 4.17.19. Addressed in #​7954.
  • Upgraded plist from 2.1.0 to 3.0.1. Addressed in #​8045.
  • Upgraded proxy-from-env from 1.0.0 to 1.1.0. Addressed in #​7900.
  • Upgraded resolve from 1.13.1 to 1.17.0. Addressed in #​7989.
  • Upgraded systeminformation from 4.21.1 to 4.26.9. Addressed in #​7975.
  • Upgraded uuid from 3.3.2 to 8.2.0. Addressed in #​7976, #​8002, and #​8011.

v4.10.0

Compare Source

Released 7/7/2020

Features:

  • You can open a before, beforeEach, after, and afterEach hook definition in your IDE from the Test Runner's Command Log by clicking the Open in IDE button. Addresses #​7793.
  • before, beforeEach, after, and afterEach hook definitions now display separately in the Test Runner's Command Log when defined in separate hook definitions. Addresses #​7779.
  • You can now open a spec file directly from the Tests tab in the Test Runner by clicking the Open in IDE button. Addresses #​7713

Bugfixes:

  • HTTP requests taking longer than the default responseTimeout will no longer be prematurely canceled by the Cypress proxy layer. Fixes #​6426.
  • Using Cypress commands to traverse the DOM on an application with a global parent variable will no longer throw Illegal Invocation errors. Fixes #​6412.
  • When experimentalShadowDomSupport is enabled, using .type() on an input in the Shadow DOM will not result in an error. Fixes #​7741.
  • When experimentalShadowDomSupport is enabled, checking for visibility on a shadow dom host element will no longer hang if the host element was the foremost element and had an ancestor with fixed position. Fixes #​7893.
  • Debug logs from the @benmalka/foxdriver module will no longer appear if any DEBUG environment variable was set. Fixed #​7723.

Misc:

Dependency Updates:

  • Upgraded recast from 0.18.8 to 0.19.1. Addressed in #​7898.

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](https

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 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 added the dependencies Pull requests that update a dependency file label Oct 14, 2020
@CLAassistant
Copy link

CLA assistant check
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.
You have signed the CLA already but the status is still pending? Let us recheck it.

@weilbith
Copy link
Contributor

This is not possible because the vue-cli plugin we use for Cypress does not support this version. Here is the upstream issue discussing to update the plugin.
We added Cypress as its own dependency because it was necessary to get it installed successfully in a CI environment. This is also related to an that old version. Means when the vue-cli plugin has become update to be compliant with a more recent Cypress version we can probably remove the direct dependency itself.

@weilbith weilbith closed this Oct 14, 2020
@renovate
Copy link
Contributor Author

renovate bot commented Oct 14, 2020

Renovate Ignore Notification

As this PR has been closed unmerged, Renovate will ignore this upgrade and you will not receive PRs for any future 5.x releases. However, if you upgrade to 5.x manually then Renovate will then reenable updates for minor and patch updates automatically.

If this PR was closed by mistake or you changed your mind, you can simply rename this PR and you will soon get a fresh replacement PR opened.

@renovate renovate bot deleted the renovate/cypress-5.x branch October 14, 2020 11:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependencies Pull requests that update a dependency file
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants