From a11ccbd46bd9eba744611f74d93a04c7bb371977 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Thu, 30 Sep 2021 20:21:11 +0000 Subject: [PATCH 01/38] =?UTF-8?q?chore(deps):=20update=20dependency=20elec?= =?UTF-8?q?tron=20to=20v15=20=F0=9F=8C=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- packages/electron/package.json | 2 +- yarn.lock | 28 ++++++++++++++++++++++------ 2 files changed, 23 insertions(+), 7 deletions(-) diff --git a/packages/electron/package.json b/packages/electron/package.json index b0ab8fa8ddec..a04b32ac71d3 100644 --- a/packages/electron/package.json +++ b/packages/electron/package.json @@ -24,7 +24,7 @@ "minimist": "1.2.5" }, "devDependencies": { - "electron": "13.2.0", + "electron": "15.0.0", "execa": "4.1.0", "mocha": "3.5.3" }, diff --git a/yarn.lock b/yarn.lock index 1467ce7af1f8..b19eb3d9931a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2580,7 +2580,23 @@ resolved "https://registry.yarnpkg.com/@discoveryjs/json-ext/-/json-ext-0.5.2.tgz#8f03a22a04de437254e8ce8cc84ba39689288752" integrity sha512-HyYEUDeIj5rRQU2Hk5HTB2uHsbRQpF70nvMhVzi+VJR0X+xNEhjPui4/kBf3VeH/wqD28PT4sVOm8qqLjBrSZg== -"@electron/get@^1.0.1", "@electron/get@^1.6.0": +"@electron/get@^1.13.0": + version "1.13.0" + resolved "https://registry.yarnpkg.com/@electron/get/-/get-1.13.0.tgz#95c6bcaff4f9a505ea46792424f451efea89228c" + integrity sha512-+SjZhRuRo+STTO1Fdhzqnv9D2ZhjxXP6egsJ9kiO8dtP68cDx7dFCwWi64dlMQV7sWcfW1OYCW4wviEBzmRsfQ== + dependencies: + debug "^4.1.1" + env-paths "^2.2.0" + fs-extra "^8.1.0" + got "^9.6.0" + progress "^2.0.3" + semver "^6.2.0" + sumchecker "^3.0.1" + optionalDependencies: + global-agent "^2.0.2" + global-tunnel-ng "^2.7.1" + +"@electron/get@^1.6.0": version "1.12.4" resolved "https://registry.yarnpkg.com/@electron/get/-/get-1.12.4.tgz#a5971113fc1bf8fa12a8789dc20152a7359f06ab" integrity sha512-6nr9DbJPUR9Xujw6zD3y+rS95TyItEVM0NVjt1EehY2vUWfIgPiIPVHxCvaTS0xr2B+DRxovYVKbuOWqC35kjg== @@ -17270,12 +17286,12 @@ electron-to-chromium@^1.3.247, electron-to-chromium@^1.3.378, electron-to-chromi resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.727.tgz#857e310ca00f0b75da4e1db6ff0e073cc4a91ddf" integrity sha512-Mfz4FIB4FSvEwBpDfdipRIrwd6uo8gUDoRDF4QEYb4h4tSuI3ov594OrjU6on042UlFHouIJpClDODGkPcBSbg== -electron@13.2.0: - version "13.2.0" - resolved "https://registry.yarnpkg.com/electron/-/electron-13.2.0.tgz#54c8387359c6fa7aede2d06f9be21073afdfe616" - integrity sha512-ZnRm1WWhHIKyoNAKVz7nPOHG42v5dhe0uqFsGW5x/KLK8kikHEXIduRnC4Y2XanckHeUFI9tZddWVSIBgqGBGg== +electron@15.0.0: + version "15.0.0" + resolved "https://registry.yarnpkg.com/electron/-/electron-15.0.0.tgz#b1b6244b1cffddf348c27c54b1310b3a3680246e" + integrity sha512-LlBjN5nCJoC7EDrgfDQwEGSGSAo/o08nSP5uJxN2m+ZtNA69SxpnWv4yPgo1K08X/iQPoGhoZu6C8LYYlk1Dtg== dependencies: - "@electron/get" "^1.0.1" + "@electron/get" "^1.13.0" "@types/node" "^14.6.2" extract-zip "^1.0.3" From b3cb2408eff5d022d9d923c55c22fa1913555a86 Mon Sep 17 00:00:00 2001 From: Zach Bloomquist Date: Wed, 6 Oct 2021 18:03:26 -0400 Subject: [PATCH 02/38] node 16.5.0 --- .node-version | 2 +- appveyor.yml | 2 +- circle.yml | 2 +- package.json | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.node-version b/.node-version index 62df50f1eefe..d9617ea1b408 100644 --- a/.node-version +++ b/.node-version @@ -1 +1 @@ -14.17.0 +16.5.0 \ No newline at end of file diff --git a/appveyor.yml b/appveyor.yml index 51c507ed81f5..bfb3e64d6150 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -8,7 +8,7 @@ branches: # https://www.appveyor.com/docs/lang/nodejs-iojs/ environment: # use matching version of Node.js - nodejs_version: "14.17.0" + nodejs_version: "16.5.0" # encode secure variables which will NOT be used # in pull requests # https://www.appveyor.com/docs/build-configuration/#secure-variables diff --git a/circle.yml b/circle.yml index 2a2232ca1965..79135432efc6 100644 --- a/circle.yml +++ b/circle.yml @@ -70,7 +70,7 @@ executors: mac: macos: # Executor should have Node >= required version - xcode: "12.2.0" + xcode: "13.0.0" environment: PLATFORM: mac diff --git a/package.json b/package.json index 7809806a8129..e42fed08420a 100644 --- a/package.json +++ b/package.json @@ -196,7 +196,7 @@ "yarn-deduplicate": "3.1.0" }, "engines": { - "node": ">=14.17.0", + "node": ">=16.5.0", "yarn": ">=1.17.3" }, "productName": "Cypress", From c2256ba793d171a9add9fd60d1926136f167f714 Mon Sep 17 00:00:00 2001 From: Zach Bloomquist Date: Fri, 15 Oct 2021 14:09:23 -0400 Subject: [PATCH 03/38] update docker image --- circle.yml | 4 ++-- scripts/run-docker-local.sh | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/circle.yml b/circle.yml index 79135432efc6..efb2acb82a4d 100644 --- a/circle.yml +++ b/circle.yml @@ -50,7 +50,7 @@ executors: # the Docker image with Cypress dependencies and Chrome browser cy-doc: docker: - - image: cypress/browsers:node14.17.0-chrome91-ff89 + - image: cypress/browsers:node16.5.0-chrome94-ff93 # by default, we use "small" to save on CI costs. bump on a per-job basis if needed. resource_class: small environment: @@ -59,7 +59,7 @@ executors: # Docker image with non-root "node" user non-root-docker-user: docker: - - image: cypress/browsers:node14.17.0-chrome91-ff89 + - image: cypress/browsers:node16.5.0-chrome94-ff93 user: node environment: PLATFORM: linux diff --git a/scripts/run-docker-local.sh b/scripts/run-docker-local.sh index 2f359b980fbf..2dd0df1f92f9 100755 --- a/scripts/run-docker-local.sh +++ b/scripts/run-docker-local.sh @@ -3,7 +3,7 @@ set e+x echo "This script should be run from cypress's root" -name=cypress/browsers:node14.17.0-chrome91-ff89 +name=cypress/browsers:node16.5.0-chrome94-ff93 echo "Pulling CI container $name" docker pull $name From c0b22ff8139d8420832ab8dcb389e7d4fd4648ac Mon Sep 17 00:00:00 2001 From: Zach Bloomquist Date: Fri, 15 Oct 2021 14:39:01 -0400 Subject: [PATCH 04/38] bump modules incompatible w/ node 16 --- npm/cypress-schematic/package.json | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/npm/cypress-schematic/package.json b/npm/cypress-schematic/package.json index bba634724544..c84908de58b1 100644 --- a/npm/cypress-schematic/package.json +++ b/npm/cypress-schematic/package.json @@ -18,15 +18,15 @@ "unlink:sandbox": "cd sandbox && yarn unlink @cypress/schematic && cd .. && yarn unlink" }, "dependencies": { - "@angular-devkit/architect": "^0.1200.0", - "@angular-devkit/core": "^12.0.0", - "@angular-devkit/schematics": "^12.0.0", - "@schematics/angular": "^12.0.0", + "@angular-devkit/architect": "^0.1202.10", + "@angular-devkit/core": "^12.2.10", + "@angular-devkit/schematics": "^12.2.10", + "@schematics/angular": "^12.2.10", "jsonc-parser": "^3.0.0", "rxjs": "~6.6.0" }, "devDependencies": { - "@angular-devkit/schematics-cli": "^12.0.0", + "@angular-devkit/schematics-cli": "^12.2.10", "@types/chai-enzyme": "0.6.7", "@types/mocha": "8.0.3", "@types/node": "^12.11.1", From 43a974259f3ade5371bbeb48f249fea02964aa51 Mon Sep 17 00:00:00 2001 From: Zach Bloomquist Date: Fri, 15 Oct 2021 15:05:20 -0400 Subject: [PATCH 05/38] electron@15.2.0 --- packages/electron/package.json | 2 +- yarn.lock | 123 +++++++++++++++++++-------------- 2 files changed, 74 insertions(+), 51 deletions(-) diff --git a/packages/electron/package.json b/packages/electron/package.json index a04b32ac71d3..923ff4bdfda6 100644 --- a/packages/electron/package.json +++ b/packages/electron/package.json @@ -24,7 +24,7 @@ "minimist": "1.2.5" }, "devDependencies": { - "electron": "15.0.0", + "electron": "15.2.0", "execa": "4.1.0", "mocha": "3.5.3" }, diff --git a/yarn.lock b/yarn.lock index c6065d4a2455..c2e1eee45c69 100644 --- a/yarn.lock +++ b/yarn.lock @@ -15,12 +15,12 @@ "@angular-devkit/core" "11.2.12" rxjs "6.6.3" -"@angular-devkit/architect@^0.1200.0": - version "0.1200.0" - resolved "https://registry.yarnpkg.com/@angular-devkit/architect/-/architect-0.1200.0.tgz#1a53d18901882c73ef0bc79a64cbbc8ca9b82a54" - integrity sha512-6E42oQ8e3zbeUE5O5YXc+q/vTBHyFn6YSsZEn0kb/3r48zl+9MBb4np1Q8077/GxQtD4G/TN/DhgCa9muLSgzA== +"@angular-devkit/architect@^0.1202.10": + version "0.1202.10" + resolved "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.1202.10.tgz#6aae8e97ea209949507443cd9c414be94d258813" + integrity sha512-/sLgtXaFsNouxub5M/bQ2sBkiMIlPubuz6QMh+pA2jia82vJ3hcRMt4AnJTXuXpVY+aew4FiG0i9nt/8HETQsw== dependencies: - "@angular-devkit/core" "12.0.0" + "@angular-devkit/core" "12.2.10" rxjs "6.6.7" "@angular-devkit/build-angular@0.1102.12": @@ -133,13 +133,13 @@ rxjs "6.6.3" source-map "0.7.3" -"@angular-devkit/core@12.0.0", "@angular-devkit/core@^12.0.0": - version "12.0.0" - resolved "https://registry.yarnpkg.com/@angular-devkit/core/-/core-12.0.0.tgz#e5f1dc4ba2e65a7aeb1fb14659e17a0f92dbae1b" - integrity sha512-4Cys++a684hCDTL/1X6j9izsjsqvYs3m6LF58zvKZHeG/Yhdofv1rV+3YGVYAorOx9w4spAgYTmr99TYnBGQWQ== +"@angular-devkit/core@12.2.10", "@angular-devkit/core@^12.2.10": + version "12.2.10" + resolved "https://registry.npmjs.org/@angular-devkit/core/-/core-12.2.10.tgz#3da62eceef3904f92cd3f860618b4ae513029ce2" + integrity sha512-0qhmS7Qvl0hiRVTHxEC/ipFAfzYofPstw0ZITDpEMw+pgHlOZolOlnFrv8LyOXWNqlSIH5fS9D3WF7Hpm7ApYA== dependencies: - ajv "8.2.0" - ajv-formats "2.0.2" + ajv "8.6.2" + ajv-formats "2.1.0" fast-json-stable-stringify "2.1.0" magic-string "0.25.7" rxjs "6.6.7" @@ -156,15 +156,15 @@ rxjs "6.4.0" source-map "0.7.3" -"@angular-devkit/schematics-cli@^12.0.0": - version "12.0.0" - resolved "https://registry.yarnpkg.com/@angular-devkit/schematics-cli/-/schematics-cli-12.0.0.tgz#4a32083fc6a1930b53f018b6c5ce5e9cee150ebb" - integrity sha512-qFkFK6fMktfzNrEq68MJs9QMe1B4KGqPpEFN3zCfVVxesu5jgbfLmaajbpXVQ55cH50zFnCE8Zh/fFkNWkQTdQ== +"@angular-devkit/schematics-cli@^12.2.10": + version "12.2.10" + resolved "https://registry.npmjs.org/@angular-devkit/schematics-cli/-/schematics-cli-12.2.10.tgz#91d27181176b924fa8872506d3552c183e6f2f1f" + integrity sha512-eXzsQ4nM+g4EB0Ixh8rdN1hhm1KEnjychhITvzHgIFSLu0n6o8g36PrZgvshzvHlJViViNztm9uKjX54eaJ/Dw== dependencies: - "@angular-devkit/core" "12.0.0" - "@angular-devkit/schematics" "12.0.0" + "@angular-devkit/core" "12.2.10" + "@angular-devkit/schematics" "12.2.10" ansi-colors "4.1.1" - inquirer "8.0.0" + inquirer "8.1.2" minimist "1.2.5" symbol-observable "4.0.0" @@ -177,13 +177,13 @@ ora "5.3.0" rxjs "6.6.3" -"@angular-devkit/schematics@12.0.0", "@angular-devkit/schematics@^12.0.0": - version "12.0.0" - resolved "https://registry.yarnpkg.com/@angular-devkit/schematics/-/schematics-12.0.0.tgz#d46fa41d8968b64b6234f828fc16a227630fe621" - integrity sha512-xp6b8QF+MYT3kXEDo6MFRQRDGkFxAHBdBCo2wdo8qvoNHIr+8XYZwDEb8z0SbzzJmXFbDXk1vmavcNSd6+uLXg== +"@angular-devkit/schematics@12.2.10", "@angular-devkit/schematics@^12.2.10": + version "12.2.10" + resolved "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-12.2.10.tgz#b8d4031053fd76d93caa7f33aeeb67383e37f0ab" + integrity sha512-oQ2EWdkEDE+eAttHeviXsvBi85PsntQT+IffjKUZdbQU+Leuk/pKUpTeea1YosU1p4Cz3PKYF+P/Nl5Jy3B7IQ== dependencies: - "@angular-devkit/core" "12.0.0" - ora "5.4.0" + "@angular-devkit/core" "12.2.10" + ora "5.4.1" rxjs "6.6.7" "@angular-devkit/schematics@8.0.0": @@ -6299,13 +6299,13 @@ "@angular-devkit/core" "8.0.0" "@angular-devkit/schematics" "8.0.0" -"@schematics/angular@^12.0.0": - version "12.0.0" - resolved "https://registry.yarnpkg.com/@schematics/angular/-/angular-12.0.0.tgz#519c8d2bfb548c2678d7b3589548a7ff37e0dcf0" - integrity sha512-6fS1MuzLvuiuS8ruSl919+mXTBDgpMY+mC+n1iM70rHvDms6+wEIwuyEty6Mw7JsPFXwcFAsIBt3EZCplzHhmg== +"@schematics/angular@^12.2.10": + version "12.2.10" + resolved "https://registry.npmjs.org/@schematics/angular/-/angular-12.2.10.tgz#c640be969ea7588da14ee5c4d58a6a2ce63b97e6" + integrity sha512-hjOWrC/RlZ97oYWO92f5VRu6LDzPHnowDcyGDGvI9wCrfipL4Y7Is6LgFAiVZxCHdRz71MCnES1IXSj5w6UuBA== dependencies: - "@angular-devkit/core" "12.0.0" - "@angular-devkit/schematics" "12.0.0" + "@angular-devkit/core" "12.2.10" + "@angular-devkit/schematics" "12.2.10" jsonc-parser "3.0.0" "@schematics/update@0.1102.12": @@ -9958,10 +9958,10 @@ ajv-errors@^1.0.0: resolved "https://registry.yarnpkg.com/ajv-errors/-/ajv-errors-1.0.1.tgz#f35986aceb91afadec4102fbd85014950cefa64d" integrity sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ== -ajv-formats@2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/ajv-formats/-/ajv-formats-2.0.2.tgz#69875cb99d76c74be46e9c7a4444bc232354eba0" - integrity sha512-Brah4Uo5/U8v76c6euTwtjVFFaVishwnJrQBYpev1JRh4vjA1F4HY3UzQez41YUCszUCXKagG8v6eVRBHV1gkw== +ajv-formats@2.1.0: + version "2.1.0" + resolved "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.0.tgz#96eaf83e38d32108b66d82a9cb0cfa24886cdfeb" + integrity sha512-USH2jBb+C/hIpwD2iRjp0pe0k+MvzG0mlSn/FIdCgQhUb9ALPRjt2KIQdfZDS9r0ZIeUAg7gOu9KL0PFqGqr5Q== dependencies: ajv "^8.0.0" @@ -10000,10 +10000,10 @@ ajv@6.5.3: json-schema-traverse "^0.4.1" uri-js "^4.2.2" -ajv@8.2.0: - version "8.2.0" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.2.0.tgz#c89d3380a784ce81b2085f48811c4c101df4c602" - integrity sha512-WSNGFuyWd//XO8n/m/EaOlNLtO0yL8EXT/74LqT4khdhpZjP7lkj/kT5uwRmGitKEVp/Oj7ZUHeGfPtgHhQ5CA== +ajv@8.6.2: + version "8.6.2" + resolved "https://registry.npmjs.org/ajv/-/ajv-8.6.2.tgz#2fb45e0e5fcbc0813326c1c3da535d1881bb0571" + integrity sha512-9807RlWAgT564wT+DjeyU5OFMPjmzxVobvDFmNAhY+5zD6A2ly3jDp6sgnfyDtlIQ+7H97oc/DGCzzfu9rjw9w== dependencies: fast-deep-equal "^3.1.1" json-schema-traverse "^1.0.0" @@ -17301,10 +17301,10 @@ electron-to-chromium@^1.3.247, electron-to-chromium@^1.3.378, electron-to-chromi resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.727.tgz#857e310ca00f0b75da4e1db6ff0e073cc4a91ddf" integrity sha512-Mfz4FIB4FSvEwBpDfdipRIrwd6uo8gUDoRDF4QEYb4h4tSuI3ov594OrjU6on042UlFHouIJpClDODGkPcBSbg== -electron@15.0.0: - version "15.0.0" - resolved "https://registry.yarnpkg.com/electron/-/electron-15.0.0.tgz#b1b6244b1cffddf348c27c54b1310b3a3680246e" - integrity sha512-LlBjN5nCJoC7EDrgfDQwEGSGSAo/o08nSP5uJxN2m+ZtNA69SxpnWv4yPgo1K08X/iQPoGhoZu6C8LYYlk1Dtg== +electron@15.2.0: + version "15.2.0" + resolved "https://registry.npmjs.org/electron/-/electron-15.2.0.tgz#3068099d1e5c625d1708487de519c59d7c0a8e6e" + integrity sha512-kg0JdlsVbJgD/hO/A7o9VH8U44pQWkIsyt/sALxH6g8CiHQxMujLn2JfB2gyUfHXPT7m8vD4Z+CurS2KodEsWw== dependencies: "@electron/get" "^1.13.0" "@types/node" "^14.6.2" @@ -22370,21 +22370,22 @@ inquirer@7.3.3, inquirer@^7.0.0: strip-ansi "^6.0.0" through "^2.3.6" -inquirer@8.0.0: - version "8.0.0" - resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-8.0.0.tgz#957a46db1abcf0fdd2ab82deb7470e90afc7d0ac" - integrity sha512-ON8pEJPPCdyjxj+cxsYRe6XfCJepTxANdNnTebsTuQgXpRyZRRT9t4dJwjRubgmvn20CLSEnozRUayXyM9VTXA== +inquirer@8.1.2: + version "8.1.2" + resolved "https://registry.npmjs.org/inquirer/-/inquirer-8.1.2.tgz#65b204d2cd7fb63400edd925dfe428bafd422e3d" + integrity sha512-DHLKJwLPNgkfwNmsuEUKSejJFbkv0FMO9SMiQbjI3n5NQuCrSIBqP66ggqyz2a6t2qEolKrMjhQ3+W/xXgUQ+Q== dependencies: ansi-escapes "^4.2.1" - chalk "^4.1.0" + chalk "^4.1.1" cli-cursor "^3.1.0" cli-width "^3.0.0" external-editor "^3.0.3" figures "^3.0.0" lodash "^4.17.21" mute-stream "0.0.8" + ora "^5.3.0" run-async "^2.4.0" - rxjs "^6.6.6" + rxjs "^7.2.0" string-width "^4.1.0" strip-ansi "^6.0.0" through "^2.3.6" @@ -29154,7 +29155,7 @@ optionator@^0.9.1: type-check "^0.4.0" word-wrap "^1.2.3" -ora@*, ora@5.4.0, ora@^5.1.0: +ora@*, ora@^5.1.0: version "5.4.0" resolved "https://registry.yarnpkg.com/ora/-/ora-5.4.0.tgz#42eda4855835b9cd14d33864c97a3c95a3f56bf4" integrity sha512-1StwyXQGoU6gdjYkyVcqOLnVlbKj+6yPNNOxJVgpt9t4eksKjiriiHuxktLYkgllwk+D6MbC4ihH84L1udRXPg== @@ -29183,6 +29184,21 @@ ora@5.3.0: strip-ansi "^6.0.0" wcwidth "^1.0.1" +ora@5.4.1, ora@^5.3.0: + version "5.4.1" + resolved "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz#1b2678426af4ac4a509008e5e4ac9e9959db9e18" + integrity sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ== + dependencies: + bl "^4.1.0" + chalk "^4.1.0" + cli-cursor "^3.1.0" + cli-spinners "^2.5.0" + is-interactive "^1.0.0" + is-unicode-supported "^0.1.0" + log-symbols "^4.1.0" + strip-ansi "^6.0.0" + wcwidth "^1.0.1" + ora@^3.4.0: version "3.4.0" resolved "https://registry.yarnpkg.com/ora/-/ora-3.4.0.tgz#bf0752491059a3ef3ed4c85097531de9fdbcd318" @@ -34475,7 +34491,7 @@ rxjs@6.6.3: dependencies: tslib "^1.9.0" -rxjs@6.6.7, rxjs@^6.4.0, rxjs@^6.5.3, rxjs@^6.5.4, rxjs@^6.6.0, rxjs@^6.6.6, rxjs@~6.6.0: +rxjs@6.6.7, rxjs@^6.4.0, rxjs@^6.5.3, rxjs@^6.5.4, rxjs@^6.6.0, rxjs@~6.6.0: version "6.6.7" resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.6.7.tgz#90ac018acabf491bf65044235d5863c4dab804c9" integrity sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ== @@ -34489,6 +34505,13 @@ rxjs@^7.1.0: dependencies: tslib "~2.1.0" +rxjs@^7.2.0: + version "7.4.0" + resolved "https://registry.npmjs.org/rxjs/-/rxjs-7.4.0.tgz#a12a44d7eebf016f5ff2441b87f28c9a51cebc68" + integrity sha512-7SQDi7xeTMCJpqViXh8gL/lebcwlp3d831F05+9B44A4B0WfsEwUQHR64gsH1kvJ+Ep/J9K2+n1hVl1CsGN23w== + dependencies: + tslib "~2.1.0" + safe-buffer@5.1.1: version "5.1.1" resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.1.tgz#893312af69b2123def71f57889001671eeb2c853" From 2d623ef05194eedec32c75b412d8d9d7dd0ebb47 Mon Sep 17 00:00:00 2001 From: Zach Bloomquist Date: Fri, 15 Oct 2021 15:20:29 -0400 Subject: [PATCH 06/38] electron-context-menu@3.1.1 --- packages/server/package.json | 2 +- yarn.lock | 32 ++++++++++++++++---------------- 2 files changed, 17 insertions(+), 17 deletions(-) diff --git a/packages/server/package.json b/packages/server/package.json index 9988d819ff7b..70b4c92f4197 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -53,7 +53,7 @@ "debug": "4.3.2", "dependency-tree": "8.1.0", "duplexify": "4.1.1", - "electron-context-menu": "2.2.0", + "electron-context-menu": "3.1.1", "errorhandler": "1.5.1", "evil-dns": "0.2.0", "execa": "1.0.0", diff --git a/yarn.lock b/yarn.lock index c2e1eee45c69..6c726e55694b 100644 --- a/yarn.lock +++ b/yarn.lock @@ -13986,7 +13986,7 @@ cli-table@^0.3.1: dependencies: colors "1.0.3" -cli-truncate@^2.0.0, cli-truncate@^2.1.0: +cli-truncate@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/cli-truncate/-/cli-truncate-2.1.0.tgz#c39e28bf05edcde5be3b98992a22deed5a2b93c7" integrity sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg== @@ -17208,28 +17208,28 @@ electron-builder@22.9.1: update-notifier "^4.1.1" yargs "^16.0.3" -electron-context-menu@2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/electron-context-menu/-/electron-context-menu-2.2.0.tgz#1cb2b8ccbede684f38fcebb33d4944d4e851f3e4" - integrity sha512-ArnzPlGqBrkOFOAWbq4aVWMtN6ZfYxVNon8s+akOm7ffnNv8yqYi4EPiMeQ5UU894dPi7I1PhTGVKBlOQM4a1g== +electron-context-menu@3.1.1: + version "3.1.1" + resolved "https://registry.npmjs.org/electron-context-menu/-/electron-context-menu-3.1.1.tgz#109884e79df293f7e85effcbdbbe45d362987d94" + integrity sha512-LJhwaKf6XHwk2LQ5SdwoGNODoA8lRwks9bbEeAqqMf4e3hsrT7pZtX6MaHKYNFZKxF14JjI/VR+VRjGvxmaQoA== dependencies: - cli-truncate "^2.0.0" - electron-dl "^3.0.0" - electron-is-dev "^1.0.1" + cli-truncate "^2.1.0" + electron-dl "^3.2.1" + electron-is-dev "^2.0.0" -electron-dl@^3.0.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/electron-dl/-/electron-dl-3.2.0.tgz#7fc5ebc683d05d3393591a994f8b825686137651" - integrity sha512-Wz6YZi0fwy/hmdkrtrBwj7W4JlrFd1tY5jvNdLHd0PUTlJFJ6pGi9mPQGtZRdjodkXYpaiD1uio+wh01hqrZNg== +electron-dl@^3.2.1: + version "3.2.1" + resolved "https://registry.npmjs.org/electron-dl/-/electron-dl-3.2.1.tgz#244a1316c663691f70e8aa4515cd1a401b4b5690" + integrity sha512-k5DFjocJlXbrjshO1zeWe/Gz7HkGwCgnehHPemiyzN2B/LfLlnbIX7sCj5F+huTwZ2l+nQehTI4IR37xvCn6FQ== dependencies: ext-name "^5.0.0" pupa "^2.0.1" unused-filename "^2.1.0" -electron-is-dev@^1.0.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/electron-is-dev/-/electron-is-dev-1.2.0.tgz#2e5cea0a1b3ccf1c86f577cee77363ef55deb05e" - integrity sha512-R1oD5gMBPS7PVU8gJwH6CtT0e6VSoD0+SzSnYpNm+dBkcijgA+K7VAMHDfnRq/lkKPZArpzplTW6jfiMYosdzw== +electron-is-dev@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/electron-is-dev/-/electron-is-dev-2.0.0.tgz#833487a069b8dad21425c67a19847d9064ab19bd" + integrity sha512-3X99K852Yoqu9AcW50qz3ibYBWY79/pBhlMCab8ToEWS48R0T9tyxRiQhwylE7zQdXrMnx2JKqUJyMPmt5FBqA== electron-notarize@1.0.0: version "1.0.0" From 4cc56810504a5842064392eea4be6910d8fdf7d1 Mon Sep 17 00:00:00 2001 From: Zach Bloomquist Date: Fri, 15 Oct 2021 15:55:23 -0400 Subject: [PATCH 07/38] patch electron-context-menu types --- patches/electron-context-menu+3.1.1.patch | 22 ++++++++ yarn.lock | 62 +++-------------------- 2 files changed, 29 insertions(+), 55 deletions(-) create mode 100644 patches/electron-context-menu+3.1.1.patch diff --git a/patches/electron-context-menu+3.1.1.patch b/patches/electron-context-menu+3.1.1.patch new file mode 100644 index 000000000000..c47d27d00fee --- /dev/null +++ b/patches/electron-context-menu+3.1.1.patch @@ -0,0 +1,22 @@ +diff --git a/node_modules/electron-context-menu/index.d.ts b/node_modules/electron-context-menu/index.d.ts +index 95ade1c..03293e3 100644 +--- a/node_modules/electron-context-menu/index.d.ts ++++ b/node_modules/electron-context-menu/index.d.ts +@@ -1,13 +1,15 @@ + import { + BrowserWindow, + BrowserView, +- WebviewTag, + ContextMenuParams, + MenuItemConstructorOptions, + Event as ElectronEvent, +- WebContents ++ WebContents, + } from 'electron'; + ++// TODO: remove this patch once electron-context-menu is fixed ++type WebviewTag = Electron.WebviewTag ++ + declare namespace contextMenu { + interface Labels { + /** diff --git a/yarn.lock b/yarn.lock index 6c726e55694b..59506880537e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2580,7 +2580,7 @@ resolved "https://registry.yarnpkg.com/@discoveryjs/json-ext/-/json-ext-0.5.2.tgz#8f03a22a04de437254e8ce8cc84ba39689288752" integrity sha512-HyYEUDeIj5rRQU2Hk5HTB2uHsbRQpF70nvMhVzi+VJR0X+xNEhjPui4/kBf3VeH/wqD28PT4sVOm8qqLjBrSZg== -"@electron/get@^1.13.0": +"@electron/get@^1.13.0", "@electron/get@^1.6.0": version "1.13.0" resolved "https://registry.yarnpkg.com/@electron/get/-/get-1.13.0.tgz#95c6bcaff4f9a505ea46792424f451efea89228c" integrity sha512-+SjZhRuRo+STTO1Fdhzqnv9D2ZhjxXP6egsJ9kiO8dtP68cDx7dFCwWi64dlMQV7sWcfW1OYCW4wviEBzmRsfQ== @@ -2596,22 +2596,6 @@ global-agent "^2.0.2" global-tunnel-ng "^2.7.1" -"@electron/get@^1.6.0": - version "1.12.4" - resolved "https://registry.yarnpkg.com/@electron/get/-/get-1.12.4.tgz#a5971113fc1bf8fa12a8789dc20152a7359f06ab" - integrity sha512-6nr9DbJPUR9Xujw6zD3y+rS95TyItEVM0NVjt1EehY2vUWfIgPiIPVHxCvaTS0xr2B+DRxovYVKbuOWqC35kjg== - dependencies: - debug "^4.1.1" - env-paths "^2.2.0" - fs-extra "^8.1.0" - got "^9.6.0" - progress "^2.0.3" - semver "^6.2.0" - sumchecker "^3.0.1" - optionalDependencies: - global-agent "^2.0.2" - global-tunnel-ng "^2.7.1" - "@emmetio/abbreviation@^2.2.2": version "2.2.2" resolved "https://registry.yarnpkg.com/@emmetio/abbreviation/-/abbreviation-2.2.2.tgz#746762fd9e7a8c2ea604f580c62e3cfe250e6989" @@ -10000,7 +9984,7 @@ ajv@6.5.3: json-schema-traverse "^0.4.1" uri-js "^4.2.2" -ajv@8.6.2: +ajv@8.6.2, ajv@^8.0.0, ajv@^8.0.5: version "8.6.2" resolved "https://registry.npmjs.org/ajv/-/ajv-8.6.2.tgz#2fb45e0e5fcbc0813326c1c3da535d1881bb0571" integrity sha512-9807RlWAgT564wT+DjeyU5OFMPjmzxVobvDFmNAhY+5zD6A2ly3jDp6sgnfyDtlIQ+7H97oc/DGCzzfu9rjw9w== @@ -10030,16 +10014,6 @@ ajv@^7.0.2: require-from-string "^2.0.2" uri-js "^4.2.2" -ajv@^8.0.0, ajv@^8.0.5: - version "8.4.0" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.4.0.tgz#48984fdb2ce225cab15795f0772a8d85669075e4" - integrity sha512-7QD2l6+KBSLwf+7MuYocbWvRPdOu63/trReTLu2KFwkgctnub1auoF+Y1WYcm09CTM7quuscrzqmASaLHC/K4Q== - dependencies: - fast-deep-equal "^3.1.1" - json-schema-traverse "^1.0.0" - require-from-string "^2.0.2" - uri-js "^4.2.2" - align-text@^0.1.1, align-text@^0.1.3: version "0.1.4" resolved "https://registry.yarnpkg.com/align-text/-/align-text-0.1.4.tgz#0cd90a561093f35d0a99256c22b7069433fad117" @@ -29155,10 +29129,10 @@ optionator@^0.9.1: type-check "^0.4.0" word-wrap "^1.2.3" -ora@*, ora@^5.1.0: - version "5.4.0" - resolved "https://registry.yarnpkg.com/ora/-/ora-5.4.0.tgz#42eda4855835b9cd14d33864c97a3c95a3f56bf4" - integrity sha512-1StwyXQGoU6gdjYkyVcqOLnVlbKj+6yPNNOxJVgpt9t4eksKjiriiHuxktLYkgllwk+D6MbC4ihH84L1udRXPg== +ora@*, ora@5.4.1, ora@^5.1.0, ora@^5.3.0: + version "5.4.1" + resolved "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz#1b2678426af4ac4a509008e5e4ac9e9959db9e18" + integrity sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ== dependencies: bl "^4.1.0" chalk "^4.1.0" @@ -29184,21 +29158,6 @@ ora@5.3.0: strip-ansi "^6.0.0" wcwidth "^1.0.1" -ora@5.4.1, ora@^5.3.0: - version "5.4.1" - resolved "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz#1b2678426af4ac4a509008e5e4ac9e9959db9e18" - integrity sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ== - dependencies: - bl "^4.1.0" - chalk "^4.1.0" - cli-cursor "^3.1.0" - cli-spinners "^2.5.0" - is-interactive "^1.0.0" - is-unicode-supported "^0.1.0" - log-symbols "^4.1.0" - strip-ansi "^6.0.0" - wcwidth "^1.0.1" - ora@^3.4.0: version "3.4.0" resolved "https://registry.yarnpkg.com/ora/-/ora-3.4.0.tgz#bf0752491059a3ef3ed4c85097531de9fdbcd318" @@ -34498,14 +34457,7 @@ rxjs@6.6.7, rxjs@^6.4.0, rxjs@^6.5.3, rxjs@^6.5.4, rxjs@^6.6.0, rxjs@~6.6.0: dependencies: tslib "^1.9.0" -rxjs@^7.1.0: - version "7.1.0" - resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-7.1.0.tgz#94202d27b19305ef7b1a4f330277b2065df7039e" - integrity sha512-gCFO5iHIbRPwznl6hAYuwNFld8W4S2shtSJIqG27ReWXo9IWrCyEICxUA+6vJHwSR/OakoenC4QsDxq50tzYmw== - dependencies: - tslib "~2.1.0" - -rxjs@^7.2.0: +rxjs@^7.1.0, rxjs@^7.2.0: version "7.4.0" resolved "https://registry.npmjs.org/rxjs/-/rxjs-7.4.0.tgz#a12a44d7eebf016f5ff2441b87f28c9a51cebc68" integrity sha512-7SQDi7xeTMCJpqViXh8gL/lebcwlp3d831F05+9B44A4B0WfsEwUQHR64gsH1kvJ+Ep/J9K2+n1hVl1CsGN23w== From a1caecba2c61010dac39b37f24ee89320bd68686 Mon Sep 17 00:00:00 2001 From: David Munechika Date: Thu, 28 Oct 2021 12:03:43 -0400 Subject: [PATCH 08/38] fix webpack preprocessor --- npm/webpack-preprocessor/test/unit/index.spec.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/npm/webpack-preprocessor/test/unit/index.spec.js b/npm/webpack-preprocessor/test/unit/index.spec.js index ceae0032754f..51a85406e4da 100644 --- a/npm/webpack-preprocessor/test/unit/index.spec.js +++ b/npm/webpack-preprocessor/test/unit/index.spec.js @@ -353,7 +353,7 @@ describe('webpack preprocessor', function () { return true }, toJson () { - return { errors: errs } + return { warnings: [], errors: errs } }, } From d310ce8c7e534ce64d1d9158dde9c47f7cd0d109 Mon Sep 17 00:00:00 2001 From: David Munechika Date: Thu, 28 Oct 2021 12:04:38 -0400 Subject: [PATCH 09/38] fix server unit test --- packages/server/test/unit/util/suppress_warnings_spec.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/server/test/unit/util/suppress_warnings_spec.ts b/packages/server/test/unit/util/suppress_warnings_spec.ts index bee28e6d04bb..6e3951c1e2cf 100644 --- a/packages/server/test/unit/util/suppress_warnings_spec.ts +++ b/packages/server/test/unit/util/suppress_warnings_spec.ts @@ -5,7 +5,7 @@ import proxyquire from 'proxyquire' const ERROR_MESSAGE = 'Setting the NODE_TLS_REJECT_UNAUTHORIZED' -const TLS_CONNECT = `require('tls').connect().on('error', ()=>{});` +const TLS_CONNECT = `require('tls').connect('5000').on('error', ()=>{});` const SUPPRESS_WARNING = `require('${__dirname}/../../../lib/util/suppress_warnings').suppress();` describe('lib/util/suppress_warnings', function () { From cc25b0f0f73889b74b8c4b07f462abfb49491b7f Mon Sep 17 00:00:00 2001 From: David Munechika Date: Thu, 28 Oct 2021 12:55:02 -0400 Subject: [PATCH 10/38] add mocha types --- npm/webpack-preprocessor/package.json | 1 + yarn.lock | 5 +++++ 2 files changed, 6 insertions(+) diff --git a/npm/webpack-preprocessor/package.json b/npm/webpack-preprocessor/package.json index 59e8ea31e898..bef3d7e86bb9 100644 --- a/npm/webpack-preprocessor/package.json +++ b/npm/webpack-preprocessor/package.json @@ -29,6 +29,7 @@ "@babel/plugin-proposal-nullish-coalescing-operator": "7.8.3", "@babel/preset-env": "^7.0.0", "@fellow/eslint-plugin-coffee": "0.4.13", + "@types/mocha": "9.0.0", "@types/webpack": "^4.41.12", "@typescript-eslint/eslint-plugin": "^4.18.0", "@typescript-eslint/parser": "^4.18.0", diff --git a/yarn.lock b/yarn.lock index 0cc12f1012de..8dbc04457c94 100644 --- a/yarn.lock +++ b/yarn.lock @@ -8059,6 +8059,11 @@ resolved "https://registry.yarnpkg.com/@types/mocha/-/mocha-8.0.3.tgz#51b21b6acb6d1b923bbdc7725c38f9f455166402" integrity sha512-vyxR57nv8NfcU0GZu8EUXZLTbCMupIUwy95LJ6lllN+JRPG25CwMHoB1q5xKh8YKhQnHYRAn4yW2yuHbf/5xgg== +"@types/mocha@9.0.0": + version "9.0.0" + resolved "https://registry.yarnpkg.com/@types/mocha/-/mocha-9.0.0.tgz#3205bcd15ada9bc681ac20bef64e9e6df88fd297" + integrity sha512-scN0hAWyLVAvLR9AyW7HoFF5sJZglyBsbPuHO4fv7JRvfmPBMfp1ozWqOf/e4wwPNxezBZXRfWzMb6iFLgEVRA== + "@types/mock-fs@4.10.0": version "4.10.0" resolved "https://registry.yarnpkg.com/@types/mock-fs/-/mock-fs-4.10.0.tgz#460061b186993d76856f669d5317cda8a007c24b" From e37384a904be37d576c9cae03c51272a46709fb8 Mon Sep 17 00:00:00 2001 From: David Munechika Date: Fri, 29 Oct 2021 09:54:50 -0400 Subject: [PATCH 11/38] fix firefox spec mode --- packages/server/test/unit/browsers/firefox_spec.ts | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/packages/server/test/unit/browsers/firefox_spec.ts b/packages/server/test/unit/browsers/firefox_spec.ts index 68e7cfaed9f6..c343a552003d 100644 --- a/packages/server/test/unit/browsers/firefox_spec.ts +++ b/packages/server/test/unit/browsers/firefox_spec.ts @@ -119,8 +119,8 @@ describe('lib/browsers/firefox', () => { sinon.stub(plugins, 'has') sinon.stub(plugins, 'execute') - sinon.stub(utils, 'writeExtension').resolves('/path/to/ext') sinon.stub(launch, 'launch').resolves(this.browserInstance) + sinon.stub(utils, 'writeExtension').resolves('/path/to/ext') sinon.spy(FirefoxProfile.prototype, 'setPreference') sinon.spy(FirefoxProfile.prototype, 'updatePreferences') @@ -235,8 +235,6 @@ describe('lib/browsers/firefox', () => { }, }) - utils.writeExtension.restore() - const getFile = function (path) { return _.reduce(_.compact(_.split(path, '/')), (acc, item) => { return acc.getItem(item) @@ -244,7 +242,7 @@ describe('lib/browsers/firefox', () => { } return firefox.open(this.browser, 'http://', this.options).then(() => { - expect(getFile(`${process.env.HOME }/.config/Cypress/cy/test/browsers/firefox-stable/interactive/CypressExtension/background.js`).getMode()).to.be.equals(0o644) + expect(getFile(`${process.env.HOME }/.config/Cypress/cy/test/browsers/firefox-stable/interactive/CypressExtension/background.js`).getMode()).to.be.equals(0o444) }) }) From 0895dffe15371d8d16e77ede7d36b2f5ae954020 Mon Sep 17 00:00:00 2001 From: David Munechika Date: Fri, 29 Oct 2021 11:53:00 -0400 Subject: [PATCH 12/38] upgrade mock-fs --- __snapshots__/packages-spec.js | 84 ----------------------- package.json | 2 +- scripts/unit/binary/util/packages-spec.js | 1 - scripts/unit/binary/util/test.json | 3 + yarn.lock | 8 +-- 5 files changed, 8 insertions(+), 90 deletions(-) create mode 100644 scripts/unit/binary/util/test.json diff --git a/__snapshots__/packages-spec.js b/__snapshots__/packages-spec.js index 4c8e163f5795..f717387b0280 100644 --- a/__snapshots__/packages-spec.js +++ b/__snapshots__/packages-spec.js @@ -26,87 +26,3 @@ exports['packages can copy files from package.json 1'] = { } } } - -exports['transformRequires can find and replace symlink requires 1'] = { - "[cwd]": { - "build": { - "linux": { - "Cypress": { - "resources": { - "app": { - "packages": { - "foo": { - "package.json": "{\"main\":\"src/main.js\", \"name\": \"foo\", \"files\": [\"lib\"]}", - "src": { - "main.js": "console.log()" - }, - "lib": { - "foo.js": "require(\"../../bar/src/main\")" - } - }, - "bar": { - "package.json": "{\"main\":\"src/main.js\", \"name\": \"foo\", \"files\": [\"lib\"]}", - "src": { - "main.js": "console.log()" - }, - "lib": { - "foo.js": "require(\"../../foo/lib/somefoo\")" - }, - "node_modules": { - "no-search.js": "" - }, - "dist": { - "no-search.js": "" - } - } - } - } - } - } - } - } - }, - "tmp": {} -} - -exports['transformRequires can find and replace symlink requires on win32 1'] = { - "[cwd]": { - "build": { - "linux": { - "Cypress": { - "resources": { - "app": { - "packages": { - "foo": { - "package.json": "{\"main\":\"src/main.js\", \"name\": \"foo\", \"files\": [\"lib\"]}", - "src": { - "main.js": "console.log()" - }, - "lib": { - "foo.js": "require(\"../../bar/src/main\")" - } - }, - "bar": { - "package.json": "{\"main\":\"src/main.js\", \"name\": \"foo\", \"files\": [\"lib\"]}", - "src": { - "main.js": "console.log()" - }, - "lib": { - "foo.js": "require(\"../../foo/lib/somefoo\")" - }, - "node_modules": { - "no-search.js": "" - }, - "dist": { - "no-search.js": "" - } - } - } - } - } - } - } - } - }, - "tmp": {} -} diff --git a/package.json b/package.json index c98e96351062..f30dbb9fc6bd 100644 --- a/package.json +++ b/package.json @@ -162,7 +162,7 @@ "mocha-banner": "1.1.2", "mocha-junit-reporter": "2.0.0", "mocha-multi-reporters": "1.1.7", - "mock-fs": "4.9.0", + "mock-fs": "5.1.1", "odiff-bin": "2.1.0", "parse-github-repo-url": "1.4.1", "patch-package": "6.4.7", diff --git a/scripts/unit/binary/util/packages-spec.js b/scripts/unit/binary/util/packages-spec.js index c39af57f5e22..7f7f9f1a32b3 100644 --- a/scripts/unit/binary/util/packages-spec.js +++ b/scripts/unit/binary/util/packages-spec.js @@ -58,7 +58,6 @@ describe('packages', () => { const destinationFolder = os.tmpdir() debug('destination folder %s', destinationFolder) - await packages.copyAllToDist(destinationFolder) const files = getFs() diff --git a/scripts/unit/binary/util/test.json b/scripts/unit/binary/util/test.json new file mode 100644 index 000000000000..ffdfb084cc6e --- /dev/null +++ b/scripts/unit/binary/util/test.json @@ -0,0 +1,3 @@ +{ + "test": "true" +} \ No newline at end of file diff --git a/yarn.lock b/yarn.lock index 8dbc04457c94..97d1789d6226 100644 --- a/yarn.lock +++ b/yarn.lock @@ -27510,10 +27510,10 @@ mock-fs@4.13.0: resolved "https://registry.yarnpkg.com/mock-fs/-/mock-fs-4.13.0.tgz#31c02263673ec3789f90eb7b6963676aa407a598" integrity sha512-DD0vOdofJdoaRNtnWcrXe6RQbpHkPPmtqGq14uRX0F8ZKJ5nv89CVTYl/BZdppDxBDaV0hl75htg3abpEWlPZA== -mock-fs@4.9.0: - version "4.9.0" - resolved "https://registry.yarnpkg.com/mock-fs/-/mock-fs-4.9.0.tgz#7fc0c2f82965050b2776f8eb4eb63ca53a92ff86" - integrity sha512-aUj0qIniTNxzGqAC61Bvro7YD37tIBnMw3wpClucUVgNBS7r6YQn/M4wuoH7SGteKz4SvC1OBeDsfpG0MYC+1Q== +mock-fs@5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/mock-fs/-/mock-fs-5.1.1.tgz#d4c95e916abf400664197079d7e399d133bb6048" + integrity sha512-p/8oZ3qvfKGPw+4wdVCyjDxa6wn2tP0TCf3WXC1UyUBAevezPn1TtOoxtMYVbZu/S/iExg+Ghed1busItj2CEw== mock-require@3.0.3: version "3.0.3" From 1f745c1a09946d01d445dc4aefd282e82a29f773 Mon Sep 17 00:00:00 2001 From: David Munechika Date: Tue, 2 Nov 2021 09:53:51 -0400 Subject: [PATCH 13/38] remove test json file --- scripts/unit/binary/util/test.json | 3 --- 1 file changed, 3 deletions(-) delete mode 100644 scripts/unit/binary/util/test.json diff --git a/scripts/unit/binary/util/test.json b/scripts/unit/binary/util/test.json deleted file mode 100644 index ffdfb084cc6e..000000000000 --- a/scripts/unit/binary/util/test.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "test": "true" -} \ No newline at end of file From 944bcb8063d9d1c8658e6835a9ddc9e93858cb1c Mon Sep 17 00:00:00 2001 From: David Munechika Date: Tue, 2 Nov 2021 10:02:53 -0400 Subject: [PATCH 14/38] update snapshots --- __snapshots__/packages-spec.js | 84 ++++++++++++++++++++++++++++++++++ 1 file changed, 84 insertions(+) diff --git a/__snapshots__/packages-spec.js b/__snapshots__/packages-spec.js index f717387b0280..4c8e163f5795 100644 --- a/__snapshots__/packages-spec.js +++ b/__snapshots__/packages-spec.js @@ -26,3 +26,87 @@ exports['packages can copy files from package.json 1'] = { } } } + +exports['transformRequires can find and replace symlink requires 1'] = { + "[cwd]": { + "build": { + "linux": { + "Cypress": { + "resources": { + "app": { + "packages": { + "foo": { + "package.json": "{\"main\":\"src/main.js\", \"name\": \"foo\", \"files\": [\"lib\"]}", + "src": { + "main.js": "console.log()" + }, + "lib": { + "foo.js": "require(\"../../bar/src/main\")" + } + }, + "bar": { + "package.json": "{\"main\":\"src/main.js\", \"name\": \"foo\", \"files\": [\"lib\"]}", + "src": { + "main.js": "console.log()" + }, + "lib": { + "foo.js": "require(\"../../foo/lib/somefoo\")" + }, + "node_modules": { + "no-search.js": "" + }, + "dist": { + "no-search.js": "" + } + } + } + } + } + } + } + } + }, + "tmp": {} +} + +exports['transformRequires can find and replace symlink requires on win32 1'] = { + "[cwd]": { + "build": { + "linux": { + "Cypress": { + "resources": { + "app": { + "packages": { + "foo": { + "package.json": "{\"main\":\"src/main.js\", \"name\": \"foo\", \"files\": [\"lib\"]}", + "src": { + "main.js": "console.log()" + }, + "lib": { + "foo.js": "require(\"../../bar/src/main\")" + } + }, + "bar": { + "package.json": "{\"main\":\"src/main.js\", \"name\": \"foo\", \"files\": [\"lib\"]}", + "src": { + "main.js": "console.log()" + }, + "lib": { + "foo.js": "require(\"../../foo/lib/somefoo\")" + }, + "node_modules": { + "no-search.js": "" + }, + "dist": { + "no-search.js": "" + } + } + } + } + } + } + } + } + }, + "tmp": {} +} From 3328b7f631f72db19b1df3997f6b7048669cdc7f Mon Sep 17 00:00:00 2001 From: David Munechika Date: Tue, 2 Nov 2021 11:12:02 -0400 Subject: [PATCH 15/38] patch request --- patches/@cypress+request+2.88.6.patch | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 patches/@cypress+request+2.88.6.patch diff --git a/patches/@cypress+request+2.88.6.patch b/patches/@cypress+request+2.88.6.patch new file mode 100644 index 000000000000..0720b4d1e61d --- /dev/null +++ b/patches/@cypress+request+2.88.6.patch @@ -0,0 +1,17 @@ +diff --git a/node_modules/@cypress/request/request.js b/node_modules/@cypress/request/request.js +index 53e6177..0dee7fb 100644 +--- a/node_modules/@cypress/request/request.js ++++ b/node_modules/@cypress/request/request.js +@@ -1069,9 +1069,9 @@ Request.prototype.onRequestResponse = function (response) { + responseContent.once('end', function (chunk) { + self.emit('end', chunk) + }) +- responseContent.on('error', function (error) { +- self.emit('error', error) +- }) ++ // responseContent.on('error', function (error) { ++ // self.emit('error', error) ++ // }) + responseContent.on('close', function () { self.emit('close') }) + + if (self.callback) { From 8c39026c024f373aa752ef70ba0f04fc21133336 Mon Sep 17 00:00:00 2001 From: David Munechika Date: Wed, 3 Nov 2021 11:51:02 -0400 Subject: [PATCH 16/38] fix request patch --- patches/@cypress+request+2.88.6.patch | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/patches/@cypress+request+2.88.6.patch b/patches/@cypress+request+2.88.6.patch index 0720b4d1e61d..8ac69264fe28 100644 --- a/patches/@cypress+request+2.88.6.patch +++ b/patches/@cypress+request+2.88.6.patch @@ -9,9 +9,11 @@ index 53e6177..0dee7fb 100644 - responseContent.on('error', function (error) { - self.emit('error', error) - }) -+ // responseContent.on('error', function (error) { -+ // self.emit('error', error) -+ // }) ++ responseContent.on('error', function (error) { ++ if (!error.message.includes('aborted') || self.listenerCount('error') !== 0) { ++ self.emit('error', error) ++ } ++ }) responseContent.on('close', function () { self.emit('close') }) if (self.callback) { From cd4e363a19f227f539d865921b0f1c65e7e48341 Mon Sep 17 00:00:00 2001 From: David Munechika Date: Wed, 3 Nov 2021 12:40:34 -0400 Subject: [PATCH 17/38] fix patch --- patches/@cypress+request+2.88.6.patch | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/patches/@cypress+request+2.88.6.patch b/patches/@cypress+request+2.88.6.patch index 8ac69264fe28..126072573c49 100644 --- a/patches/@cypress+request+2.88.6.patch +++ b/patches/@cypress+request+2.88.6.patch @@ -1,19 +1,15 @@ diff --git a/node_modules/@cypress/request/request.js b/node_modules/@cypress/request/request.js -index 53e6177..0dee7fb 100644 +index 53e6177..54222d7 100644 --- a/node_modules/@cypress/request/request.js +++ b/node_modules/@cypress/request/request.js -@@ -1069,9 +1069,9 @@ Request.prototype.onRequestResponse = function (response) { - responseContent.once('end', function (chunk) { +@@ -1070,7 +1070,9 @@ Request.prototype.onRequestResponse = function (response) { self.emit('end', chunk) }) -- responseContent.on('error', function (error) { + responseContent.on('error', function (error) { - self.emit('error', error) -- }) -+ responseContent.on('error', function (error) { -+ if (!error.message.includes('aborted') || self.listenerCount('error') !== 0) { ++ if (!error.message.includes('aborted') || self.listenerCount('error') !== 0) { + self.emit('error', error) + } -+ }) + }) responseContent.on('close', function () { self.emit('close') }) - if (self.callback) { From 6f1dc3642309295a9e438788a0d240fbfbaf3324 Mon Sep 17 00:00:00 2001 From: Zach Bloomquist Date: Mon, 8 Nov 2021 10:13:58 -0500 Subject: [PATCH 18/38] move huge_app.js code into own function --- .../test/integration/http_requests_spec.js | 35 ++++++++++--------- 1 file changed, 19 insertions(+), 16 deletions(-) diff --git a/packages/server/test/integration/http_requests_spec.js b/packages/server/test/integration/http_requests_spec.js index 996aef1b44d8..bf8a445af800 100644 --- a/packages/server/test/integration/http_requests_spec.js +++ b/packages/server/test/integration/http_requests_spec.js @@ -60,6 +60,23 @@ const cleanResponseBody = (body) => { return replaceAbsolutePaths(removeWhitespace(body)) } +function getHugeJsFile () { + const pathToHugeAppJs = Fixtures.path('server/libs/huge_app.js') + + const getHugeFile = () => { + return rp('https://s3.amazonaws.com/internal-test-runner-assets.cypress.io/huge_app.js') + .then((resp) => { + return fs + .outputFileAsync(pathToHugeAppJs, resp) + .return(resp) + }) + } + + return fs + .readFileAsync(pathToHugeAppJs, 'utf8') + .catch(getHugeFile) +} + describe('Routes', () => { require('mocha-banner').register() @@ -3316,20 +3333,7 @@ describe('Routes', () => { }) it('does not die rewriting a huge JS file', function () { - const pathToHugeAppJs = Fixtures.path('server/libs/huge_app.js') - - const getHugeFile = () => { - return rp('https://s3.amazonaws.com/internal-test-runner-assets.cypress.io/huge_app.js') - .then((resp) => { - return fs - .outputFileAsync(pathToHugeAppJs, resp) - .return(resp) - }) - } - - return fs - .readFileAsync(pathToHugeAppJs, 'utf8') - .catch(getHugeFile) + return getHugeJsFile() .then((hugeJsFile) => { nock(this.server._remoteOrigin) .get('/app.js') @@ -3823,8 +3827,7 @@ describe('Routes', () => { }) it('aborts the proxied request', function (done) { - fs - .readFileAsync(Fixtures.path('server/libs/huge_app.js'), 'utf8') + getHugeJsFile() .then((str) => { const server = http.createServer((req, res) => { // when the incoming message to our From e8bdd77c66bb4f207c0c884d06a2a29241c86c64 Mon Sep 17 00:00:00 2001 From: Zach Bloomquist Date: Mon, 8 Nov 2021 10:41:15 -0500 Subject: [PATCH 19/38] use req.socket.on('close') instead of req.on('aborted') see https://github.com/nodejs/node/issues/38924 inspired by https://github.com/jbudz/kibana/commit/e1cba8d5299ed0480beac1bcd1b855352a793faa and https://github.com/mmarchini/node-restify/commit/10fe17196deffc970b8b04e563ba1802b35890f5 --- packages/proxy/lib/http/request-middleware.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/proxy/lib/http/request-middleware.ts b/packages/proxy/lib/http/request-middleware.ts index 63726ddc8d9f..b857ad4fc3ca 100644 --- a/packages/proxy/lib/http/request-middleware.ts +++ b/packages/proxy/lib/http/request-middleware.ts @@ -170,7 +170,7 @@ const SendRequestOutgoing: RequestMiddleware = function () { req.on('error', this.onError) req.on('response', (incomingRes) => this.onResponse(incomingRes, req)) - this.req.on('aborted', () => { + this.req.socket.on('close', () => { this.debug('request aborted') req.abort() }) From be93bf9cfbf75c94da28d9f971f83e97a6e62780 Mon Sep 17 00:00:00 2001 From: Zach Bloomquist Date: Mon, 8 Nov 2021 11:01:34 -0500 Subject: [PATCH 20/38] update mock-fs everywhere else too --- cli/package.json | 2 +- npm/create-cypress-tests/package.json | 2 +- packages/server/package.json | 2 +- yarn.lock | 10 ---------- 4 files changed, 3 insertions(+), 13 deletions(-) diff --git a/cli/package.json b/cli/package.json index 4387fc409906..b5a9e1bd3179 100644 --- a/cli/package.json +++ b/cli/package.json @@ -86,7 +86,7 @@ "execa-wrap": "1.4.0", "hasha": "5.2.2", "mocha": "6.2.2", - "mock-fs": "4.13.0", + "mock-fs": "5.1.1", "mocked-env": "1.3.2", "nock": "13.0.7", "postinstall-postinstall": "2.1.0", diff --git a/npm/create-cypress-tests/package.json b/npm/create-cypress-tests/package.json index 5901324bfb42..554782079ea1 100644 --- a/npm/create-cypress-tests/package.json +++ b/npm/create-cypress-tests/package.json @@ -36,7 +36,7 @@ "@types/ora": "^3.2.0", "copy": "0.3.2", "mocha": "7.1.1", - "mock-fs": "4.13.0", + "mock-fs": "5.1.1", "shx": "0.3.3", "snap-shot-it": "7.9.3", "typescript": "^4.2.3" diff --git a/packages/server/package.json b/packages/server/package.json index 8e2ad29703ba..18f57cfb63a9 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -169,7 +169,7 @@ "mochawesome-1.5.2": "npm:mochawesome@1.5.2", "mochawesome-2.3.1": "npm:mochawesome@2.3.1", "mochawesome-3.0.1": "npm:mochawesome@3.0.1", - "mock-fs": "4.12.0", + "mock-fs": "5.1.1", "mocked-env": "1.2.4", "mockery": "2.1.0", "multer": "1.4.2", diff --git a/yarn.lock b/yarn.lock index 97d1789d6226..efab16dd7d26 100644 --- a/yarn.lock +++ b/yarn.lock @@ -27500,16 +27500,6 @@ mochawesome-report-generator@^3.0.1: validator "^9.1.2" yargs "^10.0.3" -mock-fs@4.12.0: - version "4.12.0" - resolved "https://registry.yarnpkg.com/mock-fs/-/mock-fs-4.12.0.tgz#a5d50b12d2d75e5bec9dac3b67ffe3c41d31ade4" - integrity sha512-/P/HtrlvBxY4o/PzXY9cCNBrdylDNxg7gnrv2sMNxj+UJ2m8jSpl0/A6fuJeNAWr99ZvGWH8XCbE0vmnM5KupQ== - -mock-fs@4.13.0: - version "4.13.0" - resolved "https://registry.yarnpkg.com/mock-fs/-/mock-fs-4.13.0.tgz#31c02263673ec3789f90eb7b6963676aa407a598" - integrity sha512-DD0vOdofJdoaRNtnWcrXe6RQbpHkPPmtqGq14uRX0F8ZKJ5nv89CVTYl/BZdppDxBDaV0hl75htg3abpEWlPZA== - mock-fs@5.1.1: version "5.1.1" resolved "https://registry.yarnpkg.com/mock-fs/-/mock-fs-5.1.1.tgz#d4c95e916abf400664197079d7e399d133bb6048" From 3424df20fc9b614912593a4942c37f4ac6056df5 Mon Sep 17 00:00:00 2001 From: David Munechika Date: Mon, 8 Nov 2021 12:10:36 -0500 Subject: [PATCH 21/38] adjust angular devkit version --- npm/cypress-schematic/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/npm/cypress-schematic/package.json b/npm/cypress-schematic/package.json index c84908de58b1..1672e22a5106 100644 --- a/npm/cypress-schematic/package.json +++ b/npm/cypress-schematic/package.json @@ -18,7 +18,7 @@ "unlink:sandbox": "cd sandbox && yarn unlink @cypress/schematic && cd .. && yarn unlink" }, "dependencies": { - "@angular-devkit/architect": "^0.1202.10", + "@angular-devkit/architect": "0.1202.10", "@angular-devkit/core": "^12.2.10", "@angular-devkit/schematics": "^12.2.10", "@schematics/angular": "^12.2.10", From ae8efca4b766c3b8f69db067820e44b8f5e1de8b Mon Sep 17 00:00:00 2001 From: David Munechika Date: Mon, 8 Nov 2021 12:58:41 -0500 Subject: [PATCH 22/38] bump angular devkit version --- npm/cypress-schematic/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/npm/cypress-schematic/package.json b/npm/cypress-schematic/package.json index 1672e22a5106..c84908de58b1 100644 --- a/npm/cypress-schematic/package.json +++ b/npm/cypress-schematic/package.json @@ -18,7 +18,7 @@ "unlink:sandbox": "cd sandbox && yarn unlink @cypress/schematic && cd .. && yarn unlink" }, "dependencies": { - "@angular-devkit/architect": "0.1202.10", + "@angular-devkit/architect": "^0.1202.10", "@angular-devkit/core": "^12.2.10", "@angular-devkit/schematics": "^12.2.10", "@schematics/angular": "^12.2.10", From 2e741121988766ef2068641250a12c35e2fa09d4 Mon Sep 17 00:00:00 2001 From: David Munechika Date: Mon, 8 Nov 2021 12:59:18 -0500 Subject: [PATCH 23/38] add ignore engines --- circle.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/circle.yml b/circle.yml index 3e5ec8796b08..3dff0f9f178c 100644 --- a/circle.yml +++ b/circle.yml @@ -1473,7 +1473,7 @@ jobs: command: yarn workspace @cypress/schematic build:all - run: name: Install @angular/cli - command: yarn policies set-version 1.19.0 && yarn add --dev @angular/cli + command: yarn policies set-version 1.19.0 && yarn add --ignore-engines --dev @angular/cli working_directory: npm/cypress-schematic - run: name: Launch From 87e66be18054536c94f3c74f1edf3ba1d7c9171b Mon Sep 17 00:00:00 2001 From: Zach Bloomquist Date: Mon, 8 Nov 2021 13:06:57 -0500 Subject: [PATCH 24/38] remove socket.destroyed assertions rationale: without setting `proxy`, `destroyed` is still false after upgrading to node 15 - failure has nothing to do with our proxying. --- packages/https-proxy/test/integration/proxy_spec.js | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/packages/https-proxy/test/integration/proxy_spec.js b/packages/https-proxy/test/integration/proxy_spec.js index f25bccf2c5f9..f3b7562a201b 100644 --- a/packages/https-proxy/test/integration/proxy_spec.js +++ b/packages/https-proxy/test/integration/proxy_spec.js @@ -99,9 +99,7 @@ describe('Proxy', () => { proxy: 'http://localhost:3333', resolveWithFullResponse: true, }) - .then((res) => { - // ensure client has disconnected - expect(res.socket.destroyed).to.be.true + .then(() => { // ensure the outgoing socket created for this connection was destroyed expect(net.connect).calledOnce @@ -311,10 +309,7 @@ describe('Proxy', () => { resolveWithFullResponse: true, forever: false, }) - .then((res) => { - // ensure client has disconnected - expect(res.socket.destroyed).to.be.true - + .then(() => { // ensure the outgoing socket created for this connection was destroyed expect(net.connect).calledOnce const socket = net.connect.getCalls()[0].returnValue From 57b7b7954f2a3ead4c083c8cf45fadd406ebc37c Mon Sep 17 00:00:00 2001 From: Zach Bloomquist Date: Mon, 8 Nov 2021 13:11:26 -0500 Subject: [PATCH 25/38] fix warnings about invalid `main` entry --- packages/launcher/package.json | 2 +- packages/socket/package.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/launcher/package.json b/packages/launcher/package.json index a148916a7f52..244b49a51671 100644 --- a/packages/launcher/package.json +++ b/packages/launcher/package.json @@ -2,7 +2,7 @@ "name": "@packages/launcher", "version": "0.0.0-development", "private": true, - "main": "index.js", + "main": "index", "scripts": { "build-prod": "tsc --project .", "clean": "node scripts/clean.js || true", diff --git a/packages/socket/package.json b/packages/socket/package.json index 69e1772ba2a2..c652c3223d1d 100644 --- a/packages/socket/package.json +++ b/packages/socket/package.json @@ -2,7 +2,7 @@ "name": "@packages/socket", "version": "0.0.0-development", "private": true, - "main": "index.js", + "main": "index", "browser": "lib/browser.ts", "scripts": { "build-prod": "tsc", From 5096ed3d91e889e3c34ce691bcc0baebc2a2e685 Mon Sep 17 00:00:00 2001 From: Zach Bloomquist Date: Mon, 8 Nov 2021 13:23:43 -0500 Subject: [PATCH 26/38] update stackTraceLinesRe to recognize new node:internals stack trace pattern --- system-tests/lib/system-tests.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/system-tests/lib/system-tests.ts b/system-tests/lib/system-tests.ts index f739cc359687..6f58591f90ce 100644 --- a/system-tests/lib/system-tests.ts +++ b/system-tests/lib/system-tests.ts @@ -250,7 +250,7 @@ const pathUpToProjectName = Fixtures.projectPath('') const DEFAULT_BROWSERS = ['electron', 'chrome', 'firefox'] -const stackTraceLinesRe = /(\n?[^\S\n\r]*).*?(@|\bat\b).*\.(js|coffee|ts|html|jsx|tsx)(-\d+)?:\d+:\d+[\n\S\s]*?(\n\s*?\n|$)/g +const stackTraceLinesRe = /(\n?[^\S\n\r]*).*?(@|\bat\b)(?:.*node:.*|.*\.(js|coffee|ts|html|jsx|tsx))(-\d+)?:\d+:\d+[\n\S\s]*?(\n\s*?\n|$)/g const browserNameVersionRe = /(Browser\:\s+)(Custom |)(Electron|Chrome|Canary|Chromium|Firefox)(\s\d+)(\s\(\w+\))?(\s+)/ const availableBrowsersRe = /(Available browsers found on your system are:)([\s\S]+)/g const crossOriginErrorRe = /(Blocked a frame .* from accessing a cross-origin frame.*|Permission denied.*cross-origin object.*)/gm From 17eb9b0d617a3522ac3dc0ad4c0247cf3811a4ea Mon Sep 17 00:00:00 2001 From: David Munechika Date: Mon, 8 Nov 2021 13:28:55 -0500 Subject: [PATCH 27/38] add nvm install --- circle.yml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/circle.yml b/circle.yml index 3dff0f9f178c..7f1c355fc582 100644 --- a/circle.yml +++ b/circle.yml @@ -1471,9 +1471,12 @@ jobs: - run: name: Build command: yarn workspace @cypress/schematic build:all + - run: + name: Install Node 16.10 + command: nvm install 16.10 - run: name: Install @angular/cli - command: yarn policies set-version 1.19.0 && yarn add --ignore-engines --dev @angular/cli + command: yarn policies set-version 1.19.0 && yarn add --dev @angular/cli working_directory: npm/cypress-schematic - run: name: Launch From 673b444baca07dba926021f69e0ba629c0caebbf Mon Sep 17 00:00:00 2001 From: David Munechika Date: Mon, 8 Nov 2021 13:40:22 -0500 Subject: [PATCH 28/38] include load nvm script --- circle.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/circle.yml b/circle.yml index 7f1c355fc582..a3156e15838a 100644 --- a/circle.yml +++ b/circle.yml @@ -1473,7 +1473,9 @@ jobs: command: yarn workspace @cypress/schematic build:all - run: name: Install Node 16.10 - command: nvm install 16.10 + command: | + . ./scripts/load-nvm.sh + nvm install 16.10 - run: name: Install @angular/cli command: yarn policies set-version 1.19.0 && yarn add --dev @angular/cli From 8bf95dbd9fcc6ee8e258dac2227ecc6486de2327 Mon Sep 17 00:00:00 2001 From: Zach Bloomquist Date: Mon, 8 Nov 2021 14:23:33 -0500 Subject: [PATCH 29/38] add index.js to files so it appears in built binary --- packages/launcher/package.json | 2 +- packages/launcher/tsconfig.json | 3 ++- packages/socket/package.json | 2 +- 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/packages/launcher/package.json b/packages/launcher/package.json index 244b49a51671..53c05d7c0317 100644 --- a/packages/launcher/package.json +++ b/packages/launcher/package.json @@ -2,7 +2,6 @@ "name": "@packages/launcher", "version": "0.0.0-development", "private": true, - "main": "index", "scripts": { "build-prod": "tsc --project .", "clean": "node scripts/clean.js || true", @@ -34,6 +33,7 @@ "typescript": "^4.2.3" }, "files": [ + "index.js", "lib" ], "types": "index.ts" diff --git a/packages/launcher/tsconfig.json b/packages/launcher/tsconfig.json index 2aadf1552a3d..d337de179dd1 100644 --- a/packages/launcher/tsconfig.json +++ b/packages/launcher/tsconfig.json @@ -1,7 +1,8 @@ { "extends": "./../ts/tsconfig.json", "include": [ - "**/*.ts" + "**/*.ts", + "./index.ts" ], "files": [ "./../ts/index.d.ts" diff --git a/packages/socket/package.json b/packages/socket/package.json index c652c3223d1d..5a0302c9d9c7 100644 --- a/packages/socket/package.json +++ b/packages/socket/package.json @@ -2,7 +2,6 @@ "name": "@packages/socket", "version": "0.0.0-development", "private": true, - "main": "index", "browser": "lib/browser.ts", "scripts": { "build-prod": "tsc", @@ -25,6 +24,7 @@ "resolve-pkg": "2.0.0" }, "files": [ + "index.js", "lib", "patches" ], From 1b8b34a89827b7cd9310228147d15201c7e7be37 Mon Sep 17 00:00:00 2001 From: Zach Bloomquist Date: Mon, 8 Nov 2021 14:35:33 -0500 Subject: [PATCH 30/38] try to use install-required-node --- circle.yml | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/circle.yml b/circle.yml index a452b8c05604..a7d6fa376bf0 100644 --- a/circle.yml +++ b/circle.yml @@ -266,15 +266,20 @@ commands: install-required-node: # https://discuss.circleci.com/t/switch-nodejs-version-on-machine-executor-solved/26675/2 - description: Install Node version matching .node-version + description: Install Node version + parameters: + version: + type: string + default: "" steps: - run: name: Install NVM # TODO: determine why we get the missing .nvmrc file error command: | - export NODE_VERSION=$(cat .node-version) + export NODE_VERSION=<> + export NODE_VERSION=${NODE_VERSION:-$(cat .node-version)} echo "Installing Node $NODE_VERSION" - cp .node-version .nvmrc + echo $NODE_VERSION > .nvmrc curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.35.3/install.sh | bash - run: # https://github.com/nvm-sh/nvm#nvmrc @@ -282,9 +287,9 @@ commands: command: | . ./scripts/load-nvm.sh echo "before nvm install" - nvm install + nvm install <> echo "before nvm use" - nvm use + nvm use <> echo "before nvm alias default" nvm alias default node --version @@ -1470,11 +1475,8 @@ jobs: - run: name: Build command: yarn workspace @cypress/schematic build:all - - run: - name: Install Node 16.10 - command: | - . ./scripts/load-nvm.sh - nvm install 16.10 + - install-required-node: + version: "16.10" - run: name: Install @angular/cli command: yarn policies set-version 1.19.0 && yarn add --dev @angular/cli From 4895e97179c1b8ba8ba2398128a35ba1be677f18 Mon Sep 17 00:00:00 2001 From: Zach Bloomquist Date: Mon, 8 Nov 2021 14:56:18 -0500 Subject: [PATCH 31/38] remove patch - only needed for node 15 --- patches/@cypress+request+2.88.6.patch | 15 --------------- 1 file changed, 15 deletions(-) delete mode 100644 patches/@cypress+request+2.88.6.patch diff --git a/patches/@cypress+request+2.88.6.patch b/patches/@cypress+request+2.88.6.patch deleted file mode 100644 index 126072573c49..000000000000 --- a/patches/@cypress+request+2.88.6.patch +++ /dev/null @@ -1,15 +0,0 @@ -diff --git a/node_modules/@cypress/request/request.js b/node_modules/@cypress/request/request.js -index 53e6177..54222d7 100644 ---- a/node_modules/@cypress/request/request.js -+++ b/node_modules/@cypress/request/request.js -@@ -1070,7 +1070,9 @@ Request.prototype.onRequestResponse = function (response) { - self.emit('end', chunk) - }) - responseContent.on('error', function (error) { -- self.emit('error', error) -+ if (!error.message.includes('aborted') || self.listenerCount('error') !== 0) { -+ self.emit('error', error) -+ } - }) - responseContent.on('close', function () { self.emit('close') }) - From 35756bc6dba9ed44060dc9e73563225d22bc88b5 Mon Sep 17 00:00:00 2001 From: Zach Bloomquist Date: Mon, 8 Nov 2021 15:30:45 -0500 Subject: [PATCH 32/38] update circle.yml --- circle.yml | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/circle.yml b/circle.yml index a7d6fa376bf0..9010f73a1446 100644 --- a/circle.yml +++ b/circle.yml @@ -1472,14 +1472,15 @@ jobs: <<: *defaults steps: - restore_cached_workspace - - run: - name: Build - command: yarn workspace @cypress/schematic build:all - install-required-node: version: "16.10" - run: - name: Install @angular/cli - command: yarn policies set-version 1.19.0 && yarn add --dev @angular/cli + name: Build + Install + command: | + . ./scripts/load-nvm.sh + yarn workspace @cypress/schematic build:all + yarn policies set-version 1.19.0 + yarn add --dev @angular/cli working_directory: npm/cypress-schematic - run: name: Launch From 7d8849070548c3a7cd8ea146b22219bf2e87f7b4 Mon Sep 17 00:00:00 2001 From: Zach Bloomquist Date: Mon, 8 Nov 2021 15:44:50 -0500 Subject: [PATCH 33/38] update circle.yml --- circle.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/circle.yml b/circle.yml index 9010f73a1446..159acf241576 100644 --- a/circle.yml +++ b/circle.yml @@ -1477,7 +1477,7 @@ jobs: - run: name: Build + Install command: | - . ./scripts/load-nvm.sh + . ../../scripts/load-nvm.sh yarn workspace @cypress/schematic build:all yarn policies set-version 1.19.0 yarn add --dev @angular/cli From 425b79ae43e30db4eae62f40ea1772fca4614279 Mon Sep 17 00:00:00 2001 From: Zach Bloomquist Date: Mon, 8 Nov 2021 16:19:21 -0500 Subject: [PATCH 34/38] use fixed request lib --- cli/package.json | 2 +- package.json | 2 +- packages/https-proxy/package.json | 2 +- packages/network/package.json | 2 +- packages/proxy/package.json | 2 +- packages/server/package.json | 2 +- system-tests/package.json | 2 +- yarn.lock | 8 ++++---- 8 files changed, 11 insertions(+), 11 deletions(-) diff --git a/cli/package.json b/cli/package.json index 2ef8f8cf5bab..82ee4946dfd3 100644 --- a/cli/package.json +++ b/cli/package.json @@ -20,7 +20,7 @@ "unit": "cross-env BLUEBIRD_DEBUG=1 NODE_ENV=test mocha --reporter mocha-multi-reporters --reporter-options configFile=../mocha-reporter-config.json" }, "dependencies": { - "@cypress/request": "^2.88.6", + "@cypress/request": "^2.88.7", "@cypress/xvfb": "^1.2.4", "@types/node": "^14.14.31", "@types/sinonjs__fake-timers": "^6.0.2", diff --git a/package.json b/package.json index f82a8287077a..1deb97af4979 100644 --- a/package.json +++ b/package.json @@ -73,7 +73,7 @@ "@cypress/env-or-json-file": "2.0.0", "@cypress/github-commit-status-check": "1.5.0", "@cypress/questions-remain": "1.0.1", - "@cypress/request": "2.88.6", + "@cypress/request": "2.88.7", "@cypress/request-promise": "4.2.6", "@fellow/eslint-plugin-coffee": "0.4.13", "@percy/cli": "1.0.0-beta.48", diff --git a/packages/https-proxy/package.json b/packages/https-proxy/package.json index 63982c5dc88c..7eb5da3a47e3 100644 --- a/packages/https-proxy/package.json +++ b/packages/https-proxy/package.json @@ -23,7 +23,7 @@ }, "devDependencies": { "@cypress/debugging-proxy": "2.0.1", - "@cypress/request": "2.88.6", + "@cypress/request": "2.88.7", "@cypress/request-promise": "4.2.6", "@packages/network": "0.0.0-development", "@packages/ts": "0.0.0-development", diff --git a/packages/network/package.json b/packages/network/package.json index 5773bfcf527e..1ae9a6b2e836 100644 --- a/packages/network/package.json +++ b/packages/network/package.json @@ -24,7 +24,7 @@ }, "devDependencies": { "@cypress/debugging-proxy": "2.0.1", - "@cypress/request": "2.88.6", + "@cypress/request": "2.88.7", "@cypress/request-promise": "4.2.6", "@packages/https-proxy": "0.0.0-development", "@packages/socket": "0.0.0-development", diff --git a/packages/proxy/package.json b/packages/proxy/package.json index 151304642978..87f0a806c3cc 100644 --- a/packages/proxy/package.json +++ b/packages/proxy/package.json @@ -24,7 +24,7 @@ "utf8-stream": "0.0.0" }, "devDependencies": { - "@cypress/request": "2.88.6", + "@cypress/request": "2.88.7", "@cypress/request-promise": "4.2.6", "@cypress/sinon-chai": "2.9.1", "@packages/resolve-dist": "0.0.0-development", diff --git a/packages/server/package.json b/packages/server/package.json index 0cea804ca46d..9276da0b052f 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -25,7 +25,7 @@ "@cypress/get-windows-proxy": "1.6.2", "@cypress/icons": "0.7.0", "@cypress/mocha-teamcity-reporter": "1.0.0", - "@cypress/request": "2.88.6", + "@cypress/request": "2.88.7", "@cypress/request-promise": "4.2.6", "@cypress/webpack-batteries-included-preprocessor": "0.0.0-development", "@cypress/webpack-preprocessor": "0.0.0-development", diff --git a/system-tests/package.json b/system-tests/package.json index 2066201c578f..2ce3dc905a61 100644 --- a/system-tests/package.json +++ b/system-tests/package.json @@ -14,7 +14,7 @@ "@cypress/commit-info": "2.2.0", "@cypress/debugging-proxy": "2.0.1", "@cypress/json-schemas": "5.39.0", - "@cypress/request": "2.88.6", + "@cypress/request": "2.88.7", "@cypress/request-promise": "4.2.6", "@cypress/sinon-chai": "2.9.1", "@cypress/webpack-preprocessor": "0.0.0-development", diff --git a/yarn.lock b/yarn.lock index 7053f3ef9ec6..8c61555c349a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2417,10 +2417,10 @@ stealthy-require "^1.1.1" tough-cookie "^2.3.3" -"@cypress/request@2.88.6", "@cypress/request@^2.88.6": - version "2.88.6" - resolved "https://registry.yarnpkg.com/@cypress/request/-/request-2.88.6.tgz#a970dd675befc6bdf8a8921576c01f51cc5798e9" - integrity sha512-z0UxBE/+qaESAHY9p9sM2h8Y4XqtsbDCt0/DPOrqA/RZgKi4PkxdpXyK4wCCnSk1xHqWHZZAE+gV6aDAR6+caQ== +"@cypress/request@2.88.7", "@cypress/request@^2.88.7": + version "2.88.7" + resolved "https://registry.npmjs.org/@cypress/request/-/request-2.88.7.tgz#386d960ab845a96953723348088525d5a75aaac4" + integrity sha512-FTULIP2rnDJvZDT9t6B4nSfYR40ue19tVmv3wUcY05R9/FPCoMl1nAPJkzWzBCo7ltVn5ThQTbxiMoGBN7k0ig== dependencies: aws-sign2 "~0.7.0" aws4 "^1.8.0" From bb002b5a6b6c1cfb0c18088fd8a95834f63cc43f Mon Sep 17 00:00:00 2001 From: Zach Bloomquist Date: Mon, 8 Nov 2021 16:30:54 -0500 Subject: [PATCH 35/38] prevent unnecessary req.abort() --- packages/proxy/lib/http/request-middleware.ts | 2 ++ 1 file changed, 2 insertions(+) diff --git a/packages/proxy/lib/http/request-middleware.ts b/packages/proxy/lib/http/request-middleware.ts index b857ad4fc3ca..058008d3a9ab 100644 --- a/packages/proxy/lib/http/request-middleware.ts +++ b/packages/proxy/lib/http/request-middleware.ts @@ -171,6 +171,8 @@ const SendRequestOutgoing: RequestMiddleware = function () { req.on('error', this.onError) req.on('response', (incomingRes) => this.onResponse(incomingRes, req)) this.req.socket.on('close', () => { + if (!this.req.aborted) return + this.debug('request aborted') req.abort() }) From b3e3cc1b72886ce729ba53b9d8ccb6f3c0d1c5b1 Mon Sep 17 00:00:00 2001 From: Zach Bloomquist Date: Mon, 8 Nov 2021 16:36:08 -0500 Subject: [PATCH 36/38] fix schematic --- circle.yml | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/circle.yml b/circle.yml index 159acf241576..c44670731d0a 100644 --- a/circle.yml +++ b/circle.yml @@ -1484,11 +1484,15 @@ jobs: working_directory: npm/cypress-schematic - run: name: Launch - command: yarn launch:test + command: | + . ../../scripts/load-nvm.sh + yarn launch:test working_directory: npm/cypress-schematic - run: name: Run unit tests - command: yarn test + command: | + . ../../scripts/load-nvm.sh + yarn test working_directory: npm/cypress-schematic - store-npm-logs From c790fcb1c2ef2df619ea755b20069e69a266a085 Mon Sep 17 00:00:00 2001 From: Zach Bloomquist Date: Mon, 8 Nov 2021 17:02:11 -0500 Subject: [PATCH 37/38] Revert "prevent unnecessary req.abort()" This reverts commit bb002b5a6b6c1cfb0c18088fd8a95834f63cc43f. --- packages/proxy/lib/http/request-middleware.ts | 2 -- 1 file changed, 2 deletions(-) diff --git a/packages/proxy/lib/http/request-middleware.ts b/packages/proxy/lib/http/request-middleware.ts index 058008d3a9ab..b857ad4fc3ca 100644 --- a/packages/proxy/lib/http/request-middleware.ts +++ b/packages/proxy/lib/http/request-middleware.ts @@ -171,8 +171,6 @@ const SendRequestOutgoing: RequestMiddleware = function () { req.on('error', this.onError) req.on('response', (incomingRes) => this.onResponse(incomingRes, req)) this.req.socket.on('close', () => { - if (!this.req.aborted) return - this.debug('request aborted') req.abort() }) From 0d98e7550c684b4e42dbcfd47c307f70e4829735 Mon Sep 17 00:00:00 2001 From: Zach Bloomquist Date: Tue, 9 Nov 2021 08:39:57 -0500 Subject: [PATCH 38/38] revert firefox_spec changes --- packages/server/test/unit/browsers/firefox_spec.ts | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/packages/server/test/unit/browsers/firefox_spec.ts b/packages/server/test/unit/browsers/firefox_spec.ts index c343a552003d..36fb071519cd 100644 --- a/packages/server/test/unit/browsers/firefox_spec.ts +++ b/packages/server/test/unit/browsers/firefox_spec.ts @@ -235,6 +235,8 @@ describe('lib/browsers/firefox', () => { }, }) + utils.writeExtension.restore() + const getFile = function (path) { return _.reduce(_.compact(_.split(path, '/')), (acc, item) => { return acc.getItem(item) @@ -242,7 +244,7 @@ describe('lib/browsers/firefox', () => { } return firefox.open(this.browser, 'http://', this.options).then(() => { - expect(getFile(`${process.env.HOME }/.config/Cypress/cy/test/browsers/firefox-stable/interactive/CypressExtension/background.js`).getMode()).to.be.equals(0o444) + expect(getFile(`${process.env.HOME }/.config/Cypress/cy/test/browsers/firefox-stable/interactive/CypressExtension/background.js`).getMode()).to.be.equals(0o644) }) })