diff --git a/CHANGES.markdown b/CHANGES.markdown
--- a/CHANGES.markdown
+++ b/CHANGES.markdown
@@ -1,3 +1,14 @@
+1.0.1 (26 January 2014)
+-----------------------
+
+    - Depend on `hashable` package, and add `Hashable` instance for
+      `SizeSpec2D`.
+
+      Technically, the PVP specifies that adding a new instance
+      requires a major version bump.  However, I highly doubt anyone
+      was making their own orphan `Hashable` instances before.  Feel
+      free to yell at Brent if this breaks your build.
+
 1.0.0.1 (28 November 2013)
 --------------------------
 
diff --git a/diagrams-lib.cabal b/diagrams-lib.cabal
--- a/diagrams-lib.cabal
+++ b/diagrams-lib.cabal
@@ -1,5 +1,5 @@
 Name:                diagrams-lib
-Version:             1.0.0.1
+Version:             1.0.1
 Synopsis:            Embedded domain-specific language for declarative graphics
 Description:         Diagrams is a flexible, extensible EDSL for creating
                      graphics of many types.  Graphics can be created
@@ -102,6 +102,9 @@
                        tagged >= 0.7,
                        optparse-applicative >= 0.7 && < 0.8,
                        filepath,
-                       safe >= 0.2 && < 0.4
+                       safe >= 0.2 && < 0.4,
+                       hashable >= 1.1 && < 1.3
+  if impl(ghc < 7.6)
+    Build-depends: ghc-prim
   Hs-source-dirs:      src
   default-language:    Haskell2010
diff --git a/src/Diagrams/TwoD/Size.hs b/src/Diagrams/TwoD/Size.hs
--- a/src/Diagrams/TwoD/Size.hs
+++ b/src/Diagrams/TwoD/Size.hs
@@ -1,3 +1,4 @@
+{-# LANGUAGE DeriveGeneric    #-}
 {-# LANGUAGE FlexibleContexts #-}
 {-# LANGUAGE TypeFamilies     #-}
 
@@ -35,6 +36,8 @@
 
 import           Control.Applicative  (liftA2, (<$>))
 import           Control.Arrow        ((&&&), (***))
+import           Data.Hashable        (Hashable)
+import           GHC.Generics         (Generic)
 
 ------------------------------------------------------------
 -- Computing diagram sizes
@@ -93,7 +96,9 @@
                 | Absolute            -- ^ Absolute size: use whatever
                                       -- size an object already has;
                                       -- do not rescale.
-  deriving (Eq, Ord, Show)
+  deriving (Eq, Ord, Show, Generic)
+
+instance Hashable SizeSpec2D
 
 -- | Create a size specification from a possibly-specified width and
 --   height.
