Skip to content

Commit bbe42fa

Browse files
committed
PYTHON-4580 Compat with pymongocrypt <1.13
1 parent 76fed07 commit bbe42fa

File tree

2 files changed

+8
-10
lines changed

2 files changed

+8
-10
lines changed

pymongo/asynchronous/encryption.py

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -548,11 +548,10 @@ class QueryType(str, enum.Enum):
548548

549549

550550
def _create_mongocrypt_options(**kwargs: Any) -> MongoCryptOptions:
551-
opts = MongoCryptOptions(**kwargs)
552-
# Opt into range V2 encryption.
553-
if hasattr(opts, "enable_range_v2"):
554-
opts.enable_range_v2 = True
555-
return opts
551+
# For compat with pymongocrypt <1.13, avoid setting the default key_expiration_ms.
552+
if kwargs.get("key_expiration_ms") is None:
553+
kwargs.pop("key_expiration_ms", None)
554+
return MongoCryptOptions(**kwargs)
556555

557556

558557
class AsyncClientEncryption(Generic[_DocumentType]):

pymongo/synchronous/encryption.py

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -545,11 +545,10 @@ class QueryType(str, enum.Enum):
545545

546546

547547
def _create_mongocrypt_options(**kwargs: Any) -> MongoCryptOptions:
548-
opts = MongoCryptOptions(**kwargs)
549-
# Opt into range V2 encryption.
550-
if hasattr(opts, "enable_range_v2"):
551-
opts.enable_range_v2 = True
552-
return opts
548+
# For compat with pymongocrypt <1.13, avoid setting the default key_expiration_ms.
549+
if kwargs.get("key_expiration_ms") is None:
550+
kwargs.pop("key_expiration_ms", None)
551+
return MongoCryptOptions(**kwargs)
553552

554553

555554
class ClientEncryption(Generic[_DocumentType]):

0 commit comments

Comments
 (0)