Cabal sets an ExitFailure 1 roll when creating a Yesod project

I am new to web development and Haskell frameworks and I am following this tutorial . I created yesod init

to create a project. Then I cd'd into the project folder and ran:

$ cabal sandbox init
$ cabal install --enable-tests --reorder-goals --max-backjumps=-1 -j

      

I ran into several dependency issues here and there, but figured everything out so far. Now I ran into an error during the build process and I cannot find any answers or fixes. The build process ends abruptly with ExitFailure 1

.

Here is the complete error message:

Model.hs:13:1:
Illegal instance declaration for
  ‘ToBackendKey
     persistent-2.0.8:Database.Persist.Sql.Types.SqlBackend Email’
  (All instance types must be of the form (T t1 ... tn)
   where T is not a synonym.
   Use TypeSynonymInstances if you want to disable this.)
In the instance declaration for
  ‘ToBackendKey persistent-2.0.8:Database.Persist.Sql.Types.SqlBackend Email’

Model.hs:13:1:
Illegal instance declaration for
  ‘ToBackendKey
     persistent-2.0.8:Database.Persist.Sql.Types.SqlBackend User
  (All instance types must be of the form (T t1 ... tn)
   where T is not a synonym.
   Use TypeSynonymInstances if you want to disable this.)
In the instance declaration for
  ‘ToBackendKey persistent-2.0.8:Database.Persist.Sql.Types.SqlBackend User
cabal: Error: some packages failed to install:
Wordscape-0.0.0 failed during the building phase. The exception was:
ExitFailure 1

      

Has anyone else encountered such an error / knew how to fix it? Any help would be greatly appreciated. Thank!

+3


source to share


1 answer


addition

{-# LANGUAGE TypeSynonymInstances #-}

      



at the top of Model.hs should fix this, as it did when upgrading to persistent-2.1 (although you might not be able to do this until tomorrow).

+4


source







All Articles