diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,8 @@
+# 0.1.3.0
+
+* Moved some internally used functions to `Lens.Micro.Internal` in microlens.
+* Bumped base version.
+
 # 0.1.2.0
 
 * Package now compiles with `-O2` and other optimisations by default.
diff --git a/microlens-mtl.cabal b/microlens-mtl.cabal
--- a/microlens-mtl.cabal
+++ b/microlens-mtl.cabal
@@ -1,5 +1,5 @@
 name:                microlens-mtl
-version:             0.1.2.0
+version:             0.1.3.0
 synopsis:            microlens support for Reader/Writer/State from mtl
 description:
   This package contains functions (like 'view' or '+=') which work   
@@ -25,8 +25,8 @@
   exposed-modules:     Lens.Micro.Mtl
   other-modules:       Lens.Micro.Mtl.Zoom
   -- other-extensions:    
-  build-depends:       base >=4.4 && <5
-                     , microlens ==0.1.*
+  build-depends:       base >=4.5 && <5
+                     , microlens >=0.1.5.0 && <0.2
                      , mtl >=2.0.1 && <2.3
                      , transformers >=0.2 && <0.5
                      , transformers-compat >=0.4 && <1
diff --git a/src/Lens/Micro/Mtl.hs b/src/Lens/Micro/Mtl.hs
--- a/src/Lens/Micro/Mtl.hs
+++ b/src/Lens/Micro/Mtl.hs
@@ -40,6 +40,7 @@
 -- microlens
 import Lens.Micro
 import Lens.Micro.Extras
+import Lens.Micro.Internal
 -- Internal modules
 import Lens.Micro.Mtl.Zoom
 
diff --git a/src/Lens/Micro/Mtl/Zoom.hs b/src/Lens/Micro/Mtl/Zoom.hs
--- a/src/Lens/Micro/Mtl/Zoom.hs
+++ b/src/Lens/Micro/Mtl/Zoom.hs
@@ -33,32 +33,8 @@
 import Control.Monad.Trans.Identity
 import Control.Monad.Trans.Maybe
 
-#if __GLASGOW_HASKELL__ >= 708
-import Data.Coerce
-#else
-import Unsafe.Coerce
-#endif
-
 #if __GLASGOW_HASKELL__ < 710
 import Data.Monoid
-#endif
-
-------------------------------------------------------------------------------
--- Data.Profunctor.Unsafe
-------------------------------------------------------------------------------
-
-#if __GLASGOW_HASKELL__ >= 708
-( #. ) :: Coercible c b => (b -> c) -> (a -> b) -> (a -> c)
-( #. ) _ = coerce (\x -> x :: b) :: forall a b. Coercible b a => a -> b
-
-( .# ) :: Coercible b a => (b -> c) -> (a -> b) -> (a -> c)
-( .# ) pbc _ = coerce pbc
-#else
-( #. ) :: (b -> c) -> (a -> b) -> (a -> c)
-( #. ) _ = unsafeCoerce
-
-( .# ) :: (b -> c) -> (a -> b) -> (a -> c)
-( .# ) pbc _ = unsafeCoerce pbc
 #endif
 
 ------------------------------------------------------------------------------
