Home: [1] Enable Solution level restore in msbuild

Created on 17 Jun 2016  路  7Comments  路  Source: NuGet/Home

It is critical that Restore operates on a solution, not a project for:

  • correctness (only by understand all the project to project references in a solution, and the set of nuget packages that the projects all use, are we able to get the right answers for version conflict resolution)
  • performance (restore used to take 90 seconds for Roslyn before we did solution level restore, now it takes 10 - we can't give up those gains)

As such, today it needs to be run before build.
Ideally, we could make it part of build-however, msbuild limitations may make that difficult if not impossible.
Our options:
1) keep it two pass
a) and run it before build like: "dotnet restore"
b) or run it before build like: msbuild /t:restore and then msbuild /t:build
2) figure out a way to make it 1 pass and enable msbuild foo.sln or msbuild bar.csproj to just work properly with solution level restore.

Restore External Feature

Most helpful comment

All 7 comments

Thanks!!!! We were literally in a meeting discussing this when we saw your comment come in :)

This has been added for CLI MSBuild, it still needs to be added to desktop MSBuild

is the appropriate issue opened in sdk or cli or ???, to take it from here?

@rrelyea CLI work is done, this just needs to go into the desktop MSBuild now.

internal bug # 280293

Verified fixed

Was this page helpful?
0 / 5 - 0 ratings