Ignore `dist/setup-config` when `build-type: Custom`
- Dominant language
- Haskell
- Stars
- 1.7k
- Forks
- 750
- Avg merge
- 4d 3h
- Merged PRs (30d)
- 28
Description
With `build-type: Custom` packages, the builder may not be Cabal, or it may be a different version of Cabal. cabal-install must not try to examine `dist/setup-config` in this case; it may be absent, or in a different format. Yet, many of the actions defined in cabal-install do exactly that, causing various failures when the persistent build config is unreadable.
There is probably not time to address this in the Cabal-1.22 cycle, so I am setting this for the Cabal-1.24 milestone. Don't hesitate to reclassify if you disagree.
Originally discussed in #2251.
Contributor guide
Research direction
Start by tracing the cabal-install actions that examine dist/setup-config, focusing on behavior when build-type is Custom. Verify how those actions handle an absent or incompatible persistent build config, then confirm that Custom builds no longer depend on it while normal Cabal builds retain their existing behavior.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- haskell
- Domain
- build-system, cli
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100