From 187c4d3244a27c9b4e7e3cbe6307b01161140ca1 Mon Sep 17 00:00:00 2001 From: Matt Kane Date: Fri, 31 Jan 2025 10:32:14 +0000 Subject: [PATCH] fix: exclude tailwind package when installing integration (#13106) * fix: exclude tailwind package when installing integration * Update .changeset/green-sloths-switch.md --------- Co-authored-by: Florian Lefebvre --- .changeset/green-sloths-switch.md | 5 +++++ packages/astro/src/cli/add/index.ts | 22 +++++++++++++++------- 2 files changed, 20 insertions(+), 7 deletions(-) create mode 100644 .changeset/green-sloths-switch.md diff --git a/.changeset/green-sloths-switch.md b/.changeset/green-sloths-switch.md new file mode 100644 index 0000000000..5671a1f69e --- /dev/null +++ b/.changeset/green-sloths-switch.md @@ -0,0 +1,5 @@ +--- +'astro': patch +--- + +Fixes a bug that caused peer dependency errors when running `astro add tailwind` diff --git a/packages/astro/src/cli/add/index.ts b/packages/astro/src/cli/add/index.ts index c3a2e1fe79..d34c60f65e 100644 --- a/packages/astro/src/cli/add/index.ts +++ b/packages/astro/src/cli/add/index.ts @@ -40,6 +40,7 @@ interface AddOptions { interface IntegrationInfo { id: string; packageName: string; + integrationName: string; dependencies: [name: string, version: string][]; type: 'integration' | 'adapter'; } @@ -283,7 +284,7 @@ export async function add(names: string[], { flags }: AddOptions) { 'SKIP_FORMAT', `\n ${magenta( `Check our deployment docs for ${bold( - integration.packageName, + integration.integrationName, )} to update your "adapter" config.`, )}`, ); @@ -349,7 +350,9 @@ export async function add(names: string[], { flags }: AddOptions) { case UpdateResult.failure: case UpdateResult.updated: case undefined: { - const list = integrations.map((integration) => ` - ${integration.packageName}`).join('\n'); + const list = integrations + .map((integration) => ` - ${integration.integrationName}`) + .join('\n'); logger.info( 'SKIP_FORMAT', msg.success( @@ -618,8 +621,7 @@ async function convertIntegrationsToInstallSpecifiers( integrations: IntegrationInfo[], ): Promise { const ranges: Record = {}; - for (let { packageName, dependencies } of integrations) { - ranges[packageName] = '*'; + for (let { dependencies } of integrations) { for (const [name, range] of dependencies) { ranges[name] = range; } @@ -790,7 +792,7 @@ async function validateIntegrations(integrations: string[]): Promise