diff --git a/genvalidity-bytestring.cabal b/genvalidity-bytestring.cabal
--- a/genvalidity-bytestring.cabal
+++ b/genvalidity-bytestring.cabal
@@ -1,5 +1,5 @@
 name: genvalidity-bytestring
-version: 0.0.0.1
+version: 0.1.0.0
 cabal-version: >=1.10
 build-type: Simple
 license: MIT
@@ -21,10 +21,10 @@
     exposed-modules:
         Data.GenValidity.ByteString
     build-depends:
-        base >= 4.7 && <5,
-        validity -any,
-        validity-bytestring >= 0.1,
-        genvalidity -any,
+        base >=4.7 && <5,
+        validity >= 0.4 && < 0.5,
+        validity-bytestring >=0.2 && < 0.3,
+        genvalidity >=0.4 && <0.5,
         bytestring -any,
         QuickCheck -any
     default-language: Haskell2010
@@ -36,7 +36,7 @@
     build-depends:
         base -any,
         hspec -any,
-        QuickCheck,
+        QuickCheck -any,
         genvalidity -any,
         genvalidity-bytestring -any,
         genvalidity-hspec -any,
diff --git a/src/Data/GenValidity/ByteString.hs b/src/Data/GenValidity/ByteString.hs
--- a/src/Data/GenValidity/ByteString.hs
+++ b/src/Data/GenValidity/ByteString.hs
@@ -5,10 +5,6 @@
 
 import Data.GenValidity
 import Data.Validity.ByteString ()
-
-import Test.QuickCheck
-
-import Control.Monad
 #if !MIN_VERSION_base(4,8,0)
 import Data.Functor ((<$>))
 #endif
@@ -17,6 +13,7 @@
 
 instance GenUnchecked ByteString where
     genUnchecked = SB.pack <$> genUnchecked
+    shrinkUnchecked = fmap SB.pack . shrinkUnchecked . SB.unpack
 
 instance GenValid ByteString
 
