diff --git a/CHANGELOG.markdown b/CHANGELOG.markdown
--- a/CHANGELOG.markdown
+++ b/CHANGELOG.markdown
@@ -1,3 +1,7 @@
+4.7.0.1 [maintenance release]
+---
+* `primitive` 0.6 support
+
 4.7
 ---
 * Migrated `Control.Lens.Action` to `lens-action`.
diff --git a/lens.cabal b/lens.cabal
--- a/lens.cabal
+++ b/lens.cabal
@@ -1,6 +1,6 @@
 name:          lens
 category:      Data, Lenses, Generics
-version:       4.7
+version:       4.7.0.1
 license:       BSD3
 cabal-version: >= 1.8
 license-file:  LICENSE
@@ -196,7 +196,7 @@
     exceptions                >= 0.1.1    && < 1,
     mtl                       >= 2.0.1    && < 2.3,
     parallel                  >= 3.1.0.1  && < 3.3,
-    primitive                 >= 0.4.0.1  && < 0.6,
+    primitive                 >= 0.4.0.1  && < 0.7,
     profunctors               >= 4        && < 5,
     reflection                >= 1.1.6    && < 2,
     semigroupoids             >= 4        && < 5,
diff --git a/src/Control/Monad/Primitive/Lens.hs b/src/Control/Monad/Primitive/Lens.hs
--- a/src/Control/Monad/Primitive/Lens.hs
+++ b/src/Control/Monad/Primitive/Lens.hs
@@ -1,6 +1,12 @@
+{-# LANGUAGE CPP #-}
 {-# LANGUAGE MagicHash #-}
 {-# LANGUAGE UnboxedTuples #-}
 {-# LANGUAGE TypeFamilies #-}
+
+#ifndef MIN_VERSION_primitive
+#define MIN_VERSION_primitive(x,y,z) 1
+#endif
+
 -----------------------------------------------------------------------------
 -- |
 -- Module      :  Control.Monad.Primitive.Lens
@@ -17,11 +23,15 @@
   ) where
 
 import Control.Lens
-import Control.Monad.Primitive (PrimMonad(..))
+import Control.Monad.Primitive
 import GHC.Prim (State#)
 
 {-# ANN module "HLint: ignore Unused LANGUAGE pragma" #-}
 
-prim :: (PrimMonad m) => Iso' (m a) (State# (PrimState m) -> (# State# (PrimState m), a #))
+#if MIN_VERSION_primitive(0,6,0)
+prim :: PrimBase m => Iso' (m a) (State# (PrimState m) -> (# State# (PrimState m), a #))
+#else
+prim :: PrimMonad m => Iso' (m a) (State# (PrimState m) -> (# State# (PrimState m), a #))
+#endif
 prim = iso internal primitive
 {-# INLINE prim #-}
