NuGetGallery
NuGetGallery copied to clipboard
[Search] Add an "Include deprecated" filter
Is your feature request related to a problem? Please describe.
This was an idea suggested by @chgill-MSFT after reading HaTs survey feedback.
We suspect that users prefer to install the latest stable non-deprecated version of a package. Furthermore, we suspect that users avoid packages if all its versions are deprecated. These are hypotheses that need to be validated.
Describe the solution you'd like
We should consider adding an "Include deprecated" filter, similar to the "Include prerelease" filter. This would be a natural extension to the Advanced Search feature (see https://github.com/NuGet/NuGetGallery/issues/2636).
This is related to: https://github.com/NuGet/NuGetGallery/issues/7297
/cc @t-mog-msft @chgill-MSFT @joelverhagen
Implicit here is to hide deprecated by default?
Implicit here is to hide deprecated by default?
This needs more thought, but my gut reaction is yes we should hide deprecated packages by default on nuget.org. For the search service API, we should likely default to including deprecated results to avoid breaking third-party clients.
This really needs to be done. The number of packages is exploding, newer frameworks/extensions. If you're searching for something, and it comes up with 2322 results, but there's a ton of them that are deprecated and you have to weed through. We definitely need a way to say "[X] Exclude Deprecated Packages", whether its on or off by default, I really don't care. It just needs to be there. This is a no brainer, and should not be in discussions for 3+ years. This feature request is suffering death by committee.
@JohnRCoder I think the team agrees this would be a valuable feature but this is harder to implement than you'd expect. NuGet needs to maintain separate results for each search pivot combination - like prerelease, deprecated, and so on. Each pivot explodes the search index. This increases cost and makes it harder to ensure good search quality, which is something the NuGet team is already struggling with. I would recommend upvoting this feature as that helps the team prioritize engineering investments.
(This is my personal opinion as I am no longer on the NuGet team)