From e5cd10ab97a736dccbac8c479364f22fa65ab62e Mon Sep 17 00:00:00 2001 From: Cory Knox Date: Fri, 20 Sep 2024 16:09:55 -0700 Subject: [PATCH] (#3461,#3487) Address review comments Address review comments by using full version string for PackageResults, and use case insensitive compares when determining if a package has dependencies that failed to install. --- .../infrastructure.app/services/NugetService.cs | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/chocolatey/infrastructure.app/services/NugetService.cs b/src/chocolatey/infrastructure.app/services/NugetService.cs index 634cfe2d88..c701feb980 100644 --- a/src/chocolatey/infrastructure.app/services/NugetService.cs +++ b/src/chocolatey/infrastructure.app/services/NugetService.cs @@ -801,13 +801,13 @@ Version was specified as '{0}'. It is possible that version foreach (SourcePackageDependencyInfo packageDependencyInfo in resolvedPackages) { // Don't attempt to action this package if dependencies failed. - if (packageDependencyInfo != null && packageResultsToReturn.Any(r => r.Value.Success != true && packageDependencyInfo.Dependencies.Any(d => d.Id == r.Value.Identity.Id))) + if (packageDependencyInfo != null && packageResultsToReturn.Any(r => r.Value.Success != true && packageDependencyInfo.Dependencies.Any(d => d.Id.Equals(r.Value.Identity.Id, StringComparison.OrdinalIgnoreCase)))) { var logMessage = StringResources.ErrorMessages.DependencyFailedToInstall.FormatWith(packageDependencyInfo.Id); packageResultsToReturn .GetOrAdd( packageDependencyInfo.Id, - new PackageResult(packageDependencyInfo.Id, packageDependencyInfo.Version.ToStringSafe(), string.Empty) + new PackageResult(packageDependencyInfo.Id, packageDependencyInfo.Version.ToFullStringChecked(), string.Empty) ) .Messages.Add(new ResultMessage(ResultType.Error, logMessage)); this.Log().Error(ChocolateyLoggers.Important, logMessage); @@ -1609,12 +1609,12 @@ public virtual ConcurrentDictionary Upgrade(ChocolateyCon } // Don't attempt to action this package if dependencies failed. - if (packageResultsToReturn.Any(r => r.Value.Success != true && packageDependencyInfo.Dependencies.Any(d => d.Id == r.Value.Identity.Id))) + if (packageResultsToReturn.Any(r => r.Value.Success != true && packageDependencyInfo.Dependencies.Any(d => d.Id.Equals(r.Value.Identity.Id, StringComparison.OrdinalIgnoreCase)))) { var logMessage = StringResources.ErrorMessages.DependencyFailedToInstall.FormatWith(packageDependencyInfo.Id, packageDependencyInfo.Version); packageResultsToReturn.GetOrAdd( packageDependencyInfo.Id, - new PackageResult(packageDependencyInfo.Id, packageDependencyInfo.Version.ToStringSafe(), string.Empty) + new PackageResult(packageDependencyInfo.Id, packageDependencyInfo.Version.ToFullStringChecked(), string.Empty) ) .Messages.Add(new ResultMessage(ResultType.Error, logMessage)); this.Log().Error(ChocolateyLoggers.Important, logMessage);