microsoft/MSBuildSdks

[NoTargets] FileWrites has no impact on build incrementalism

Closed this issue · 1 comments

Taking the repo's example for repro, the items written in FileWrites are created too late for _CleanGetCurrentAndPriorFileWrites to be processed. Is this an issue with the example (fine-tune Before/AfterTargets) or with the NoTargets SDK?

Here's the graphical representation of the order of actions:

image

Yeah I guess _CleanGetCurrentAndPriorFileWrites runs as part of IncrementalClean which runs as part of CoreBuild and the example runs before AfterBuild. We can update the example to run as part of PrepareForRun instead which is what triggers copying files to the output directory.

<Target Name="CopyFiles" BeforeTargets="PrepareForRun">

Do you want to update the example?