Beta Past initial proving, but the Python API surface may still shift before 1.0. WiredTiger on-disk format is stable, but there's no migration tool yet — don't put production data here.

The drivers found the bugs this time

26 August 2026 · Joe Drumgoole · Releases

Summary: The drivers found the bugs this time (v0.6.0b16).

Six of the nine entries below started as a driver-conformance failure rather than a failing unit test, and two of them could only have been found that way. The C driver asserts on the exact text of the error a change stream returns when a pipeline modifies the event _id; SecantusDB returned the right code with its own paraphrase, so the assertion failed and pymongo — which never checks that string — had been passing it for months. The Go driver sends maxTimeMS: 0 to mean "tell me what is ready right now"; SecantusDB treated an explicit zero the same as an absent field and waited a second, long enough for an unrelated event to land inside the wait and be handed back to a client that had asked what was ready when it asked.

Both are the sort of divergence a permissive client never notices and a strict one fails on immediately. In each case the Rust server was already right and the Python server carried its own approximation, which is a useful thing to know: when the two disagree, the Rust side has usually been checked against mongod more recently.

Alongside those, arithmetic got stricter. $inc and $mul now reject non-numeric operands with mongod's own error text instead of returning 500s or writing silently, and Decimal128 arithmetic is exact on both servers rather than routed through binary floating point. A differential harness that compares every operator against a live mongod — the thing that turned up nine of these — is now part of the test suite rather than a one-off script.

Tail latency improved as well: p99.9 relative to mongod moved from 1.48× to 1.18×, measured on dedicated cloud instances as part of cutting this release.

Full release notes on GitHub · Install from PyPI · Tag