-
Notifications
You must be signed in to change notification settings - Fork 252
Package Sources Diagnostics
Customers often complain of performance issues with retrieving packages in search, installing and updating packages. Often when we analyze these individual issues, we find that in a large percentage of cases the issues users are seeing are due to the following. Package Sources here refer to:- File shares, NuGet.Server's, 3rd party repositories and NuGet.org.
- NuGet package sources response times are slow
- Nuget package sources are behind a corporate firewall
- User is offline
- The backing file shares of NuGet.org are either not optimized or very large.
We want to proactively inform the users of these issues, so they can take corrective action and/or give them an option to temporarily disable certain sources for a period of time of the session.
Any customer who has a slow network, works offline and online, has NuGet.Server installations and have package sources behind corporate firewalls.
TBD
- Update: Checking for updates. Fetching and installing packages.
- Package restore
- Browse/Search; Search in package manager UI and list in PMC
- Install
- Detailed metadata fetch (Click on package)
- PowerShell autocomplete
- Consolidate
- Server is not accessible: Server is not available or server can't be reached
- Server is slow: Package has a large number of versions (1000+ CI feeds). Server implementation is not optimal for large version set
- FileShare is not efficient
- vNext (Requires proxy rules): Semantic understanding of what packages are being downloaded per source
- Duplicate URLs and equivalent URLs
- Server URL points to an invalid server - the endpoint is not a server
- when a misbheaving source is an intermittent issue that resolves itself
- VS
- PMC
- NuGet.xplat
- Nuget.exe
- User opens Visual Studio
- User open package manager UI
- Sees an update and hits install
- We detected 1-N issues
- We bring up a UI that shows what the issues are
- This UI will have single disable for duration command, disable for all time command
- On clicking this package manager enters into temp disable mode, we show some indicator that you are this in this mode.
- You can either get out of the temp disable mode by using some command in VS or restart VS
- If the user clicks permanently disable, then there is no highlight forever and goes through normal flow.
Check out the proposals in the accepted
& proposed
folders on the repository, and active PRs for proposals being discussed today.