3.1.1
Released Released on November 1, 2018
Features:
You can now pass a
flagoption to cy.writeFile(). The following flags are available. Fixes #1249.There is a new CYPRESS_DOWNLOAD_MIRROR environment variable for installing Cypress at a mirror url. Fixes #2609.
The Module API now returns the
runUrlfromcypress.run(). Fixes #2596.Specs now properly display as focused when navigating through specs via the keyboard. Fixes #2273.
Tasks registered in the plugins file with the 'task' event are merged with any tasks registered by previous calls to
on('task'), instead of overwriting the previous tasks. Fixes #2284.
Bugfixes:
Fixed a bug where Cypress would error when a secure cookie flag was set and then expired from an HTTPS url without the subsequent secure flag. Due to the way Cypress was constructing the url, this would fail to actually remove the cookie. Fixes #1264, #1321, #1799.
We now truncate filenames for screenshots to not exceed 255 characters in length. Previously there were cases where the screenshot filename would exceed 255 characters and error. Fixes #2403 and #2665.
Fixed issue when using cy.writeFile() and passing an object to a
.jsonfile. The object is now correctly written to the JSON file instead of a string. Fixes #2373.We updated how we handle trashAssetsBeforeRuns behavior. We now trash the contents of the
screenshotsFolderandvideosFolderdirectories instead of trashing the directories themselves. This helps maintain any file access permissions for the directories. Fixes #1943 and #2600.Fixed bug where mocked Dates using cy.clock() would not be an instance of
Date. Fixes #2570.Directories within specs whose names contain
.are now correctly read as directories instead of spec files within the Test Runner. Fixes #2423.Cypress no longer automatically takes screenshots of skipped tests. Fixes #2368.
Fixed an issue where returning/resolving
undefinedfrom a cy.task() handler resulted in an incorrect runtime error. Fixes #2553.Update modifyObstructiveCode to account for framebusting techniques that use
window.frameElement, so that Applications using this technique will run properly in Cypress. Fixes #2582.Fixed bug where only the first DOM element of an array of DOM elements would be blacked out after being passed as argument to
blackoutwithin cy.screenshot(). Fixes #2508.We fixed an issue involving timers after running cy.screenshot(). Fixes #2432.
The Test Runner now retries node-originated errors from our internal API requests. Fixes #2341
Fixed issue with multiple
readyStateChangeswith the samereadyState. Fixes #1150.Fixed Type error being thrown for users using TypeScript 3. Fixes #2363.
Misc
We are now collecting more environment variables from runs when run in Semaphore, GitLab, Bitbucket, Team Foundation Server, Codeship, and Shippable. Fixes #2460, #2358, #2343, and #2453.
The Test Runner's search now resets when switching between projects. Fixes #2512.
Fixed internal Cypress tests. Fixes #2606.
Replaced use of
new BufferwithBuffer.from. Fixes #2626.Allowed
autoScrollingEnabledto be saved instate.json. Fixes #2476.Fixed internal test error
beforeSpecRun is not a function. Fixes #2401.Switched our internal tests to use CircleCI workspaces. Fixes #2398.
Update TypeScript definition for cy.screenshot() to include screenshot specific options. Fixes #2654.
URLs printed within the CLI will now display as the color blue. Fixes #2493.
We began bulk converting some of our codebase from CoffeeScript to JavaScript. Fixes #2686 and #2687.
We updated some of our internal ESLint rules to be more strict and also to help with CoffeeScript to JavaScript conversions. Fixes #2688.
Documentation Changes:
Added
flagoption tocy.writeFile()doc.Added
runUrlto returned run in Module API doc.Documented new
CYPRESS_DOWNLOAD_MIRRORflag and rewrote advanced install instructions to be clearer in Installing Cypress doc.
Dependency Updates