diff --git a/Text/Pandoc/Builder.hs b/Text/Pandoc/Builder.hs
--- a/Text/Pandoc/Builder.hs
+++ b/Text/Pandoc/Builder.hs
@@ -170,6 +170,7 @@
 import qualified Data.Map as M
 import Data.Sequence (Seq, (|>), viewr, viewl, ViewR(..), ViewL(..))
 import qualified Data.Sequence as Seq
+import Data.Traversable (Traversable)
 import Data.Foldable (Foldable)
 import qualified Data.Foldable as F
 import Data.List (groupBy)
diff --git a/Text/Pandoc/Walk.hs b/Text/Pandoc/Walk.hs
--- a/Text/Pandoc/Walk.hs
+++ b/Text/Pandoc/Walk.hs
@@ -1,4 +1,7 @@
 {-# LANGUAGE MultiParamTypeClasses, FlexibleInstances, ScopedTypeVariables, CPP #-}
+#if MIN_VERSION_base(4,9,0)
+{-# OPTIONS_GHC -fno-warn-redundant-constraints #-}
+#endif
 #if MIN_VERSION_base(4,8,0)
 #define OVERLAPS {-# OVERLAPPING #-}
 #else
@@ -103,7 +106,7 @@
   -- occurrence of an @a@ with the result of applying @f@ to it.
   walk  :: (a -> a) -> b -> b
   -- | A monadic version of 'walk'.
-  walkM :: (Monad m) => (a -> m a) -> b -> m b
+  walkM :: (Monad m, Functor m) => (a -> m a) -> b -> m b
   -- | @query f x@ walks the structure @x@ (bottom up) and applies @f@
   -- to every @a@, appending the results.
   query :: Monoid c => (a -> c) -> b -> c
diff --git a/changelog b/changelog
--- a/changelog
+++ b/changelog
@@ -1,3 +1,10 @@
+[1.17.0.4]
+
+  * Re-add Functor constraint to walkM, needed for ghc 7.8.
+  * Turn off redundant-constraints warning for Walk (for ghc 8.0.1+).
+  * Added necessary Data.Traversable import.
+  * Allow HUnit 1.5.
+
 [1.17.0.3]
 
   * More ghc 7.8 compatibility imports.
diff --git a/pandoc-types.cabal b/pandoc-types.cabal
--- a/pandoc-types.cabal
+++ b/pandoc-types.cabal
@@ -1,5 +1,5 @@
 Name:                pandoc-types
-Version:             1.17.0.3
+Version:             1.17.0.4
 Synopsis:            Types for representing a structured document
 Description:         @Text.Pandoc.Definition@ defines the 'Pandoc' data
                      structure, which is used by pandoc to represent
@@ -71,6 +71,6 @@
                        test-framework-hunit >= 0.2 && < 0.4,
                        test-framework-quickcheck2 >= 0.2.9 && < 0.4,
                        QuickCheck >= 2.4 && < 2.10,
-                       HUnit >= 1.2 && < 1.4,
+                       HUnit >= 1.2 && < 1.6,
                        string-qq == 0.0.2
   ghc-options:         -threaded -rtsopts -with-rtsopts=-N
