List all available versions of a specific package in NuGet Package Manager Console

前端 未结 3 1389
孤城傲影
孤城傲影 2021-01-31 07:13

What NuGet PowerShell command will return a list of all versions of a specific package?

I have tried the following, but it only returns one version of NUnit along with a

相关标签:
3条回答
  • 2021-01-31 07:45

    Your source resolves to the version 1 of the feed which doesn't seem to work with -AllVersions (I filed an issue: https://github.com/NuGet/NuGetGallery/issues/563)

    Using the V2 feed works for me:

    get-package -ListAvailable -AllVersions -filter nunit -source https://nuget.org/api/v2/
    

    But note that -filter is not for a specific package, but more like a search term.

    As a workaround, I'd use tab autocomplete to get the versions list of a specific package:

    install-package -source https://nuget.org/api/v2/ -id nunit -version <tab>
    
    0 讨论(0)
  • 2021-01-31 07:49

    To extend on the already provided solutions and address the follow-up questions by King King and JohnKoz, it is possible to get the full list of versions for a specific package as follows:

    Find-Package -AllVersions -source https://nuget.org/api/v2/ Newtonsoft.Json -ExactMatch | foreach { $_.Versions } | Select-Object Version
    

    The package Newtonsoft.Json is an example. Replace it as needed.

    It works by first getting all versions for a single package (via -ExactMatch). This returns a package object that has a Versions property, which is an array of version objects. The foreach iterates over all these and the Select-Object ensures that each version object is output as a single line (by only selecting its main property).

    0 讨论(0)
  • 2021-01-31 07:55

    As of version 3.x, get-package -ListAvailable -AllVersions will still work, but will issue the following warning about imminent deprecation:

    This Command/Parameter combination has been deprecated and will be removed in the next release. Please consider using the new command that replaces it: 'Find-Package [-Id] -AllVersions'.

    In addition, Find-Package supports an -ExactMatch switch which will avoid the wildcard matching issues that -Filter has:

    Find-Package NUnit -AllVersions -ExactMatch -Source https://api.nuget.org/v3/index.json

    0 讨论(0)
提交回复
热议问题