diff --git a/ChangeLog.md b/ChangeLog.md
--- a/ChangeLog.md
+++ b/ChangeLog.md
@@ -1,3 +1,7 @@
+## 0.10.4
+
+* Expose all of Data.Functor
+
 ## 0.10.3
 
 * Expose `liftA` functions and `<**>` [#94](https://github.com/snoyberg/classy-prelude/pull/94)
diff --git a/ClassyPrelude.hs b/ClassyPrelude.hs
--- a/ClassyPrelude.hs
+++ b/ClassyPrelude.hs
@@ -11,6 +11,8 @@
       -- ** Semigroup
     , Semigroup (..)
     , WrappedMonoid
+      -- ** Functor
+    , module Data.Functor
       -- ** Applicative
     , module Control.Applicative
       -- ** Monad
@@ -163,6 +165,7 @@
 
 import qualified Prelude
 import Control.Applicative ((<**>),liftA,liftA2,liftA3)
+import Data.Functor
 import Control.Exception (assert)
 import Control.Exception.Enclosed
 import Control.Monad (when, unless, void, liftM, ap, forever, join, replicateM_, guard, MonadPlus (..), (=<<), (>=>), (<=<), liftM2, liftM3, liftM4, liftM5)
diff --git a/classy-prelude.cabal b/classy-prelude.cabal
--- a/classy-prelude.cabal
+++ b/classy-prelude.cabal
@@ -1,5 +1,5 @@
 name:                classy-prelude
-version:             0.10.3
+version:             0.10.4
 synopsis:            A typeclass-based Prelude.
 description:         Modern best practices without name collisions. No partial functions are exposed, but modern data structures are, without requiring import lists. Qualified modules also are not needed: instead operations are based on type-classes from the mono-traversable package.
 
