diff --git a/changelog.md b/changelog.md
--- a/changelog.md
+++ b/changelog.md
@@ -1,5 +1,7 @@
 # Changelog
 
+see latest changes on [Github](https://github.com/morpheusgraphql/morpheus-graphql/releases)
+
 ## 0.19.0 - 21.03.2022
 
 ### Minor Changes
diff --git a/morpheus-graphql-core.cabal b/morpheus-graphql-core.cabal
--- a/morpheus-graphql-core.cabal
+++ b/morpheus-graphql-core.cabal
@@ -5,7 +5,7 @@
 -- see: https://github.com/sol/hpack
 
 name:           morpheus-graphql-core
-version:        0.19.0
+version:        0.19.1
 synopsis:       Morpheus GraphQL Core
 description:    Build GraphQL APIs with your favorite functional language!
 category:       web, graphql
@@ -18,8 +18,8 @@
 license-file:   LICENSE
 build-type:     Simple
 extra-source-files:
-    changelog.md
     README.md
+    changelog.md
 data-files:
     test/query/parsing/selection-set/empty-selection/query.gql
     test/query/parsing/selection-set/non-empty-selection/query.gql
@@ -156,15 +156,15 @@
 library
   exposed-modules:
       Data.Morpheus.Core
-      Data.Morpheus.QuasiQuoter
       Data.Morpheus.Error
-      Data.Morpheus.Types.IO
-      Data.Morpheus.Types.Internal.AST
+      Data.Morpheus.Internal.Ext
+      Data.Morpheus.Internal.Utils
+      Data.Morpheus.QuasiQuoter
       Data.Morpheus.Types.GQLScalar
       Data.Morpheus.Types.ID
+      Data.Morpheus.Types.IO
+      Data.Morpheus.Types.Internal.AST
       Data.Morpheus.Types.SelectionTree
-      Data.Morpheus.Internal.Utils
-      Data.Morpheus.Internal.Ext
   other-modules:
       Data.Mergeable
       Data.Mergeable.Internal.Merge
@@ -240,15 +240,15 @@
     , base >=4.7 && <5
     , bytestring >=0.10.4 && <0.11
     , containers >=0.4.2.1 && <0.7
-    , hashable >=1.0.0
+    , hashable >=1.0.0 && <2.0
     , megaparsec >=7.0.0 && <10.0.0
-    , mtl >=2.0 && <=3.0
-    , relude >=0.3.0
+    , mtl >=2.0 && <3.0
+    , relude >=0.3.0 && <2.0
     , scientific >=0.3.6.2 && <0.4
-    , template-haskell >=2.0 && <=3.0
+    , template-haskell >=2.0 && <3.0
     , text >=1.2.3.0 && <1.3
-    , th-lift-instances >=0.1.1 && <=0.3
-    , transformers >=0.3.0.0 && <0.6
+    , th-lift-instances >=0.1.1 && <0.3
+    , transformers >=0.3 && <0.6
     , unordered-containers >=0.2.8.0 && <0.3
     , vector >=0.12.0.1 && <0.13
   default-language: Haskell2010
@@ -262,24 +262,24 @@
       test
   ghc-options: -Wall
   build-depends:
-      aeson
+      aeson >=1.4.4.0 && <3
     , base >=4.7 && <5
     , bytestring >=0.10.4 && <0.11
     , containers >=0.4.2.1 && <0.7
-    , directory >=1.0
-    , hashable >=1.0.0
+    , directory >=1.0 && <2.0
+    , hashable >=1.0.0 && <2.0
     , megaparsec >=7.0.0 && <10.0.0
     , morpheus-graphql-core
     , morpheus-graphql-tests >=0.19.0 && <0.20.0
-    , mtl >=2.0 && <=3.0
-    , relude >=0.3.0
+    , mtl >=2.0 && <3.0
+    , relude >=0.3.0 && <2.0
     , scientific >=0.3.6.2 && <0.4
-    , tasty
-    , tasty-hunit
-    , template-haskell >=2.0 && <=3.0
+    , tasty >=0.1 && <1.5
+    , tasty-hunit >=0.1 && <1.0
+    , template-haskell >=2.0 && <3.0
     , text >=1.2.3.0 && <1.3
-    , th-lift-instances >=0.1.1 && <=0.3
-    , transformers >=0.3.0.0 && <0.6
+    , th-lift-instances >=0.1.1 && <0.3
+    , transformers >=0.3 && <0.6
     , unordered-containers >=0.2.8.0 && <0.3
     , vector >=0.12.0.1 && <0.13
   default-language: Haskell2010
diff --git a/src/Data/Morpheus/Types/Internal/AST.hs b/src/Data/Morpheus/Types/Internal/AST.hs
--- a/src/Data/Morpheus/Types/Internal/AST.hs
+++ b/src/Data/Morpheus/Types/Internal/AST.hs
@@ -152,6 +152,7 @@
     lookupDataType,
     Name,
     withPath,
+    withExtensions,
     PropName (..),
   )
 where
diff --git a/src/Data/Morpheus/Types/Internal/AST/Error.hs b/src/Data/Morpheus/Types/Internal/AST/Error.hs
--- a/src/Data/Morpheus/Types/Internal/AST/Error.hs
+++ b/src/Data/Morpheus/Types/Internal/AST/Error.hs
@@ -24,6 +24,7 @@
     Msg (..),
     Message,
     withPath,
+    withExtensions,
     PropName (..),
   )
 where
@@ -77,6 +78,10 @@
   [] -> GQLError {..}
   posList -> GQLError {locations = locations <> Just posList, ..}
 {-# INLINE atPositions #-}
+
+
+withExtensions :: GQLError -> Map Text Value -> GQLError
+withExtensions gqlerr ext = gqlerr { extensions = Just ext }
 
 withPath :: GQLError -> [PropName] -> GQLError
 withPath err [] = err
