diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,7 @@
+4.0.1
+-----
+* `semigroupoids` 5 compatibility
+
 4.0
 ---
 * `semigroupoids` 4 compatibility
diff --git a/Control/Monad/Product.hs b/Control/Monad/Product.hs
--- a/Control/Monad/Product.hs
+++ b/Control/Monad/Product.hs
@@ -8,7 +8,7 @@
 -- Stability   :  provisional
 -- Portability :  portable
 --
--- Monad Products 
+-- Monad Products
 ----------------------------------------------------------------------------
 
 module Control.Monad.Product
@@ -21,7 +21,7 @@
 import Control.Monad
 
 -- | disjoint 'Graph' union as a 'Monad' product
-newtype Product g h a = Product { runProduct :: (g a, h a) } 
+newtype Product g h a = Product { runProduct :: (g a, h a) }
 
 instance (Functor g, Functor h) => Functor (Product g h) where
   fmap f (Product (g, h)) = Product (fmap f g, fmap f h)
@@ -40,7 +40,7 @@
 
 instance (Bind g, Bind h) => Bind (Product g h) where
   Product (g, h) >>- k = Product (g >>- fst . runProduct . k, h >>- snd . runProduct . k)
-  
+
 instance (Monad g, Monad h) => Monad (Product g h) where
   return a = Product (return a, return a)
   Product (g, h) >>= k = Product (g >>= fst . runProduct . k, h >>= snd . runProduct . k)
diff --git a/monad-products.cabal b/monad-products.cabal
--- a/monad-products.cabal
+++ b/monad-products.cabal
@@ -1,6 +1,6 @@
 name:          monad-products
 category:      Control, Monads
-version:       4.0.0.1
+version:       4.0.1
 license:       BSD3
 cabal-version: >= 1.6
 license-file:  LICENSE
@@ -22,7 +22,7 @@
 library
   build-depends:
     base          >= 4 && < 5,
-    semigroupoids >= 4 && < 5
+    semigroupoids >= 4 && < 6
 
   exposed-modules:
     Control.Monad.Product
