Skip to content
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

Support package managers #83

Closed
lilith opened this issue Apr 27, 2015 · 4 comments
Closed

Support package managers #83

lilith opened this issue Apr 27, 2015 · 4 comments
Labels

Comments

@lilith
Copy link

lilith commented Apr 27, 2015

NuGet dropped MSBuild support due to a range of design flaws.

Unlike NuGet, though, other projects don't have the luxury of shipping with visual studio. Please solve this problem in a way that can help projects like Paket work out of the box.

@AndyGerlicher
Copy link
Contributor

Package support is on our long term roadmap. This is not something we want to address at this time.

@lilith
Copy link
Author

lilith commented May 6, 2015

Keep in mind, that with this you're killing F# (for which NuGet is unusable) and cross-platform C#+p/invoke (where NuGet is unusable).

After so many promises to play fair, this is pretty much the ultimate F*** you to the OSS community.

Is permitting re-load after pre-build so hard?

@dsplaisted
Copy link
Member

Is permitting re-load after pre-build so hard?

@nathanaeljones Basically, yes. The newly imported targets could impact everything that's already been evaluated and executed, so MSBuild would have to throw out everything and start over.

Generally what we do for package restore for CI / command line builds is to have an outer project which runs package restore and then calls MSBuild on the project files that actually build the source code. These projects aren't evaluated until after packages are restored, so it works correctly. Here's an example of this.

This doesn't help in Visual Studio because VS wouldn't build the outer project which does package restore. However, what you can do is to have the project do the package restore and then call MSBuild on itself. I've created a proof of concept of doing this in the paket.targets file here.

@dhusemann
Copy link

Shouldn't this stay open?? although it isn't in the current plans it is still something to be addressed.

radical added a commit to radical/msbuild that referenced this issue Jan 18, 2019
cli commit: bcfed91

Microsoft.NET.Sdk:                      2.1.400
Microsoft.NET.Sdk.Razor:                2.1.1
Microsoft.NET.Sdk.Web                   2.1.400-preview1-20180705-1834985
Microsoft.NET.Sdk.Publish:              2.1.400-preview1-20180705-1834985
Microsoft.NET.Sdk.Web.ProjectSystem:    2.1.400-preview1-20180705-1834985

Microsoft.NET.Build.Extensions:         2.1.400

NuGet.Build.Tasks:                      4.8.1-rtm.5435
NuGet.Build.Tasks.Pack:                 4.8.1-rtm.5435

Also added nuget source: https://dotnet.myget.org/F/dotnet-web/api/v3/index.json
.. for `*Web*, and `*Publish*` SDKs.

Versions from:
https://github.com/dotnet/cli/blob/bcfed917f2c22b94d4e4dd67ca5f2588d72d0f76/build/DependencyVersions.props

(cherry picked from commit 12a54e1)
@AR-May AR-May added the triaged label Feb 21, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

5 participants