ndmitchell / hlint

Haskell source code suggestions

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

hlint-3.8 fails to compile with ghc-9.8.1

peti opened this issue · comments

I've run into the following build error:

[   35s] src/Hint/Extensions.hs:430:41: error: [GHC-39999]
[   35s]     • No instance for ‘Data (HsMatchContext RdrName)’
[   35s]         arising from a use of ‘hasS’
[   35s]     • In the second argument of ‘(||^)’, namely ‘hasS isStrictMatch’
[   35s]       In the expression: hasS isPBangPat ||^ hasS isStrictMatch
[   35s]       In an equation for ‘used’:
[   35s]           used BangPatterns = hasS isPBangPat ||^ hasS isStrictMatch
[   35s]     |
[   35s] 430 | used BangPatterns = hasS isPBangPat ||^ hasS isStrictMatch
[   35s]     |                                         ^^^^

The full log file is at https://build.opensuse.org/public/build/devel:languages:haskell:ghc-9.8.x/Tumbleweed/x86_64/hlint/_log.

Is this a known problem?

i have been working through some problems with isStrictMatch. it looks like i've made things worse. working on it.

the linked log doesn't exhibit the error?

my read is this build failure arose against ghc-lib-parser-ex 9.8.0.1 (the type of isStrictMatch in that version is wrong). there was like a 1 or 2 day window in which it was the prevailing version. that has since been fixed by the release of ghc-lib-parser-ex-9.8.0.2. i've verified hlint-3.8 against the latest packages from hackage builds and test ok with ghc-9.8.1. i think we're ok now. thanks for letting me know about the failure in any case.

the linked log doesn't exhibit the error?

Indeed, the error has disappeared! It seems like an update to one of hlint's dependencies has fixed the issue. hlint itself hasn't changed -- it's the same version that used to fail 2 days ago. Very weird.

the linked log doesn't exhibit the error?

Indeed, the error has disappeared! It seems like an update to one of hlint's dependencies has fixed the issue. hlint itself hasn't changed -- it's the same version that used to fail 2 days ago. Very weird.

the hlint-3.8 cabal has bounds on ghc-lib-parser-ex like this:

    build-depends:
        ghc-lib-parser-ex >= 9.8.0.0 && < 9.8.1

so it's sensitive to upgrades of that component (by design). i broke it with 9.8.0.1 and fixed it again with 9.8.0.2. mea culpa!