Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 13 additions & 0 deletions pymongosql/connection.py
Original file line number Diff line number Diff line change
@@ -1,14 +1,23 @@
# -*- coding: utf-8 -*-
import logging
from importlib.metadata import version as _get_version
from typing import Any, Optional, Sequence, Type, Union

from bson.codec_options import TypeRegistry
from pymongo import MongoClient
from pymongo.client_session import ClientSession
from pymongo.collection import Collection
from pymongo.database import Database
from pymongo.driver_info import DriverInfo
from pymongo.errors import ConnectionFailure

try:
_VERSION = _get_version("pymongosql")
except Exception:
_VERSION = None

_DRIVER_INFO = DriverInfo(name="PyMongoSQL", version=_VERSION)

from .common import BaseCursor
from .cursor import Cursor
from .error import DatabaseError, OperationalError
Expand Down Expand Up @@ -87,6 +96,10 @@ def __init__(
if type_registry is not None:
self._pymongo_params["type_registry"] = type_registry

# Inject MongoDB client metadata so the handshake identifies this library
if "driver" not in self._pymongo_params:
self._pymongo_params["driver"] = _DRIVER_INFO

# Connection state
self._autocommit = True
self._in_transaction = False
Expand Down