diff --git a/changelog.md b/changelog.md
--- a/changelog.md
+++ b/changelog.md
@@ -1,3 +1,6 @@
+0.1.9
+* Fix type bug in serializeRelativeRef'
+
 0.1.8
 * Fix bug where uri-encoded paths would not decode when parsed.
 
diff --git a/src/URI/ByteString/Internal.hs b/src/URI/ByteString/Internal.hs
--- a/src/URI/ByteString/Internal.hs
+++ b/src/URI/ByteString/Internal.hs
@@ -80,8 +80,8 @@
     fragment = maybe mempty (\s -> c8 '#' <> bs s) rrFragment
 
 -- | Like 'serializeRelativeRef', with conversion into a strict 'ByteString'.
-serializeRelativeRef' :: URI -> ByteString
-serializeRelativeRef' = BB.toByteString . serializeURI
+serializeRelativeRef' :: RelativeRef -> ByteString
+serializeRelativeRef' = BB.toByteString . serializeRelativeRef
 
 -------------------------------------------------------------------------------
 serializeQuery :: Query -> Builder
diff --git a/uri-bytestring.cabal b/uri-bytestring.cabal
--- a/uri-bytestring.cabal
+++ b/uri-bytestring.cabal
@@ -1,5 +1,5 @@
 name:                uri-bytestring
-version:             0.1.8
+version:             0.1.9
 synopsis:            Haskell URI parsing as ByteStrings
 description: uri-bytestring aims to be an RFC3986 compliant URI parser that uses efficient ByteStrings for parsing and representing the URI data.
 license:             BSD3
@@ -70,6 +70,8 @@
     , bytestring
     , lens
     , quickcheck-instances
+    -- void currently breaks with semigroups 0.17
+    , semigroups < 0.17
   default-language:    Haskell2010
 
   if flag(lib-Werror)
