All NuGet IVS APIs should be async #8872
Labels
Epic
Functionality:SDK
The NuGet client packages published to nuget.org
Priority:2
Issues for the current backlog.
Product:VS.Client
Tenet:Performance
Performance issues
Type:Feature
The NuGet extensibility APIs in VisualStudio https://github.com/NuGet/NuGet.Client/tree/dev/src/NuGet.Clients/NuGet.VisualStudio/Extensibility are mostly synchronous and as such a common cause for UI delays.
Common offenders are:
https://github.com/NuGet/NuGet.Client/blob/dev/src/NuGet.Clients/NuGet.VisualStudio/Extensibility/IVsPackageInstallerServices.cs
https://github.com/NuGet/NuGet.Client/blob/dev/src/NuGet.Clients/NuGet.VisualStudio/Extensibility/IVsPackageSourceProvider.cs
https://github.com/NuGet/NuGet.Client/blob/dev/src/NuGet.Clients/NuGet.VisualStudio/Extensibility/IVsPackageInstaller.cs
These APIs can be furthermore improved by returning the actual status of the operation. Something not done in some of the synchronous APIs.
@kartheekp-ms specifically is looking into creating an async version for IVSPackageSourceProvider #8675
fyi @NuGet/nuget-client @dtivel
Roslyn ask
The text was updated successfully, but these errors were encountered: