Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Walk project to project references first while creating a minimum number of items to track the full closure of projects. Removing duplicates along the way is important for perf reasons, if too many items are created restore will grind to a halt as they build. Once all projects have been found create specs for the projects directly instead of creating them during the walk. This also helps to keep the number of items down. Performance improvement on a project with 127 projects with a maximum number of project references between them. Before: 900 seconds After: 21 seconds In addition to the perf changes this also adds in the full set of dotnet cli tool references when recursive is set. Getting this information is much easier now that the full set of projects is found up front. Fixes NuGet/Home#4592 Fixes NuGet/Home#4711
- Loading branch information