diff --git a/lib/Polysemy/Http/Data/Request.hs b/lib/Polysemy/Http/Data/Request.hs
--- a/lib/Polysemy/Http/Data/Request.hs
+++ b/lib/Polysemy/Http/Data/Request.hs
@@ -91,6 +91,10 @@
   deriving newtype (IsString, Monoid)
 
 instance Semigroup Path where
+  "" <> r =
+    r
+  l <> "" =
+    l
   Path l <> Path r =
     Path (Text.dropWhileEnd ('/' ==) l <> "/" <> Text.dropWhile ('/' ==) r)
 
diff --git a/polysemy-http.cabal b/polysemy-http.cabal
--- a/polysemy-http.cabal
+++ b/polysemy-http.cabal
@@ -5,7 +5,7 @@
 -- see: https://github.com/sol/hpack
 
 name:           polysemy-http
-version:        0.8.0.0
+version:        0.9.0.0
 synopsis:       Polysemy effects for HTTP clients
 description:    See https://hackage.haskell.org/package/polysemy-http/docs/Polysemy-Http.html
 category:       Network
@@ -119,7 +119,7 @@
     , http-types >=0.12.3
     , polysemy >=1.6
     , polysemy-plugin >=0.4
-    , prelate ==0.1.*
+    , prelate ==0.2.*
     , time
   mixins:
       base hiding (Prelude)
@@ -211,9 +211,7 @@
     , polysemy >=1.6
     , polysemy-http
     , polysemy-plugin >=0.4
-    , polysemy-time
-    , prelate ==0.1.*
-    , servant
+    , prelate ==0.2.*
     , servant-client
     , servant-server
     , tasty
@@ -305,7 +303,7 @@
     , polysemy >=1.6
     , polysemy-http
     , polysemy-plugin >=0.4
-    , prelate ==0.1.*
+    , prelate ==0.2.*
     , tasty
     , tasty-hedgehog
   mixins:
