diff --git a/Database/Cayley/Client.hs b/Database/Cayley/Client.hs
--- a/Database/Cayley/Client.hs
+++ b/Database/Cayley/Client.hs
@@ -75,9 +75,9 @@
               Just v  -> Right v
               Nothing ->
                 case a ^? L.key "error" . L._String of
-                  Just e  -> fail (show e)
-                  Nothing -> fail "No JSON response from Cayley server"
-          Nothing -> fail "Can't get any response from Cayley server"
+                  Just e  -> Left (show e)
+                  Nothing -> Left "No JSON response from Cayley server"
+          Nothing -> Left "Can't get any response from Cayley server"
 
 -- | Return the description of the given executed query.
 queryShape :: CayleyConnection
@@ -219,12 +219,12 @@
         Just r  ->
           case APT.parse getAmount r of
             APT.Done "" i -> Right i
-            _             -> fail "Can't get amount of results"
+            _             -> Left "Can't get amount of results"
         Nothing ->
           case v ^? L.key "error" . L._String of
-            Just e  -> fail (show e)
-            Nothing -> fail "No JSON response from Cayley server"
-    Nothing -> fail "Can't get any response from Cayley server"
+            Just e  -> Left (show e)
+            Nothing -> Left "No JSON response from Cayley server"
+    Nothing -> Left "Can't get any response from Cayley server"
   where
   getAmount = do
       _ <- APT.string "Successfully "
diff --git a/cayley-client.cabal b/cayley-client.cabal
--- a/cayley-client.cabal
+++ b/cayley-client.cabal
@@ -1,11 +1,12 @@
 cabal-version: >=1.10
 name: cayley-client
-version: 0.4.9
+version: 0.4.10
 license: BSD3
 license-file: LICENSE
-copyright: (c) 2015-2019 - Michel Boucey
+copyright: (c) 2015-2020 - Michel Boucey
 maintainer: michel.boucey@gmail.com
 author: Michel Boucey
+tested-with: ghc ==8.4.3 || ==8.6.5 || ==8.8.1
 homepage: https://github.com/MichelBoucey/cayley-client
 synopsis: A Haskell client for the Cayley graph database
 description:
@@ -36,9 +37,9 @@
         bytestring >=0.10.6 && <0.11,
         binary >=0.7.5 && <0.9,
         exceptions >=0.8.0.2 && <0.11,
-        http-client >=0.4.30 && <0.7,
+        http-client >=0.4.30 && <0.6,
         http-conduit >=2.1.8 && <2.4,
-        lens >=4.12.3 && <4.18,
+        lens >=4.12.3 && <4.19,
         mtl >=2.2.1 && <2.3,
         lens-aeson >=1.0.0 && <1.1,
         text >=1.2.2 && <1.3,
@@ -52,7 +53,7 @@
     hs-source-dirs: tests
     default-language: Haskell2010
     build-depends:
-        hspec >=2.1.10 && <2.7,
+        hspec >=2.1.10 && <3,
         base >=4.8 && <5,
         cayley-client -any,
         aeson >=0.8.0.2 && <1.5,
