diff --git a/README.md b/README.md
--- a/README.md
+++ b/README.md
@@ -29,7 +29,7 @@
 resolver: lts-14.8
 
 extra-deps:
-  - morpheus-graphql-0.6.1
+  - morpheus-graphql-0.6.2
 ```
 
 As Morpheus is quite new, make sure stack can find morpheus-graphql by running `stack upgrade` and `stack update`
diff --git a/changelog.md b/changelog.md
--- a/changelog.md
+++ b/changelog.md
@@ -1,4 +1,4 @@
-## [0.6.0] - 2.11.2019
+## [0.6.2] - 2.11.2019
 
 ## Added
 
diff --git a/morpheus-graphql.cabal b/morpheus-graphql.cabal
--- a/morpheus-graphql.cabal
+++ b/morpheus-graphql.cabal
@@ -4,10 +4,10 @@
 --
 -- see: https://github.com/sol/hpack
 --
--- hash: 7ae6cd61c589257d278baedd4f27ecf1e1bd7190e24d4764eceffb4fd189543c
+-- hash: 6d77e1db039ce6a4a5ef7761d0b18beb9ea7067fbb99372bd3a97510e4da4a43
 
 name:           morpheus-graphql
-version:        0.6.1
+version:        0.6.2
 synopsis:       Morpheus GraphQL
 description:    Build GraphQL APIs with your favourite functional language!
 category:       web, graphql
@@ -340,7 +340,7 @@
     , megaparsec >=7.0.0 && <8.0
     , mtl >=2.0 && <=2.3
     , scientific >=0.3.6.2 && <0.4
-    , template-haskell >=2.0 && <=2.14.0.0
+    , template-haskell >=2.0 && <=2.16
     , text >=1.2.3.0 && <1.3
     , transformers >=0.3.0.0 && <0.6
     , unordered-containers >=0.2.8.0 && <0.3
@@ -379,7 +379,7 @@
     , scientific >=0.3.6.2 && <0.4
     , tasty
     , tasty-hunit
-    , template-haskell >=2.0 && <=2.14.0.0
+    , template-haskell >=2.0 && <=2.16
     , text >=1.2.3.0 && <1.3
     , transformers >=0.3.0.0 && <0.6
     , unordered-containers >=0.2.8.0 && <0.3
diff --git a/src/Data/Morpheus/Types/Internal/TH.hs b/src/Data/Morpheus/Types/Internal/TH.hs
--- a/src/Data/Morpheus/Types/Internal/TH.hs
+++ b/src/Data/Morpheus/Types/Internal/TH.hs
@@ -1,5 +1,7 @@
 {-# LANGUAGE TemplateHaskell #-}
+{-# LANGUAGE CPP #-}
 
+
 module Data.Morpheus.Types.Internal.TH where
 
 import           Data.Text                  (Text, pack, unpack)
@@ -42,6 +44,10 @@
 destructRecord conName fields = conP (mkName conName) (map (varP . mkName) fields)
 
 typeInstanceDec :: Name -> Type -> Type -> Dec
+#if MIN_VERSION_template_haskell(2,15,0)
+-- fix breaking changes   
+typeInstanceDec typeFamily arg res = TySynInstD (TySynEqn Nothing (AppT (ConT typeFamily) arg) res)  
+#else
+--    
 typeInstanceDec typeFamily arg res = TySynInstD typeFamily (TySynEqn [arg] res)
--- : TODO after th 2.15.0.0
--- typeInstanceDec typeFamily arg res = TySynInstD (TySynEqn Nothing (AppT (ConT typeFamily) arg) res)
+#endif
