diff --git a/CHANGES.md b/CHANGES.md
--- a/CHANGES.md
+++ b/CHANGES.md
@@ -1,3 +1,10 @@
+1.5.0.1 (6 June 2016)
+---------------------
+
+- allow `base-4.9`
+- allow `data-default-class-0.1`
+- test with GHC 8.0.1
+
 1.5.0.0 (19 April 2015)
 -----------------------
 
diff --git a/SVGFonts.cabal b/SVGFonts.cabal
--- a/SVGFonts.cabal
+++ b/SVGFonts.cabal
@@ -1,5 +1,5 @@
 Name:             SVGFonts
-Version:          1.5.0.0
+Version:          1.5.0.1
 Synopsis:         Fonts from the SVG-Font format
 Description:      Native font support for the diagrams framework (<http://projects.haskell.org/diagrams/>). Note that this package can be used with any diagrams backend, not just the SVG backend.  The SVG-font format is easy to parse
                   and was therefore chosen for a font library completely written in Haskell.
@@ -61,7 +61,7 @@
         attoparsec,
         base == 4.*,
         containers >= 0.4 && < 0.6,
-        data-default-class < 0.1,
+        data-default-class < 0.2,
         diagrams-core >= 1.3 && < 1.4,
         diagrams-lib >= 1.3 && < 1.4,
         directory >= 1.1,
diff --git a/src/Graphics/SVGFonts/ReadFont.hs b/src/Graphics/SVGFonts/ReadFont.hs
--- a/src/Graphics/SVGFonts/ReadFont.hs
+++ b/src/Graphics/SVGFonts/ReadFont.hs
@@ -24,7 +24,6 @@
                                                   fromMaybe, isJust, isNothing,
                                                   maybeToList)
 import           Data.Tuple.Select
-import           Data.Vector                     (Vector)
 import qualified Data.Vector                     as V
 import           Diagrams.Path
 import           Diagrams.Prelude                hiding (font)
@@ -209,7 +208,7 @@
 -- ^ \[ (unicode, (glyph_name, horiz_advance, ds)) \]
 
 -- | Horizontal advance of a character consisting of its width and spacing, extracted out of the font data
-horizontalAdvance :: RealFloat n => String -> FontData n -> n
+horizontalAdvance :: String -> FontData n -> n
 horizontalAdvance ch fontD
     | isJust char = sel2 (fromJust char)
     | otherwise   = fontDataHorizontalAdvance fontD
@@ -234,7 +233,7 @@
   , kernU2S :: Map.Map String [Int]
   , kernG1S :: Map.Map String [Int]
   , kernG2S :: Map.Map String [Int]
-  , kernK   :: Vector n
+  , kernK   :: V.Vector n
   } deriving Show
 
 -- | Change the horizontal advance of two consective chars (kerning)
@@ -280,19 +279,19 @@
   where bbox = fontDataBoundingBox fontData -- bbox = [lowest x, lowest y, highest x, highest y]
 
 -- | Lowest x-value of bounding box
-bbox_lx :: RealFloat n => FontData n -> n
+bbox_lx :: FontData n -> n
 bbox_lx fontData   = (fontDataBoundingBox fontData) !! 0
 
 -- | Lowest y-value of bounding box
-bbox_ly :: RealFloat n => FontData n -> n
+bbox_ly :: FontData n -> n
 bbox_ly fontData   = (fontDataBoundingBox fontData) !! 1
 
 -- | Position of the underline bar
-underlinePosition :: RealFloat n => FontData n -> n
+underlinePosition :: FontData n -> n
 underlinePosition fontData = fontDataUnderlinePos fontData
 
 -- | Thickness of the underline bar
-underlineThickness :: RealFloat n => FontData n -> n
+underlineThickness :: FontData n -> n
 underlineThickness fontData = fontDataUnderlineThickness fontData
 
 -- | A map of unicode characters to outline paths.
@@ -305,8 +304,7 @@
 type PreparedFont n = (FontData n, OutlineMap n)
 
 -- | Compute a font's outline map, collecting errors in a second map.
-outlineMap :: (Read n, RealFloat n) =>
-              FontData n -> (OutlineMap n, ErrorMap)
+outlineMap :: RealFloat n => FontData n -> (OutlineMap n, ErrorMap)
 outlineMap fontData =
     ( Map.fromList [(ch, outl) | (ch, Right outl) <- allOutlines]
     , Map.fromList [(ch, err)  | (ch, Left err)   <- allOutlines]
@@ -319,8 +317,7 @@
     allOutlines = [(ch, outlines ch) | ch <- allUnicodes]
 
 -- | Prepare font for rendering, by determining its outline map.
-prepareFont :: (Read n, RealFloat n) =>
-               FontData n -> (PreparedFont n, ErrorMap)
+prepareFont :: RealFloat n => FontData n -> (PreparedFont n, ErrorMap)
 prepareFont fontData = ((fontData, outlines), errs)
   where
     (outlines, errs) = outlineMap fontData
