dotnet / dotnet/project-system

FUTDC item set tracking should tolerate remove then add of same item

Open
#8,933 0 comments 0 reactions 0 assignees View on GitHub
Feature-Up-to-date Triage-Investigate
Dominant language
C#
Stars
1k
Forks
415
PR merge metrics
No merged PRs in 30d

Description

Some build processes generate input files as part of the build. If this is done by deleting then re-creating the file (as opposed to just overwriting the file), the FUTDC currently observes this as a "change to the set of items", even if the set ends up in the same state as it started. Subsequent builds will be considered out of date due to:

> The set of project items was changed more recently (XXX) than the last successful build start time (YYY), not up-to-date.

We could improve our item set tracking, perhaps reusing our hash calculation.

---

We would need to be considerate of the scenario:

1. Build
1. Delete a source file
1. Build again
1. Undelete file
1. Build again

The undelete restores the file with its original timestamp, which is before the last build. In this case though I think the set-of-files check should be fine.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.