-
I have a case in a larger repo where Setting Should |
Beta Was this translation helpful? Give feedback.
Replies: 2 comments
-
Short answer: No Long answer: Traditionally, MSBuild command-line based builds build from the top down. What this means is that the first project being built is started and for each reference, a new build is spawned. Each spawned build waits for the dependencies until they are built. For large builds, this means you could have hundreds of projects waiting. This is done by starting the build of the entry project, gathering the Static graph in MSBuild instead evaluates all of the projects ahead of time, then schedules the builds from the bottom up. This means that no projects are scheduled and paused which is more efficient. The builds are scheduled in dependency order starting at the bottom, Static graph-based NuGet restore only uses the MSBuild API that loads all of the projects ahead of time but doesn't use it for build scheduling. The static graph API is just very efficient for loading projects and then the information is read to run a restore in NuGet. But this does not use any of the build scheduling functionality that really makes up |
Beta Was this translation helpful? Give feedback.
-
Just in case linking to NuGet/Home#9803 |
Beta Was this translation helpful? Give feedback.
Short answer: No
Long answer:
Traditionally, MSBuild command-line based builds build from the top down. What this means is that the first project being built is started and for each reference, a new build is spawned. Each spawned build waits for the dependencies until they are built. For large builds, this means you could have hundreds of projects waiting. This is done by starting the build of the entry project, gathering the
<ProjectReference />
items, pausing that thread, and scheduling a new build of each project reference via the<MSBuild />
task.Static graph in MSBuild instead evaluates all of the projects ahead of time, then schedules the builds from the bottom up. This means that …