Merge pull request #17344 from abpframework/EngincanV/cli-leptonx-fix

CLI: Fix leptonx package update wrong version problem
pull/17348/head
Engincan VESKE 2 years ago committed by GitHub
commit f56fd11d55
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -229,12 +229,20 @@ public class VoloNugetPackagesVersionUpdater : ITransientDependency
{
if ((includeNightlyPreviews || (currentVersion.Contains("-preview") && !switchToStable)) && !includeReleaseCandidates)
{
var latestVersion = latestMyGetVersion == null || isLeptonXPackage ?
await GetLatestVersionFromMyGet(packageId) : latestMyGetVersion;
string latestVersion;
if(isLeptonXPackage)
{
latestVersion = (await _packageVersionCheckerService.GetLatestVersionOrNullAsync(packageId, includeNightlyPreviews, includeReleaseCandidates))?.Version?.ToString();
}
else
{
latestVersion = latestMyGetVersion == null ? await GetLatestVersionFromMyGet(packageId) : latestMyGetVersion;
}
if(latestVersion == null && isLeptonXPackage) //leptonx-pro package
if(latestVersion == null)
{
latestVersion = await GetLatestVersionFromMyGet("Volo.Abp.AspNetCore.Components.Server.LeptonXLiteTheme", isNightly: includeNightlyPreviews);
Logger.LogWarning("Package: {0} could not be updated. Please manually update the package version yourself to prevent version mismatches.", packageId);
continue;
}
if (currentVersion != latestVersion)
@ -288,10 +296,10 @@ public class VoloNugetPackagesVersionUpdater : ITransientDependency
return await Task.FromResult(content);
}
private async Task<string> GetLatestVersionFromMyGet(string packageId, bool isNightly = false)
private async Task<string> GetLatestVersionFromMyGet(string packageId)
{
var myGetPack = await _myGetPackageListFinder.GetPackagesAsync();
return myGetPack.Packages.FirstOrDefault(p => p.Id == packageId)?.Versions.LastOrDefault(x => isNightly ? x.Contains("-preview") : true);
return myGetPack.Packages.FirstOrDefault(p => p.Id == packageId)?.Versions.LastOrDefault();
}
}

@ -80,21 +80,11 @@ public class PackageVersionCheckerService : ITransientDependency
return null;
}
List<SemanticVersion> versions;
if (!includeNightly && includeReleaseCandidates)
{
versions = versionList
.Where(v => !v.Contains("-preview"))
.Select(SemanticVersion.Parse)
.OrderByDescending(v => v, new VersionComparer()).ToList();
}
else
{
versions = versionList
.Select(SemanticVersion.Parse)
.OrderByDescending(v => v, new VersionComparer()).ToList();
}
List<SemanticVersion> versions = versionList
.WhereIf(!includeNightly, v => !v.Contains("-preview"))
.WhereIf(!includeReleaseCandidates, v => !v.Contains("rc"))
.Select(SemanticVersion.Parse)
.OrderByDescending(v => v, new VersionComparer()).ToList();
return versions.Any()
? new LatestVersionInfo(versions.Max())

Loading…
Cancel
Save