diff --git a/Database/Persist/MongoDB.hs b/Database/Persist/MongoDB.hs
--- a/Database/Persist/MongoDB.hs
+++ b/Database/Persist/MongoDB.hs
@@ -620,6 +620,9 @@
 
     upsert newRecord upds = do
         uniq <- onlyUnique newRecord
+        upsertBy uniq newRecord upds
+
+    upsertBy uniq newRecord upds = do
         let uniqueDoc = toUniquesDoc uniq
         let uniqKeys = map DB.label uniqueDoc
         let insDoc = DB.exclude uniqKeys $ toInsertDoc newRecord
diff --git a/persistent-mongoDB.cabal b/persistent-mongoDB.cabal
--- a/persistent-mongoDB.cabal
+++ b/persistent-mongoDB.cabal
@@ -1,5 +1,5 @@
 name:            persistent-mongoDB
-version:         2.5
+version:         2.5.0.1
 license:         MIT
 license-file:    LICENSE
 author:          Greg Weber <greg@gregweber.info>
@@ -7,7 +7,7 @@
 synopsis:        Backend for the persistent library using mongoDB.
 category:        Database
 stability:       Experimental
-cabal-version:   >= 1.6
+cabal-version:   >= 1.8
 build-type:      Simple
 homepage:        http://www.yesodweb.com/book/persistent
 bug-reports:     https://github.com/yesodweb/persistent/issues
@@ -27,7 +27,7 @@
                    , bytestring         >= 0.9
                    , conduit            >= 0.5.3
                    , resourcet          >= 0.3
-                   , mongoDB            >= 2.0.3   && < 3.0
+                   , mongoDB            >= 2.0.3   && (< 2.1 || >= 2.1.1)
                    , bson               >= 0.3.1   && < 0.4
                    , network            >= 2.2.1.7
                    , cereal             >= 0.3.0.0
