diff options
author | 2024-07-25 10:04:46 +0000 | |
---|---|---|
committer | 2024-07-25 12:04:46 +0200 | |
commit | 602c5bf05de4fe5ec1ea97f8e10455485aceb05f (patch) | |
tree | 2b97fb7fef5612cfa8c9600e762867a0736363ec | |
parent | 7f26de906e87f1e8973a1f84399f23e36e506bb3 (diff) | |
download | astro-602c5bf05de4fe5ec1ea97f8e10455485aceb05f.tar.gz astro-602c5bf05de4fe5ec1ea97f8e10455485aceb05f.tar.zst astro-602c5bf05de4fe5ec1ea97f8e10455485aceb05f.zip |
Fix astro add for prerelease packages (#11548)
Co-authored-by: Florian Lefebvre <contact@florian-lefebvre.dev>
Co-authored-by: Bjorn Lu <34116392+bluwy@users.noreply.github.com>
-rw-r--r-- | .changeset/violet-coats-fail.md | 5 | ||||
-rw-r--r-- | packages/astro/src/cli/add/index.ts | 4 |
2 files changed, 7 insertions, 2 deletions
diff --git a/.changeset/violet-coats-fail.md b/.changeset/violet-coats-fail.md new file mode 100644 index 000000000..0319b363f --- /dev/null +++ b/.changeset/violet-coats-fail.md @@ -0,0 +1,5 @@ +--- +'astro': patch +--- + +Fixes `astro add` for packages with only prerelease versions diff --git a/packages/astro/src/cli/add/index.ts b/packages/astro/src/cli/add/index.ts index e452f08d6..aa4b4bba8 100644 --- a/packages/astro/src/cli/add/index.ts +++ b/packages/astro/src/cli/add/index.ts @@ -691,9 +691,9 @@ async function convertIntegrationsToInstallSpecifiers( async function resolveRangeToInstallSpecifier(name: string, range: string): Promise<string> { const versions = await fetchPackageVersions(name); if (versions instanceof Error) return name; - // Filter out any prerelease versions + // Filter out any prerelease versions, but fallback if there are no stable versions const stableVersions = versions.filter((v) => !v.includes('-')); - const maxStable = maxSatisfying(stableVersions, range); + const maxStable = maxSatisfying(stableVersions.length !== 0 ? stableVersions : versions, range); return `${name}@^${maxStable}`; } |