diff --git a/morpheus-graphql.cabal b/morpheus-graphql.cabal
--- a/morpheus-graphql.cabal
+++ b/morpheus-graphql.cabal
@@ -1,11 +1,11 @@
 cabal-version: 1.12
 
--- This file has been generated from package.yaml by hpack version 0.36.0.
+-- This file has been generated from package.yaml by hpack version 0.38.1.
 --
 -- see: https://github.com/sol/hpack
 
 name:           morpheus-graphql
-version:        0.28.1
+version:        0.28.2
 synopsis:       Morpheus GraphQL
 description:    Build GraphQL APIs with your favourite functional language!
 category:       web, graphql
@@ -231,8 +231,8 @@
       aeson >=1.4.4 && <3.0.0
     , attoparsec-aeson >=2.1.0.0 && <3.0.0
     , base >=4.7.0 && <5.0.0
-    , bytestring >=0.10.4 && <0.15.0
-    , containers >=0.4.2.1 && <=0.7
+    , bytestring >=0.10.4 && <1.0.0
+    , containers >=0.4.2.1 && <1.0.0
     , morpheus-graphql-app >=0.28.0 && <0.29.0
     , morpheus-graphql-code-gen >=0.28.0 && <0.29.0
     , morpheus-graphql-core >=0.28.0 && <0.29.0
@@ -241,9 +241,9 @@
     , relude >=0.3.0 && <2.0.0
     , template-haskell >=2.0.0 && <3.0.0
     , text >=1.2.3 && <3.0.0
-    , transformers >=0.3.0 && <0.7.0
-    , unordered-containers >=0.2.8 && <0.3.0
-    , vector >=0.12.0.1 && <0.15.0
+    , transformers >=0.3.0 && <1.0.0
+    , unordered-containers >=0.2.8 && <1.0.0
+    , vector >=0.12.0.1 && <1.0.0
   default-language: Haskell2010
 
 test-suite morpheus-graphql-test
@@ -267,8 +267,8 @@
       aeson >=1.4.4 && <3.0.0
     , attoparsec-aeson >=2.1.0.0 && <3.0.0
     , base >=4.7.0 && <5.0.0
-    , bytestring >=0.10.4 && <0.15.0
-    , containers >=0.4.2.1 && <=0.7
+    , bytestring >=0.10.4 && <1.0.0
+    , containers >=0.4.2.1 && <1.0.0
     , morpheus-graphql >=0.28.0 && <0.29.0
     , morpheus-graphql-app >=0.28.0 && <0.29.0
     , morpheus-graphql-code-gen >=0.28.0 && <0.29.0
@@ -278,11 +278,11 @@
     , morpheus-graphql-tests >=0.28.0 && <0.29.0
     , mtl >=2.0.0 && <3.0.0
     , relude >=0.3.0 && <2.0.0
-    , tasty >=0.1.0 && <=1.5
+    , tasty >=0.1.0 && <2.0.0
     , tasty-hunit >=0.1.0 && <1.0.0
     , template-haskell >=2.0.0 && <3.0.0
     , text >=1.2.3 && <3.0.0
-    , transformers >=0.3.0 && <0.7.0
-    , unordered-containers >=0.2.8 && <0.3.0
-    , vector >=0.12.0.1 && <0.15.0
+    , transformers >=0.3.0 && <1.0.0
+    , unordered-containers >=0.2.8 && <1.0.0
+    , vector >=0.12.0.1 && <1.0.0
   default-language: Haskell2010
diff --git a/src/Data/Morpheus/Types.hs b/src/Data/Morpheus/Types.hs
--- a/src/Data/Morpheus/Types.hs
+++ b/src/Data/Morpheus/Types.hs
@@ -113,5 +113,5 @@
 import Data.Morpheus.Types.Internal.AST (GQLError)
 import Relude hiding (Undefined)
 
-liftEither :: (MonadTrans t, Monad (t m), MonadError GQLError (t m)) => Monad m => m (Either String a) -> t m a
+liftEither :: (MonadTrans t, Monad (t m), MonadError GQLError (t m)) => (Monad m) => m (Either String a) -> t m a
 liftEither x = lift x >>= either (throwError . fromString) pure
diff --git a/test/Feature/Holistic/API.hs b/test/Feature/Holistic/API.hs
--- a/test/Feature/Holistic/API.hs
+++ b/test/Feature/Holistic/API.hs
@@ -127,7 +127,7 @@
           }
     }
   where
-    queryUser :: Applicative m => m (User m)
+    queryUser :: (Applicative m) => m (User m)
     queryUser =
       pure
         User
@@ -138,7 +138,7 @@
             userFriend = pure Nothing
           }
     -----------------------------------------------------
-    resolveAddress :: Applicative m => a -> m (Address m)
+    resolveAddress :: (Applicative m) => a -> m (Address m)
     resolveAddress _ =
       pure
         Address
