Regression in 3.12: package system-filepath (with custom Setup) cannot be installed with GHC 8.0
- Dominant language
- Haskell
- Stars
- 1.7k
- Forks
- 750
- Avg merge
- 4d 3h
- Merged PRs (30d)
- 28
Description
With cabal-install-3.12.1.0, I can trigger this bug
- by `cabal install -w ghc-8.0.2 system-filepath-0.4.14` (latest version of `system-filepath`)
- by getting `system-filepath`and do a `cabal install --lib -w ghc-8.0.2`
- or by getting package `acid-state` (which depends on `system-filepath`) and then do a `cabal build -w ghc-8.0.2`
In the wild: https://github.com/acid-state/acid-state/actions/runs/10947885622/job/30397644524?pr=170#step:17:566
Error is:
> setup: Unrecognised flags: lib:system-filepath
With cabal master (3.15), I am getting different errors:
> unrecognized 'configure' option `--with-doctest=/Users/abel/.cabal/bin/doctest'
>
> unrecognized 'configure' option `--with-runghc=/usr/local/bin/runghc-8.0.2'
None of the mentioned errors occur with `-w ghc-8.2.2` (or any higher GHC major version).
If I have to guess, then it is not really the GHC version that matters here but the version of the Cabal library that the `Setup.hs` is built with. (But I could be on the wrong track.)
- GHC 8.0 comes with Cabal-1.24
- GHC 8.2 comes with Cabal-2.0
So, was support for `Cabal-1.24` (silently or by accident) dropped in `cabal-install-3.12`? (Couldn't find it in https://github.com/haskell/cabal/blob/982fb820991e0b29228243ad6dbee23c11adde1d/release-notes/cabal-install-3.12.1.0.md)
A parallel to such unwanted compatibility drop is
- https://github.com/commercialhaskell/stack/issues/6498
Should cabal-install explicitly refuse to work with `Cabal < 2`?
Contributor guide
Assessment
This issue has not been assessed yet.