-
Notifications
You must be signed in to change notification settings - Fork 5.9k
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
Documenting .NET Core MSBuild targets and properties/CSPROJ #2642
Comments
Related to this topic we should provide guidance for how to configure client side builds (npm, grunt, gulp tasks) for CI builds. |
There are likely at least two distinct concerns here:
|
As part of this, the documentation for BaseIntermediateOutputPath needs to indicate that it must not be set in the body of a |
Cross ref (might be good to include something on <RunWorkingDirectory>): https://github.com/aspnet/websdk/issues/238 |
Please include information about breaking changes affecting project files after migration from the "old style". Hit the breaking change described at https://github.com/dotnet/project-system/blob/master/docs/configurations.md over the weekend and didn't find that page 'til @natemcmaster told me about it. Need something better than tribal knowledge here… |
Please also document all properties that have special meaning for the compiler etc. |
From @proog: While it does have a vague mention of the SDK being a "set of tasks and targets," it does not explain which, and perhaps more importantly does not explain what the consequences of choosing one over the other is. In my opinion it would be helpful to have a paragraph dedicated to choosing the right SDK, or a reference to a more in-depth explanation of their differences." |
ad SDKs: I guess this is about web vs non-web People editing the csproj by hand seem to get bitten by the different globs in these two since they have different globs for things like json files.. is there a structure proposal yet? single page or a "customize your build" node? Topics that have come up across repos and stack overflow a lot and would potentially be useful in docs:
maybe cc @SabotageAndi for additional suggestions |
From feedbacks via other channels: Incremental builds are only sparsely documented. I strongly agree since I recently needed to look at msbuild source code for an edge case that wasn't documented (this SO question). |
Missed |
Add info about the degree to which the .NET Core SDK supports existing project files (not SDK style). |
I believe the communication from the SDK/CLI team over the years was along the lines of "not officially supported, it may work for you and only you". |
I've created manageable chunk issues to track the remaining work on https://docs.microsoft.com/en-us/dotnet/core/project-sdk/msbuild-props. Closing this one out. |
This has been coming up more and more as we go. There have been numerous requests for help on Slack chat, several on SO, and a question on the Standup: https://youtu.be/c9Ub4uwjlbo?list=PL0M0zPgJ3HSftTAAHttA3JQU4vOjXFquF&t=3677.
@mairaw mentioned to me on Slack that props and targets perhaps are best explained as part of a topic that addresses .NET Core-specific csproj generally ... not so much just "targets and properties" disconnected from the project file.
Current info can be found in the tutorials and topics such as A mapping between project.json and csproj properties, Additions to the csproj format for .NET Core, and Packages, Metapackages and Frameworks. What's been happening quite a bit I think is that devs end up digging around in ...
https://github.com/dotnet/sdk/tree/master/src/Tasks/Microsoft.NET.Build.Tasks/targets
... to find useful/helpful props and targets. I think we all agree that that's not a good UE.
This issue addresses the need to have a clearly-visible topic for the project file that isn't migration-based, perhaps with a companion reference topic on only targets and properties in a tables format. Those could pertain to sdk, websdk, or both; but I suggest getting the websdk bits covered somewhere clearly visible in addition to merely covering the sdk ones.
cc/ @dasMulli ... Who has helped hundreds of devs with props/targets for .NET Core. I hope he'll make some observations for this issue.
The text was updated successfully, but these errors were encountered: