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

fails to build with aeson-2.0 #319

Closed
juhp opened this issue Nov 29, 2021 · 7 comments · Fixed by #320
Closed

fails to build with aeson-2.0 #319

juhp opened this issue Nov 29, 2021 · 7 comments · Fixed by #320
Labels
type: bug Something isn't working

Comments

@juhp
Copy link

juhp commented Nov 29, 2021

hie-bios                  > /tmp/stack-528b636c05347c2c/hie-bios-0.7.6/src/HIE/Bios/Config.hs:137:38: error:
hie-bios                  >     • Couldn't match type: Data.Aeson.KeyMap.KeyMap Value
hie-bios                  >                      with: Map.HashMap k8 Value
hie-bios                  >       Expected: Map.HashMap k8 Value
hie-bios                  >         Actual: Object
hie-bios                  >     • In the second argument of ‘Map.lookup’, namely ‘o’
hie-bios                  >       In a stmt of a pattern guard for
hie-bios                  >                      an equation for ‘parseCradleType’:
hie-bios                  >         Just val <- Map.lookup "cabal" o
hie-bios                  >       In an equation for ‘parseCradleType’:
hie-bios                  >           parseCradleType o
hie-bios                  >             | Just val <- Map.lookup "cabal" o = parseCabal val
hie-bios                  >             | Just val <- Map.lookup "stack" o = parseStack val
hie-bios                  >             | Just val <- Map.lookup "bios" o = parseBios val
hie-bios                  >             | Just val <- Map.lookup "direct" o = parseDirect val
hie-bios                  >             | Just _val <- Map.lookup "none" o = return None
hie-bios                  >             | Just val <- Map.lookup "multi" o = parseMulti val
hie-bios                  >             | Just val <- Map.lookup "other" o
hie-bios                  >             = Other <$> parseJSON val <*> pure val
hie-bios                  >     |
hie-bios                  > 137 |     | Just val <- Map.lookup "cabal" o = parseCabal val
hie-bios                  >     |                                      ^
hie-bios                  > 
hie-bios                  > /tmp/stack-528b636c05347c2c/hie-bios-0.7.6/src/HIE/Bios/Config.hs:138:38: error:
hie-bios                  >     • Couldn't match type: Data.Aeson.KeyMap.KeyMap Value
hie-bios                  >                      with: Map.HashMap k9 Value
hie-bios                  >       Expected: Map.HashMap k9 Value
hie-bios                  >         Actual: Object
hie-bios                  >     • In the second argument of ‘Map.lookup’, namely ‘o’
hie-bios                  >       In a stmt of a pattern guard for
hie-bios                  >                      an equation for ‘parseCradleType’:
hie-bios                  >         Just val <- Map.lookup "stack" o
hie-bios                  >       In an equation for ‘parseCradleType’:
hie-bios                  >           parseCradleType o
hie-bios                  >             | Just val <- Map.lookup "cabal" o = parseCabal val
hie-bios                  >             | Just val <- Map.lookup "stack" o = parseStack val
hie-bios                  >             | Just val <- Map.lookup "bios" o = parseBios val
hie-bios                  >             | Just val <- Map.lookup "direct" o = parseDirect val
hie-bios                  >             | Just _val <- Map.lookup "none" o = return None
hie-bios                  >             | Just val <- Map.lookup "multi" o = parseMulti val
hie-bios                  >             | Just val <- Map.lookup "other" o
hie-bios                  >             = Other <$> parseJSON val <*> pure val
hie-bios                  >     |
hie-bios                  > 138 |     | Just val <- Map.lookup "stack" o = parseStack val
hie-bios                  >     |                                      ^
hie-bios                  > 
hie-bios                  > /tmp/stack-528b636c05347c2c/hie-bios-0.7.6/src/HIE/Bios/Config.hs:141:37: error:
hie-bios                  >     • Couldn't match type: Data.Aeson.KeyMap.KeyMap Value
hie-bios                  >                      with: Map.HashMap k10 Value
hie-bios                  >       Expected: Map.HashMap k10 Value
hie-bios                  >         Actual: Object
hie-bios                  >     • In the second argument of ‘Map.lookup’, namely ‘o’
hie-bios                  >       In a stmt of a pattern guard for
hie-bios                  >                      an equation for ‘parseCradleType’:
hie-bios                  >         Just val <- Map.lookup "bios" o
hie-bios                  >       In an equation for ‘parseCradleType’:
hie-bios                  >           parseCradleType o
hie-bios                  >             | Just val <- Map.lookup "cabal" o = parseCabal val
hie-bios                  >             | Just val <- Map.lookup "stack" o = parseStack val
hie-bios                  >             | Just val <- Map.lookup "bios" o = parseBios val
hie-bios                  >             | Just val <- Map.lookup "direct" o = parseDirect val
hie-bios                  >             | Just _val <- Map.lookup "none" o = return None
hie-bios                  >             | Just val <- Map.lookup "multi" o = parseMulti val
hie-bios                  >             | Just val <- Map.lookup "other" o
hie-bios                  >             = Other <$> parseJSON val <*> pure val
hie-bios                  >     |
hie-bios                  > 141 |     | Just val <- Map.lookup "bios" o = parseBios val
hie-bios                  >     |                                     ^
hie-bios                  > 
hie-bios                  > /tmp/stack-528b636c05347c2c/hie-bios-0.7.6/src/HIE/Bios/Config.hs:142:39: error:
hie-bios                  >     • Couldn't match type: Data.Aeson.KeyMap.KeyMap Value
hie-bios                  >                      with: Map.HashMap k11 Value
hie-bios                  >       Expected: Map.HashMap k11 Value
hie-bios                  >         Actual: Object
hie-bios                  >     • In the second argument of ‘Map.lookup’, namely ‘o’
hie-bios                  >       In a stmt of a pattern guard for
hie-bios                  >                      an equation for ‘parseCradleType’:
hie-bios                  >         Just val <- Map.lookup "direct" o
hie-bios                  >       In an equation for ‘parseCradleType’:
hie-bios                  >           parseCradleType o
hie-bios                  >             | Just val <- Map.lookup "cabal" o = parseCabal val
hie-bios                  >             | Just val <- Map.lookup "stack" o = parseStack val
hie-bios                  >             | Just val <- Map.lookup "bios" o = parseBios val
hie-bios                  >             | Just val <- Map.lookup "direct" o = parseDirect val
hie-bios                  >             | Just _val <- Map.lookup "none" o = return None
hie-bios                  >             | Just val <- Map.lookup "multi" o = parseMulti val
hie-bios                  >             | Just val <- Map.lookup "other" o
hie-bios                  >             = Other <$> parseJSON val <*> pure val
hie-bios                  >     |
hie-bios                  > 142 |     | Just val <- Map.lookup "direct" o = parseDirect val
hie-bios                  >     |                                       ^
hie-bios                  > 
hie-bios                  > /tmp/stack-528b636c05347c2c/hie-bios-0.7.6/src/HIE/Bios/Config.hs:143:38: error:
hie-bios                  >     • Couldn't match type: Data.Aeson.KeyMap.KeyMap Value
hie-bios                  >                      with: Map.HashMap k12 v3
hie-bios                  >       Expected: Map.HashMap k12 v3
hie-bios                  >         Actual: Object
hie-bios                  >     • In the second argument of ‘Map.lookup’, namely ‘o’
hie-bios                  >       In a stmt of a pattern guard for
hie-bios                  >                      an equation for ‘parseCradleType’:
hie-bios                  >         Just _val <- Map.lookup "none" o
hie-bios                  >       In an equation for ‘parseCradleType’:
hie-bios                  >           parseCradleType o
hie-bios                  >             | Just val <- Map.lookup "cabal" o = parseCabal val
hie-bios                  >             | Just val <- Map.lookup "stack" o = parseStack val
hie-bios                  >             | Just val <- Map.lookup "bios" o = parseBios val
hie-bios                  >             | Just val <- Map.lookup "direct" o = parseDirect val
hie-bios                  >             | Just _val <- Map.lookup "none" o = return None
hie-bios                  >             | Just val <- Map.lookup "multi" o = parseMulti val
hie-bios                  >             | Just val <- Map.lookup "other" o
hie-bios                  >             = Other <$> parseJSON val <*> pure val
hie-bios                  >     |
hie-bios                  > 143 |     | Just _val <- Map.lookup "none" o = return None
hie-bios                  >     |                                      ^
hie-bios                  > 
hie-bios                  > /tmp/stack-528b636c05347c2c/hie-bios-0.7.6/src/HIE/Bios/Config.hs:144:39: error:
hie-bios                  >     • Couldn't match type: Data.Aeson.KeyMap.KeyMap Value
hie-bios                  >                      with: Map.HashMap k13 Value
hie-bios                  >       Expected: Map.HashMap k13 Value
hie-bios                  >         Actual: Object
hie-bios                  >     • In the second argument of ‘Map.lookup’, namely ‘o’
hie-bios                  >       In a stmt of a pattern guard for
hie-bios                  >                      an equation for ‘parseCradleType’:
hie-bios                  >         Just val <- Map.lookup "multi" o
hie-bios                  >       In an equation for ‘parseCradleType’:
hie-bios                  >           parseCradleType o
hie-bios                  >             | Just val <- Map.lookup "cabal" o = parseCabal val
hie-bios                  >             | Just val <- Map.lookup "stack" o = parseStack val
hie-bios                  >             | Just val <- Map.lookup "bios" o = parseBios val
hie-bios                  >             | Just val <- Map.lookup "direct" o = parseDirect val
hie-bios                  >             | Just _val <- Map.lookup "none" o = return None
hie-bios                  >             | Just val <- Map.lookup "multi" o = parseMulti val
hie-bios                  >             | Just val <- Map.lookup "other" o
hie-bios                  >             = Other <$> parseJSON val <*> pure val
hie-bios                  >     |
hie-bios                  > 144 |     | Just val  <- Map.lookup "multi" o = parseMulti val
hie-bios                  >     |                                       ^
hie-bios                  > 
hie-bios                  > /tmp/stack-528b636c05347c2c/hie-bios-0.7.6/src/HIE/Bios/Config.hs:145:39: error:
hie-bios                  >     • Couldn't match type: Data.Aeson.KeyMap.KeyMap Value
hie-bios                  >                      with: Map.HashMap k14 Value
hie-bios                  >       Expected: Map.HashMap k14 Value
hie-bios                  >         Actual: Object
hie-bios                  >     • In the second argument of ‘Map.lookup’, namely ‘o’
hie-bios                  >       In a stmt of a pattern guard for
hie-bios                  >                      an equation for ‘parseCradleType’:
hie-bios                  >         Just val <- Map.lookup "other" o
hie-bios                  >       In an equation for ‘parseCradleType’:
hie-bios                  >           parseCradleType o
hie-bios                  >             | Just val <- Map.lookup "cabal" o = parseCabal val
hie-bios                  >             | Just val <- Map.lookup "stack" o = parseStack val
hie-bios                  >             | Just val <- Map.lookup "bios" o = parseBios val
hie-bios                  >             | Just val <- Map.lookup "direct" o = parseDirect val
hie-bios                  >             | Just _val <- Map.lookup "none" o = return None
hie-bios                  >             | Just val <- Map.lookup "multi" o = parseMulti val
hie-bios                  >             | Just val <- Map.lookup "other" o
hie-bios                  >             = Other <$> parseJSON val <*> pure val
hie-bios                  >     |
hie-bios                  > 145 |     | Just val  <- Map.lookup "other" o = Other <$> parseJSON val <*> pure val
hie-bios                  >     |                                       ^
hie-bios                  > 
hie-bios                  > /tmp/stack-528b636c05347c2c/hie-bios-0.7.6/src/HIE/Bios/Config.hs:158:53: error:
hie-bios                  >     • Couldn't match type: Data.Aeson.KeyMap.KeyMap Value
hie-bios                  >                      with: Map.HashMap k4 Value
hie-bios                  >       Expected: Map.HashMap k4 Value
hie-bios                  >         Actual: Object
hie-bios                  >     • In the second argument of ‘Map.lookup’, namely ‘v’
hie-bios                  >       In a stmt of a pattern guard for
hie-bios                  >                      an equation for ‘parseOne’:
hie-bios                  >         Just (String prefix) <- Map.lookup "path" v
hie-bios                  >       In an equation for ‘parseOne’:
hie-bios                  >           parseOne e
hie-bios                  >             | Object v <- e, Just (String prefix) <- Map.lookup "path" v
hie-bios                  >             = (T.unpack prefix,) <$> parse (Map.delete "path" v)
hie-bios                  >             | otherwise = fail "Expected an object with a path key"
hie-bios                  >     |
hie-bios                  > 158 |         , Just (String prefix) <- Map.lookup "path" v
hie-bios                  >     |                                                     ^
hie-bios                  > 
hie-bios                  > /tmp/stack-528b636c05347c2c/hie-bios-0.7.6/src/HIE/Bios/Config.hs:159:59: error:
hie-bios                  >     • Couldn't match type: Data.Aeson.KeyMap.KeyMap Value
hie-bios                  >                      with: Map.HashMap T.Text Value
hie-bios                  >       Expected: Map.HashMap T.Text Value
hie-bios                  >         Actual: Object
hie-bios                  >     • In the second argument of ‘Map.delete’, namely ‘v’
hie-bios                  >       In the first argument of ‘parse’, namely ‘(Map.delete "path" v)’
hie-bios                  >       In the second argument of ‘(<$>)’, namely
hie-bios                  >         ‘parse (Map.delete "path" v)’
hie-bios                  >     |
hie-bios                  > 159 |         = (T.unpack prefix,) <$> parse (Map.delete "path" v)
hie-bios                  >     |                                                           ^
hie-bios                  > 
hie-bios                  > /tmp/stack-528b636c05347c2c/hie-bios-0.7.6/src/HIE/Bios/Config.hs:164:53: error:
hie-bios                  >     • Couldn't match type: Data.Aeson.KeyMap.KeyMap Value
hie-bios                  >                      with: Map.HashMap k5 Value
hie-bios                  >       Expected: Map.HashMap k5 Value
hie-bios                  >         Actual: Object
hie-bios                  >     • In the second argument of ‘Map.lookup’, namely ‘v’
hie-bios                  >       In a stmt of a pattern guard for
hie-bios                  >                      an equation for ‘doParse’:
hie-bios                  >         Just (Array x) <- Map.lookup "components" v
hie-bios                  >       In an equation for ‘doParse’:
hie-bios                  >           doParse (Object v)
hie-bios                  >             | Just (Array x) <- Map.lookup "components" v
hie-bios                  >             = do d <- parse (Map.delete "components" v)
hie-bios                  >                  xs <- parseArray x
hie-bios                  >                  return $ multiple d xs
hie-bios                  >             | Just _ <- Map.lookup "components" v
hie-bios                  >             = fail "Expected components to be an array of subcomponents"
hie-bios                  >             | Nothing <- Map.lookup "components" v = single <$> parse v
hie-bios                  >     |
hie-bios                  > 164 |         | Just (Array x) <- Map.lookup "components" v
hie-bios                  >     |                                                     ^
hie-bios                  > 
hie-bios                  > /tmp/stack-528b636c05347c2c/hie-bios-0.7.6/src/HIE/Bios/Config.hs:166:49: error:
hie-bios                  >     • Couldn't match type: Data.Aeson.KeyMap.KeyMap Value
hie-bios                  >                      with: Map.HashMap T.Text Value
hie-bios                  >       Expected: Map.HashMap T.Text Value
hie-bios                  >         Actual: Object
hie-bios                  >     • In the second argument of ‘Map.delete’, namely ‘v’
hie-bios                  >       In the first argument of ‘parse’, namely
hie-bios                  >         ‘(Map.delete "components" v)’
hie-bios                  >       In a stmt of a 'do' block: d <- parse (Map.delete "components" v)
hie-bios                  >     |
hie-bios                  > 166 |             d <- parse (Map.delete "components" v)
hie-bios                  >     |                                                 ^
hie-bios                  > 
hie-bios                  > /tmp/stack-528b636c05347c2c/hie-bios-0.7.6/src/HIE/Bios/Config.hs:169:45: error:
hie-bios                  >     • Couldn't match type: Data.Aeson.KeyMap.KeyMap Value
hie-bios                  >                      with: Map.HashMap k6 v1
hie-bios                  >       Expected: Map.HashMap k6 v1
hie-bios                  >         Actual: Object
hie-bios                  >     • In the second argument of ‘Map.lookup’, namely ‘v’
hie-bios                  >       In a stmt of a pattern guard for
hie-bios                  >                      an equation for ‘doParse’:
hie-bios                  >         Just _ <- Map.lookup "components" v
hie-bios                  >       In an equation for ‘doParse’:
hie-bios                  >           doParse (Object v)
hie-bios                  >             | Just (Array x) <- Map.lookup "components" v
hie-bios                  >             = do d <- parse (Map.delete "components" v)
hie-bios                  >                  xs <- parseArray x
hie-bios                  >                  return $ multiple d xs
hie-bios                  >             | Just _ <- Map.lookup "components" v
hie-bios                  >             = fail "Expected components to be an array of subcomponents"
hie-bios                  >             | Nothing <- Map.lookup "components" v = single <$> parse v
hie-bios                  >     |
hie-bios                  > 169 |         | Just _ <- Map.lookup "components" v
hie-bios                  >     |                                             ^
hie-bios                  > 
hie-bios                  > /tmp/stack-528b636c05347c2c/hie-bios-0.7.6/src/HIE/Bios/Config.hs:171:46: error:
hie-bios                  >     • Couldn't match type: Data.Aeson.KeyMap.KeyMap Value
hie-bios                  >                      with: Map.HashMap k7 v2
hie-bios                  >       Expected: Map.HashMap k7 v2
hie-bios                  >         Actual: Object
hie-bios                  >     • In the second argument of ‘Map.lookup’, namely ‘v’
hie-bios                  >       In a stmt of a pattern guard for
hie-bios                  >                      an equation for ‘doParse’:
hie-bios                  >         Nothing <- Map.lookup "components" v
hie-bios                  >       In an equation for ‘doParse’:
hie-bios                  >           doParse (Object v)
hie-bios                  >             | Just (Array x) <- Map.lookup "components" v
hie-bios                  >             = do d <- parse (Map.delete "components" v)
hie-bios                  >                  xs <- parseArray x
hie-bios                  >                  return $ multiple d xs
hie-bios                  >             | Just _ <- Map.lookup "components" v
hie-bios                  >             = fail "Expected components to be an array of subcomponents"
hie-bios                  >             | Nothing <- Map.lookup "components" v = single <$> parse v
hie-bios                  >     |
hie-bios                  > 171 |         | Nothing <- Map.lookup "components" v
hie-bios                  >     |                                              ^
hie-bios                  > 
hie-bios                  > /tmp/stack-528b636c05347c2c/hie-bios-0.7.6/src/HIE/Bios/Config.hs:172:28: error:
hie-bios                  >     • Couldn't match type: Data.Aeson.KeyMap.KeyMap Value
hie-bios                  >                      with: Map.HashMap T.Text Value
hie-bios                  >       Expected: Map.HashMap T.Text Value
hie-bios                  >         Actual: Object
hie-bios                  >     • In the first argument of ‘parse’, namely ‘v’
hie-bios                  >       In the second argument of ‘(<$>)’, namely ‘parse v’
hie-bios                  >       In the expression: single <$> parse v
hie-bios                  >     |
hie-bios                  > 172 |         = single <$> parse v
hie-bios                  >     |                            ^
hie-bios                  > 
hie-bios                  > /tmp/stack-528b636c05347c2c/hie-bios-0.7.6/src/HIE/Bios/Config.hs:227:94: error:
hie-bios                  >     • Couldn't match type: Data.Aeson.KeyMap.KeyMap Value
hie-bios                  >                      with: Map.HashMap T.Text Value
hie-bios                  >       Expected: Map.HashMap T.Text Value
hie-bios                  >         Actual: Object
hie-bios                  >     • In the second argument of ‘Map.lookup’, namely ‘x’
hie-bios                  >       In the second argument of ‘(=<<)’, namely ‘Map.lookup name x’
hie-bios                  >       In the second argument of ‘(<$>)’, namely
hie-bios                  >         ‘(intoString =<< Map.lookup name x)’
hie-bios                  >     |
hie-bios                  > 227 |         stringTypeFromMap constructor name = constructor <$> (intoString =<< Map.lookup name x)
hie-bios                  >     |                                                                                              ^
hie-bios                  > 
hie-bios                  > /tmp/stack-528b636c05347c2c/hie-bios-0.7.6/src/HIE/Bios/Config.hs:236:16: error:
hie-bios                  >     • Couldn't match type: Data.Aeson.KeyMap.KeyMap Value
hie-bios                  >                      with: Map.HashMap k2 v0
hie-bios                  >       Expected: Map.HashMap k2 v0
hie-bios                  >         Actual: Object
hie-bios                  >     • In the first argument of ‘Map.size’, namely ‘x’
hie-bios                  >       In the first argument of ‘(==)’, namely ‘Map.size x’
hie-bios                  >       In the expression: Map.size x == 1
hie-bios                  >     |
hie-bios                  > 236 |     | Map.size x == 1
hie-bios                  >     |                ^
hie-bios                  > 
hie-bios                  > /tmp/stack-528b636c05347c2c/hie-bios-0.7.6/src/HIE/Bios/Config.hs:237:48: error:
hie-bios                  >     • Couldn't match type: Data.Aeson.KeyMap.KeyMap Value
hie-bios                  >                      with: Map.HashMap k3 Value
hie-bios                  >       Expected: Map.HashMap k3 Value
hie-bios                  >         Actual: Object
hie-bios                  >     • In the second argument of ‘Map.lookup’, namely ‘x’
hie-bios                  >       In a stmt of a pattern guard for
hie-bios                  >                      an equation for ‘parseDirect’:
hie-bios                  >         Just (Array v) <- Map.lookup "arguments" x
hie-bios                  >       In an equation for ‘parseDirect’:
hie-bios                  >           parseDirect (Object x)
hie-bios                  >             | Map.size x == 1, Just (Array v) <- Map.lookup "arguments" x
hie-bios                  >             = return $ Direct [T.unpack s | String s <- V.toList v]
hie-bios                  >             | otherwise
hie-bios                  >             = fail
hie-bios                  >                 "Not a valid Direct Configuration type, following keys are allowed: arguments"
hie-bios                  >     |
hie-bios                  > 237 |     , Just (Array v) <- Map.lookup "arguments" x
hie-bios                  >     |                                                ^
hie-bios                  > 
hie-bios                  > /tmp/stack-528b636c05347c2c/hie-bios-0.7.6/src/HIE/Bios/Config.hs:251:45: error:
hie-bios                  >     • Couldn't match type: Data.Aeson.KeyMap.KeyMap Value
hie-bios                  >                      with: Map.HashMap k0 Value
hie-bios                  >       Expected: Map.HashMap k0 Value
hie-bios                  >         Actual: Object
hie-bios                  >     • In the second argument of ‘Map.lookup’, namely ‘v’
hie-bios                  >       In a stmt of a pattern guard for
hie-bios                  >                      an equation for ‘parsePath’:
hie-bios                  >         Just (String path) <- Map.lookup "path" v
hie-bios                  >       In an equation for ‘parsePath’:
hie-bios                  >           parsePath (Object v)
hie-bios                  >             | Just (String path) <- Map.lookup "path" v,
hie-bios                  >               Just c <- Map.lookup "config" v
hie-bios                  >             = (T.unpack path,) <$> parseJSON c
hie-bios                  >     |
hie-bios                  > 251 |   | Just (String path) <- Map.lookup "path" v
hie-bios                  >     |                                             ^
hie-bios                  > 
hie-bios                  > /tmp/stack-528b636c05347c2c/hie-bios-0.7.6/src/HIE/Bios/Config.hs:252:35: error:
hie-bios                  >     • Couldn't match type: Data.Aeson.KeyMap.KeyMap Value
hie-bios                  >                      with: Map.HashMap k1 Value
hie-bios                  >       Expected: Map.HashMap k1 Value
hie-bios                  >         Actual: Object
hie-bios                  >     • In the second argument of ‘Map.lookup’, namely ‘v’
hie-bios                  >       In a stmt of a pattern guard for
hie-bios                  >                      an equation for ‘parsePath’:
hie-bios                  >         Just c <- Map.lookup "config" v
hie-bios                  >       In an equation for ‘parsePath’:
hie-bios                  >           parsePath (Object v)
hie-bios                  >             | Just (String path) <- Map.lookup "path" v,
hie-bios                  >               Just c <- Map.lookup "config" v
hie-bios                  >             = (T.unpack path,) <$> parseJSON c
hie-bios                  >     |
hie-bios                  > 252 |   , Just c <- Map.lookup "config" v
hie-bios                  >     |                                   ^
hie-bios                  > 
hie-bios                  > /tmp/stack-528b636c05347c2c/hie-bios-0.7.6/src/HIE/Bios/Config.hs:259:38: error:
hie-bios                  >     • Couldn't match type: Data.Aeson.KeyMap.KeyMap Value
hie-bios                  >                      with: Map.HashMap k15 v4
hie-bios                  >       Expected: Map.HashMap k15 v4
hie-bios                  >         Actual: Object
hie-bios                  >     • In the first argument of ‘Map.size’, namely ‘val’
hie-bios                  >       In the expression: Map.size val
hie-bios                  >       In a stmt of a 'do' block:
hie-bios                  >         crdDeps <- case Map.size val of
hie-bios                  >                      1 -> return []
hie-bios                  >                      2 -> val .: "dependencies"
hie-bios                  >                      _ -> fail
hie-bios                  >                             "Unknown key, following keys are allowed: cradle, dependencies"
hie-bios                  >     |
hie-bios                  > 259 |             crdDeps <- case Map.size val of
hie-bios                  >     |                                      ^^^
@jneira jneira added the type: bug Something isn't working label Nov 29, 2021
@jneira
Copy link
Member

