Browse Source

refactor NpmPackagesUpdater

pull/4543/head
Yunus Emre Kalkan 6 years ago
parent
commit
2919caf118
  1. 51
      framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectModification/NpmPackagesUpdater.cs

51
framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectModification/NpmPackagesUpdater.cs

@ -202,16 +202,22 @@ namespace Volo.Abp.Cli.ProjectModification
{
var currentVersion = (string) package.Value;
var version = await GetLatestVersion(package, currentVersion, includePreviews, switchToStable);
var versionWithPrefix = $"~{version}";
var version = "";
if (includePreviews || (!switchToStable && currentVersion.Contains("-preview")))
{
version = "preview";
}
else
{
version = await GetLatestVersion(package);
}
if (versionWithPrefix == currentVersion)
if (version == currentVersion)
{
return false;
}
package.Value.Replace(versionWithPrefix);
package.Value.Replace(version);
Logger.LogInformation(
$"Updated {package.Name} to {version} in {filePath.Replace(Directory.GetCurrentDirectory(), "")}.");
@ -219,44 +225,19 @@ namespace Volo.Abp.Cli.ProjectModification
}
protected virtual async Task<string> GetLatestVersion(
JProperty package,
string currentVersion,
bool includePreviews = false,
bool switchToStable = false)
JProperty package)
{
if (_fileVersionStorage.ContainsKey(package.Name))
{
return _fileVersionStorage[package.Name];
}
var newVersion = currentVersion;
if (includePreviews || (!switchToStable && currentVersion.Contains("-preview")))
{
// We directly set "preview" version and no longer get the latest preview from myGet.
/*
if (_myGetApiResponse == null)
{
_myGetApiResponse = await _myGetPackageListFinder.GetPackagesAsync();
}
var mygetPackage = _myGetApiResponse.Packages.FirstOrDefault(p => p.Id == package.Name);
if (mygetPackage != null)
{
newVersion = mygetPackage.Versions.Last();
}
*/
newVersion = "preview";
}
else
{
newVersion = CmdHelper.RunCmdAndGetOutput($"npm show {package.Name} version");
}
var newVersion = CmdHelper.RunCmdAndGetOutput($"npm show {package.Name} version");
var newVersionWithPrefix = $"~{newVersion}";
_fileVersionStorage[package.Name] = newVersion;
_fileVersionStorage[package.Name] = newVersionWithPrefix;
return newVersion;
return $"~{newVersionWithPrefix}";
}
protected virtual List<JProperty> GetAbpPackagesFromPackageJson(JObject fileObject)

Loading…
Cancel
Save