Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Build failure in testEqualityComposeBare #156

Open
tomhepworth opened this issue Oct 13, 2023 · 2 comments
Open

Build failure in testEqualityComposeBare #156

tomhepworth opened this issue Oct 13, 2023 · 2 comments

Comments

@tomhepworth
Copy link

tomhepworth commented Oct 13, 2023

parameterized-utils is a dependency of a package I want to instal (bv-sized) I get a build failure when I install it:

Resolving dependencies...
Configuring parameterized-utils-2.1.2.0...
Building parameterized-utils-2.1.2.0...
Failed to install parameterized-utils-2.1.2.0
Build log ( /home/tom/.cabal/logs/ghc-8.2.2/parameterized-utils-2.1.2.0-4VdYssETRDcLceu2pgYcjQ.log ):
cabal: Entering directory '/tmp/cabal-tmp-89161/parameterized-utils-2.1.2.0'
Configuring parameterized-utils-2.1.2.0...
Preprocessing library for parameterized-utils-2.1.2.0..
Building library for parameterized-utils-2.1.2.0..
[ 1 of 32] Compiling Data.Parameterized.Compose ( src/Data/Parameterized/Compose.hs, dist/build/Data/Parameterized/Compose.o )

src/Data/Parameterized/Compose.hs:30:45: error:
    Type variable ‘k’ used in a kind.
    Did you mean to use TypeInType?
    the type signature for ‘testEqualityComposeBare’
   |
30 | testEqualityComposeBare :: forall k l (f :: k -> *) (g :: l -> k) x y.
   |                                             ^

src/Data/Parameterized/Compose.hs:30:59: error:
    Type variable ‘l’ used in a kind.
    Did you mean to use TypeInType?
    the type signature for ‘testEqualityComposeBare’
   |
30 | testEqualityComposeBare :: forall k l (f :: k -> *) (g :: l -> k) x y.
   |                                                           ^

src/Data/Parameterized/Compose.hs:30:64: error:
    Type variable ‘k’ used in a kind.
    Did you mean to use TypeInType?
    the type signature for ‘testEqualityComposeBare’
   |
30 | testEqualityComposeBare :: forall k l (f :: k -> *) (g :: l -> k) x y.
   |                                                                ^
cabal: Leaving directory '/tmp/cabal-tmp-89161/parameterized-utils-2.1.2.0'
cabal: Error: some packages failed to install:
bv-sized-1.0.3-Ip13iwUWQ7u421I8e2amlq depends on bv-sized-1.0.3 which failed
to install.
parameterized-utils-2.1.2.0-4VdYssETRDcLceu2pgYcjQ failed during the building
phase. The exception was:
ExitFailure 1

Can anyone advise how to resolve this?

@kquick
Copy link
Member

kquick commented Oct 13, 2023

Your build information indicates you are using GHC 8.2.2, which is circa 2017. Our CI support range is only back as far as 8.6.5 / 2019. The issues you are running into involve compiler features that have changed between then and now. My best advice would be to use a later version of GHC if possible. If not, you can try removing the kind quantification (i.e. reversing the changes in 72070e0) although you may run into other issues as well. You could also try version 2.0.1.0 which dates back to when GHC 8.2.2 was likely in use, but that may not have all the features that bv-sized needs.

@RyanGlScott
Copy link
Contributor

Out of curiosity, what cabal invocation are you using to build this? We could apply Hackage revisions to the affected versions of parameterized-utils on Hackage to require that they build with newer GHCs. That being said, it would be nice to be able to confirm that this would actually fix your issue before doing so.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants