diff --git a/cairo-canvas.cabal b/cairo-canvas.cabal
--- a/cairo-canvas.cabal
+++ b/cairo-canvas.cabal
@@ -1,5 +1,5 @@
 name:                cairo-canvas
-version:             0.1.0.0
+version:             0.1.0.1
 synopsis:            Simpler drawing API for Cairo.
 description:         This library provides an alternative drawing API for
                      Cairo which is heavily inspired by Processing and
@@ -20,11 +20,11 @@
   exposed-modules:     Graphics.Rendering.Cairo.Canvas
   --other-modules:
   build-depends:       base >=4.7 && <5
-                     , cairo >=0.13
-                     , linear
-                     , mtl
-                     , random
-                     , time
+                     , cairo >= 0.13.12 && < 0.14
+                     , mtl >= 2.3.1 && < 2.4
+                     , time >= 1.12.2 && < 1.13
+                     , random >= 1.3.1 && < 1.4
+                     , linear >= 1.23.1 && < 1.24
 
 flag builddemo
   description:       Build the little demo
@@ -45,6 +45,7 @@
                      , mtl
                      , random
                      , time
+
   else
     buildable:         False
 
diff --git a/src/Graphics/Rendering/Cairo/Canvas.hs b/src/Graphics/Rendering/Cairo/Canvas.hs
--- a/src/Graphics/Rendering/Cairo/Canvas.hs
+++ b/src/Graphics/Rendering/Cairo/Canvas.hs
@@ -74,6 +74,7 @@
 import Control.Applicative
 #endif
 
+import Control.Monad (when, forM_, (<=<))
 import Control.Monad.State
 import Data.Word (Word8)
 
