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

Support GHC 9.0 / base 4.15 #49

Closed
sternenseemann opened this issue Apr 29, 2022 · 2 comments
Closed

Support GHC 9.0 / base 4.15 #49

sternenseemann opened this issue Apr 29, 2022 · 2 comments

Comments

@sternenseemann
Copy link

For packaging in nixpkgs (see NixOS/nixpkgs#135145), it'd be great to support GHC 9.0 and base 4.15, since we use them by default now. We can ship the package for GHC 8.10.7 for now, but it'd be good to have it in the default package set.

[ 1 of 71] Compiling Control.Applicative.Day ( src/Control/Applicative/Day.hs, dist/build/Control/Applicative/Day.o, dist/build/Control/Applicative/Day.dyn_o )
[ 2 of 71] Compiling Control.Applicative.Phases ( src/Control/Applicative/Phases.hs, dist/build/Control/Applicative/Phases.o, dist/build/Control/Applicative/Phases.dyn_o )
[ 3 of 71] Compiling Control.Applicative.Queue ( src/Control/Applicative/Queue.hs, dist/build/Control/Applicative/Queue.o, dist/build/Control/Applicative/Queue.dyn_o )

src/Control/Applicative/Queue.hs:27:42: error:
    • Couldn't match type: forall x. Phases f x -> Phases f (a, x)
                     with: Phases a0 () -> Phases f (a, b0)
      Expected: Day (Phases f) a -> Phases a0 () -> Phases f (a, b0)
        Actual: Day (Phases f) a
                -> forall x. Phases f x -> Phases f (a, x)
    • In the first argument of ‘flip’, namely ‘getDay’
      In the second argument of ‘(.)’, namely ‘flip getDay (Here ())’
      In the second argument of ‘(.)’, namely
        ‘lowerPhases . flip getDay (Here ())’
    • Relevant bindings include
        runQueue :: Queue f a -> f a
          (bound at src/Control/Applicative/Queue.hs:27:1)
   |
27 | runQueue = fmap fst . lowerPhases . flip getDay (Here ())
   |                                          ^^^^^^

src/Control/Applicative/Queue.hs:36:51: error:
    • Couldn't match type: forall x1. Phases f x1 -> Phases f (a, x1)
                     with: Phases f x -> Phases f (a, x)
      Expected: Day (Phases f) a -> Phases f x -> Phases f (a, x)
        Actual: Day (Phases f) a
                -> forall x. Phases f x -> Phases f (a, x)
    • In the second argument of ‘(.)’, namely ‘getDay’
      In the first argument of ‘fmap’, namely ‘(($ x) . getDay)’
      In the first argument of ‘wrapPhases’, namely
        ‘(fmap (($ x) . getDay) f)’
    • Relevant bindings include
        x :: Phases f x (bound at src/Control/Applicative/Queue.hs:36:20)
        f :: f (Queue f a)
          (bound at src/Control/Applicative/Queue.hs:36:11)
        wrapQueue :: f (Queue f a) -> Queue f a
          (bound at src/Control/Applicative/Queue.hs:36:1)
   |
36 | wrapQueue f = Day \x -> wrapPhases (fmap (($ x) . getDay) f)
   |                                                   ^^^^^^
[ 4 of 71] Compiling Control.Comonad.Tape ( src/Control/Comonad/Tape.hs, dist/build/Control/Comonad/Tape.o, dist/build/Control/Comonad/Tape.dyn_o )
[ 5 of 71] Compiling Control.Hyper    ( src/Control/Hyper.hs, dist/build/Control/Hyper.o, dist/build/Control/Hyper.dyn_o )
[ 6 of 71] Compiling Control.Mealy    ( src/Control/Mealy.hs, dist/build/Control/Mealy.o, dist/build/Control/Mealy.dyn_o )
[ 7 of 71] Compiling Control.Monad.Ref ( src/Control/Monad/Ref.hs, dist/build/Control/Monad/Ref.o, dist/build/Control/Monad/Ref.dyn_o )
[ 8 of 71] Compiling Control.Natural  ( src/Control/Natural.hs, dist/build/Control/Natural.o, dist/build/Control/Natural.dyn_o )
[ 9 of 71] Compiling Data.Ascript     ( src/Data/Ascript.hs, dist/build/Data/Ascript.o, dist/build/Data/Ascript.dyn_o )
[10 of 71] Compiling Data.Functor.Loom ( src/Data/Functor/Loom.hs, dist/build/Data/Functor/Loom.o, dist/build/Data/Functor/Loom.dyn_o )
[12 of 71] Compiling Data.Name        ( src/Data/Name.hs, dist/build/Data/Name.o, dist/build/Data/Name.dyn_o )
[13 of 71] Compiling Data.Node        ( src/Data/Node.hs, dist/build/Data/Node.o, dist/build/Data/Node.dyn_o )
[14 of 71] Compiling Data.Bag         ( src/Data/Bag.hs, dist/build/Data/Bag.o, dist/build/Data/Bag.dyn_o )
[15 of 71] Compiling Control.Monad.Levels.Internal ( src/Control/Monad/Levels/Internal.hs, dist/build/Control/Monad/Levels/Internal.o, dist/build/Control/Monad/Levels/Internal.dyn_o )
[16 of 71] Compiling Control.Monad.Levels ( src/Control/Monad/Levels.hs, dist/build/Control/Monad/Levels.o, dist/build/Control/Monad/Levels.dyn_o )
[17 of 71] Compiling Data.Type.List   ( src/Data/Type/List.hs, dist/build/Data/Type/List.o, dist/build/Data/Type/List.dyn_o )
[18 of 71] Compiling Data.Type.Rec    ( src/Data/Type/Rec.hs, dist/build/Data/Type/Rec.o, dist/build/Data/Type/Rec.dyn_o )
[19 of 71] Compiling Data.Fingerprint ( src/Data/Fingerprint.hs, dist/build/Data/Fingerprint.o, dist/build/Data/Fingerprint.dyn_o )
[20 of 71] Compiling Data.World       ( src/Data/World.hs, dist/build/Data/World.o, dist/build/Data/World.dyn_o )
[21 of 71] Compiling Language.Spectacle.Exception.RuntimeException ( src/Language/Spectacle/Exception/RuntimeException.hs, dist/build/Language/Spectacle/Exception/RuntimeException.o, dist/build/Language/Spectacle/Exception/RuntimeException.dyn_o )
[22 of 71] Compiling Language.Spectacle.Fairness ( src/Language/Spectacle/Fairness.hs, dist/build/Language/Spectacle/Fairness.o, dist/build/Language/Spectacle/Fairness.dyn_o )

src/Language/Spectacle/Fairness.hs:40:40: error:
    • Syntax error on 'StrongFair
      Perhaps you intended to use TemplateHaskell or TemplateHaskellQuotes
    • In the Template Haskell quotation 'StrongFair
   |
40 |     strongTyCon = someTypeRep (Proxy @ 'StrongFair)
   |                                        ^^^^^^^^^^^
[23 of 71] Compiling Language.Spectacle.Interaction.Doc ( src/Language/Spectacle/Interaction/Doc.hs, dist/build/Language/Spectacle/Interaction/Doc.o, dist/build/Language/Spectacle/Interaction/Doc.dyn_o )
[24 of 71] Compiling Language.Spectacle.Interaction.Options ( src/Language/Spectacle/Interaction/Options.hs, dist/build/Language/Spectacle/Interaction/Options.o, dist/build/Language/Spectacle/Interaction/Options.dyn_o )
[25 of 71] Compiling Language.Spectacle.Interaction.CLI ( src/Language/Spectacle/Interaction/CLI.hs, dist/build/Language/Spectacle/Interaction/CLI.o, dist/build/Language/Spectacle/Interaction/CLI.dyn_o )
[26 of 71] Compiling Language.Spectacle.Interaction.Pos ( src/Language/Spectacle/Interaction/Pos.hs, dist/build/Language/Spectacle/Interaction/Pos.o, dist/build/Language/Spectacle/Interaction/Pos.dyn_o )
[27 of 71] Compiling Language.Spectacle.Interaction.Point ( src/Language/Spectacle/Interaction/Point.hs, dist/build/Language/Spectacle/Interaction/Point.o, dist/build/Language/Spectacle/Interaction/Point.dyn_o )
[30 of 71] Compiling Language.Spectacle.Lang.Op ( src/Language/Spectacle/Lang/Op.hs, dist/build/Language/Spectacle/Lang/Op.o, dist/build/Language/Spectacle/Lang/Op.dyn_o )
[31 of 71] Compiling Language.Spectacle.Lang.Scoped ( src/Language/Spectacle/Lang/Scoped.hs, dist/build/Language/Spectacle/Lang/Scoped.o, dist/build/Language/Spectacle/Lang/Scoped.dyn_o )
[32 of 71] Compiling Language.Spectacle.Lang.Member ( src/Language/Spectacle/Lang/Member.hs, dist/build/Language/Spectacle/Lang/Member.o, dist/build/Language/Spectacle/Lang/Member.dyn_o )
[33 of 71] Compiling Language.Spectacle.Model.ModelNode ( src/Language/Spectacle/Model/ModelNode.hs, dist/build/Language/Spectacle/Model/ModelNode.o, dist/build/Language/Spectacle/Model/ModelNode.dyn_o )
[34 of 71] Compiling Language.Spectacle.Model.ModelState ( src/Language/Spectacle/Model/ModelState.hs, dist/build/Language/Spectacle/Model/ModelState.o, dist/build/Language/Spectacle/Model/ModelState.dyn_o )
[35 of 71] Compiling Language.Spectacle.Syntax.NonDet.Internal ( src/Language/Spectacle/Syntax/NonDet/Internal.hs, dist/build/Language/Spectacle/Syntax/NonDet/Internal.o, dist/build/Language/Spectacle/Syntax/NonDet/Internal.dyn_o )
[36 of 71] Compiling Language.Spectacle.Lang.Internal ( src/Language/Spectacle/Lang/Internal.hs, dist/build/Language/Spectacle/Lang/Internal.o, dist/build/Language/Spectacle/Lang/Internal.dyn_o )
[37 of 71] Compiling Language.Spectacle.Lang ( src/Language/Spectacle/Lang.hs, dist/build/Language/Spectacle/Lang.o, dist/build/Language/Spectacle/Lang.dyn_o )
[38 of 71] Compiling Language.Spectacle.Syntax.NonDet ( src/Language/Spectacle/Syntax/NonDet.hs, dist/build/Language/Spectacle/Syntax/NonDet.o, dist/build/Language/Spectacle/Syntax/NonDet.dyn_o )
[39 of 71] Compiling Language.Spectacle.Syntax.Logic.Internal ( src/Language/Spectacle/Syntax/Logic/Internal.hs, dist/build/Language/Spectacle/Syntax/Logic/Internal.o, dist/build/Language/Spectacle/Syntax/Logic/Internal.dyn_o )
[40 of 71] Compiling Language.Spectacle.Syntax.Error.Internal ( src/Language/Spectacle/Syntax/Error/Internal.hs, dist/build/Language/Spectacle/Syntax/Error/Internal.o, dist/build/Language/Spectacle/Syntax/Error/Internal.dyn_o )
[41 of 71] Compiling Language.Spectacle.Syntax.Error ( src/Language/Spectacle/Syntax/Error.hs, dist/build/Language/Spectacle/Syntax/Error.o, dist/build/Language/Spectacle/Syntax/Error.dyn_o )
[42 of 71] Compiling Language.Spectacle.Syntax.Logic ( src/Language/Spectacle/Syntax/Logic.hs, dist/build/Language/Spectacle/Syntax/Logic.o, dist/build/Language/Spectacle/Syntax/Logic.dyn_o )
[43 of 71] Compiling Language.Spectacle.Syntax.Enabled.Internal ( src/Language/Spectacle/Syntax/Enabled/Internal.hs, dist/build/Language/Spectacle/Syntax/Enabled/Internal.o, dist/build/Language/Spectacle/Syntax/Enabled/Internal.dyn_o )
[44 of 71] Compiling Language.Spectacle.Syntax.Enabled ( src/Language/Spectacle/Syntax/Enabled.hs, dist/build/Language/Spectacle/Syntax/Enabled.o, dist/build/Language/Spectacle/Syntax/Enabled.dyn_o )
[45 of 71] Compiling Language.Spectacle.Specification.Variable ( src/Language/Spectacle/Specification/Variable.hs, dist/build/Language/Spectacle/Specification/Variable.o, dist/build/Language/Spectacle/Specification/Variable.dyn_o )
[46 of 71] Compiling Language.Spectacle.Syntax.Plain.Internal ( src/Language/Spectacle/Syntax/Plain/Internal.hs, dist/build/Language/Spectacle/Syntax/Plain/Internal.o, dist/build/Language/Spectacle/Syntax/Plain/Internal.dyn_o )
[47 of 71] Compiling Language.Spectacle.Syntax.Plain ( src/Language/Spectacle/Syntax/Plain.hs, dist/build/Language/Spectacle/Syntax/Plain.o, dist/build/Language/Spectacle/Syntax/Plain.dyn_o )
[48 of 71] Compiling Language.Spectacle.Syntax.Prime.Internal ( src/Language/Spectacle/Syntax/Prime/Internal.hs, dist/build/Language/Spectacle/Syntax/Prime/Internal.o, dist/build/Language/Spectacle/Syntax/Prime/Internal.dyn_o )
[49 of 71] Compiling Language.Spectacle.RTS.Registers ( src/Language/Spectacle/RTS/Registers.hs, dist/build/Language/Spectacle/RTS/Registers.o, dist/build/Language/Spectacle/RTS/Registers.dyn_o )
[50 of 71] Compiling Language.Spectacle.Syntax.Env.Internal ( src/Language/Spectacle/Syntax/Env/Internal.hs, dist/build/Language/Spectacle/Syntax/Env/Internal.o, dist/build/Language/Spectacle/Syntax/Env/Internal.dyn_o )
[51 of 71] Compiling Language.Spectacle.Syntax.Env ( src/Language/Spectacle/Syntax/Env.hs, dist/build/Language/Spectacle/Syntax/Env.o, dist/build/Language/Spectacle/Syntax/Env.dyn_o )
[52 of 71] Compiling Language.Spectacle.Syntax.Prime ( src/Language/Spectacle/Syntax/Prime.hs, dist/build/Language/Spectacle/Syntax/Prime.o, dist/build/Language/Spectacle/Syntax/Prime.dyn_o )
[53 of 71] Compiling Language.Spectacle.AST.Temporal ( src/Language/Spectacle/AST/Temporal.hs, dist/build/Language/Spectacle/AST/Temporal.o, dist/build/Language/Spectacle/AST/Temporal.dyn_o )
[54 of 71] Compiling Language.Spectacle.Specification.Prop ( src/Language/Spectacle/Specification/Prop.hs, dist/build/Language/Spectacle/Specification/Prop.o, dist/build/Language/Spectacle/Specification/Prop.dyn_o )
[55 of 71] Compiling Language.Spectacle.Model.ModelError ( src/Language/Spectacle/Model/ModelError.hs, dist/build/Language/Spectacle/Model/ModelError.o, dist/build/Language/Spectacle/Model/ModelError.dyn_o )
[56 of 71] Compiling Language.Spectacle.Model.ModelTemporal ( src/Language/Spectacle/Model/ModelTemporal.hs, dist/build/Language/Spectacle/Model/ModelTemporal.o, dist/build/Language/Spectacle/Model/ModelTemporal.dyn_o )
[57 of 71] Compiling Language.Spectacle.Syntax.Closure.Internal ( src/Language/Spectacle/Syntax/Closure/Internal.hs, dist/build/Language/Spectacle/Syntax/Closure/Internal.o, dist/build/Language/Spectacle/Syntax/Closure/Internal.dyn_o )
[58 of 71] Compiling Language.Spectacle.Syntax.Closure ( src/Language/Spectacle/Syntax/Closure.hs, dist/build/Language/Spectacle/Syntax/Closure.o, dist/build/Language/Spectacle/Syntax/Closure.dyn_o )
[59 of 71] Compiling Language.Spectacle.Syntax.Quantifier.Internal ( src/Language/Spectacle/Syntax/Quantifier/Internal.hs, dist/build/Language/Spectacle/Syntax/Quantifier/Internal.o, dist/build/Language/Spectacle/Syntax/Quantifier/Internal.dyn_o )
[60 of 71] Compiling Language.Spectacle.Syntax.Quantifier ( src/Language/Spectacle/Syntax/Quantifier.hs, dist/build/Language/Spectacle/Syntax/Quantifier.o, dist/build/Language/Spectacle/Syntax/Quantifier.dyn_o )
[61 of 71] Compiling Language.Spectacle.Syntax ( src/Language/Spectacle/Syntax.hs, dist/build/Language/Spectacle/Syntax.o, dist/build/Language/Spectacle/Syntax.dyn_o )
[62 of 71] Compiling Language.Spectacle.AST.Action ( src/Language/Spectacle/AST/Action.hs, dist/build/Language/Spectacle/AST/Action.o, dist/build/Language/Spectacle/AST/Action.dyn_o )
[67 of 71] Compiling Language.Spectacle.AST ( src/Language/Spectacle/AST.hs, dist/build/Language/Spectacle/AST.o, dist/build/Language/Spectacle/AST.dyn_o )
[68 of 71] Compiling Language.Spectacle.Model.ModelAction ( src/Language/Spectacle/Model/ModelAction.hs, dist/build/Language/Spectacle/Model/ModelAction.o, dist/build/Language/Spectacle/Model/ModelAction.dyn_o )

Seems like the 9.0 syntax / type checking changes.

sternenseemann added a commit to NixOS/nixpkgs that referenced this issue Apr 29, 2022
Closes #135145.

GHC >= 9.0 is unsupported at this moment (same goes for 8.8.4):
awakesecurity/spectacle#49
@riz0id
Copy link
Collaborator

riz0id commented Jan 10, 2023

Thanks! This has been fixed by #52 and #54.

@riz0id riz0id closed this as completed Jan 10, 2023
@sternenseemann
Copy link
Author

Would be great to have this released to hackage as well. What's the situation with 9.2 like?

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

2 participants