diff --git a/Data/RangeSpace.hs b/Data/RangeSpace.hs
--- a/Data/RangeSpace.hs
+++ b/Data/RangeSpace.hs
@@ -1,3 +1,4 @@
+{-# LANGUAGE CPP #-}
 {-# LANGUAGE BangPatterns #-}
 {-# LANGUAGE DeriveFunctor #-}
 {-# LANGUAGE FlexibleContexts #-}
@@ -37,8 +38,10 @@
 , range2D
 , fromRange2D
 
+#if !MIN_VERSION_vector_space_points(0,1,2)
 -- ** AffineSpace conversions
 , unPoint
+#endif
 
 -- * Functions
 -- ** Combining ranges
@@ -71,9 +74,15 @@
 import Control.Arrow             ((***))
 import Data.List                 (zipWith4)
 
--- | This should be provided by the AffineSpace.Point module, but isn't.
+#if MIN_VERSION_vector_space_points(0,1,2)
+-- nothing to be done, unPoint should be included
+#else
+-- | This is provided by AffineSpace.Point in vector-space-points >= 0.1.2, but
+-- you appear to be using an older version.
 unPoint :: Point v -> v
 unPoint (P v) = v
+
+#endif
 
 -- | Define a Range over some domain
 data Range t = Range !t !t
diff --git a/range-space.cabal b/range-space.cabal
--- a/range-space.cabal
+++ b/range-space.cabal
@@ -2,7 +2,7 @@
 -- documentation, see http://haskell.org/cabal/users-guide/
 
 name:                range-space
-version:             0.1.0.1
+version:             0.1.0.2
 synopsis:            A Range type with vector-space instances
 description:         Provides functions for converting between ranges and spans
 homepage:            https://github.com/JohnLato/range-space
@@ -24,6 +24,7 @@
   build-depends:       base >= 4.5 && < 5
                       ,vector-space == 0.8.*
                       ,vector-space-points == 0.1.*
+  default-extensions: CPP
 
 Test-Suite test
   default-language: Haskell2010
