additive only — every existing name preserved, swallow contract unchanged. brings mongo
in line with the redis/psql/mysql datastore trio's naming/lifecycle. bump v0.1.3 -> v0.1.4
Signed-off-by: disqualifier <dev@disqualifier.me>
mongo-1: document_push_array and document_push_and_set still returned modified_count>0
while the v0.1.2 wave moved the sibling single-doc update helpers to matched_count>0.
$push always mutates so the two agree in practice (no reachable behavioral change), but
the helpers now match the documented 'True when a document matched' contract uniformly.
sibling-grep: zero consumers of either push helper.
Signed-off-by: disqualifier <dev@disqualifier.me>
- update_document_field/update_document_operator/document_pop_array return
matched_count > 0, so an idempotent write that matched a doc but changed nothing
( to the same value, of an absent value) reports success instead of False
(L19)
- document the bare-proxy escape hatch is mongo.collection(name) not mongo[name], and
that get_document_hashmap/get_document_fields skip docs missing the key (nits).
Signed-off-by: disqualifier <dev@disqualifier.me>
added check_document_exists(collection, target) -> bool (count_documents(target, limit=1) > 0) — it existed only in the talos origin and was not carried over, but the talos caller relies on it. renamed the do_upsert param to upsert on update_document/find_one_and_update/find_one_and_replace, standardizing on motor's name (the talos caller already passes upsert=). param rename is breaking; patch is fine under the no-consumer policy. bump to v0.1.1.
Signed-off-by: disqualifier <dev@disqualifier.me>
point install at git.rethinkstudios.io; show both the requirements.txt
line and the direct pip install command.
Signed-off-by: disqualifier <dev@disqualifier.me>
src/ layout package making the repo pip-installable
(git+ssh@vX.Y.Z). Mongo class with both usage patterns (object +
module proxy), wrapped methods log-and-swallow, raw collection escape
hatch raises.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Signed-off-by: disqualifier <dev@disqualifier.me>