diff --git a/.changeset/hip-oranges-worry.md b/.changeset/hip-oranges-worry.md new file mode 100644 index 00000000000..edf0de20ff0 --- /dev/null +++ b/.changeset/hip-oranges-worry.md @@ -0,0 +1,5 @@ +--- + +--- + +allow errors to define retry delay diff --git a/examples/package.json b/examples/package.json index 8290dbb5058..4277a4027bc 100644 --- a/examples/package.json +++ b/examples/package.json @@ -9,7 +9,7 @@ }, "devDependencies": { "@types/jest": "27.4.1", - "@vercel/build-utils": "8.1.2", + "@vercel/build-utils": "8.1.3", "@vercel/frameworks": "3.0.2" }, "version": null diff --git a/internals/types/CHANGELOG.md b/internals/types/CHANGELOG.md index 3b929fbbd27..175a9646dbb 100644 --- a/internals/types/CHANGELOG.md +++ b/internals/types/CHANGELOG.md @@ -1,5 +1,12 @@ # @vercel-internals/types +## 1.0.35 + +### Patch Changes + +- Updated dependencies [[`ad6945435`](https://github.com/vercel/vercel/commit/ad69454352b519b2b0ed326f245c779530554bf2)]: + - @vercel/build-utils@8.1.3 + ## 1.0.34 ### Patch Changes diff --git a/internals/types/package.json b/internals/types/package.json index 5da65c8231f..54fe9d34445 100644 --- a/internals/types/package.json +++ b/internals/types/package.json @@ -1,7 +1,7 @@ { "private": true, "name": "@vercel-internals/types", - "version": "1.0.34", + "version": "1.0.35", "types": "index.d.ts", "main": "index.d.ts", "files": [ @@ -10,7 +10,7 @@ "dependencies": { "@types/node": "14.14.31", "@vercel-internals/constants": "1.0.4", - "@vercel/build-utils": "8.1.2", + "@vercel/build-utils": "8.1.3", "@vercel/routing-utils": "3.1.0" }, "devDependencies": { diff --git a/packages/build-utils/CHANGELOG.md b/packages/build-utils/CHANGELOG.md index 083db4bf15d..7ef2e9bf097 100644 --- a/packages/build-utils/CHANGELOG.md +++ b/packages/build-utils/CHANGELOG.md @@ -1,5 +1,11 @@ # @vercel/build-utils +## 8.1.3 + +### Patch Changes + +- [build-utils] log more around package manager detection ([#11594](https://github.com/vercel/vercel/pull/11594)) + ## 8.1.2 ### Patch Changes diff --git a/packages/build-utils/package.json b/packages/build-utils/package.json index 115cada1463..e38614dc030 100644 --- a/packages/build-utils/package.json +++ b/packages/build-utils/package.json @@ -1,6 +1,6 @@ { "name": "@vercel/build-utils", - "version": "8.1.2", + "version": "8.1.3", "license": "Apache-2.0", "main": "./dist/index.js", "types": "./dist/index.d.js", diff --git a/packages/build-utils/src/fs/run-user-scripts.ts b/packages/build-utils/src/fs/run-user-scripts.ts index 2dea1a8cfad..9225248456f 100644 --- a/packages/build-utils/src/fs/run-user-scripts.ts +++ b/packages/build-utils/src/fs/run-user-scripts.ts @@ -560,8 +560,9 @@ export function getEnvForPackageManager({ env, }); + const corepackEnabled = env.ENABLE_EXPERIMENTAL_COREPACK === '1'; debug( - `Detected ${detectedPackageManager} with lockfileVersion ${lockfileVersion} (${typeof lockfileVersion}): ${newPath}` + `Detected ${detectedPackageManager} given lockfileVersion "${lockfileVersion}", package manager cli "${cliType}", and corepack enabled? ${corepackEnabled}: ${newPath}` ); const newEnv: { [x: string]: string | undefined } = { @@ -779,14 +780,6 @@ export function getPathForPackageManager({ env, }); - debug( - `Detected ${ - overrides.detectedPackageManager - } with lockfileVersion ${lockfileVersion} (${typeof lockfileVersion}): ${ - overrides.path - }` - ); - const alreadyInPath = (newPath: string) => { const oldPath = env.PATH ?? ''; return oldPath.split(path.delimiter).includes(newPath); diff --git a/packages/cli/CHANGELOG.md b/packages/cli/CHANGELOG.md index 26af1aa1593..17ac67f1fa6 100644 --- a/packages/cli/CHANGELOG.md +++ b/packages/cli/CHANGELOG.md @@ -1,5 +1,14 @@ # vercel +## 34.1.14 + +### Patch Changes + +- Updated dependencies [[`ad6945435`](https://github.com/vercel/vercel/commit/ad69454352b519b2b0ed326f245c779530554bf2)]: + - @vercel/build-utils@8.1.3 + - @vercel/node@3.1.4 + - @vercel/static-build@2.5.8 + ## 34.1.13 ### Patch Changes diff --git a/packages/cli/package.json b/packages/cli/package.json index c1585f612c9..42f9f734011 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "vercel", - "version": "34.1.13", + "version": "34.1.14", "preferGlobal": true, "license": "Apache-2.0", "description": "The command-line interface for Vercel", @@ -32,17 +32,17 @@ "node": ">= 16" }, "dependencies": { - "@vercel/build-utils": "8.1.2", + "@vercel/build-utils": "8.1.3", "@vercel/fun": "1.1.0", "@vercel/go": "3.1.1", "@vercel/hydrogen": "1.0.2", "@vercel/next": "4.2.11", - "@vercel/node": "3.1.3", + "@vercel/node": "3.1.4", "@vercel/python": "4.2.0", "@vercel/redwood": "2.0.9", "@vercel/remix-builder": "2.1.6", "@vercel/ruby": "2.1.0", - "@vercel/static-build": "2.5.7", + "@vercel/static-build": "2.5.8", "chokidar": "3.3.1" }, "devDependencies": { @@ -92,8 +92,8 @@ "@types/yauzl-promise": "2.1.0", "@vercel-internals/constants": "1.0.4", "@vercel-internals/get-package-json": "1.0.0", - "@vercel-internals/types": "1.0.34", - "@vercel/client": "13.2.5", + "@vercel-internals/types": "1.0.35", + "@vercel/client": "13.2.6", "@vercel/error-utils": "2.0.2", "@vercel/frameworks": "3.0.2", "@vercel/fs-detectors": "5.2.3", diff --git a/packages/client/CHANGELOG.md b/packages/client/CHANGELOG.md index 84b6fe9d562..fca0eb518d2 100644 --- a/packages/client/CHANGELOG.md +++ b/packages/client/CHANGELOG.md @@ -1,5 +1,12 @@ # @vercel/client +## 13.2.6 + +### Patch Changes + +- Updated dependencies [[`ad6945435`](https://github.com/vercel/vercel/commit/ad69454352b519b2b0ed326f245c779530554bf2)]: + - @vercel/build-utils@8.1.3 + ## 13.2.5 ### Patch Changes diff --git a/packages/client/package.json b/packages/client/package.json index 1027a3c61f8..4720d616817 100644 --- a/packages/client/package.json +++ b/packages/client/package.json @@ -1,6 +1,6 @@ { "name": "@vercel/client", - "version": "13.2.5", + "version": "13.2.6", "main": "dist/index.js", "typings": "dist/index.d.ts", "homepage": "https://vercel.com", @@ -37,7 +37,7 @@ "typescript": "4.9.5" }, "dependencies": { - "@vercel/build-utils": "8.1.2", + "@vercel/build-utils": "8.1.3", "@vercel/error-utils": "2.0.2", "@vercel/routing-utils": "3.1.0", "@zeit/fetch": "5.2.0", diff --git a/packages/fs-detectors/package.json b/packages/fs-detectors/package.json index 64c3cd4c087..f74e7345aeb 100644 --- a/packages/fs-detectors/package.json +++ b/packages/fs-detectors/package.json @@ -37,7 +37,7 @@ "@types/minimatch": "3.0.5", "@types/node": "14.18.33", "@types/semver": "7.3.10", - "@vercel/build-utils": "8.1.2", + "@vercel/build-utils": "8.1.3", "jest-junit": "16.0.0", "typescript": "4.9.5" } diff --git a/packages/gatsby-plugin-vercel-builder/CHANGELOG.md b/packages/gatsby-plugin-vercel-builder/CHANGELOG.md index ddaa0f0dba8..0547a7fad97 100644 --- a/packages/gatsby-plugin-vercel-builder/CHANGELOG.md +++ b/packages/gatsby-plugin-vercel-builder/CHANGELOG.md @@ -1,5 +1,12 @@ # @vercel/gatsby-plugin-vercel-builder +## 2.0.30 + +### Patch Changes + +- Updated dependencies [[`ad6945435`](https://github.com/vercel/vercel/commit/ad69454352b519b2b0ed326f245c779530554bf2)]: + - @vercel/build-utils@8.1.3 + ## 2.0.29 ### Patch Changes diff --git a/packages/gatsby-plugin-vercel-builder/package.json b/packages/gatsby-plugin-vercel-builder/package.json index 4bad9f7be09..265b142e755 100644 --- a/packages/gatsby-plugin-vercel-builder/package.json +++ b/packages/gatsby-plugin-vercel-builder/package.json @@ -1,6 +1,6 @@ { "name": "@vercel/gatsby-plugin-vercel-builder", - "version": "2.0.29", + "version": "2.0.30", "main": "dist/index.js", "files": [ "dist", @@ -20,7 +20,7 @@ }, "dependencies": { "@sinclair/typebox": "0.25.24", - "@vercel/build-utils": "8.1.2", + "@vercel/build-utils": "8.1.3", "@vercel/routing-utils": "3.1.0", "esbuild": "0.14.47", "etag": "1.8.1", diff --git a/packages/go/package.json b/packages/go/package.json index c1eb6a918bb..0ab01b601c7 100644 --- a/packages/go/package.json +++ b/packages/go/package.json @@ -29,7 +29,7 @@ "@types/node-fetch": "^2.3.0", "@types/tar": "6.1.5", "@types/yauzl-promise": "2.1.0", - "@vercel/build-utils": "8.1.2", + "@vercel/build-utils": "8.1.3", "async-retry": "1.3.3", "execa": "^1.0.0", "fs-extra": "^7.0.0", diff --git a/packages/hydrogen/package.json b/packages/hydrogen/package.json index a9daf452b9a..a37d1706e6c 100644 --- a/packages/hydrogen/package.json +++ b/packages/hydrogen/package.json @@ -26,7 +26,7 @@ "devDependencies": { "@types/jest": "27.5.1", "@types/node": "14.18.33", - "@vercel/build-utils": "8.1.2", + "@vercel/build-utils": "8.1.3", "execa": "3.2.0", "fs-extra": "11.1.0", "jest-junit": "16.0.0" diff --git a/packages/next/package.json b/packages/next/package.json index a8cedc51bd7..9afb472db1b 100644 --- a/packages/next/package.json +++ b/packages/next/package.json @@ -40,7 +40,7 @@ "@types/semver": "6.0.0", "@types/text-table": "0.2.1", "@types/webpack-sources": "3.2.0", - "@vercel/build-utils": "8.1.2", + "@vercel/build-utils": "8.1.3", "@vercel/routing-utils": "3.1.0", "async-sema": "3.0.1", "buffer-crc32": "0.2.13", diff --git a/packages/node/CHANGELOG.md b/packages/node/CHANGELOG.md index 08367a95c43..f19f98f6eea 100644 --- a/packages/node/CHANGELOG.md +++ b/packages/node/CHANGELOG.md @@ -1,5 +1,12 @@ # @vercel/node +## 3.1.4 + +### Patch Changes + +- Updated dependencies [[`ad6945435`](https://github.com/vercel/vercel/commit/ad69454352b519b2b0ed326f245c779530554bf2)]: + - @vercel/build-utils@8.1.3 + ## 3.1.3 ### Patch Changes diff --git a/packages/node/package.json b/packages/node/package.json index e0fff247fbd..ee75e0c6b1b 100644 --- a/packages/node/package.json +++ b/packages/node/package.json @@ -1,6 +1,6 @@ { "name": "@vercel/node", - "version": "3.1.3", + "version": "3.1.4", "license": "Apache-2.0", "main": "./dist/index", "homepage": "https://vercel.com/docs/runtimes#official-runtimes/node-js", @@ -24,7 +24,7 @@ "@edge-runtime/primitives": "4.1.0", "@edge-runtime/vm": "3.2.0", "@types/node": "16.18.11", - "@vercel/build-utils": "8.1.2", + "@vercel/build-utils": "8.1.3", "@vercel/error-utils": "2.0.2", "@vercel/nft": "0.27.0", "@vercel/static-config": "3.0.0", diff --git a/packages/python/package.json b/packages/python/package.json index 108bc606d4e..fb4b667bbeb 100644 --- a/packages/python/package.json +++ b/packages/python/package.json @@ -26,7 +26,7 @@ "@types/jest": "27.4.1", "@types/node": "14.18.33", "@types/which": "3.0.0", - "@vercel/build-utils": "8.1.2", + "@vercel/build-utils": "8.1.3", "execa": "^1.0.0", "fs-extra": "11.1.1", "jest-junit": "16.0.0", diff --git a/packages/redwood/package.json b/packages/redwood/package.json index b577adb03af..aac3aea96f0 100644 --- a/packages/redwood/package.json +++ b/packages/redwood/package.json @@ -28,7 +28,7 @@ "@types/aws-lambda": "8.10.19", "@types/node": "14.18.33", "@types/semver": "6.0.0", - "@vercel/build-utils": "8.1.2", + "@vercel/build-utils": "8.1.3", "execa": "3.2.0", "fs-extra": "11.1.0", "jest-junit": "16.0.0" diff --git a/packages/remix/package.json b/packages/remix/package.json index 081afbd020f..c7500cf23b1 100644 --- a/packages/remix/package.json +++ b/packages/remix/package.json @@ -32,7 +32,7 @@ "@types/jest": "27.5.1", "@types/node": "14.18.33", "@types/semver": "7.3.13", - "@vercel/build-utils": "8.1.2", + "@vercel/build-utils": "8.1.3", "jest-junit": "16.0.0", "path-to-regexp": "6.2.1", "semver": "7.5.2" diff --git a/packages/ruby/package.json b/packages/ruby/package.json index db180df8100..6a00f30b560 100644 --- a/packages/ruby/package.json +++ b/packages/ruby/package.json @@ -24,7 +24,7 @@ "@types/fs-extra": "8.0.0", "@types/semver": "6.0.0", "@types/which": "3.0.0", - "@vercel/build-utils": "8.1.2", + "@vercel/build-utils": "8.1.3", "execa": "2.0.4", "fs-extra": "^7.0.1", "jest-junit": "16.0.0", diff --git a/packages/static-build/CHANGELOG.md b/packages/static-build/CHANGELOG.md index ee696873c1c..428c286f003 100644 --- a/packages/static-build/CHANGELOG.md +++ b/packages/static-build/CHANGELOG.md @@ -1,5 +1,12 @@ # @vercel/static-build +## 2.5.8 + +### Patch Changes + +- Updated dependencies []: + - @vercel/gatsby-plugin-vercel-builder@2.0.30 + ## 2.5.7 ### Patch Changes diff --git a/packages/static-build/package.json b/packages/static-build/package.json index 849835db35f..ffd081de425 100644 --- a/packages/static-build/package.json +++ b/packages/static-build/package.json @@ -1,6 +1,6 @@ { "name": "@vercel/static-build", - "version": "2.5.7", + "version": "2.5.8", "license": "Apache-2.0", "main": "./dist/index", "homepage": "https://vercel.com/docs/build-step", @@ -21,7 +21,7 @@ }, "dependencies": { "@vercel/gatsby-plugin-vercel-analytics": "1.0.11", - "@vercel/gatsby-plugin-vercel-builder": "2.0.29", + "@vercel/gatsby-plugin-vercel-builder": "2.0.30", "@vercel/static-config": "3.0.0", "ts-morph": "12.0.0" }, @@ -35,7 +35,7 @@ "@types/node-fetch": "2.5.4", "@types/promise-timeout": "1.3.0", "@types/semver": "7.3.13", - "@vercel/build-utils": "8.1.2", + "@vercel/build-utils": "8.1.3", "@vercel/error-utils": "2.0.2", "@vercel/frameworks": "3.0.2", "@vercel/fs-detectors": "5.2.3", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 261feb33726..9ca570816b1 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -132,7 +132,7 @@ importers: specifier: 27.4.1 version: 27.4.1 '@vercel/build-utils': - specifier: 8.1.2 + specifier: 8.1.3 version: link:../packages/build-utils '@vercel/frameworks': specifier: 3.0.2 @@ -189,7 +189,7 @@ importers: specifier: 1.0.4 version: link:../constants '@vercel/build-utils': - specifier: 8.1.2 + specifier: 8.1.3 version: link:../../packages/build-utils '@vercel/routing-utils': specifier: 3.1.0 @@ -313,7 +313,7 @@ importers: packages/cli: dependencies: '@vercel/build-utils': - specifier: 8.1.2 + specifier: 8.1.3 version: link:../build-utils '@vercel/fun': specifier: 1.1.0 @@ -328,7 +328,7 @@ importers: specifier: 4.2.11 version: link:../next '@vercel/node': - specifier: 3.1.3 + specifier: 3.1.4 version: link:../node '@vercel/python': specifier: 4.2.0 @@ -343,7 +343,7 @@ importers: specifier: 2.1.0 version: link:../ruby '@vercel/static-build': - specifier: 2.5.7 + specifier: 2.5.8 version: link:../static-build chokidar: specifier: 3.3.1 @@ -488,10 +488,10 @@ importers: specifier: 1.0.0 version: link:../../internals/get-package-json '@vercel-internals/types': - specifier: 1.0.34 + specifier: 1.0.35 version: link:../../internals/types '@vercel/client': - specifier: 13.2.5 + specifier: 13.2.6 version: link:../client '@vercel/error-utils': specifier: 2.0.2 @@ -737,7 +737,7 @@ importers: packages/client: dependencies: '@vercel/build-utils': - specifier: 8.1.2 + specifier: 8.1.3 version: link:../build-utils '@vercel/error-utils': specifier: 2.0.2 @@ -941,7 +941,7 @@ importers: specifier: 7.3.10 version: 7.3.10 '@vercel/build-utils': - specifier: 8.1.2 + specifier: 8.1.3 version: link:../build-utils jest-junit: specifier: 16.0.0 @@ -972,7 +972,7 @@ importers: specifier: 0.25.24 version: 0.25.24 '@vercel/build-utils': - specifier: 8.1.2 + specifier: 8.1.3 version: link:../build-utils '@vercel/routing-utils': specifier: 3.1.0 @@ -1039,7 +1039,7 @@ importers: specifier: 2.1.0 version: 2.1.0 '@vercel/build-utils': - specifier: 8.1.2 + specifier: 8.1.3 version: link:../build-utils async-retry: specifier: 1.3.3 @@ -1088,7 +1088,7 @@ importers: specifier: 14.18.33 version: 14.18.33 '@vercel/build-utils': - specifier: 8.1.2 + specifier: 8.1.3 version: link:../build-utils execa: specifier: 3.2.0 @@ -1149,7 +1149,7 @@ importers: specifier: 3.2.0 version: 3.2.0 '@vercel/build-utils': - specifier: 8.1.2 + specifier: 8.1.3 version: link:../build-utils '@vercel/routing-utils': specifier: 3.1.0 @@ -1236,7 +1236,7 @@ importers: specifier: 16.18.11 version: 16.18.11 '@vercel/build-utils': - specifier: 8.1.2 + specifier: 8.1.3 version: link:../build-utils '@vercel/error-utils': specifier: 2.0.2 @@ -1354,7 +1354,7 @@ importers: specifier: 3.0.0 version: 3.0.0 '@vercel/build-utils': - specifier: 8.1.2 + specifier: 8.1.3 version: link:../build-utils execa: specifier: ^1.0.0 @@ -1391,7 +1391,7 @@ importers: specifier: 6.0.0 version: 6.0.0 '@vercel/build-utils': - specifier: 8.1.2 + specifier: 8.1.3 version: link:../build-utils execa: specifier: 3.2.0 @@ -1431,7 +1431,7 @@ importers: specifier: 7.3.13 version: 7.3.13 '@vercel/build-utils': - specifier: 8.1.2 + specifier: 8.1.3 version: link:../build-utils jest-junit: specifier: 16.0.0 @@ -1478,7 +1478,7 @@ importers: specifier: 3.0.0 version: 3.0.0 '@vercel/build-utils': - specifier: 8.1.2 + specifier: 8.1.3 version: link:../build-utils execa: specifier: 2.0.4 @@ -1502,7 +1502,7 @@ importers: specifier: 1.0.11 version: link:../gatsby-plugin-vercel-analytics '@vercel/gatsby-plugin-vercel-builder': - specifier: 2.0.29 + specifier: 2.0.30 version: link:../gatsby-plugin-vercel-builder '@vercel/static-config': specifier: 3.0.0 @@ -1539,7 +1539,7 @@ importers: specifier: 7.3.13 version: 7.3.13 '@vercel/build-utils': - specifier: 8.1.2 + specifier: 8.1.3 version: link:../build-utils '@vercel/error-utils': specifier: 2.0.2 diff --git a/test/lib/deployment/test-deployment.js b/test/lib/deployment/test-deployment.js index 3312ed2500b..b9ac3773413 100644 --- a/test/lib/deployment/test-deployment.js +++ b/test/lib/deployment/test-deployment.js @@ -108,6 +108,7 @@ async function runProbe(probe, deploymentId, deploymentUrl, ctx) { found = true; break; } else { + ctx.deploymentLogs = null; throw new Error( `Expected deployment logs of ${deploymentId} not to contain ${toCheck}, but found ${log.text}` ); @@ -122,10 +123,12 @@ async function runProbe(probe, deploymentId, deploymentUrl, ctx) { deploymentLogs, logLength: deploymentLogs?.length, }); + ctx.deploymentLogs = null; const error = new Error( `Expected deployment logs of ${deploymentId} to contain ${toCheck}, it was not found` ); error.retries = 20; + error.retryDelay = 5000; // ms throw error; } else { logWithinTest('finished testing', JSON.stringify(probe)); @@ -449,6 +452,8 @@ async function testDeployment(fixturePath, opts = {}) { throw err; } + const retryDelay = Math.max(probe.retryDelay || 0, err.retryDelay || 0); + for (let i = 0; i < retries; i++) { logWithinTest(`re-trying ${i + 1}/${retries}:`, stringifiedProbe); @@ -460,9 +465,9 @@ async function testDeployment(fixturePath, opts = {}) { throw err; } - if (probe.retryDelay) { - logWithinTest(`Waiting ${probe.retryDelay}ms before retrying`); - await new Promise(resolve => setTimeout(resolve, probe.retryDelay)); + if (retryDelay) { + logWithinTest(`Waiting ${retryDelay}ms before retrying`); + await new Promise(resolve => setTimeout(resolve, retryDelay)); } } }