summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.changeset/many-hairs-jump.md5
-rw-r--r--packages/astro/src/cli/install-package.ts2
2 files changed, 6 insertions, 1 deletions
diff --git a/.changeset/many-hairs-jump.md b/.changeset/many-hairs-jump.md
new file mode 100644
index 000000000..2e855708f
--- /dev/null
+++ b/.changeset/many-hairs-jump.md
@@ -0,0 +1,5 @@
+---
+"astro": patch
+---
+
+Handles possible null value when calling `which-pm` during dynamic package installation
diff --git a/packages/astro/src/cli/install-package.ts b/packages/astro/src/cli/install-package.ts
index 02e856846..7c8601e48 100644
--- a/packages/astro/src/cli/install-package.ts
+++ b/packages/astro/src/cli/install-package.ts
@@ -101,7 +101,7 @@ async function installPackage(
logger: Logger
): Promise<boolean> {
const cwd = options.cwd ?? process.cwd();
- const packageManager = (await whichPm(cwd)).name ?? 'npm';
+ const packageManager = (await whichPm(cwd))?.name ?? 'npm';
const installCommand = getInstallCommand(packageNames, packageManager);
if (!installCommand) {