mirror of
https://github.com/LukeHagar/vercel.git
synced 2025-12-06 12:57:46 +00:00
[build-utils] Improve no lockfile detection logic (#11706)
Two minor improvements missed from the review of https://github.com/vercel/vercel/pull/11697: - [Include supported package manager names in error message](https://github.com/vercel/vercel/pull/11697#discussion_r1628382867) - [Avoid `as` to improve type safety](https://github.com/vercel/vercel/pull/11697#discussion_r1628384789)
This commit is contained in:
5
.changeset/quiet-comics-tell.md
Normal file
5
.changeset/quiet-comics-tell.md
Normal file
@@ -0,0 +1,5 @@
|
||||
---
|
||||
'@vercel/build-utils': patch
|
||||
---
|
||||
|
||||
Improve error message and refactor
|
||||
@@ -372,7 +372,7 @@ function detectPackageManagerNameWithoutLockfile(packageJson: PackageJson) {
|
||||
const packageJsonPackageManager = packageJson.packageManager;
|
||||
if (usingCorepack(process.env, packageJsonPackageManager)) {
|
||||
const corepackPackageManager = validateVersionSpecifier(
|
||||
packageJsonPackageManager as string
|
||||
packageJsonPackageManager
|
||||
);
|
||||
switch (corepackPackageManager?.packageName) {
|
||||
case 'npm':
|
||||
@@ -384,7 +384,7 @@ function detectPackageManagerNameWithoutLockfile(packageJson: PackageJson) {
|
||||
return 'npm';
|
||||
default:
|
||||
throw new Error(
|
||||
`Unknown package manager "${corepackPackageManager?.packageName}". Change your package.json "packageManager" field to a known package manager.`
|
||||
`Unknown package manager "${corepackPackageManager?.packageName}". Change your package.json "packageManager" field to a known package manager: npm, pnpm, yarn, bun.`
|
||||
);
|
||||
}
|
||||
}
|
||||
@@ -785,7 +785,7 @@ export function getPathOverrideForPackageManager({
|
||||
}
|
||||
}
|
||||
|
||||
function validateVersionSpecifier(version: string) {
|
||||
function validateVersionSpecifier(version?: string) {
|
||||
if (!version) {
|
||||
return undefined;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user