diff --git a/ChangeLog.md b/ChangeLog.md
--- a/ChangeLog.md
+++ b/ChangeLog.md
@@ -1,3 +1,11 @@
+## 2.0.6
+
+* Dropping support of GHC 7.x
+
+## 2.0.5
+
+* Passing the correct request
+
 ## 2.0.4
 
 * Freeing dynamic tables.
diff --git a/http2.cabal b/http2.cabal
--- a/http2.cabal
+++ b/http2.cabal
@@ -1,5 +1,5 @@
 Name:                   http2
-Version:                2.0.5
+Version:                2.0.6
 Author:                 Kazu Yamamoto <kazu@iij.ad.jp>
 Maintainer:             Kazu Yamamoto <kazu@iij.ad.jp>
 License:                BSD3
@@ -95,7 +95,7 @@
                         Network.HTTP2.Server.Types
                         Network.HTTP2.Server.Worker
                         Network.HTTP2.Types
-  Build-Depends:        base >= 4.8 && < 5
+  Build-Depends:        base >= 4.9 && < 5
                       , array
                       , bytestring >= 0.10
                       , case-insensitive
@@ -180,7 +180,7 @@
                         Network.HTTP2.Types
   Build-Depends:        base >= 4 && < 5
                       , array
-                      , base16-bytestring
+                      , base16-bytestring >= 1.0
                       , bytestring
                       , case-insensitive
                       , containers
@@ -250,7 +250,7 @@
                       , aeson
                       , aeson-pretty
                       , array
-                      , base16-bytestring
+                      , base16-bytestring >= 1.0
                       , bytestring
                       , case-insensitive
                       , containers
@@ -282,7 +282,7 @@
                       , Glob >= 0.9
                       , aeson
                       , aeson-pretty
-                      , base16-bytestring
+                      , base16-bytestring >= 1.0
                       , bytestring
                       , directory
                       , filepath
@@ -311,7 +311,7 @@
                       , aeson
                       , aeson-pretty
                       , array
-                      , base16-bytestring
+                      , base16-bytestring >= 1.0
                       , bytestring
                       , case-insensitive
                       , containers
@@ -336,7 +336,7 @@
   Build-Depends:        base >= 4 && < 5
                       , aeson
                       , array
-                      , base16-bytestring
+                      , base16-bytestring >= 1.0
                       , bytestring
                       , case-insensitive
                       , containers
@@ -391,7 +391,7 @@
   Build-Depends:        base >= 4 && < 5
                       , aeson
                       , aeson-pretty
-                      , base16-bytestring
+                      , base16-bytestring >= 1.0
                       , bytestring
                       , http2
                       , text
diff --git a/test-frame/Case.hs b/test-frame/Case.hs
--- a/test-frame/Case.hs
+++ b/test-frame/Case.hs
@@ -44,7 +44,7 @@
   }
   where
     -- fromJust is unsafe
-    frm = case decodeFrame defaultSettings $ fst $ B16.decode wire_hex of
+    frm = case decodeFrame defaultSettings $ B16.decodeLenient wire_hex of
         Left  e -> error $ show e
         Right r -> r
 wireToCase CaseWire { wire_error = Just e, ..} = Case {
diff --git a/test-frame/FrameSpec.hs b/test-frame/FrameSpec.hs
--- a/test-frame/FrameSpec.hs
+++ b/test-frame/FrameSpec.hs
@@ -28,7 +28,7 @@
     case etc of
         Left _ -> putStrLn $ "JSON error: " ++ file
         Right tc -> do
-            let bin = fst $ B16.decode $ wire tc
+            let bin = B16.decodeLenient $ wire tc
                 erc = decodeFrame defaultSettings bin
             case erc of
                 Left h2err -> case err tc of
diff --git a/test-hpack/HPACKDecode.hs b/test-hpack/HPACKDecode.hs
--- a/test-hpack/HPACKDecode.hs
+++ b/test-hpack/HPACKDecode.hs
@@ -74,7 +74,7 @@
                 return $ Just $ "Headers are different in " ++ B8.unpack wirehex ++ ":\n" ++ show hs ++ "\n" ++ show hs'
   where
     wirehex = wire c
-    inp = fst $ B16.decode wirehex
+    inp = B16.decodeLenient wirehex
     hs = headers c
 
 -- | Printing 'HeaderList'.
diff --git a/test/HPACK/HeaderBlock.hs b/test/HPACK/HeaderBlock.hs
--- a/test/HPACK/HeaderBlock.hs
+++ b/test/HPACK/HeaderBlock.hs
@@ -7,7 +7,7 @@
 import Network.HPACK.Types
 
 fromHexString :: ByteString -> ByteString
-fromHexString = fst . decode
+fromHexString = decodeLenient
 
 ----------------------------------------------------------------
 
diff --git a/test/HPACK/HuffmanSpec.hs b/test/HPACK/HuffmanSpec.hs
--- a/test/HPACK/HuffmanSpec.hs
+++ b/test/HPACK/HuffmanSpec.hs
@@ -36,11 +36,11 @@
 
 shouldBeDecoded :: ByteString -> ByteString -> Expectation
 shouldBeDecoded inp out = do
-    out' <- decodeHuffman $ fst $ B16.decode inp
+    out' <- decodeHuffman $ B16.decodeLenient inp
     out' `shouldBe` out
 
 tryDecode :: ByteString -> IO ByteString
-tryDecode inp = decodeHuffman $ fst $ B16.decode inp
+tryDecode inp = decodeHuffman $ B16.decodeLenient inp
 
 spec :: Spec
 spec = do
