-
Notifications
You must be signed in to change notification settings - Fork 407
Description
Visual Studio Version
Version 17.5.0
Summary
I was going to try and see if we could use build acceleration at my workplace, however I couldn't make it trigger and it always built all my project dependencies when I made a simple edit in one of the source files at one of our core libraries. Eventually I discovered that if I changed the target framework to net6.0 from netstandard2.0 it worked as expected.
I can understand there might be some technical reason netstandard projects doesn't get build acceleration, not sure if that is the case, but if it is it should probably be listed as a prerequisite, which AFAICT it is not https://github.com/dotnet/project-system/blob/main/docs/build-acceleration.md#validate-builds-are-accelerated
Steps to Reproduce
Using this as an example.. If Library 3 has target framework netstandard2.0, and I make a change to to Library 3, it will trigger all 4 MSBuild calls instead of being called once like it states in the link. If I change to net6.0 it works as expected, it also works if I multi-target <TargetFrameworks>netstandard2.0;net6.0</TargetFrameworks>.
Expected Behavior
I would expect projects with netstandard to support build acceleration as I can't see any documentation that states otherwise, or I would expect the documentation to make target framework demands more clear.
Actual Behavior
Build acceleration doesn't trigger when I make a simple change in one of my core libraries, instead the entire source gets built like it always did. Documentation doesn't mention any target framework requirements
User Impact
We have a very large codebase that we're working on migrating to net6.0, however the majority of the codebase will have to continue to build to netstandard until we we can rid ourselves of all legacy demands which will take along time. Without netstandard support we cannot use this feature which otherwise looks excellent.