
/cc @skofman1 ref: https://github.com/NuGet/NuGetGallery/issues/4859#issuecomment-337455878
https://www.nuget.org/packages/FAKE/
$(".version-history tr").length
1627
Tool used to check page load performance: https://tools.pingdom.com
Also, my other NuGet issue #4494 is now 77 days old and still a blocking issue to this day. As a reminder, #4494 is a server-side issue (and optionally a client-side issue) that needs to get fixed. I would really appreciate it if someone at Microsoft can put some effort into getting these issues fixed instead of pushing issues to a "future" label.
Again, as a quick refresher, I dare anyone to install the Baseline NuGet package via Command Line:

Thank you
Thanks for reporting! The Gallery should not display thousands of versions on the package display page. An easy fix here would be to display only the latest 100 versions, and displaying a message if there may be more versions. Alternatively, we could introduce paging for packages with large amounts of versions - but this may be overly complicated.
The reason for me to go to the F# FAKE NuGet page was to look for a specific version in the version history that was published 10 months ago. I needed to go back 10 months so I could resolve a build issue and lock down my dependencies a specific version number. Additionally, I needed to lock down other dependencies around that similar timeframe. In summary, version history is useful.
I think the best idea is not to truncate information from your website but to make it more accessible.
The page is loading slowly even for packages that have ~100 versions. We need to fix this.
There is some pretty bad performance on the most popular packages. I tried the top fix on the search results:
ID | Duration (seconds) | Performance Result
-- | -- | --
Newtonsoft.Json | 6.84 | https://tools.pingdom.com/#!/bxyIsD/https://www.nuget.org/packages/Newtonsoft.Json/
NUnit | 4.3 | https://tools.pingdom.com/#!/vLiaw/https://www.nuget.org/packages/NUnit/
EntityFramework | 5.54 | https://tools.pingdom.com/#!/nmZ2y/https://www.nuget.org/packages/EntityFramework/
jQuery | 7.93 | https://tools.pingdom.com/#!/dmuzMt/https://www.nuget.org/packages/jQuery/
HtmlAgilityPack | 6.3 | https://tools.pingdom.com/#!/bDSeBl/https://www.nuget.org/packages/HtmlAgilityPack/
Something has regressed since the redesign.
It looks like the issue is that we're executing a lot of unnecessary EF queries on cshtml execution.
A CPU profile shows 62% inclusive spent on DisplayPackage.cshtml execution, and just 18.4% on the controller action:

The controller executes 2 queries:
The razor view executes (# of versions) + 1 queries, seemingly to populate the Dependencies relation for every package version.
We should probably fix by including the Dependencies relation on the specified (or latest) version, but exclude and don't query Dependencies on all other versions. Still need to test and verify if that will resolve the performance issue.
Moving back to code complete... looks like this didn't actually make it to PROD this week. Will be in the next deployment.
Validation of FAKE package, based on F12 network latency
| Scenario | Baseline Env | Baseline Result | Env | Result | %Diff |
| --- | --- | --- | --- | --- | --- |
| DisplayPackages (1360 versions) | INT-USSC | 3217ms | INT0 | 768ms | -76% |
| DisplayPackages (1674 versions) | PROD-USSC | 3480ms | PROD0 | 1280ms | -63% |
Results from https://tools.pingdom.com
| Scenario | Region | Baseline Env | Baseline Result | Env | Result | %Diff |
| --- | --- | --- | --- | --- | --- | --- |
| DisplayPackages (1674 versions) | San Jose | PROD-USSC | 5410ms | PROD0 | 2900ms | -46.4% |
| DisplayPackages (1674 versions) | New York | PROD-USSC | 5820ms | PROD0 | 3120ms | -46.4% |
| DisplayPackages (1674 versions) | Stockholm | PROD-USSC | 5630ms | PROD0 | 2910ms | -48.3% |
| DisplayPackages (1674 versions) | Melbourne | PROD-USSC | 5930ms | PROD0 | 3910ms | -34.1% |
@bchavez You should see faster load times on this page now. I couldn't repro the 27s load time, but saw about 6s load times on average. If I find more optimizations, I'll open new issues to track.
@chenriksson thank you! I did notice recently page times are so much faster now. It's amazing. It's really wonderful to have NuGet working really good once again.
Again, super thanks for working on this and making everything so fast. :+1: :airplane: