diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,7 @@
+## v0.9.0.1 - 2015-01-06
+
+* Support for GHC 7.10.1
+
 ## v0.9.0 - 2014-11-27
 
 * The `Value` parsers (accidentally) could throw exceptions. It's fixed now.
diff --git a/LICENSE b/LICENSE
--- a/LICENSE
+++ b/LICENSE
@@ -1,4 +1,4 @@
-Copyright (c) 2014, Mitsutoshi Aoe
+Copyright (c) 2014-2015, Mitsutoshi Aoe
 
 All rights reserved.
 
diff --git a/influxdb.cabal b/influxdb.cabal
--- a/influxdb.cabal
+++ b/influxdb.cabal
@@ -1,5 +1,5 @@
 name: influxdb
-version: 0.9.0
+version: 0.9.0.1
 synopsis: Haskell client library for InfluxDB
 description: Haskell client library for InfluxDB
 homepage: https://github.com/maoe/influxdb-haskell
@@ -7,7 +7,7 @@
 license-file: LICENSE
 author: Mitsutoshi Aoe
 maintainer: Mitsutoshi Aoe <maoe@foldr.in>
-copyright: Copyright (C) 2014 Mitsutoshi Aoe
+copyright: Copyright (C) 2014-2015 Mitsutoshi Aoe
 category: Database
 build-type: Simple
 cabal-version: >= 1.10
@@ -66,7 +66,7 @@
     ViewPatterns
   ghc-options: -Wall
   build-depends:
-      base >= 4 && < 4.8
+      base >= 4 && < 4.9
     , attoparsec < 0.13
     , bytestring
     , containers
@@ -153,5 +153,5 @@
 
 source-repository this
   type: git
-  tag: v0.9.0
+  tag: v0.9.0.1
   location: https://github.com/maoe/influxdb-haskell.git
diff --git a/src/Database/InfluxDB/Lens.hs b/src/Database/InfluxDB/Lens.hs
--- a/src/Database/InfluxDB/Lens.hs
+++ b/src/Database/InfluxDB/Lens.hs
@@ -19,7 +19,7 @@
 
 import Database.InfluxDB.Http
 
-type Lens s t a b = Functor f => (a -> f b) -> s -> f t
+type Lens s t a b = forall f. Functor f => (a -> f b) -> s -> f t
 type Lens' s a = Lens s s a a
 
 -- | User credentials for authentication
diff --git a/src/Database/InfluxDB/TH.hs b/src/Database/InfluxDB/TH.hs
--- a/src/Database/InfluxDB/TH.hs
+++ b/src/Database/InfluxDB/TH.hs
@@ -70,8 +70,13 @@
     _ -> fail $ "Expected a record, but got " ++ show con
   where
     tyVarToPred tv = case tv of
+#if MIN_VERSION_template_haskell(2, 10, 0)
+      PlainTV name -> conT ''FromValue `appT` varT name
+      KindedTV name _ -> conT ''FromValue `appT` varT name
+#else
       PlainTV name -> classP ''FromValue [varT name]
       KindedTV name _ -> classP ''FromValue [varT name]
+#endif
     deriveDecs _conName vars = do
       a <- newName "a"
       sequence
@@ -98,8 +103,13 @@
     _ -> fail $ "Expected a record, but got " ++ show con
   where
     tyVarToPred tv = case tv of
+#if MIN_VERSION_template_haskell(2, 10, 0)
+      PlainTV name -> conT ''FromValue `appT` varT name
+      KindedTV name _ -> conT ''FromValue `appT` varT name
+#else
       PlainTV name -> classP ''FromValue [varT name]
       KindedTV name _ -> classP ''FromValue [varT name]
+#endif
     deriveDec conName vars = funD 'parseSeriesData
       [ clause [] (normalB deriveBody) []
       ]
