[Windows] Force Resolve-ChocoPackageVersion function to use CLI (#9605)

This commit is contained in:
Erik Bershel
2024-04-02 23:37:28 +02:00
committed by GitHub
parent da5ebb3622
commit dafa292860

View File

@@ -77,13 +77,12 @@ function Resolve-ChocoPackageVersion {
[string] $TargetVersion
)
$versionNumbers = $TargetVersion.Split(".")
[int] $versionNumbers[-1] += 1
$incrementedVersion = $versionNumbers -join "."
$filterQuery = "`$filter=(Id eq '$PackageName') and (IsPrerelease eq false) and (Version ge '$TargetVersion') and (Version lt '$incrementedVersion')"
$latestVersion = (Invoke-RestMethod "https://community.chocolatey.org/api/v2/Packages()?$filterQuery").properties.Version |
Where-Object { $_ -Like "$TargetVersion.*" -or $_ -eq $TargetVersion } |
Sort-Object { [version] $_ } |
$searchResult = choco search $PackageName --exact --all-versions --approved-only --limit-output |
ConvertFrom-CSV -Delimiter '|' -Header 'Name', 'Version'
$latestVersion = $searchResult.Version |
Where-Object { $_ -Like "$TargetVersion.*" -or $_ -eq $TargetVersion } |
Sort-Object { [version] $_ } |
Select-Object -Last 1
return $latestVersion