diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,7 @@
+# 0.4.1.1 (2018-04-11)
+
+- base-compat-0.10 support
+
 # 0.4.1.0 (2017-07-24)
 
 - GHC-8.2 support
diff --git a/aeson-extra.cabal b/aeson-extra.cabal
--- a/aeson-extra.cabal
+++ b/aeson-extra.cabal
@@ -1,5 +1,5 @@
 name:           aeson-extra
-version:        0.4.1.0
+version:        0.4.1.1
 synopsis:       Extra goodies for aeson
 description:    Package provides extra funcitonality on top of @aeson@ and @aeson-compat@
 category:       Web
@@ -9,7 +9,7 @@
 maintainer:     Oleg Grenrus <oleg.grenrus@iki.fi>
 license:        BSD3
 license-file:   LICENSE
-tested-with:    GHC==7.6.3, GHC==7.8.4, GHC==7.10.3, GHC==8.0.2, GHC==8.2.1
+tested-with:    GHC==7.6.3, GHC==7.8.4, GHC==7.10.3, GHC==8.0.2, GHC==8.2.2, GHC==8.4.1
 build-type:     Simple
 cabal-version:  >= 1.10
 
@@ -26,21 +26,21 @@
       src
   ghc-options: -Wall
   build-depends:
-      base                     >=4.6  && <4.11
-    , aeson                    >=0.7.0.6 && <1.3
+      base                     >=4.6  && <4.12
+    , aeson                    >=0.7.0.6 && <1.4
     , aeson-compat             >=0.3.0.0 && <0.4
     , attoparsec               >=0.11.3.4 && <0.14
     , attoparsec-iso8601       >=1.0 && <1.1
-    , base-compat              >=0.6.0 && <0.10
+    , base-compat-batteries    >=0.10.1 && <0.11
     , bytestring               >=0.10 && <0.11
     , containers               >=0.5  && <0.6
     , deepseq                  >=1.3  && <1.5
-    , exceptions               >=0.8  && <0.9
+    , exceptions               >=0.8  && <0.11
     , hashable                 >=1.2  && <1.3
     , parsec                   >=3.1.9 && <3.2
     , recursion-schemes        >=4.1.2 && <5.1
     , scientific               >=0.3  && <0.4
-    , template-haskell         >=2.8  && <2.13
+    , template-haskell         >=2.8  && <2.14
     , text                     >=1.2  && <1.3
     , these                    >=0.7.4 && <0.8
     , time                     >=1.4.0.1 && <1.9
@@ -78,9 +78,9 @@
     , unordered-containers
     , vector
     , time-parsers          >=0.1.0.0 && <0.2
-    , tasty                 >=0.10  && <0.12
-    , tasty-hunit           >=0.9   && <0.10
-    , tasty-quickcheck      >=0.8   && <0.10
+    , tasty                 >=0.10  && <1.1
+    , tasty-hunit           >=0.9   && <0.11
+    , tasty-quickcheck      >=0.8   && <0.11
     , quickcheck-instances  >=0.3   && <0.4
   other-modules:
       Orphans
diff --git a/src/Data/Aeson/Extra/Map.hs b/src/Data/Aeson/Extra/Map.hs
--- a/src/Data/Aeson/Extra/Map.hs
+++ b/src/Data/Aeson/Extra/Map.hs
@@ -22,15 +22,16 @@
   ToJSONMap(..),
   ) where
 
-import Prelude        ()
+import Prelude ()
 import Prelude.Compat
 
-import Data.Aeson.Compat (ToJSON (..), FromJSON (..), Value (..), withObject)
-import Data.Aeson.Types  (Parser)
-import Data.Hashable     (Hashable)
-import Data.Monoid       ((<>))
-import Data.Text         (Text)
-import Data.Typeable     (Typeable)
+import Data.Aeson.Compat
+       (FromJSON (..), ToJSON (..), Value (..), withObject)
+import Data.Aeson.Types      (Parser)
+import Data.Hashable         (Hashable)
+import Data.Semigroup.Compat ((<>))
+import Data.Text             (Text)
+import Data.Typeable         (Typeable)
 
 import qualified Data.HashMap.Strict as H
 import qualified Data.Map            as Map
diff --git a/src/Data/Aeson/Extra/SingObject.hs b/src/Data/Aeson/Extra/SingObject.hs
--- a/src/Data/Aeson/Extra/SingObject.hs
+++ b/src/Data/Aeson/Extra/SingObject.hs
@@ -22,18 +22,18 @@
 import Prelude ()
 import Prelude.Compat
 
-import Control.DeepSeq   (NFData (..))
+import Control.DeepSeq       (NFData (..))
 import Data.Aeson.Compat
-import Data.Monoid       ((<>))
-import Data.Proxy
-import Data.Typeable     (Typeable)
-import GHC.TypeLits
+import Data.Proxy            (Proxy (..))
+import Data.Semigroup.Compat ((<>))
+import Data.Typeable         (Typeable)
+import GHC.TypeLits          (KnownSymbol, Symbol, symbolVal)
 
 import qualified Data.Text as T
 
 #if MIN_VERSION_aeson(1,0,0)
-import Data.Aeson.Internal (JSONPathElement (Key), (<?>))
 import Data.Aeson.Encoding (pair)
+import Data.Aeson.Internal (JSONPathElement (Key), (<?>))
 import Data.Aeson.Types    hiding ((.:?))
 
 import qualified Data.HashMap.Strict as HM
@@ -48,7 +48,7 @@
 -- > "{\"value\":42}"
 --
 -- /Available with: base >=4.7/
-newtype SingObject (s ::Symbol) a = SingObject a
+newtype SingObject (s :: Symbol) a = SingObject a
   deriving (Eq, Ord, Show, Read, Functor, Foldable, Traversable, Typeable)
 
 mkSingObject :: Proxy s -> a -> SingObject s a
diff --git a/src/Data/Aeson/Extra/SymTag.hs b/src/Data/Aeson/Extra/SymTag.hs
--- a/src/Data/Aeson/Extra/SymTag.hs
+++ b/src/Data/Aeson/Extra/SymTag.hs
@@ -5,7 +5,7 @@
 -----------------------------------------------------------------------------
 -- |
 -- Module      :  Data.Aeson.Extra.SymTag
--- Copyright   :  (C) 2015-2016 Oleg Grenrus
+-- Copyright   :  (C) 2015-2018 Oleg Grenrus
 -- License     :  BSD3
 -- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>
 --
@@ -13,14 +13,14 @@
     SymTag(..),
     ) where
 
-import Prelude        ()
+import Prelude ()
 import Prelude.Compat
 
 import Control.DeepSeq   (NFData (..))
 import Data.Aeson.Compat
 import Data.Aeson.Types  hiding ((.:?))
-import Data.Proxy
-import GHC.TypeLits
+import Data.Proxy        (Proxy (..))
+import GHC.TypeLits      (KnownSymbol, Symbol, symbolVal)
 
 import qualified Data.Text as T
 
