Skip to content

fails to build with aeson-2.0 #8

@juhp

Description

@juhp
composable-associations-aeson  > Building library for composable-associations-aeson-0.1.0.1..
composable-associations-aeson  > [1 of 1] Compiling Data.ComposableAssociation.Aeson
composable-associations-aeson  > 
composable-associations-aeson  > /tmp/stack-0f0ad492cf5e755a/composable-associations-aeson-0.1.0.1/src/Data/ComposableAssociation/Aeson.hs:45:42: error:
composable-associations-aeson  >     • Couldn't match expected type ‘Key’ with actual type ‘T.Text’
composable-associations-aeson  >     • In the first argument of ‘(.=)’, namely ‘keyName’
composable-associations-aeson  >       In the expression: keyName .= toJSON obj
composable-associations-aeson  >       In the first argument of ‘object’, namely ‘[keyName .= toJSON obj]’
composable-associations-aeson  >    |
composable-associations-aeson  > 45 |   toJSON (Association key obj) = object [keyName .= toJSON obj]
composable-associations-aeson  >    |                                          ^^^^^^^
composable-associations-aeson  > 
composable-associations-aeson  > /tmp/stack-0f0ad492cf5e755a/composable-associations-aeson-0.1.0.1/src/Data/ComposableAssociation/Aeson.hs:49:79: error:
composable-associations-aeson  >     • Couldn't match expected type ‘Key’ with actual type ‘T.Text’
composable-associations-aeson  >     • In the second argument of ‘(.:?)’, namely ‘key’
composable-associations-aeson  >       In the first argument of ‘(.!=)’, namely ‘v' .:? key’
composable-associations-aeson  >       In the first argument of ‘(>>=)’, namely ‘v' .:? key .!= Null’
composable-associations-aeson  >    |
composable-associations-aeson  > 49 |   parseJSON = withObject "Association" $ \v' -> Association proxy <$> (v' .:? key .!= Null >>= parseJSON)
composable-associations-aeson  >    |                                                                               ^^^
composable-associations-aeson  > 
composable-associations-aeson  > /tmp/stack-0f0ad492cf5e755a/composable-associations-aeson-0.1.0.1/src/Data/ComposableAssociation/Aeson.hs:56:52: error:
composable-associations-aeson  >     • Couldn't match type: HashMap.HashMap T.Text Value
composable-associations-aeson  >                      with: Data.Aeson.KeyMap.KeyMap Value
composable-associations-aeson  >       Expected: Object
composable-associations-aeson  >         Actual: HashMap.HashMap T.Text Value
composable-associations-aeson  >     • In the second argument of ‘($)’, namely
composable-associations-aeson  >         ‘HashMap.insert keyName objJson baseJsonMap’
composable-associations-aeson  >       In the expression:
composable-associations-aeson  >         Object $ HashMap.insert keyName objJson baseJsonMap
composable-associations-aeson  >       In an equation for ‘toJSON’:
composable-associations-aeson  >           toJSON (base :<> Association key obj)
composable-associations-aeson  >             = Object $ HashMap.insert keyName objJson baseJsonMap
composable-associations-aeson  >             where
composable-associations-aeson  >                 keyName = T.pack $ symbolVal key
composable-associations-aeson  >                 baseJsonMap
composable-associations-aeson  >                   = case toJSON base of
composable-associations-aeson  >                       (Object jsonObjVal) -> jsonObjVal
composable-associations-aeson  >                       notAnObject -> throw $ JsonObjectEncodingException notAnObject
composable-associations-aeson  >                 objJson = toJSON obj
composable-associations-aeson  >    |
composable-associations-aeson  > 56 |   toJSON (base :<> Association key obj) = Object $ HashMap.insert keyName objJson baseJsonMap
composable-associations-aeson  >    |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
composable-associations-aeson  > 
composable-associations-aeson  > /tmp/stack-0f0ad492cf5e755a/composable-associations-aeson-0.1.0.1/src/Data/ComposableAssociation/Aeson.hs:56:83: error:
composable-associations-aeson  >     • Couldn't match type: Data.Aeson.KeyMap.KeyMap Value
composable-associations-aeson  >                      with: HashMap.HashMap T.Text Value
composable-associations-aeson  >       Expected: HashMap.HashMap T.Text Value
composable-associations-aeson  >         Actual: Object
composable-associations-aeson  >     • In the third argument of ‘HashMap.insert’, namely ‘baseJsonMap’
composable-associations-aeson  >       In the second argument of ‘($)’, namely
composable-associations-aeson  >         ‘HashMap.insert keyName objJson baseJsonMap’
composable-associations-aeson  >       In the expression:
composable-associations-aeson  >         Object $ HashMap.insert keyName objJson baseJsonMap
composable-associations-aeson  >    |
composable-associations-aeson  > 56 |   toJSON (base :<> Association key obj) = Object $ HashMap.insert keyName objJson baseJsonMap
composable-associations-aeson  >    |                                                                                   ^^^^^^^^^^^
composable-associations-aeson  > 
composable-associations-aeson  > /tmp/stack-0f0ad492cf5e755a/composable-associations-aeson-0.1.0.1/src/Data/ComposableAssociation/Aeson.hs:64:65: error:
composable-associations-aeson  >     • Couldn't match type: HashMap.HashMap T.Text v0
composable-associations-aeson  >                      with: Data.Aeson.KeyMap.KeyMap Value
composable-associations-aeson  >       Expected: Object
composable-associations-aeson  >         Actual: HashMap.HashMap T.Text v0
composable-associations-aeson  >     • In the second argument of ‘($)’, namely ‘HashMap.delete key v'’
composable-associations-aeson  >       In the first argument of ‘parseJSON’, namely
composable-associations-aeson  >         ‘(Object $ HashMap.delete key v')’
composable-associations-aeson  >       In the second argument of ‘(<$>)’, namely
composable-associations-aeson  >         ‘parseJSON (Object $ HashMap.delete key v')’
composable-associations-aeson  >    |
composable-associations-aeson  > 64 |                                             parseJSON (Object $ HashMap.delete key v') <*>
composable-associations-aeson  >    |                                                                 ^^^^^^^^^^^^^^^^^^^^^
composable-associations-aeson  > 
composable-associations-aeson  > /tmp/stack-0f0ad492cf5e755a/composable-associations-aeson-0.1.0.1/src/Data/ComposableAssociation/Aeson.hs:64:84: error:
composable-associations-aeson  >     • Couldn't match type: Data.Aeson.KeyMap.KeyMap Value
composable-associations-aeson  >                      with: HashMap.HashMap T.Text v0
composable-associations-aeson  >       Expected: HashMap.HashMap T.Text v0
composable-associations-aeson  >         Actual: Object
composable-associations-aeson  >     • In the second argument of ‘HashMap.delete’, namely ‘v'’
composable-associations-aeson  >       In the second argument of ‘($)’, namely ‘HashMap.delete key v'’
composable-associations-aeson  >       In the first argument of ‘parseJSON’, namely
composable-associations-aeson  >         ‘(Object $ HashMap.delete key v')’
composable-associations-aeson  >    |
composable-associations-aeson  > 64 |                                             parseJSON (Object $ HashMap.delete key v') <*>
composable-associations-aeson  >    |                                                                                    ^^
composable-associations-aeson  > 
composable-associations-aeson  > /tmp/stack-0f0ad492cf5e755a/composable-associations-aeson-0.1.0.1/src/Data/ComposableAssociation/Aeson.hs:65:78: error:
composable-associations-aeson  >     • Couldn't match expected type ‘Key’ with actual type ‘T.Text’
composable-associations-aeson  >     • In the second argument of ‘(.:?)’, namely ‘key’
composable-associations-aeson  >       In the first argument of ‘(.!=)’, namely ‘v' .:? key’
composable-associations-aeson  >       In the first argument of ‘(>>=)’, namely ‘v' .:? key .!= Null’
composable-associations-aeson  >    |
composable-associations-aeson  > 65 |                                             fmap (Association proxy) (v' .:? key .!= Null >>= parseJSON)
composable-associations-aeson  >    |                                                                              ^^^

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions