diff options
author | 2024-10-01 07:18:30 +0100 | |
---|---|---|
committer | 2024-10-01 14:18:30 +0800 | |
commit | 76c5fbd6f3a8d41367f1d7033278d133d518213b (patch) | |
tree | 79193817aa27eb5b21e012ed15bc9b36df155463 | |
parent | 12dae50c776474748a80cb65c8bf1c67f0825cb0 (diff) | |
download | astro-76c5fbd6f3a8d41367f1d7033278d133d518213b.tar.gz astro-76c5fbd6f3a8d41367f1d7033278d133d518213b.tar.zst astro-76c5fbd6f3a8d41367f1d7033278d133d518213b.zip |
Fix non-stable versions for astro add (#12095)
-rw-r--r-- | .changeset/real-nails-tan.md | 5 | ||||
-rw-r--r-- | packages/astro/src/cli/add/index.ts | 3 |
2 files changed, 7 insertions, 1 deletions
diff --git a/.changeset/real-nails-tan.md b/.changeset/real-nails-tan.md new file mode 100644 index 000000000..9e78e35de --- /dev/null +++ b/.changeset/real-nails-tan.md @@ -0,0 +1,5 @@ +--- +'astro': patch +--- + +Fix installing non-stable versions of integrations with `astro add` diff --git a/packages/astro/src/cli/add/index.ts b/packages/astro/src/cli/add/index.ts index 7866f5a09..449deee5f 100644 --- a/packages/astro/src/cli/add/index.ts +++ b/packages/astro/src/cli/add/index.ts @@ -608,7 +608,8 @@ async function resolveRangeToInstallSpecifier(name: string, range: string): Prom if (versions instanceof Error) return name; // Filter out any prerelease versions, but fallback if there are no stable versions const stableVersions = versions.filter((v) => !v.includes('-')); - const maxStable = maxSatisfying(stableVersions.length !== 0 ? stableVersions : versions, range); + const maxStable = maxSatisfying(stableVersions, range) ?? maxSatisfying(versions, range); + if (!maxStable) return name; return `${name}@^${maxStable}`; } |