Resolving dependencies... Configuring dlist-0.8.0.2... Configuring base-compat-0.9.1... Building dlist-0.8.0.2... Building base-compat-0.9.1... Configuring primitive-0.6.1.0... Installed dlist-0.8.0.2 Building primitive-0.6.1.0... Configuring safe-0.3.10... Installed base-compat-0.9.1 Building safe-0.3.10... Configuring mtl-2.2.1... Installed safe-0.3.10 Building mtl-2.2.1... Configuring time-locale-compat-0.1.1.3... Installed primitive-0.6.1.0 Building time-locale-compat-0.1.1.3... Configuring text-1.2.2.1... Installed time-locale-compat-0.1.1.3 Building text-1.2.2.1... Configuring transformers-compat-0.5.1.4... Installed mtl-2.2.1 Building transformers-compat-0.5.1.4... Installed transformers-compat-0.5.1.4 Configuring vector-0.11.0.0... Building vector-0.11.0.0... Configuring tagged-0.8.5... Installed text-1.2.2.1 Building tagged-0.8.5... Installed tagged-0.8.5 Configuring hashable-1.2.4.0... Building hashable-1.2.4.0... Installed hashable-1.2.4.0 Configuring unordered-containers-0.2.7.1... Building unordered-containers-0.2.7.1... Installed vector-0.11.0.0 Configuring scientific-0.3.4.9... Building scientific-0.3.4.9... Installed unordered-containers-0.2.7.1 Installed scientific-0.3.4.9 Configuring attoparsec-0.13.1.0... Building attoparsec-0.13.1.0... Installed attoparsec-0.13.1.0 Configuring aeson-1.0.2.1... Building aeson-1.0.2.1... Installed aeson-1.0.2.1 Configuring t3-game-0.1.0.0... Building t3-game-0.1.0.0... Failed to install t3-game-0.1.0.0 Build log ( /home/builder/.cabal/logs/t3-game-0.1.0.0.log ): cabal: Entering directory '/tmp/cabal-tmp-28337/t3-game-0.1.0.0' Configuring t3-game-0.1.0.0... Building t3-game-0.1.0.0... Preprocessing library t3-game-0.1.0.0... [1 of 5] Compiling T3.Game.Types ( src/T3/Game/Types.hs, dist/build/T3/Game/Types.o ) [2 of 5] Compiling T3.Game.Core ( src/T3/Game/Core.hs, dist/build/T3/Game/Core.o ) src/T3/Game/Core.hs:128:10: error: • Overlapping instances for FromJSON (Maybe XO) arising from a use of ‘aeson-1.0.2.1:Data.Aeson.Types.FromJSON.$dmparseJSONList’ Matching instances: instance FromJSON a => FromJSON (Maybe a) -- Defined in ‘aeson-1.0.2.1:Data.Aeson.Types.FromJSON’ instance FromJSON (Maybe XO) -- Defined at src/T3/Game/Core.hs:128:10 • In the expression: aeson-1.0.2.1:Data.Aeson.Types.FromJSON.$dmparseJSONList @Maybe XO In an equation for ‘parseJSONList’: parseJSONList = aeson-1.0.2.1:Data.Aeson.Types.FromJSON.$dmparseJSONList @Maybe XO In the instance declaration for ‘FromJSON (Maybe XO)’ src/T3/Game/Core.hs:137:34: error: • Overlapping instances for FromJSON (Maybe XO) arising from a use of ‘parseJSON’ Matching instances: instance FromJSON a => FromJSON (Maybe a) -- Defined in ‘aeson-1.0.2.1:Data.Aeson.Types.FromJSON’ instance FromJSON (Maybe XO) -- Defined at src/T3/Game/Core.hs:128:10 • In a stmt of a 'do' block: cells :: [[Maybe XO]] <- parseJSON o In the expression: do { cells :: [[Maybe XO]] <- parseJSON o; let correctRowSize = length cells == size; let correctColSize = and $ map ((== size) . length) cells; let pairs = ...; .... } In an equation for ‘board’: board o = do { cells :: [[Maybe XO]] <- parseJSON o; let correctRowSize = ...; let correctColSize = ...; .... } cabal: Leaving directory '/tmp/cabal-tmp-28337/t3-game-0.1.0.0' cabal: Error: some packages failed to install: t3-game-0.1.0.0 failed during the building phase. The exception was: ExitFailure 1