diff --git a/test/Feature/Input/DefaultValues.hs b/test/Feature/Input/DefaultValues.hs
--- a/test/Feature/Input/DefaultValues.hs
+++ b/test/Feature/Input/DefaultValues.hs
@@ -37,13 +37,13 @@
     { queryResolver = Query {user, testSimple}
     }
   where
-    user :: Applicative m => m (Maybe (User m))
+    user :: (Applicative m) => m (Maybe (User m))
     user =
-      pure $
-        Just $
-          User
-            { inputs = pure . pack . show
-            }
+      pure
+        $ Just
+        $ User
+          { inputs = pure . pack . show
+          }
     testSimple = pure . pack . show
 
 -----------------------------------
diff --git a/test/Subscription/API.hs b/test/Subscription/API.hs
--- a/test/Subscription/API.hs
+++ b/test/Subscription/API.hs
@@ -47,7 +47,7 @@
 
 type EVENT = Event Channel Info
 
-character :: Applicative m => m (Character m)
+character :: (Applicative m) => m (Character m)
 character =
   pure
     Character
@@ -55,7 +55,7 @@
         age = pure 1
       }
 
-characterSub :: Applicative m => EVENT -> m (Character m)
+characterSub :: (Applicative m) => EVENT -> m (Character m)
 characterSub (Event _ Info {name, age}) =
   pure
     Character
diff --git a/test/Subscription/Case/Publishing.hs b/test/Subscription/Case/Publishing.hs
--- a/test/Subscription/Case/Publishing.hs
+++ b/test/Subscription/Case/Publishing.hs
@@ -78,8 +78,8 @@
   SimulationState {inputs, outputs, store} <-
     simulatePublish (Event [DEITY] Info {name = "Zeus", age = 1200}) state
       >>= simulatePublish (Event [HUMAN] Info {name = "Hercules", age = 18})
-  pure $
-    testGroup
+  pure
+    $ testGroup
       "publish event"
       [ inputsAreConsumed inputs,
         testResponse
diff --git a/test/Subscription/Utils.hs b/test/Subscription/Utils.hs
--- a/test/Subscription/Utils.hs
+++ b/test/Subscription/Utils.hs
@@ -150,35 +150,35 @@
   | null (toList cStore) =
       testCase "connectionStore: is empty" $ pure ()
   | otherwise =
-      testCase "connectionStore: is empty" $
-        assertFailure $
-          " must be empty but "
-            <> show
-              cStore
+      testCase "connectionStore: is empty"
+        $ assertFailure
+        $ " must be empty but "
+        <> show
+          cStore
 
 storedSingle :: (Show ch) => Store (Event ch con) -> TestTree
 storedSingle cStore
   | length (toList cStore) == 1 =
       testCase "stored single connection" $ pure ()
   | otherwise =
-      testCase "stored single connection" $
-        assertFailure $
-          "connectionStore must store single connection, but stored: "
-            <> show
-              cStore
+      testCase "stored single connection"
+        $ assertFailure
+        $ "connectionStore must store single connection, but stored: "
+        <> show
+          cStore
 
 stored :: (Show ch) => Input SUB -> Store (Event ch con) -> TestTree
 stored (InitConnection uuid) cStore
   | isJust (lookup uuid (toList cStore)) =
       testCase "stored connection" $ pure ()
   | otherwise =
-      testCase "stored connection" $
-        assertFailure $
-          " must store connection \""
-            <> show uuid
-            <> "\" but stored: "
-            <> show
-              cStore
+      testCase "stored connection"
+        $ assertFailure
+        $ " must store connection \""
+        <> show uuid
+        <> "\" but stored: "
+        <> show
+          cStore
 
 storeSubscriptions ::
   (Show ch) =>
@@ -196,21 +196,21 @@
         | sort sids == sort (connectionSessionIds conn) =
             testCase "stored subscriptions" $ pure ()
         | otherwise =
-            testCase "stored subscriptions" $
-              assertFailure $
-                " must store subscriptions with id \""
-                  <> show sids
-                  <> "\" but stored: "
-                  <> show
-                    (connectionSessionIds conn)
-      checkSession _ =
-        testCase "stored connection" $
-          assertFailure $
-            " must store connection \""
-              <> show uuid
-              <> "\" but: "
+            testCase "stored subscriptions"
+              $ assertFailure
+              $ " must store subscriptions with id \""
+              <> show sids
+              <> "\" but stored: "
               <> show
-                cStore
+                (connectionSessionIds conn)
+      checkSession _ =
+        testCase "stored connection"
+          $ assertFailure
+          $ " must store connection \""
+          <> show uuid
+          <> "\" but: "
+          <> show
+            cStore
 
 apolloStart :: ByteString -> ByteString -> ByteString
 apolloStart query sid =
