Infrastructure to maintain the project build status
We construct a PostBuildProjectStatus which has sets of package ids covering various properties, including: - out of date - definitely up to date - probably up to date - invalid due to dep changes - invalid due to direct build failure We also persistently keep track of the "probably up to date" set between builds. In this patch we just calculate and maintain these things but don't yet use them except for debug output. The idea is it should be useful for things like maintaining the .ghc.environment, deleting stale build dirs or package registrations, maintaining exe wrapers/symlinks etc.
This diff is collapsed.