diff --git a/nuget/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Analyze/VersionFinder.cs b/nuget/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Analyze/VersionFinder.cs index 83cb1858445..7a8f7160e48 100644 --- a/nuget/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Analyze/VersionFinder.cs +++ b/nuget/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Analyze/VersionFinder.cs @@ -116,29 +116,18 @@ internal static Func CreateVersionFilter(DependencyInfo depe var safeVersions = dependencyInfo.Vulnerabilities.SelectMany(v => v.SafeVersions).ToList(); return version => { - if (safeVersions.Any()) - { - // only consider these - if (safeVersions.Any(s => s.IsSatisfiedBy(version))) - { - return true; - } - - return false; - } - else - { - var versionGreaterThanCurrent = currentVersion is null || version > currentVersion; - var rangeSatisfies = versionRange.Satisfies(version); - var prereleaseTypeMatches = currentVersion is null || !currentVersion.IsPrerelease || !version.IsPrerelease || version.Version == currentVersion.Version; - var isIgnoredVersion = dependencyInfo.IgnoredVersions.Any(i => i.IsSatisfiedBy(version)); - var isVulnerableVersion = dependencyInfo.Vulnerabilities.Any(v => v.IsVulnerable(version)); - return versionGreaterThanCurrent - && rangeSatisfies - && prereleaseTypeMatches - && !isIgnoredVersion - && !isVulnerableVersion; - } + var versionGreaterThanCurrent = currentVersion is null || version > currentVersion; + var rangeSatisfies = versionRange.Satisfies(version); + var prereleaseTypeMatches = currentVersion is null || !currentVersion.IsPrerelease || !version.IsPrerelease || version.Version == currentVersion.Version; + var isIgnoredVersion = dependencyInfo.IgnoredVersions.Any(i => i.IsSatisfiedBy(version)); + var isVulnerableVersion = dependencyInfo.Vulnerabilities.Any(v => v.IsVulnerable(version)); + var isSafeVersion = !safeVersions.Any() || safeVersions.Any(s => s.IsSatisfiedBy(version)); + return versionGreaterThanCurrent + && rangeSatisfies + && prereleaseTypeMatches + && !isIgnoredVersion + && !isVulnerableVersion + && isSafeVersion; }; }