-
Notifications
You must be signed in to change notification settings - Fork 701
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
This adds a mechanism in the modular solver to store whether a flag is "strong" or "weak". A weak flag is deferred during solving, a strong flag is not. By default, flags are now weak unless they're manual. This is a change in behaviour, but I think it's probably the better default, because many automatic flags are used to figure out what's on the system rather than to impose hard constraints. There's a new flag --strong-flags that restores the old behaviour. I do not think such a global flag is particularly useful, but it may be of interest to compare build plans between the new and old behaviour. With these preparations, it's easy to make the distinction between strong and weak flags more sophisticated. We can either add more heuristics as to when flags should be treated as strong or weak, or we can add syntax to .cabal files that allows package authors to specify explicitly how they intend a flag to behave. This is related to various cabal-install issues, e.g. #1831, #1864, and #1877. (cherry picked from commit 3dcddea) Conflicts: cabal-install/Distribution/Client/Dependency.hs cabal-install/Distribution/Client/Freeze.hs cabal-install/Distribution/Client/Setup.hs
- Loading branch information
Showing
11 changed files
with
78 additions
and
46 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters