diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,7 @@
+## Req 3.1.0
+
+* Changed signature of `httpConfigRetryPolicy` to `RetryPolicyM IO`.
+
 ## Req 3.0.0
 
 * Dropped functions `parseUrlHttp`, `parseUrlHttps`, and `parseUrl`. Instead
diff --git a/Network/HTTP/Req.hs b/Network/HTTP/Req.hs
--- a/Network/HTTP/Req.hs
+++ b/Network/HTTP/Req.hs
@@ -596,7 +596,7 @@
     -- /1.0.0/.
     --
     -- @since 0.3.0
-  , httpConfigRetryPolicy :: RetryPolicy
+  , httpConfigRetryPolicy :: RetryPolicyM IO
     -- ^ The retry policy to use for request retrying. By default 'def' is
     -- used (see 'RetryPolicyM').
     --
@@ -895,8 +895,8 @@
           foldl' (/:) urlHead (URI.unRText <$> NE.toList xs)
   return (url, uriOptions uri)
 
--- | A more general URI parsing function that can be used when scheme is not
--- known beforehand.
+-- | A combination of 'useHttpURI' and 'useHttpsURI' for cases when scheme
+-- is not known in advance.
 --
 -- @since 3.0.0
 
diff --git a/req.cabal b/req.cabal
--- a/req.cabal
+++ b/req.cabal
@@ -1,7 +1,7 @@
 name:                 req
-version:              3.0.0
+version:              3.1.0
 cabal-version:        1.18
-tested-with:          GHC==8.4.4, GHC==8.6.5, GHC==8.8.1
+tested-with:          GHC==8.4.4, GHC==8.6.5, GHC==8.8.2
 license:              BSD3
 license-file:         LICENSE.md
 author:               Mark Karpov <markkarpov92@gmail.com>
