diff --git a/ChangeLog.md b/ChangeLog.md
--- a/ChangeLog.md
+++ b/ChangeLog.md
@@ -1,3 +1,11 @@
+## 0.2.1
+
+* Allow newer versions of conduit, conduit-extra, lzma-conduit, and resourcet.
+* Relax minimum requirements on exceptions, HUnit, and text to fit better
+  with what is shipped in Fedora.
+* Remove the unused requirement on conduit-combinators.
+* payloadContentsC now wants an instance of MonadThrow.
+
 ## 0.2.0
 
 * Move parseC into a new Conduit module.
diff --git a/Codec/RPM/Conduit.hs b/Codec/RPM/Conduit.hs
--- a/Codec/RPM/Conduit.hs
+++ b/Codec/RPM/Conduit.hs
@@ -16,11 +16,12 @@
                          payloadContentsC)
  where
 
+import           Control.Monad.Catch(MonadThrow)
 import           Control.Monad.Except(MonadError, throwError)
 import           Control.Monad.Trans.Resource(MonadResource)
-import           Conduit((.|), Conduit, awaitForever, yield)
 import qualified Data.ByteString as BS
 import qualified Data.ByteString.Char8 as C
+import           Data.Conduit((.|), Conduit, awaitForever, yield)
 import           Data.Conduit.Attoparsec(ParseError, conduitParserEither)
 import           Data.Conduit.Lzma(decompress)
 import           Data.CPIO(Entry, readCPIO)
@@ -51,7 +52,7 @@
 
 -- | Extract the package payload from an 'RPM', decompress it, and return each element of
 -- the payload as a 'Data.CPIO.Entry'.
-payloadContentsC :: MonadResource m => Conduit RPM m Entry
+payloadContentsC :: (MonadResource m, MonadThrow m) => Conduit RPM m Entry
 payloadContentsC = payloadC
                 .| decompress Nothing
                 .| readCPIO
diff --git a/Makefile b/Makefile
--- a/Makefile
+++ b/Makefile
@@ -1,13 +1,19 @@
 sandbox:
-	[ -d .cabal-sandbox ] || cabal sandbox init
+	[ -d .cabal-sandbox ] || cabal sandbox init && cabal update
 
 hlint: sandbox
 	[ -x .cabal-sandbox/bin/happy ] || cabal install happy
-	[ -x .cabal-sandbox/bin/hlint ] || cabal install hlint
+	[ -x .cabal-sandbox/bin/hlint ] || cabal install hscolour==1.24.2 hlint
 	cabal exec hlint .
 
 tests: sandbox
-	cabal install --dependencies-only --enable-tests
+	cabal install --dependencies-only --enable-tests --force-reinstalls
 	cabal configure --enable-tests --enable-coverage
 	cabal build
-	cabal test
+	cabal test --show-details=always
+
+ci: hlint tests
+
+ci_after_success:
+	[ -x .cabal-sandbox/bin/hpc-coveralls ] || cabal install hpc-coveralls
+	cabal exec hpc-coveralls --display-report tests
diff --git a/codec-rpm.cabal b/codec-rpm.cabal
--- a/codec-rpm.cabal
+++ b/codec-rpm.cabal
@@ -1,5 +1,5 @@
 name:               codec-rpm
-version:            0.2.0
+version:            0.2.1
 synopsis:           A library for manipulating RPM files
 description:        This module provides a library for reading RPM files and converting them
                     into useful data structures.  There is currently no way to operate in
@@ -8,7 +8,7 @@
 category:           Distribution
 author:             Chris Lumens
 maintainer:         clumens@redhat.com
-license:            LGPL
+license:            LGPL-2.1
 license-file:       LICENSE
 cabal-version:      >= 1.18
 build-type:         Simple
@@ -39,15 +39,15 @@
                         attoparsec-binary >= 0.2 && < 0.3,
                         base >= 4.7 && < 5.0,
                         bytestring >= 0.10 && < 0.11,
-                        conduit >= 1.2.8 && < 1.3,
-                        conduit-combinators >= 1.1.0 && < 1.2,
-                        conduit-extra >= 1.1.15 && < 1.2,
+                        conduit >= 1.2.8 && < 1.4,
+                        conduit-extra >= 1.1.15 && < 1.4,
                         cpio-conduit >= 0.7.0 && < 0.8.0,
-                        lzma-conduit >= 1.1.3.3 && < 1.2,
+                        exceptions >= 0.8.3 && < 0.11.0,
+                        lzma-conduit >= 1.1.3.3 && < 1.3,
                         mtl >= 2.2.1 && < 2.3,
                         parsec >= 3.1.11 && < 3.2,
                         pretty >= 1.1.2.0,
-                        resourcet >= 1.1.9 && < 1.2,
+                        resourcet >= 1.1.9 && < 1.3,
                         text >= 1.2.2.0 && < 1.3
 
     default-language:   Haskell2010
@@ -56,18 +56,21 @@
 
 test-suite tests
     type:               exitcode-stdio-1.0
-    hs-source-dirs:     tests
+    hs-source-dirs:     ., tests
     main-is:            Spec.hs
-    
-    build-depends:      HUnit >= 1.6.0.0 && < 1.7,
-                        hspec >= 2.4.4 && < 2.5,
+
+    build-depends:      HUnit >= 1.5.0.0 && < 1.7,
+                        hspec >= 2.4.4 && < 2.6,
                         hspec-attoparsec >= 0.1.0.2 && < 0.2,
                         base >= 4.7 && < 5.0,
                         bytestring >= 0.10 && < 0.11,
-                        attoparsec >= 0.12.1.4 && < 0.13,
-                        codec-rpm,
-                        text >= 1.2.2.2 && < 1.3
+                        attoparsec >= 0.12.1.4 && < 0.14,
+                        attoparsec-binary >= 0.2 && < 0.3,
+                        parsec >= 3.1.11 && < 3.2,
+                        pretty >= 1.1.2.0,
+                        text >= 1.2.2.0 && < 1.3
 
     default-language:   Haskell2010
 
     ghc-options:        -Wall
+    cpp-options:        -DTEST
