diff --git a/rest-gen.cabal b/rest-gen.cabal
--- a/rest-gen.cabal
+++ b/rest-gen.cabal
@@ -1,5 +1,5 @@
 name:                rest-gen
-version:             0.20.0.1
+version:             0.20.0.2
 description:         Documentation and client generation from rest definition.
 synopsis:            Documentation and client generation from rest definition.
 maintainer:          code@silk.co
@@ -49,10 +49,10 @@
     Rest.Gen.NoAnnotation
     Rest.Gen.Utils
   build-depends:
-      base >= 4.5 && < 4.11
+      base >= 4.5 && < 4.12
     , Cabal >= 1.16 && < 2.2
     , HStringTemplate >= 0.6 && < 0.9
-    , aeson >= 0.7 && < 1.3
+    , aeson >= 0.7 && < 1.4
     , base-compat >= 0.8 && < 0.10
     , blaze-html >= 0.5 && < 0.10
     , code-builder == 0.1.*
@@ -60,7 +60,7 @@
     , fclabels >= 1.0.4 && < 2.1
     , filepath >= 1.2 && < 1.5
     , hashable >= 1.1 && < 1.3
-    , haskell-src-exts >= 1.18.1 && < 1.20
+    , haskell-src-exts >= 1.18.1 && < 1.21
     , hxt >= 9.2 && < 9.4
     , json-schema >= 0.6 && < 0.8
     , pretty >= 1.0 && < 1.2
@@ -83,10 +83,10 @@
   type:              exitcode-stdio-1.0
   ghc-options:       -Wall
   build-depends:
-      base >= 4.5 && < 4.11
+      base >= 4.5 && < 4.12
     , HUnit >= 1.2 && < 1.7
     , fclabels >= 1.0.4 && < 2.1
-    , haskell-src-exts >= 1.15.0 && < 1.20
+    , haskell-src-exts >= 1.15.0 && < 1.21
     , rest-core >= 0.38 && < 0.40
     , rest-gen
     , test-framework == 0.8.*
diff --git a/src/Rest/Gen/Base/ActionInfo.hs b/src/Rest/Gen/Base/ActionInfo.hs
--- a/src/Rest/Gen/Base/ActionInfo.hs
+++ b/src/Rest/Gen/Base/ActionInfo.hs
@@ -1,11 +1,14 @@
-{-# OPTIONS -Wno-incomplete-patterns #-}
 {-# LANGUAGE
-    GADTs
+    CPP
+  , GADTs
   , LambdaCase
   , NoImplicitPrelude
   , ScopedTypeVariables
   , TemplateHaskell
   #-}
+#if MIN_VERSION_base(4,9,0)
+{-# OPTIONS_GHC -Wno-redundant-constraints #-}
+#endif
 module Rest.Gen.Base.ActionInfo
   ( Accessor
   , ActionInfo (..)
diff --git a/src/Rest/Gen/Base/JSON/Pretty.hs b/src/Rest/Gen/Base/JSON/Pretty.hs
--- a/src/Rest/Gen/Base/JSON/Pretty.hs
+++ b/src/Rest/Gen/Base/JSON/Pretty.hs
@@ -1,5 +1,7 @@
 module Rest.Gen.Base.JSON.Pretty (pp_value) where
 
+import Prelude hiding ((<>))
+
 import Control.Arrow (first)
 import Data.Aeson.Types
 import Data.Char
diff --git a/src/Rest/Gen/Haskell.hs b/src/Rest/Gen/Haskell.hs
--- a/src/Rest/Gen/Haskell.hs
+++ b/src/Rest/Gen/Haskell.hs
@@ -395,7 +395,7 @@
                   Just{}  ->  -- Pattern match with data constructor
                     ([H.PParen () $ H.PApp () (H.UnQual () $ H.Ident () (dataName pth)) [H.PVar () x]],
                      H.UnGuardedRhs () $ H.List () [stringLit pth, showURLx])
-      in [ H.DataDecl () (H.DataType ()) Nothing (H.DHead () tyIdent) (map ctor ls) Nothing
+      in [ H.DataDecl () (H.DataType ()) Nothing (H.DHead () tyIdent) (map ctor ls) []
          , H.TypeSig () [funName] fType
          ] ++ concatMap fun ls
     where
