-
Notifications
You must be signed in to change notification settings - Fork 252
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
NuGet VSIX should ship Microsoft.Build.NuGetSdkResolver manifest #7390
Comments
I agree it makes sense that the component that inserts the resolver should be responsible for the xml manifest telling MSBuild where it is. But also I think we need to keep in mind that a core set of NuGet (resolver + NuGet tasks) is a dependency of MSBuild now (tasks in our common targets require NuGet to build). Ideally if there's a package that has that core set of NuGet it should be a dependency of the |
Fixes dotnet#3852 by ensuring that NuGet's tasks and targets are present wherever MSBuild itself is, since common.targets now depends on NuGet. Closes NuGet/Home#7390.
Fixes #3852 by ensuring that NuGet's tasks and targets are present wherever MSBuild itself is, since common.targets now depends on NuGet. Closes NuGet/Home#7390.
Fixes #3852 by ensuring that NuGet's tasks and targets are present wherever MSBuild itself is, since common.targets now depends on NuGet. Closes NuGet/Home#7390.
It's possible to install copies of Visual Studio that do not include NuGet, but do include MSBuild. One case is installing just the C++ Build Tools workload. If you then use that MSBuild to build an SDK-style project, you can get a confusing error
confusing error
This happens because MSBuild ships an XML manifest for the NuGet SDK resolver in its VSIX:
https://github.com/Microsoft/msbuild/blob/50639058f947ef3b21075cb110f06913124d2942/src/Package/MSBuild.VSSetup/files.swr#L60-L61
But the file pointed to by that manifest is delivered by the NuGet VSIX:
https://github.com/NuGet/NuGet.Client/blob/d9a35fdd6a5fd39876358ec8b759766d112d0592/setup/Microsoft.VisualStudio.NuGet.BuildTools.swr#L9
And there's no package-to-package dependency from MSBuild to NuGet so that could be a dangling reference.
I can see two ways to solve this: either establish that dependency or change the ownership of the manifest file from MSBuild to NuGet. I think the latter is easier but I'd be open to the former.
This was reported as OmniSharp/omnisharp-roslyn#1311.
The text was updated successfully, but these errors were encountered: