diff --git a/amqp-streamly.cabal b/amqp-streamly.cabal
--- a/amqp-streamly.cabal
+++ b/amqp-streamly.cabal
@@ -4,10 +4,10 @@
 --
 -- see: https://github.com/sol/hpack
 --
--- hash: 883a06194530c85ee177d2874920bdd083733790a52ce65cb49c188113a986f5
+-- hash: 0e93b864e2ba6a1bd099a1c10b3f25dea8b453a814deb8e26158692a76eca769
 
 name:           amqp-streamly
-version:        0.2.0
+version:        0.2.1
 synopsis:       A simple streamly wrapper for amqp
 description:    A simple streamly wrapper for amqp. Provides two functions `produce` and `consume`.
 category:       streamly, conduit, amqp, rabbitmq
@@ -35,10 +35,10 @@
   hs-source-dirs:
       src
   build-depends:
-      amqp >=0.19.1 && <0.21
+      amqp >=0.19.1 && <0.23
     , base >=4.7 && <5
-    , streamly >=0.7.2 && <0.8
-    , text >=1.2.4.0 && <1.3
+    , streamly >=0.7.2 && <=0.9
+    , text >=1.2.4.0 && <3
   default-language: Haskell2010
 
 test-suite amqp-streamly-test
@@ -51,13 +51,13 @@
       test
   ghc-options: -threaded -rtsopts -with-rtsopts=-N
   build-depends:
-      amqp >=0.19.1 && <0.21
+      amqp >=0.19.1 && <0.23
     , amqp-streamly
     , base >=4.7 && <5
-    , bytestring >=0.10.10.0 && <0.11
-    , hspec >=2.7.1 && <2.8
-    , process >=1.6.8.0 && <1.7
-    , streamly >=0.7.2 && <0.8
-    , testcontainers ==0.1.*
-    , text >=1.2.4.0 && <1.3
+    , bytestring
+    , hspec
+    , process
+    , streamly >=0.7.2 && <=0.9
+    , testcontainers
+    , text >=1.2.4.0 && <3
   default-language: Haskell2010
diff --git a/src/Network/AMQP/Streamly.hs b/src/Network/AMQP/Streamly.hs
--- a/src/Network/AMQP/Streamly.hs
+++ b/src/Network/AMQP/Streamly.hs
@@ -17,8 +17,8 @@
 
 import           Data.Text                      ( Text )
 import           Network.AMQP
-import           Streamly
-import qualified Streamly.Internal.Prelude     as S
+import           Streamly.Prelude
+import qualified Streamly.Internal.Data.Stream.IsStream.Common     as S
 import qualified Streamly.Prelude              as S
 
 -- | Informations to be sent
diff --git a/test/Network/AMQP/StreamlySpec.hs b/test/Network/AMQP/StreamlySpec.hs
--- a/test/Network/AMQP/StreamlySpec.hs
+++ b/test/Network/AMQP/StreamlySpec.hs
@@ -1,4 +1,5 @@
 {-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE FlexibleContexts #-}
 
 module Network.AMQP.StreamlySpec
   ( main
@@ -14,6 +15,7 @@
 import           Network.AMQP
 import           Test.Hspec
 import           TestContainers.Hspec
+import qualified TestContainers.Docker as D
 import qualified Data.ByteString.Lazy.Char8    as B
 import           Data.Maybe                     ( fromJust )
 import qualified Data.Text                     as T
@@ -74,13 +76,13 @@
   connection <- openConnection ip "/" login password
   openChannel connection
 
-getIp :: Container -> IO String
-getIp (Container id _ _) = format <$> readProcess
+getIp :: D.Container -> IO String
+getIp c = format <$> readProcess
   "docker"
   [ "inspect"
   , "-f"
   , "'{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}'"
-  , T.unpack id
+  , T.unpack $ D.containerId c
   ]
   ""
   where format = init . init . tail
@@ -88,7 +90,7 @@
 containers :: MonadDocker m => m Channel
 containers = do
   let (login, password) = ("guest", "guest")
-  container <- run (fromTag "rabbitmq:3.8.4") defaultContainerRequest
+  container <- run (containerRequest $ fromTag "rabbitmq:3.8.4")
   liftIO $ threadDelay $ 15 * 1000 * 1000
   ip <- liftIO $ getIp container
   liftIO $ mkChannel login password ip