jneira commented Nov 29, 2021

Hi, thanks for reporting the build error
Master has support for aeson >= 2.0 with #313 but that change has not been released yet. The build should be succesful in master though.

Otoh hie-bios-0.7.6 in hackage has aeson (>=1.4.5 && <2) and it has no revisions so i guess if your build is using the hackage released version it has an allow-newer which triggers the build error.

So we have to do a new release with the change included

//cc @fendor

@fendor
Copy link
Collaborator

fendor commented Nov 29, 2021

I am on it!

@jneira
Copy link
Member

jneira commented Nov 29, 2021

Great, i guess the work is here: #320

@jneira jneira linked a pull request Nov 29, 2021 that will close this issue
@jneira
Copy link
Member

jneira commented Nov 29, 2021

Pending on hackage release

@jneira jneira reopened this Nov 29, 2021
@fendor
Copy link
Collaborator

fendor commented Nov 29, 2021

Released to hackage. Closing again :D

@fendor fendor closed this as completed Nov 29, 2021
@jneira
Copy link
Member

jneira commented Nov 29, 2021

wow that was lightning fast 😄

what about the stackage release? I dont know if it is automatic or something more needs to be done

@fendor
Copy link
Collaborator

fendor commented Nov 29, 2021

I think that happens semi-automatically, at least until now I never had to do anything else.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type: bug Something isn't working
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants