diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectModification/NpmPackagesUpdater.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectModification/NpmPackagesUpdater.cs index 0cad3a9ae3..2db480506b 100644 --- a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectModification/NpmPackagesUpdater.cs +++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectModification/NpmPackagesUpdater.cs @@ -226,7 +226,7 @@ namespace Volo.Abp.Cli.ProjectModification } else { - if (!switchToStable && SemanticVersion.Parse(currentVersion.TrimStart('^').TrimStart('~')).IsPrerelease) + if (!switchToStable && IsPrerelease(currentVersion)) { version = await GetLatestVersion(package, true); } @@ -248,6 +248,16 @@ namespace Volo.Abp.Cli.ProjectModification return true; } + protected virtual bool IsPrerelease(string version) + { + if (version == null) + { + return false; + } + + return version.Split("-", StringSplitOptions.RemoveEmptyEntries).Length > 1; + } + protected virtual async Task GetLatestVersion( JProperty package, bool includeReleaseCandidates = false)