Skip to content

fails to build with aeson-2.0 #8

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  >    |                                                                              ^^^

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

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