tekul / jose-jwt

Haskell implementation of JOSE/JWT standards
BSD 3-Clause "New" or "Revised" License
37 stars 22 forks source link

build fails with aeson-2.0 #34

Closed juhp closed 2 years ago

juhp commented 2 years ago
jose-jwt                       > Building library for jose-jwt-0.9.2..
jose-jwt                       > [1 of 9] Compiling Jose.Jwa
jose-jwt                       > [2 of 9] Compiling Jose.Types
jose-jwt                       > 
jose-jwt                       > /tmp/stack-0da44745a837d1f4/jose-jwt-0.9.2/Jose/Types.hs:129:50: error:
jose-jwt                       >     • Couldn't match type: Data.Aeson.KeyMap.KeyMap Value
jose-jwt                       >                      with: H.HashMap k0 Value
jose-jwt                       >       Expected: H.HashMap k0 Value
jose-jwt                       >         Actual: Object
jose-jwt                       >     • In the second argument of ‘H.lookup’, namely ‘o’
jose-jwt                       >       In the expression: H.lookup "aud" o
jose-jwt                       >       In the expression:
jose-jwt                       >         case H.lookup "aud" o of
jose-jwt                       >           Just (a@(String _))
jose-jwt                       >             -> genericParseJSON claimsOptions
jose-jwt                       >                  $ Object $ H.insert "aud" (Array $ singleton a) o
jose-jwt                       >           _ -> genericParseJSON claimsOptions v
jose-jwt                       >     |
jose-jwt                       > 129 |     parseJSON v@(Object o) = case H.lookup "aud" o of
jose-jwt                       >     |                                                  ^
jose-jwt                       > 
jose-jwt                       > /tmp/stack-0da44745a837d1f4/jose-jwt-0.9.2/Jose/Types.hs:130:74: error:
jose-jwt                       >     • Couldn't match type: H.HashMap k1 Value
jose-jwt                       >                      with: Data.Aeson.KeyMap.KeyMap Value
jose-jwt                       >       Expected: Object
jose-jwt                       >         Actual: H.HashMap k1 Value
jose-jwt                       >     • In the second argument of ‘($)’, namely
jose-jwt                       >         ‘H.insert "aud" (Array $ singleton a) o’
jose-jwt                       >       In the second argument of ‘($)’, namely
jose-jwt                       >         ‘Object $ H.insert "aud" (Array $ singleton a) o’
jose-jwt                       >       In the expression:
jose-jwt                       >         genericParseJSON claimsOptions
jose-jwt                       >           $ Object $ H.insert "aud" (Array $ singleton a) o
jose-jwt                       >     |
jose-jwt                       > 130 |         Just (a@(String _)) -> genericParseJSON claimsOptions $ Object $ H.insert "aud" (Array $ singleton a) o
jose-jwt                       >     |                                                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
jose-jwt                       > 
jose-jwt                       > /tmp/stack-0da44745a837d1f4/jose-jwt-0.9.2/Jose/Types.hs:130:111: error:
jose-jwt                       >     • Couldn't match type: Data.Aeson.KeyMap.KeyMap Value
jose-jwt                       >                      with: H.HashMap k1 Value
jose-jwt                       >       Expected: H.HashMap k1 Value
jose-jwt                       >         Actual: Object
jose-jwt                       >     • In the third argument of ‘H.insert’, namely ‘o’
jose-jwt                       >       In the second argument of ‘($)’, namely
jose-jwt                       >         ‘H.insert "aud" (Array $ singleton a) o’
jose-jwt                       >       In the second argument of ‘($)’, namely
jose-jwt                       >         ‘Object $ H.insert "aud" (Array $ singleton a) o’
jose-jwt                       >     |
jose-jwt                       > 130 |         Just (a@(String _)) -> genericParseJSON claimsOptions $ Object $ H.insert "aud" (Array $ singleton a) o
jose-jwt                       >     |                                                                                                               ^
jose-jwt                       > 
jose-jwt                       > /tmp/stack-0da44745a837d1f4/jose-jwt-0.9.2/Jose/Types.hs:177:50: error:
jose-jwt                       >     • Couldn't match type: Data.Aeson.KeyMap.KeyMap Value
jose-jwt                       >                      with: H.HashMap k2 Value
jose-jwt                       >       Expected: H.HashMap k2 Value
jose-jwt                       >         Actual: Object
jose-jwt                       >     • In the second argument of ‘H.lookup’, namely ‘o’
jose-jwt                       >       In the expression: H.lookup "alg" o
jose-jwt                       >       In the expression:
jose-jwt                       >         case H.lookup "alg" o of
jose-jwt                       >           Just (String "none") -> pure UnsecuredH
jose-jwt                       >           _ -> case H.lookup "enc" o of
jose-jwt                       >                  Nothing -> JwsH <$> parseJSON v
jose-jwt                       >                  _ -> JweH <$> parseJSON v
jose-jwt                       >     |
jose-jwt                       > 177 |     parseJSON v@(Object o) = case H.lookup "alg" o of
jose-jwt                       >     |                                                  ^
jose-jwt                       > 
jose-jwt                       > /tmp/stack-0da44745a837d1f4/jose-jwt-0.9.2/Jose/Types.hs:179:53: error:
jose-jwt                       >     • Couldn't match type: Data.Aeson.KeyMap.KeyMap Value
jose-jwt                       >                      with: H.HashMap k3 v0
jose-jwt                       >       Expected: H.HashMap k3 v0
jose-jwt                       >         Actual: Object
jose-jwt                       >     • In the second argument of ‘H.lookup’, namely ‘o’
jose-jwt                       >       In the expression: H.lookup "enc" o
jose-jwt                       >       In the expression:
jose-jwt                       >         case H.lookup "enc" o of
jose-jwt                       >           Nothing -> JwsH <$> parseJSON v
jose-jwt                       >           _ -> JweH <$> parseJSON v
jose-jwt                       >     |
jose-jwt                       > 179 |         _                    -> case H.lookup "enc" o of
jose-jwt                       >     |                                                     ^