Skip to content

hls doesn’t build on stock Debian bullseye due to un-mentioned extra library version dependency #1993

Closed
@PhilArmstrong

Description

@PhilArmstrong

Your environment

Output of haskell-language-server --probe-tools or haskell-language-server-wrapper --probe-tools:

Tool versions found on the $PATH
cabal:		3.4.0.0
stack:		Not found
ghc:		8.8.4

Which OS do you use:
Debian bullseye

Steps to reproduce

cabal-hls-install hls-8.8.4

Actual behaviour

src/Wingman/Context.hs:7:1: error:
    Could not find module ‘Data.Foldable.Extra’
    Perhaps you meant
      Data.Typeable.Extra (from extra-1.7.4)
      Data.Foldable.Compat (needs flag -package-key base-compat-0.11.1)
      Data.Foldable.Compat (needs flag -package-key base-compat-batteries-0.11.1)
    Use -v (or `:set -v` in ghci) to see a list of the files searched for.
  |
7 | import           Data.Foldable.Extra (allM)
  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
cabal: Failed to build hls-tactics-plugin-1.2.0.0 (which is required by
exe:haskell-language-server from haskell-language-server-1.2.0.0). See the
build log above for details.

Standard version of the extra library on Debian Bullseye is 1.7.4

At some point, extra gained Data.Foldable.Extra & the allM function. Installing 1.7.9 in preference to the system 1.7.4 fixes the problem. I guess a versioned dependency needs adding to the cabal file.

Metadata

Metadata

Assignees

No one assigned

    Labels

    CIContinuous integrationbuild tool: cabalcan-workaroundtype: bugSomething isn't right: doesn't work as intended, documentation is missing/outdated, etc..

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions