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

Multi-target build task to net4x/netcoreapp20 #24646

Closed
nguerrera opened this issue Feb 5, 2018 · 1 comment
Closed

Multi-target build task to net4x/netcoreapp20 #24646

nguerrera opened this issue Feb 5, 2018 · 1 comment
Assignees
Milestone

Comments

@nguerrera
Copy link
Contributor

.NET Standard msbuild tasks are problematic and just about everyone has converged on multi-targeting instead (including SDK and core nuget tasks). dotnet/msbuild#1309 is one example of the problems that can be hit. There are workarounds, but it is fragile.

Recently, the build task added a dependency on Pipes.AccessControl that is not part of the shared framework, so it needed to be included in the package. To do this, the netstandard1.3 was published dropping a bunch of other unnecessary dependencies next to the build tasks and breaking crossgen upon insertion in to the CLI.

Publishing a netstandard library is basically a broken scenario. See dotnet/sdk#1855 (comment), which goes on to discuss warnings/errors for this case. When you publish, you should really use a "runnable" TFM like net46 or netcoreapp2.0.

For now, CLI is deleting the extra assemblies to unblock the insertion, but this isn't sustainable because it's implemented with fragile wild-cards ("System.*", but not Pipes.AccessControl) that are subject to change at any time.

Assigning to @jaredpar as he asked me to do so offline.

@jaredpar jaredpar added this to the 15.7 milestone Feb 8, 2018
jaredpar added a commit to jaredpar/roslyn that referenced this issue Mar 1, 2018
Changes our task to multi-target between net46 and netcoreapp2.0. This
matches how the rest of the SDK is deploying and makes for a smoother
integration into CLI.

context dotnet#24646
@jaredpar
Copy link
Member

This is done.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants