Skip to content

DRIVERS-3251: Preserve version-to-name mapping in Client Metadata - #1975

Merged
prestonvasquez merged 9 commits into
mongodb:masterfrom
prestonvasquez:handshake/drivers-3251-preserver-verion-to-name-mapping
Sep 28, 2026
Merged

prestonvasquez merged 9 commits into
mongodb:masterfrom
prestonvasquez:handshake/drivers-3251-preserver-verion-to-name-mapping

Conversation

@prestonvasquez

@prestonvasquez prestonvasquez commented Aug 26, 2026 •

Copy link
Copy Markdown
Member

DRIVERS-3251

Please complete the following before merging:

  • Is the relevant DRIVERS ticket in the PR title?

Drivers should require that entries in client.driver.name and client.driver.version correspond 1-1 by index so that splitting both fields on the delimiter recovers which version belongs to which library. This will allow downstream teams to deterministically parse data from handshakes for telemetry.

@prestonvasquez
prestonvasquez force-pushed the handshake/drivers-3251-preserver-verion-to-name-mapping branch 4 times, most recently from 5a9b8a6 to ae7083f Compare September 11, 2026 19:54
…tadata

Require driver.name and driver.version entries to correspond one-to-one
by index, with an absent field contributing an empty entry that MUST NOT
be stripped. Clarify that duplicate detection compares whole
DriverInfoOptions objects rather than individual fields.
Adds Test 10 covering the index correspondence between driver.name and
driver.version, and updates Tests 1 and 2 so the delimiter is described
as being appended unconditionally.
Adds Test 11 asserting that appending a DriverInfoOptions whose fields
contain the delimiter raises an error and leaves the accumulated
metadata unchanged. This cannot be expressed as a unified test because
handshake commands are excluded from command monitoring.
@prestonvasquez
prestonvasquez force-pushed the handshake/drivers-3251-preserver-verion-to-name-mapping branch from ae7083f to 074dbba Compare September 11, 2026 20:01
@prestonvasquez prestonvasquez changed the title Handshake/drivers 3251 preserver verion to name mapping DRIVERS-3251: Preserve version-to-name mapping in Client Metadata Sep 11, 2026
@prestonvasquez
prestonvasquez marked this pull request as ready for review September 11, 2026 20:31
@prestonvasquez
prestonvasquez requested a review from a team as a code owner September 11, 2026 20:31
@vbabanin
vbabanin requested a review from NoahStapp September 11, 2026 20:54

@blink1073 blink1073 left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm approving as a spec owner and second implementor - our PR is ready to merge: mongodb/mongo-python-driver#3054

@blink1073
blink1073 removed the request for review from NoahStapp September 22, 2026 21:02
Comment thread source/mongodb-handshake/handshake.md Outdated
Comment thread source/mongodb-handshake/tests/README.md Outdated
Comment thread source/mongodb-handshake/tests/README.md Outdated
prestonvasquez and others added 5 commits September 25, 2026 14:06
Co-authored-by: Viacheslav Babanin <frest0512@gmail.com>
Co-authored-by: Viacheslav Babanin <frest0512@gmail.com>
…' of github.com:prestonvasquez/specifications into handshake/drivers-3251-preserver-verion-to-name-mapping

@vbabanin vbabanin left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

@blink1073

Copy link
Copy Markdown
Member

Spec changes LGTM, I'm waiting on final review in PyMongo with the prose tests changes.

@blink1073
blink1073 self-requested a review September 28, 2026 15:20
@prestonvasquez
prestonvasquez merged commit e1fa73d into mongodb:master Sep 28, 2026
6 checks passed
@prestonvasquez
prestonvasquez deleted the handshake/drivers-3251-preserver-verion-to-name-mapping branch September 28, 2026 17:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants