diff --git a/ChangeLog b/ChangeLog
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,4 +1,8 @@
-2016-08-21 Facundo Domínguez <facundo.dominguez@tweag.io> 0.7.0
+2017-08-22 Facundo Domínguez <facundo.dominguez@tweag.io> 0.7.1
+
+* Relax upper bounds in dependencies to build with ghc-8.2.1.
+
+2017-08-21 Facundo Domínguez <facundo.dominguez@tweag.io> 0.7.0
 
 * Change type of message sent by `say` from a 3-tuple to a proper
 type (`SayMessage`) with a proper `UTCTime`. (#291)
diff --git a/benchmarks/Channels.hs b/benchmarks/Channels.hs
--- a/benchmarks/Channels.hs
+++ b/benchmarks/Channels.hs
@@ -36,6 +36,7 @@
 main :: IO ()
 main = do
   [role, host, port] <- getArgs
-  Right transport <- createTransport host port defaultTCPParameters
+  Right transport <- createTransport
+      host port (\sn -> (host, port)) defaultTCPParameters
   node <- newLocalNode transport initRemoteTable
   runProcess node $ initialProcess role
diff --git a/benchmarks/Latency.hs b/benchmarks/Latency.hs
--- a/benchmarks/Latency.hs
+++ b/benchmarks/Latency.hs
@@ -31,6 +31,7 @@
 main :: IO ()
 main = do
   [role, host, port] <- getArgs
-  Right transport <- createTransport host port defaultTCPParameters
+  Right transport <- createTransport
+      host port (\sn -> (host, sn)) defaultTCPParameters
   node <- newLocalNode transport initRemoteTable
   runProcess node $ initialProcess role
diff --git a/benchmarks/ProcessRing.hs b/benchmarks/ProcessRing.hs
--- a/benchmarks/ProcessRing.hs
+++ b/benchmarks/ProcessRing.hs
@@ -110,7 +110,8 @@
   argv <- getArgs
   (opt, _) <- parseArgv argv
   putStrLn $ "options: " ++ (show opt)
-  Right transport <- createTransport "127.0.0.1" "8090" defaultTCPParameters
+  Right transport <- createTransport
+    "127.0.0.1" "8090" (\sn -> ("127.0.0.1", sn)) defaultTCPParameters
   node <- newLocalNode transport initRemoteTable
   catch (void $ runProcess node $ initialProcess opt)
         (\(e :: SomeException) -> putStrLn $ "ERROR: " ++ (show e))
diff --git a/benchmarks/Spawns.hs b/benchmarks/Spawns.hs
--- a/benchmarks/Spawns.hs
+++ b/benchmarks/Spawns.hs
@@ -42,6 +42,7 @@
 main :: IO ()
 main = do
   [role, host, port] <- getArgs
-  Right transport <- createTransport host port defaultTCPParameters
+  Right transport <- createTransport
+    host port (\sn -> (host, sn)) defaultTCPParameters
   node <- newLocalNode transport initRemoteTable
   runProcess node $ initialProcess role
diff --git a/benchmarks/Throughput.hs b/benchmarks/Throughput.hs
--- a/benchmarks/Throughput.hs
+++ b/benchmarks/Throughput.hs
@@ -67,6 +67,7 @@
 main :: IO ()
 main = do
   [role, host, port] <- getArgs
-  Right transport <- createTransport host port defaultTCPParameters
+  Right transport <- createTransport
+      host port (\sn -> (host, sn)) defaultTCPParameters
   node <- newLocalNode transport initRemoteTable
   runProcess node $ initialProcess role
diff --git a/distributed-process.cabal b/distributed-process.cabal
--- a/distributed-process.cabal
+++ b/distributed-process.cabal
@@ -1,5 +1,5 @@
 Name:          distributed-process
-Version:       0.7.0
+Version:       0.7.1
 Cabal-Version: >=1.8
 Build-Type:    Simple
 License:       BSD3
@@ -52,7 +52,7 @@
                      bytestring >= 0.9 && < 0.11,
                      random >= 1.0 && < 1.2,
                      distributed-static >= 0.2 && < 0.4,
-                     rank1dynamic >= 0.1 && < 0.4,
+                     rank1dynamic >= 0.1 && < 0.5,
                      syb >= 0.3 && < 0.8,
                      exceptions >= 0.5,
                      containers >= 0.5 && < 0.6,
@@ -111,7 +111,7 @@
      Build-Depends:   time >= 1.5
   if flag(th)
      other-extensions: TemplateHaskell
-     Build-Depends: template-haskell >= 2.6 && < 2.12
+     Build-Depends: template-haskell >= 2.6
      Exposed-modules: Control.Distributed.Process.Internal.Closure.TH
      CPP-Options:     -DTemplateHaskellSupport
 
@@ -121,7 +121,7 @@
   Type:            exitcode-stdio-1.0
   Build-Depends:   base >= 4.6 && < 5,
                    distributed-process,
-                   network-transport-tcp >= 0.3 && < 0.6,
+                   network-transport-tcp >= 0.3 && < 0.7,
                    bytestring >= 0.9 && < 0.11,
                    binary >= 0.6.3 && < 0.9
   Main-Is:         benchmarks/Throughput.hs
@@ -131,7 +131,7 @@
   Type:            exitcode-stdio-1.0
   Build-Depends:   base >= 4.6 && < 5,
                    distributed-process,
-                   network-transport-tcp >= 0.3 && < 0.6,
+                   network-transport-tcp >= 0.3 && < 0.7,
                    bytestring >= 0.9 && < 0.11,
                    binary >= 0.6.3 && < 0.9
   Main-Is:         benchmarks/Latency.hs
@@ -141,7 +141,7 @@
   Type:            exitcode-stdio-1.0
   Build-Depends:   base >= 4.6 && < 5,
                    distributed-process,
-                   network-transport-tcp >= 0.3 && < 0.6,
+                   network-transport-tcp >= 0.3 && < 0.7,
                    bytestring >= 0.9 && < 0.11,
                    binary >= 0.6.3 && < 0.9
   Main-Is:         benchmarks/Channels.hs
@@ -151,7 +151,7 @@
   Type:            exitcode-stdio-1.0
   Build-Depends:   base >= 4.6 && < 5,
                    distributed-process,
-                   network-transport-tcp >= 0.3 && < 0.6,
+                   network-transport-tcp >= 0.3 && < 0.7,
                    bytestring >= 0.9 && < 0.11,
                    binary >= 0.6.3 && < 0.9
   Main-Is:         benchmarks/Spawns.hs
@@ -161,7 +161,7 @@
   Type:            exitcode-stdio-1.0
   Build-Depends:   base >= 4.6 && < 5,
                    distributed-process,
-                   network-transport-tcp >= 0.3 && < 0.6,
+                   network-transport-tcp >= 0.3 && < 0.7,
                    bytestring >= 0.9 && < 0.11,
                    binary >= 0.6.3 && < 0.9
   Main-Is:         benchmarks/ProcessRing.hs
