summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.changeset/smart-chicken-develop.md5
-rw-r--r--packages/astro/src/core/add/index.ts6
2 files changed, 10 insertions, 1 deletions
diff --git a/.changeset/smart-chicken-develop.md b/.changeset/smart-chicken-develop.md
new file mode 100644
index 000000000..da87ad052
--- /dev/null
+++ b/.changeset/smart-chicken-develop.md
@@ -0,0 +1,5 @@
+---
+'astro': patch
+---
+
+`astro add` no longer automatically installs optional peer dependencies
diff --git a/packages/astro/src/core/add/index.ts b/packages/astro/src/core/add/index.ts
index 457b6e533..fa0270327 100644
--- a/packages/astro/src/core/add/index.ts
+++ b/packages/astro/src/core/add/index.ts
@@ -705,8 +705,12 @@ export async function validateIntegrations(integrations: string[]): Promise<Inte
];
if (pkgJson['peerDependencies']) {
+ const meta = pkgJson['peerDependenciesMeta'] || {}
for (const peer in pkgJson['peerDependencies']) {
- dependencies.push([peer, pkgJson['peerDependencies'][peer]]);
+ const optional = meta[peer]?.optional || false
+ if (!optional) {
+ dependencies.push([peer, pkgJson['peerDependencies'][peer]]);
+ }
}
}