diff --git a/grab.cabal b/grab.cabal
--- a/grab.cabal
+++ b/grab.cabal
@@ -1,7 +1,7 @@
 cabal-version: 2.4
 
 name: grab
-version: 0.0.0.1
+version: 0.0.0.4
 
 synopsis: Applicative non-linear consumption
 category: Control
@@ -76,7 +76,7 @@
 license: MIT
 license-file: license.txt
 
-tested-with: GHC==8.6.5
+tested-with: GHC==8.6.5, GHC==8.8.1
 
 library
   hs-source-dirs: src
@@ -84,8 +84,9 @@
   ghc-options: -fdefer-typed-holes
   exposed-modules: Control.Grab
 
-  build-depends:
-      base       ^>= 4.12.0.0
+  build-depends: base
+  build-depends: base >= 4.12
+  build-depends: base < 4.14
 
 test-suite hedgehog
   type: exitcode-stdio-1.0
@@ -93,11 +94,14 @@
   hs-source-dirs: test
   main-is: hedgehog.hs
 
-  build-depends:
-      grab
-    , base       ^>= 4.12.0.0
-    , hedgehog   ^>= 0.6.1
+  build-depends: base, grab, hedgehog
 
+  build-depends: base >= 4.12
+  build-depends: hedgehog >= 0.6
+
+  build-depends: base < 4.14
+  build-depends: hedgehog < 1.1
+
 -- This benchmark runs with a tightly limited stack size
 -- to detect space leaks, as described by:
 -- http://neilmitchell.blogspot.com/2015/09/detecting-space-leaks.html
@@ -113,17 +117,22 @@
   default-language: Haskell2010
   ghc-options: "-with-rtsopts=-K1K"
 
-  build-depends:
-      grab
-    , base       ^>= 4.12.0.0
+  build-depends: base, grab
 
+  build-depends: base >= 4.12
+
+  build-depends: base < 4.14
+
 benchmark time
   type: exitcode-stdio-1.0
   hs-source-dirs: bench
   main-is: time.hs
   default-language: Haskell2010
 
-  build-depends:
-      grab
-    , base       ^>= 4.12.0.0
-    , criterion  ^>= 1.5.5.0
+  build-depends: base, criterion, grab
+
+  build-depends: base >= 4.12
+  build-depends: criterion >= 1.5
+
+  build-depends: base < 4.14
+  build-depends: criterion < 1.6
