diff --git a/ChangeLog.md b/ChangeLog.md
--- a/ChangeLog.md
+++ b/ChangeLog.md
@@ -1,6 +1,13 @@
 # Changelog
 
 
+## v2.5.1.1
+
+Hackage-only release:
+
+* Support build with persistent-2.11.x and optparse-applicative-0.16.x
+
+
 ## v2.5.1
 
 **Changes since v2.3.3**
diff --git a/doc/ChangeLog.md b/doc/ChangeLog.md
--- a/doc/ChangeLog.md
+++ b/doc/ChangeLog.md
@@ -1,6 +1,13 @@
 # Changelog
 
 
+## v2.5.1.1
+
+Hackage-only release:
+
+* Support build with persistent-2.11.x and optparse-applicative-0.16.x
+
+
 ## v2.5.1
 
 **Changes since v2.3.3**
diff --git a/src/Options/Applicative/Builder/Extra.hs b/src/Options/Applicative/Builder/Extra.hs
--- a/src/Options/Applicative/Builder/Extra.hs
+++ b/src/Options/Applicative/Builder/Extra.hs
@@ -1,3 +1,4 @@
+{-# LANGUAGE CPP #-}
 {-# LANGUAGE NoImplicitPrelude #-}
 {-# LANGUAGE RecordWildCards #-}
 {-# LANGUAGE ScopedTypeVariables #-}
@@ -31,6 +32,7 @@
   ,defaultPathCompleterOpts
   ,pathCompleterWith
   ,unescapeBashArg
+  ,showHelpText
   ) where
 
 import Data.List (isPrefixOf)
@@ -164,7 +166,7 @@
                                 some (strArgument (metavar "OTHER ARGUMENTS") :: Parser String)))
                         (fullDesc <> progDesc pd))
         return ()
-  where hiddenHelper = abortOption ShowHelpText (long "help" <> hidden <> internal)
+  where hiddenHelper = abortOption showHelpText (long "help" <> hidden <> internal)
 
 -- | 'option', specialized to 'Text'.
 textOption :: Mod OptionFields Text -> Parser Text
@@ -283,3 +285,10 @@
     go [] = []
     go ('\\' : x : xs) = x : go xs
     go (x : xs) = x : go xs
+
+showHelpText :: ParseError
+#if MIN_VERSION_optparse_applicative(0,16,0)
+showHelpText = ShowHelpText Nothing
+#else
+showHelpText = ShowHelpText
+#endif
diff --git a/src/Options/Applicative/Complicated.hs b/src/Options/Applicative/Complicated.hs
--- a/src/Options/Applicative/Complicated.hs
+++ b/src/Options/Applicative/Complicated.hs
@@ -17,6 +17,7 @@
 import           Control.Monad.Trans.Writer
 import           Options.Applicative
 import           Options.Applicative.Types
+import           Options.Applicative.Builder.Extra
 import           Options.Applicative.Builder.Internal
 import           Stack.Prelude
 import           System.Environment
@@ -152,6 +153,6 @@
 -- | Non-hidden help option.
 helpOption :: Parser (a -> a)
 helpOption =
-    abortOption ShowHelpText $
+    abortOption showHelpText $
     long "help" <>
     help "Show this help text"
diff --git a/src/Stack/Storage/Project.hs b/src/Stack/Storage/Project.hs
--- a/src/Stack/Storage/Project.hs
+++ b/src/Stack/Storage/Project.hs
@@ -1,3 +1,4 @@
+{-# LANGUAGE DataKinds #-}
 {-# LANGUAGE DerivingStrategies #-}
 {-# LANGUAGE FlexibleInstances #-}
 {-# LANGUAGE GADTs #-}
diff --git a/src/Stack/Storage/User.hs b/src/Stack/Storage/User.hs
--- a/src/Stack/Storage/User.hs
+++ b/src/Stack/Storage/User.hs
@@ -1,3 +1,4 @@
+{-# LANGUAGE DataKinds #-}
 {-# LANGUAGE DerivingStrategies #-}
 {-# LANGUAGE FlexibleInstances #-}
 {-# LANGUAGE GADTs #-}
diff --git a/stack.cabal b/stack.cabal
--- a/stack.cabal
+++ b/stack.cabal
@@ -1,6 +1,6 @@
 cabal-version:      2.0
 name:               stack
-version:            2.5.1
+version:            2.5.1.1
 license:            BSD3
 license-file:       LICENSE
 maintainer:         manny@fpcomplete.com
