-
Notifications
You must be signed in to change notification settings - Fork 407
Open
Labels
Feature-Build-AccelerationBuild Acceleration can skip calls to MSBuild within Visual StudioBuild Acceleration can skip calls to MSBuild within Visual Studio
Description
Visual Studio Version
17.14.12
Summary
When DisableTransitiveProjectReferences
is enabled BuildAcceleration will copy more files to the output than a call to msbuild does.
Msbuild does not copy transitive dependencies that are not referenced statically in the dependency graph of the direct dependencies when DisableTransitiveProjectReferences
is enabled . When build acceleration is enabled these files get copied anyways
Steps to Reproduce
- Clone my repo: https://github.com/janthomasQS/BuildAccelerationRepro
- Build the solution with VS. the first build will consider all projects out of date and call msbuild for all of them
- Observe the build output of
BuildAccelRepro.csproj
:IndirectDependency.dll
does not exist in the output - Build another time in VS
- VS will now copy
IndirectDependency.dll
into the output ofBuildAccelRepro.csproj
Expected Behavior
Build acceleration should copy the same files as a call to msbuild does.
Actual Behavior
More files are copied.
User Impact
Using BuildAcceleration changes the build output result and might therefore change behaviour.
Metadata
Metadata
Assignees
Labels
Feature-Build-AccelerationBuild Acceleration can skip calls to MSBuild within Visual StudioBuild Acceleration can skip calls to MSBuild within Visual Studio