Skip to content

Releases: cypress-io/cypress

0.17.12

19 Jul 07:32
Compare
Choose a tag to compare

Released 11/21/2016

Bugfixes:

  • You no longer have to log in again after updating. Fixes #305.
  • Updating in app now works again. Sorry about that. Fixes #304.
  • Headless frame rate is now correctly set to 20 instead of resetting back to 60. Fixes #303.
  • We now automatically drop frames that the CPU cannot keep up with while video recording during cypress run. Previously we would buffer all frames in memory and it was possible to exhaust all memory due to the way that streaming backpressure works. Fixes #302.
  • Fixed an edge case in the driver that could lead to memory leaks. This happened when Command Logs updated from previously run tests. Normally, in headless mode, we automatically remove references to purge memory after each test, but when logs were updated after this, their references were merged back in again and held onto forever. If you were seeing long Cypress runs die or eventually halt, this was likely the cause. We did extensive memory regression analysis on Cypress and could not find any more memory leaks. Fixes #301.

Misc:

  • Improved cypress run and cypress ci headless output. Fixes #306.
  • Improved performance by preventing snapshots from being taken during headless runs.

0.3.5

19 Jul 07:03
Compare
Choose a tag to compare

Released 03/20/2015

Bugfixes:

  • Fix missing moment.js from bower.json.
  • Fix missing trailing slash from initial cy.visit() requests.
  • Fix missing __initial=true query param on initial redirects.

Misc:

  • Updated $.simulate to 1.0.1.

0.17.11

19 Jul 07:32
Compare
Choose a tag to compare

Released 11/16/2016

Roadmap:

  • The changes in version 0.17.11 below are in preparation for Cypress¬タル platform service: a portal where screenshots, videos, config, and logs of your builds are accessible.

Overview:

  • cypress ci now uploads build assets to our servers after a test run completes. Additionally, it tracks the config settings used during the build and tracks each individual test failure.
  • If you do not want these assets to be tracked by Cypress, you need to switch to using cypress run. We will happily remove any build assets that are accidentally uploaded to us during the update transition.

Features:

  • We now record videos during a headless run with both cypress ci and cypress run. Fixes #229.
  • After completing cypress ci, we now upload build assets (such as screenshots and videos) to be used in our upcoming admin interface. This will enable you to review assets without having to touch your CI server. Fixes #292.

Misc:

  • We've redesigned the headless run stdout to give you more details of the run, the stats after the run, what screenshots were taken, the video that was recorded, compression settings for the video, uploading asset progress, etc.
  • Screenshot names now include their parent titles, and invalid file system characters are scrubbed. Fixes #297.
  • We no longer artificially restrict the environment cypress ci can run in. It can now run anywhere. Fixes #296.
  • We removed scaffolding any directories on a new project (during cypress run). Fixes #295.
  • cypress run no longer prompts the user for any kind of interaction, thus enabling you to use this in CI if you choose to do so. Fixes #294.
  • There is a new configuration property called: trashAssetsBeforeHeadlessRuns (This was changed to trashAssetsBeforeRuns in 3.0.0) that is set to true by default and will automatically clear out screenshots + videos folders before each run. These files are not deleted, they are just moved to your trash.
  • There are several new configuration properties for video recording: videoRecording, videoCompression, and videosFolder.

0.3.13

19 Jul 07:08
Compare
Choose a tag to compare

Released 03/27/2015

Features:

  • cy.visit() now detects a local url. localhost, 0.0.0.0, 127.0.0.1 can omit the http:// protocol.

Bugfixes:

  • cy.contains() now properly escape quotes in the text.
  • cy.visit() now inserts a trailing slash intelligently into the correct path position (not after query params or hashes).
  • cy.visit() will no longer log 2 failed commands on error.
  • Hovering on commands which delay resolving their $el will now properly highlight again.

Misc:

  • .debug() returns the current subject now.
  • upgraded jsUri to 1.3.0.
  • cy.visit() now throws when url argument isn't a string.
  • Cypress.Log instances now fire attrs:changed event. Removed state:change event.

0.3.12

19 Jul 07:08
Compare
Choose a tag to compare

Released 03/26/2015

