You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@burr.apache.org by GitBox <gi...@apache.org> on 2026/07/11 00:35:38 UTC
[GH] (burr/main): Workflow run "Build Burr" failed!
The GitHub Actions job "Build Burr" on burr.git/main has failed.
Run started by GitHub user skrawcz (triggered by skrawcz).
Head commit for run:
30fa494a278b5e22b978f91ac7ce5612d6da65d6 / Alex Bevilacqua <al...@alexbevi.com>
feat: add MongoDB driver handshake metadata (#821)
Identify Burr in the MongoDB handshake so server-side telemetry can
distinguish Burr traffic. A module-level constant
_DRIVER_INFO = DriverInfo(name="Burr", version=_VERSION) is defined
once in b_pymongo.py and used at every client construction site.
b_pymongo.MongoDBBasePersister has three patterns:
Pattern A – from_values() constructs MongoClient:
mongo_client_kwargs.setdefault("driver", _DRIVER_INFO) guards against
overriding a caller-supplied driver value.
Pattern B – __init__() receives an existing client:
if hasattr(client, "append_metadata"): client.append_metadata(_DRIVER_INFO)
append_metadata is idempotent; the hasattr guard keeps this safe with
older pymongo versions that predate the API.
Pattern A – __setstate__() reconstructs MongoClient after unpickling:
driver=_DRIVER_INFO passed directly.
b_mongodb.py is a deprecated shim that constructs its own MongoClient
instances in from_values() and __init__(). Both receive the same
setdefault guard, importing _DRIVER_INFO from b_pymongo.py.
Version is read via importlib.metadata("apache-burr") with a try/except
fallback so it works whether or not the package is pip-installed.
Adds tests/integrations/persisters/test_b_pymongo_driver_info.py
(no live DB required) verifying all five behaviours:
- _DRIVER_INFO has name="Burr" and matches the installed version
- from_values() passes driver=_DRIVER_INFO to MongoClient
- from_values() does not override a caller-supplied driver
- __init__() calls append_metadata(_DRIVER_INFO) when the client supports it
- __init__() does not raise when client lacks append_metadata
Co-authored-by: Claude Sonnet 4.6 (1M context) <no...@anthropic.com>
Report URL: https://github.com/apache/burr/actions/runs/29132858321
With regards,
GitHub Actions via GitBox