`cabal check` should warn about incorrect flag-use
- Dominant language
- Haskell
- Stars
- 1.7k
- Forks
- 750
- Avg merge
- 4d 3h
- Merged PRs (30d)
- 28
Description
Often, cabal flags are automatic (since they're left at the implicit default-setting `manual: False`) even though there's no reason for the solver to automatically toggle them as they don't have any effect on the install plan (e.g. they don't affect the `build-depends` property). As this may mislead the solver those flags should be marked `manual: True` instead.
Therefore, in order to rise awareness, `cabal check` could detect cases where `manual` hasn't been set explicitly, and yet no solver-sensitive properties are touched.
/cc @tibbe
Contributor guide
Research direction
Start by tracing the `cabal check` entry point and how package flags record whether `manual` was explicitly set. Determine how the check identifies solver-sensitive properties and define the warning for flags that affect none of them; done means the intended cases are reported without misleading warnings.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- haskell
- Domain
- build-system, cli
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100