Bugfixes:

  • Aliases which replay their commands will no longer break the current chain and therefore not unintentionally null our their subject for the ext command.
  • Highlighting $el's on DOM restore now works again.
  • Asserting against cy.focused() will indent command logs now.
  • Prevent failed .should() and cy.to from outputting a second error'd command log.
  • Removed memory leaks surrounding mocha runner.
  • Captured remote page uncaught errors again which fail corresponding tests.
  • Captured spec iframe errors again and preserve their stack trace.

Misc:

  • cy.focused() is now a parent command.
  • Memory usage improvements.

0.17.10

19 Jul 07:32
Compare
Choose a tag to compare

Released 11/07/2016

Bugfixes:

  • Fixed switching between two different spec files from the desktop app causing document.domain to be wrong. Fixes #276.
  • Fixed inserting the string null into cy.request() urls when providing a baseUrl in cypress.json while origin could not be determined. Fixes #274.
  • Fixed incorrect error message on reverse visibility assertions. Fixes #275.

Misc:

  • We've improved the way we inject content into <html> responses by filtering the underlying HTTP request headers. We no longer inject content into templates which were loaded via XHR. Fixes #257 and #288.

0.17.9

19 Jul 07:32
Compare
Choose a tag to compare

Released 10/22/2016

Bugfixes:

  • Cypress now applies cookies to the browser which were cleared between redirects. Fixes #224.
  • Snapshots now work even when <html> tag has invalid attributes. Fixes #271.
  • Cypress no longer crashes on initial cy.visit() when the 3rd party web server never ends the response. Fixes #272.

Misc:

  • Changed default responseTimeout from 20000 to 30000.
  • Changed default pageLoadTimeout from 30000 to 60000.
  • The internal Cypress proxy now forcibly responds to requests taking longer than responseTimeout. Currently this sends back text/html with the ETIMEDOUT error, but this likely needs to be configurable. The reason we are now forcibly applying timeouts is to prevent socket pooling exhaustion where tests are running and a 3rd party server never responds to the request.

0.6.2

19 Jul 07:22
Compare
Choose a tag to compare

Released 05/20/2015

Bugfixes:

  • Using the length option in querying or traversal commands now logs out in the command log. Fixes #40.
  • Other scenarios are fixed where command options would show incorrect number of object keys due to a bug in underscore's reduce with an object that has a length key. Fixes #35.

0.17.8

19 Jul 07:32
Compare
Choose a tag to compare

Released 10/13/2016

Bugfixes:

  • Fixed opener of undefined errors due to page load events causing snapshots prior to the load event of the remote application. Thanks to everyone who helped pitched in on this one! Fixes #258.
  • Cypress now correctly sets cookies with expirationDate in the past. Chrome did not handle these cookies as documented and our code did not take this into account. We also added a lot more e2e tests around this behavior. Fixes #266.
  • We are now taking additional precautions to prevent Cypress from trashing the wrong folder during an upgrade (with an open project). This was actually fixed in 0.17.7 but the problem was is that during an update, the new version (which was fixed) was still being passed the wrong arguments from the older (broken) application. We've now upgraded 0.17.8 to detect this, and just use the expected default install location of Cypress. If you're concerned, just close your currently open project before updating. Fixes #265.

Misc:

  • When an in app update fails in linux we now provide instructions on how to manually update Cypress.
  • We now properly take the maxAge cookie flag into account and give it preference over the expires flag as per the cookie spec.

0.17.7

19 Jul 07:32
Compare
Choose a tag to compare

Released 10/12/2016

Features:

  • There is now a new chromeWebSecurity option you can set in cypress.json to turn off Chrome's Web Security features. We've written a brand new reference that details why and how you could use this. Cypress Web Security. This option can be used for accessing cross origin <iframes> or if your application needs to test navigation across super domains. Fixes #262.

Bugfixes:

  • We now capture cross origin errors correctly instead of these showing as Uncaught DOMExceptions in the console. Fixes #261.
  • We no longer trash the wrong folder on OSX in-app updates (when a project is open). Sorry about this! Fixes #260.
  • cy.visit() urls with domain-like segments (which weren't actually the domain) no longer cause Cypress to think you're trying to navigate to a different superdomain. Fixes #255.