summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--.changeset/poor-cars-battle.md5
-rw-r--r--packages/upgrade/src/actions/install.ts8
2 files changed, 10 insertions, 3 deletions
diff --git a/.changeset/poor-cars-battle.md b/.changeset/poor-cars-battle.md
new file mode 100644
index 000000000..5832e363c
--- /dev/null
+++ b/.changeset/poor-cars-battle.md
@@ -0,0 +1,5 @@
+---
+"@astrojs/upgrade": patch
+---
+
+Updates the command used for installing packages with pnpm and yarn
diff --git a/packages/upgrade/src/actions/install.ts b/packages/upgrade/src/actions/install.ts
index 3f343463f..14011a07e 100644
--- a/packages/upgrade/src/actions/install.ts
+++ b/packages/upgrade/src/actions/install.ts
@@ -123,6 +123,8 @@ async function runInstallCommand(
const cwd = fileURLToPath(ctx.cwd);
if (ctx.packageManager === 'yarn') await ensureYarnLock({ cwd });
+ const installCmd = ctx.packageManager === 'yarn' || ctx.packageManager === 'pnpm' ? 'add' : 'install';
+
await spinner({
start: `Installing dependencies with ${ctx.packageManager}...`,
end: `Installed dependencies!`,
@@ -132,7 +134,7 @@ async function runInstallCommand(
await shell(
ctx.packageManager,
[
- 'install',
+ installCmd,
...dependencies.map(
({ name, targetVersion }) => `${name}@${targetVersion.replace(/^\^/, '')}`
),
@@ -144,7 +146,7 @@ async function runInstallCommand(
await shell(
ctx.packageManager,
[
- 'install',
+ installCmd,
'--save-dev',
...devDependencies.map(
({ name, targetVersion }) => `${name}@${targetVersion.replace(/^\^/, '')}`
@@ -161,7 +163,7 @@ async function runInstallCommand(
error(
'error',
`Dependencies failed to install, please run the following command manually:\n${color.bold(
- `${ctx.packageManager} install ${packages}`
+ `${ctx.packageManager} ${installCmd} ${packages}`
)}`
);
return ctx.exit(1);