diff --git a/ChangeLog.md b/ChangeLog.md
--- a/ChangeLog.md
+++ b/ChangeLog.md
@@ -1,3 +1,7 @@
+## 1.4.3
+
+* Changes to work with persistent-2.5
+
 ## 1.4.2.2
 
 * Relax upper bound to allow persistent-2.2.*
diff --git a/Yesod/Auth/HashDB.hs b/Yesod/Auth/HashDB.hs
--- a/Yesod/Auth/HashDB.hs
+++ b/Yesod/Auth/HashDB.hs
@@ -1,3 +1,4 @@
+{-# LANGUAGE CPP                        #-}
 {-# LANGUAGE DeriveDataTypeable         #-}
 {-# LANGUAGE QuasiQuotes                #-}
 {-# LANGUAGE ConstraintKinds            #-}
@@ -164,7 +165,9 @@
 import Yesod.Core
 import qualified Yesod.Auth.Message as Msg
 
+#if __GLASGOW_HASKELL__ < 710
 import Control.Applicative         ((<$>), (<*>))
+#endif
 import Data.Typeable
 
 import qualified Data.ByteString.Char8 as BS (pack, unpack)
@@ -345,7 +348,11 @@
     , PersistUnique (YesodPersistBackend master)
     , AuthEntity master ~ user
     , AuthId master ~ Key user
+#if MIN_VERSION_persistent(2,5,0)
+    , PersistEntityBackend user ~ BaseBackend (YesodPersistBackend master)
+#else
     , PersistEntityBackend user ~ YesodPersistBackend master
+#endif
     , HashDBUser user
     , PersistEntity user
     )
diff --git a/yesod-auth-hashdb.cabal b/yesod-auth-hashdb.cabal
--- a/yesod-auth-hashdb.cabal
+++ b/yesod-auth-hashdb.cabal
@@ -1,5 +1,5 @@
 name:            yesod-auth-hashdb
-version:         1.4.2.2
+version:         1.4.3
 license:         MIT
 license-file:    LICENSE
 author:          Patrick Brisbin, later changes Paul Rouse
@@ -35,7 +35,7 @@
                    , yesod-auth              >= 1.4        && < 1.5
                    , text                    >= 0.7
                    , yesod-persistent        >= 1.2
-                   , persistent              >= 2.1        && < 2.3
+                   , persistent              >= 2.1        && < 2.6
                    , yesod-form              >= 1.4        && < 1.5
                    , pwstore-fast            >= 2.2
                    , cryptohash              >= 0.8
