haskell / haskell/cabal

`cabal check` should warn about incorrect flag-use

Open
#1,890 6 comments 0 reactions 0 assignees View on GitHub
cabal-install: cmd/check type: enhancement
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

Open the contributing 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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.