diff --git a/.textlintrc b/.textlintrc index 9928f8c7e4..3a66b77781 100644 --- a/.textlintrc +++ b/.textlintrc @@ -22,6 +22,7 @@ "BrowserStack", ["^chai", "Chai"], ["^chai-jquery", "chai-jquery"], + ["cross-browser", "cross browser"], ["cross origin", "cross-origin"], "ESLint", ["Express.js", "Express"], @@ -40,7 +41,6 @@ "Lodash", "minimatch", "Mocha", - ["node.js", "Node"], "node module", "npm", ["React[ .]js", "React"], diff --git a/lib/tags/image.js b/lib/tags/image.js index 760bb7c46f..2552609e4b 100644 --- a/lib/tags/image.js +++ b/lib/tags/image.js @@ -1,5 +1,5 @@ module.exports = function image (hexo, args) { - // {% imgTag "img/api/coordinates-diagram.jpg" "alt text" ["css-class"] %} + // {% imgTag /img/api/coordinates-diagram.jpg "alt text" ["css-class"] %} // // <<< Transforms into >>> // diff --git a/lib/tags/timeouts.js b/lib/tags/timeouts.js index 12a8c1e56d..f944ae0158 100644 --- a/lib/tags/timeouts.js +++ b/lib/tags/timeouts.js @@ -109,13 +109,12 @@ module.exports = function yields (hexo, args) {
  • ${cmd} will continue to ${urls.retry} its specified assertions until it times out.

  • `) } - + const invoke = () => { return render(`` - ) + `) } switch (type) { diff --git a/package-lock.json b/package-lock.json index 0e0e52f286..545289987e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -2087,7 +2087,6 @@ }, "@keyv/redis": { "version": "github:bahmutov/keyv-redis#b64f44cd1d1e87893d989b1469068af8292299d5", - "from": "@keyv/redis@github:bahmutov/keyv-redis#b64f44cd1d1e87893d989b1469068af8292299d5", "dev": true, "requires": { "pify": "3.0.0", @@ -5585,9 +5584,9 @@ "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", "dev": true, "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" + "ansi-styles": "3.2.1", + "escape-string-regexp": "1.0.5", + "supports-color": "5.5.0" } }, "commander": { @@ -8964,8 +8963,7 @@ "ansi-regex": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "optional": true + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" }, "aproba": { "version": "1.2.0", @@ -8986,14 +8984,12 @@ "balanced-match": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", - "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", - "optional": true + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" }, "brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "optional": true, "requires": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" @@ -9008,20 +9004,17 @@ "code-point-at": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", - "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", - "optional": true + "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=" }, "concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", - "optional": true + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" }, "console-control-strings": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=", - "optional": true + "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=" }, "core-util-is": { "version": "1.0.2", @@ -9138,8 +9131,7 @@ "inherits": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", - "optional": true + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" }, "ini": { "version": "1.3.5", @@ -9151,7 +9143,6 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", - "optional": true, "requires": { "number-is-nan": "^1.0.0" } @@ -9166,7 +9157,6 @@ "version": "3.0.4", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", - "optional": true, "requires": { "brace-expansion": "^1.1.7" } @@ -9174,14 +9164,12 @@ "minimist": { "version": "0.0.8", "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", - "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", - "optional": true + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=" }, "minipass": { "version": "2.3.5", "resolved": "https://registry.npmjs.org/minipass/-/minipass-2.3.5.tgz", "integrity": "sha512-Gi1W4k059gyRbyVUZQ4mEqLm0YIUiGYfvxhF6SIlk3ui1WVxMTGfGdQ2SInh3PDrRTVvPKgULkpJtT4RH10+VA==", - "optional": true, "requires": { "safe-buffer": "^5.1.2", "yallist": "^3.0.0" @@ -9200,7 +9188,6 @@ "version": "0.5.1", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", - "optional": true, "requires": { "minimist": "0.0.8" } @@ -9281,8 +9268,7 @@ "number-is-nan": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", - "optional": true + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" }, "object-assign": { "version": "4.1.1", @@ -9294,7 +9280,6 @@ "version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "optional": true, "requires": { "wrappy": "1" } @@ -9380,8 +9365,7 @@ "safe-buffer": { "version": "5.1.2", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "optional": true + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" }, "safer-buffer": { "version": "2.1.2", @@ -9413,11 +9397,19 @@ "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=", "optional": true }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "optional": true, + "requires": { + "safe-buffer": "5.1.2" + } + }, "string-width": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "optional": true, "requires": { "code-point-at": "^1.0.0", "is-fullwidth-code-point": "^1.0.0", @@ -9437,7 +9429,6 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "optional": true, "requires": { "ansi-regex": "^2.0.0" } @@ -9481,14 +9472,12 @@ "wrappy": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", - "optional": true + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" }, "yallist": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.0.3.tgz", - "integrity": "sha512-S+Zk8DEWE6oKpV+vI3qWkaK+jSbIK86pCwe2IF/xwIpQ8jEuxpw9NyaGjmp9+BoJv5FV2piqCDcoCtStppiq2A==", - "optional": true + "integrity": "sha512-S+Zk8DEWE6oKpV+vI3qWkaK+jSbIK86pCwe2IF/xwIpQ8jEuxpw9NyaGjmp9+BoJv5FV2piqCDcoCtStppiq2A==" } } }, @@ -19250,14 +19239,12 @@ "array-unique": { "version": "0.3.2", "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", - "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", - "optional": true + "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=" }, "braces": { "version": "2.3.2", "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", - "optional": true, "requires": { "arr-flatten": "^1.1.0", "array-unique": "^0.3.2", @@ -19275,7 +19262,6 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "optional": true, "requires": { "is-extendable": "^0.1.0" } @@ -19443,7 +19429,6 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", - "optional": true, "requires": { "extend-shallow": "^2.0.1", "is-number": "^3.0.0", @@ -19455,7 +19440,6 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "optional": true, "requires": { "is-extendable": "^0.1.0" } @@ -19515,8 +19499,7 @@ "is-extglob": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", - "optional": true + "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=" }, "is-glob": { "version": "4.0.1", @@ -19531,7 +19514,6 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "optional": true, "requires": { "kind-of": "^3.0.2" }, @@ -19540,7 +19522,6 @@ "version": "3.2.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "optional": true, "requires": { "is-buffer": "^1.1.5" } @@ -19550,14 +19531,12 @@ "isobject": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", - "optional": true + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" }, "kind-of": { "version": "6.0.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", - "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", - "optional": true + "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==" }, "micromatch": { "version": "3.1.10", @@ -23749,11 +23728,11 @@ "integrity": "sha512-wAsVvTPe+FwSrsAurNt5vkg3zo+TblvC5Bb1zMVK6SJzZqw9UrJnexxR+76cpePmtUZKHAPxcQ2Bf7oVHyahhg==", "dev": true, "requires": { - "@hapi/address": "^2.1.2", - "@hapi/formula": "^1.2.0", - "@hapi/hoek": "^8.2.4", - "@hapi/pinpoint": "^1.0.2", - "@hapi/topo": "^3.1.3" + "@hapi/address": "2.1.4", + "@hapi/formula": "1.2.0", + "@hapi/hoek": "8.5.0", + "@hapi/pinpoint": "1.0.2", + "@hapi/topo": "3.1.6" } }, "@hapi/topo": { @@ -23762,7 +23741,7 @@ "integrity": "sha512-tAag0jEcjwH+P2quUfipd7liWCNX2F8NvYjQp2wtInsZxnMlypdw0FtAOLxtvvkO+GSRRbmNi8m/5y42PQJYCQ==", "dev": true, "requires": { - "@hapi/hoek": "^8.3.0" + "@hapi/hoek": "8.5.0" } }, "bluebird": { @@ -23777,9 +23756,9 @@ "integrity": "sha512-u7v4o84SwFpD32Z8IIcPZ6z1/ie24O6RU3RbtL5Y316l3KuHVPx9ItBgWQ6VlfAFnRnTtMUrsQ9MUUTuEZjogg==", "dev": true, "requires": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" + "path-key": "3.1.1", + "shebang-command": "2.0.0", + "which": "2.0.2" } }, "execa": { @@ -23788,15 +23767,15 @@ "integrity": "sha512-JbDUxwV3BoT5ZVXQrSVbAiaXhXUkIwvbhPIwZ0N13kX+5yCzOhUNdocxB/UQRuYOHRYYwAxKYwJYc0T4D12pDA==", "dev": true, "requires": { - "cross-spawn": "^7.0.0", - "get-stream": "^5.0.0", - "human-signals": "^1.1.1", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.0", - "onetime": "^5.1.0", - "signal-exit": "^3.0.2", - "strip-final-newline": "^2.0.0" + "cross-spawn": "7.0.1", + "get-stream": "5.1.0", + "human-signals": "1.1.1", + "is-stream": "2.0.0", + "merge-stream": "2.0.0", + "npm-run-path": "4.0.1", + "onetime": "5.1.0", + "signal-exit": "3.0.2", + "strip-final-newline": "2.0.0" } }, "get-stream": { @@ -23832,7 +23811,7 @@ "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", "dev": true, "requires": { - "path-key": "^3.0.0" + "path-key": "3.1.1" } }, "onetime": { @@ -23841,7 +23820,7 @@ "integrity": "sha512-5NcSkPHhwTVFIQN+TUqXoS5+dlElHXdpAWu9I0HP20YOtIi+aZ0Ct82jdlILDxjLEAWwvm+qj1m6aEtsDVmm6Q==", "dev": true, "requires": { - "mimic-fn": "^2.1.0" + "mimic-fn": "2.1.0" } }, "path-key": { @@ -23866,7 +23845,7 @@ "integrity": "sha512-naMQXcgEo3csAEGvw/NydRA0fuS2nDZJiw1YUWFKU7aPPAPGZEsD4Iimit96qwCieH6y614MCLYwdkrWx7z/7Q==", "dev": true, "requires": { - "tslib": "^1.9.0" + "tslib": "1.9.3" } }, "shebang-command": { @@ -23875,7 +23854,7 @@ "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", "dev": true, "requires": { - "shebang-regex": "^3.0.0" + "shebang-regex": "3.0.0" } }, "shebang-regex": { @@ -23890,12 +23869,12 @@ "integrity": "sha512-QrW3J8LzS5ADPfD9Rx5S6KJck66xkqyiFKQs9jmUTkIhiEOmkzU7WRZc+MjsnmkrgjitS2xQ4bb13hnlQnKBUQ==", "dev": true, "requires": { - "@hapi/joi": "^16.1.8", - "lodash": "^4.17.15", - "minimist": "^1.2.0", - "request": "^2.88.0", - "request-promise-native": "^1.0.8", - "rxjs": "^6.5.4" + "@hapi/joi": "16.1.8", + "lodash": "4.17.15", + "minimist": "1.2.0", + "request": "2.88.0", + "request-promise-native": "1.0.8", + "rxjs": "6.5.4" } }, "which": { @@ -23904,7 +23883,7 @@ "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", "dev": true, "requires": { - "isexe": "^2.0.0" + "isexe": "2.0.0" } } } @@ -26466,8 +26445,7 @@ "integrity": "sha1-bRX7qITAhnnA136I53WegR4H+kE=" }, "yall": { - "version": "github:malchata/yall.js#1c782f1ab7a0becb1a88fd6f3b260e55d5e213a2", - "from": "yall@github:malchata/yall.js#1c782f1ab7a0becb1a88fd6f3b260e55d5e213a2" + "version": "github:malchata/yall.js#1c782f1ab7a0becb1a88fd6f3b260e55d5e213a2" }, "yallist": { "version": "2.1.2", diff --git a/source/_changelogs/4.0.0.md b/source/_changelogs/4.0.0.md new file mode 100644 index 0000000000..578677536a --- /dev/null +++ b/source/_changelogs/4.0.0.md @@ -0,0 +1,79 @@ +# 4.0.0 + +*Released 2/6/2020* + +**Summary:** + +Cypress 4.0.0 includes support for {% url "Mozilla Firefox" https://www.mozilla.org/firefox/ %} browsers (beta support) and {% url "Microsoft Edge" https://www.microsoft.com/edge %} (Chromium based) browsers which is a big step forward for {% url "Cross Browser Testing" cross-browser-testing %} in Cypress. We've also updated many of the {% url "underlying tools" bundled-tools %} behind Cypress that bring new powerful features. + +**Breaking Changes:** + +**{% fa fa-exclamation-triangle red %} Please read our {% url "Migration Guide" 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 {% issue 2528 %}, {% issue 2529 %}, {% issue 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 {% issue 6306 %}. +- We updated the {% url "Cypress browser objects" browser-launch-api %} of all Chromium-based browsers, including Electron, to have `chromium` set as their `family` field. Addresses {% issue 6243 %}. +- The {% url "`--browser` flag" command-line#cypress-run-browser-lt-browser-name-or-path-gt %} 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 {% issue 6243 %}. +- {% url "`cy.writeFile()`" writefile %} now yields `null` instead of the contents written to the file in order to more align with the behavior of `fs`. Addresses {% issue 2466 %}. +- Installing Cypress on your system now requires Node.js 8+. Addresses {% issue 5632 %}. +- Cypress no longer support CJSX. Addresses {% issue 3469 %}. + +**Features:** + +- {% url "Mozilla Firefox" https://www.mozilla.org/firefox/ %} browsers now have beta support. Addresses {% issue 1096 %}. +- {% url "Microsoft Edge" https://www.microsoft.com/edge %} (Chromium based) browsers are now supported. Addresses {% issue 5433 %}. +- There is a new {% url "`Cypress.isBrowser()`" isbrowser %} utility function. Addresses {% issue 2023 %}. +- We updated the {% url "`Cypress.browser`" browser %} object with a new `channel` property which contains the release channel of the detected browser. Addresses {% issue 6243 %}. +- Appending `.only` to multiple tests or suites will now run all tests with the `.only` property. Addresses {% issue 2828 %}. +- The {% url "`isFinite` assertion" assertions %} is now supported. Addresses {% issue 5669 %}. +- The `empty` assertion is now supported when used against Map objects. Addresses {% issue 6072 %}. +- The `nested` assertion chainer property is now supported. Addresses {% issue 3080 %} and {% issue 5004 %}. + +**Bugfixes:** + +- A test or suite appended with an `.only` when multiple tests or suites contained the same title now run correctly. Fixes {% issue 5345 %}. +- The {% url "`.its()`" its %} command now properly supports 0 as a value for indexes or object keys. Fixes {% issue 6216 %}. + +**Documentation Changes:** + +- Added {% url "Cross Browser Testing Guide" cross-browser-testing %} with helpful CI strategies to consider when running tests across multiple browsers. +- Added {% url "`Cypress.isBrowser()`" isbrowser %} doc. + +**Misc:** + +- We now pass through errors caused when attempting to read arguments passed through {% url "`config`" configuration-api %}. Addresses {% issue 6279 %}. +- We fixed a broken 'Learn more' link within the Node.js Version panel of the Test Runner Settings. Addresses {% issue 6237 %}. +- The browser icons in the Test Runner now display as images with the proper branding. Addresses {% issue 6188 %}. +- We updated the styling of browser dropdown in the Test Runner to look more like a button. Addresses {% issue 6298 %}. +- The timer in the Test Runner now always displays at a consistent length. Addresses {% issue 6168 %}. +- You can print debug information about the memory & CPU usage of Cypress, which can be accessed by enabling the {% url "`cypress:server:util:process_profiler` debug stream" debugging#Log-memory-and-CPU-usage %}. Addresses {% issue 6169 %}. +- We added types for plugin events. Addresses {% issue 6322 %}. + +**Dependency Updates** + +- Added `@benmalka/foxdriver`. Addressed in {% PR 1359 %}. +- Upgraded `@cypress/browserify-preprocessor` from `1.1.2` to `2.1.1`. Addressed in {% PR 4308 %} and {% PR 4226 %}. +- Upgraded `bluebird` from `3.5.0` to `3.7.2`. Addressed in {% PR 4226 %}. +- Upgraded `cachedir` from `1.3.0` to `2.3.0`. Addressed in {% PR 4208 %} and {% PR 4226 %}. +- Upgraded `chai` from `3.5.0` to `4.2.0`. Addressed in {% PR 2862 %} and {% PR 4226 %}. +- Upgraded `chai-as-promised` from `6.0.0` to `7.1.1`. Addressed in {% PR 4226 %}. +- Upgraded `chalk` from `2.4.0` to `3.0.0`. Addressed in {% PR 4226 %}. +- Upgraded `commander` from `2.15.1` to `4.0.1`. Addressed in {% PR 4208 %} and {% PR 4226 %}. +- Upgraded `debug` from `2.15.1` to `4.0.1`. Addressed in {% PR 4226 %}. +- Upgraded `execa` from `0.10.0` to `3.3.0`. Addressed in {% PR 4226 %}. +- Added `firefox-profiler`. Addressed in {% PR 1359 %}. +- Added `foxdriver`. Addressed in {% PR 1359 %}. +- Upgraded `fs-extra` from `5.0.0` to `8.1.0`. Addressed in {% PR 4226 %}. +- Upgraded `getos` from `3.1.1` to `3.1.4`. Addressed in {% PR 4226 %}. +- Upgraded `is-ci` from `1.2.1` to `2.0.0`. Addressed in {% PR 4226 %}. +- Upgraded `is-installed-globally` from `0.1.0` to `0.3.1`. Addressed in {% PR 4226 %}. +- Upgraded `mocha` from `2.5.3` to `7.0.1`. Addressed in {% PR 2703 %} and {% PR 4226 %}. +- Upgraded `listr` from `0.12.0` to `0.14.3`. Addressed in {% PR 4226 %}. +- Upgraded `log-symbols` from `2.2.0` to `3.0.0`. Addressed in {% PR 4226 %}. +- Added `marionette-client`. Addressed in {% PR 1359 %}. +- Upgraded `ramda` from `0.24.1` to `0.26.1`. Addressed in {% PR 4226 %}. +- Upgraded `sinon` from `3.2.0` to `8.1.1`. Addressed in {% PR 2881 %} and {% PR 4226 %}. +- Upgraded `strip-ansi` from `3.0.1` to `6.0.0`. Addressed in {% PR 1359 %}. +- Added `systeminformation`. Addressed in {% PR 1359 %}. +- Upgraded `support-colors` from `5.5.0` to `7.1.0`. Addressed in {% PR 4208 %} and {% PR 4226 %}. +- Upgraded `untildify` from `3.0.3` to `4.0.0`. Addressed in {% PR 4226 %}. diff --git a/source/_data/sidebar.yml b/source/_data/sidebar.yml index 2018d1a32b..ac40c485c7 100644 --- a/source/_data/sidebar.yml +++ b/source/_data/sidebar.yml @@ -33,6 +33,7 @@ guides: stubs-spies-and-clocks: stubs-spies-and-clocks.html screenshots-and-videos: screenshots-and-videos.html launching-browsers: launching-browsers.html + cross-browser-testing: cross-browser-testing.html web-security: web-security.html tooling: intelligent-code-completion: intelligent-code-completion.html @@ -51,6 +52,7 @@ guides: bundled-tools: bundled-tools.html trade-offs: trade-offs.html changelog: changelog.html + migration-guide: migration-guide.html roadmap: roadmap.html api: @@ -160,6 +162,7 @@ api: config: config.html dom: dom.html env: env.html + isbrowser: isbrowser.html iscy: iscy.html cypress-log: cypress-log.html platform: platform.html diff --git a/source/api/commands/contains.md b/source/api/commands/contains.md index bce931a894..fb9a71e9b2 100644 --- a/source/api/commands/contains.md +++ b/source/api/commands/contains.md @@ -52,6 +52,7 @@ Pass in an options object to change the default behavior of `.contains()`. Option | Default | Description --- | --- | --- +`matchCase` | `true` | Check case sensitivity `log` | `true` | {% usage_options log %} `timeout` | {% url `defaultCommandTimeout` configuration#Timeouts %} | {% usage_options timeout .contains %} @@ -186,6 +187,19 @@ cy.get('form') // yields
    ...
    Without the explicit selector the subject would change to be the `