diff --git a/changelog.md b/changelog.md
new file mode 100644
--- /dev/null
+++ b/changelog.md
@@ -0,0 +1,3 @@
+0.1.0.0
+* Update deps
+* Allow newer GHC versions
diff --git a/crc.cabal b/crc.cabal
--- a/crc.cabal
+++ b/crc.cabal
@@ -1,5 +1,5 @@
 name:                crc
-version:             0.0.1.1
+version:             0.1.0.0
 synopsis:            Implements various Cyclic Redundancy Checks (CRC)
 description:         ByteString-based Cyclic Redundancy Checks
 homepage:            http://github.com/MichaelXavier/crc
@@ -10,7 +10,8 @@
 copyright:           2015 Michael Xavier
 category:            Web
 build-type:          Simple
--- extra-source-files:
+extra-source-files:
+  changelog.md
 cabal-version:       >=1.10
 
 flag lib-Werror
@@ -43,7 +44,7 @@
                      , crc
                      , tasty
                      , tasty-golden
-                     , conduit
+                     , conduit >= 1.2.8
                      , conduit-extra
                      , bytestring
                      , resourcet
diff --git a/src/Data/Digest/CRC.hs b/src/Data/Digest/CRC.hs
--- a/src/Data/Digest/CRC.hs
+++ b/src/Data/Digest/CRC.hs
@@ -1,4 +1,9 @@
-{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE CPP                    #-}
+#if __GLASGOW_HASKELL__ >= 800
+{-# LANGUAGE TypeFamilyDependencies #-}
+#else
+{-# LANGUAGE TypeFamilies           #-}
+#endif
 module Data.Digest.CRC
     ( CRC(..)
     , digest
@@ -14,7 +19,11 @@
 
 
 class CRC a where
+#if __GLASGOW_HASKELL__ >= 800
+  type CRCWord a = r | r -> a
+#else
   type CRCWord a
+#endif
   initCRC :: a
   crcWord :: a -> CRCWord a
   updateDigest :: a -> ByteString -> a
diff --git a/test/Main.hs b/test/Main.hs
--- a/test/Main.hs
+++ b/test/Main.hs
@@ -14,7 +14,7 @@
 import           Data.Conduit
 import           Data.Conduit.Binary          as CB
 import           Data.Conduit.List            as CL
-import           Data.Monoid
+import           Data.Monoid                  as M
 import           Data.Proxy
 import           Data.Word
 import           Test.Tasty
@@ -47,13 +47,13 @@
 digestGolden :: forall a. (CRC a, HexBuilder (CRCWord a)) => FilePath -> Proxy a -> TestTree
 digestGolden f _ = goldenVsString f goldenPath mkDigests
   where
-    goldenPath = "test/data/" <> f
-    mkDigests = runResourceT $
-      sourceFile "test/data/inputs" =$=
-        CB.lines =$=
-        CL.map digest =$=
-        CL.map (toHex :: a -> ByteString) =$=
-        CL.map toHexLine $$
+    goldenPath = "test/data/" M.<> f
+    mkDigests = runResourceT $ runConduit $
+      sourceFile "test/data/inputs" .|
+        CB.lines .|
+        CL.map digest .|
+        CL.map (toHex :: a -> ByteString) .|
+        CL.map toHexLine .|
         sinkLbs
 
 
