From d5943ae601ca8e81e2f4484c1459e637b43efd7a Mon Sep 17 00:00:00 2001 From: Iris Date: Wed, 2 Sep 2026 16:03:32 -0700 Subject: [PATCH] PYTHON-6021 Move _write_concern_for_cmd into BaseObject --- pymongo/asynchronous/collection.py | 9 --------- pymongo/common.py | 9 +++++++++ pymongo/synchronous/collection.py | 9 --------- 3 files changed, 9 insertions(+), 18 deletions(-) diff --git a/pymongo/asynchronous/collection.py b/pymongo/asynchronous/collection.py index 1595828260..924635d7dc 100644 --- a/pymongo/asynchronous/collection.py +++ b/pymongo/asynchronous/collection.py @@ -390,15 +390,6 @@ def with_options( read_concern or self.read_concern, ) - def _write_concern_for_cmd( - self, cmd: Mapping[str, Any], session: Optional[AsyncClientSession] - ) -> WriteConcern: - raw_wc = cmd.get("writeConcern") - if raw_wc is not None: - return WriteConcern(**raw_wc) - else: - return self._write_concern_for(session) - # See PYTHON-3084. __iter__ = None diff --git a/pymongo/common.py b/pymongo/common.py index 096cb26513..3fcfd41326 100644 --- a/pymongo/common.py +++ b/pymongo/common.py @@ -977,6 +977,15 @@ def _write_concern_for(self, session: Optional[_AgnosticClientSession]) -> Write return DEFAULT_WRITE_CONCERN return self.write_concern + def _write_concern_for_cmd( + self, cmd: Mapping[str, Any], session: Optional[_AgnosticClientSession] + ) -> WriteConcern: + raw_wc = cmd.get("writeConcern") + if raw_wc is not None: + return WriteConcern(**raw_wc) + else: + return self._write_concern_for(session) + @property def read_preference(self) -> _ServerMode: """Read only access to the read preference of this instance. diff --git a/pymongo/synchronous/collection.py b/pymongo/synchronous/collection.py index cf8cdb7842..931001e179 100644 --- a/pymongo/synchronous/collection.py +++ b/pymongo/synchronous/collection.py @@ -392,15 +392,6 @@ def with_options( read_concern or self.read_concern, ) - def _write_concern_for_cmd( - self, cmd: Mapping[str, Any], session: Optional[ClientSession] - ) -> WriteConcern: - raw_wc = cmd.get("writeConcern") - if raw_wc is not None: - return WriteConcern(**raw_wc) - else: - return self._write_concern_for(session) - # See PYTHON-3084. __iter__ = None