Skip to content

Instantly share code, notes, and snippets.

@joelverhagen
Last active November 10, 2017 02:17
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save joelverhagen/cd95871f2292a317edd4cf0ff5e87bec to your computer and use it in GitHub Desktop.
Save joelverhagen/cd95871f2292a317edd4cf0ff5e87bec to your computer and use it in GitHub Desktop.
Latest version of a NuGet package in PowerShell
# See: https://docs.microsoft.com/en-us/nuget/api/service-index
$serviceIndex = Invoke-RestMethod "https://api.nuget.org/v3/index.json"
$searchUrl = $serviceIndex.resources `
| ? { ($_ | Select -ExpandProperty "@type") -eq "SearchQueryService" } `
| % { $_ | Select -ExpandProperty "@id" } `
| Select-Object -First 1
$packageId = "NuGet.Versioning"
$includePrerelease = $true
# See: https://docs.microsoft.com/en-us/nuget/api/search-query-service-resource#search-for-packages
$searchQueryUrl = "$($searchUrl)?q=packageid:$packageId&prerelease=$includePrerelease"
$searchResults = Invoke-RestMethod $searchQueryUrl
if ($searchResults.totalHits -lt 1) {
Write-Output "No results found for $packageId (include prerelease = $includePrerelease)."
exit
}
$latestVersion = $searchResults.data[0].version
Write-Output "The latest version of $packageId is $latestVersion."
The latest version of NuGet.Versioning is 4.4.0.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment