Skip to content

feat(mongodb): add full URI and Atlas/SRV support#2

Merged
Robbyfuu merged 1 commit into
TabularisDB:mainfrom
Robbyfuu:main
Jul 21, 2026
Merged

feat(mongodb): add full URI and Atlas/SRV support#2
Robbyfuu merged 1 commit into
TabularisDB:mainfrom
Robbyfuu:main

Conversation

@Robbyfuu

@Robbyfuu Robbyfuu commented Jul 20, 2026

Copy link
Copy Markdown
Collaborator

Summary

This PR upgrades the existing official MongoDB plugin with full connection URI and MongoDB Atlas support. It does not introduce a parallel plugin: the identity remains mongodb / MongoDB, and the version remains 0.1.0.

Changes

  • Accept full mongodb:// and mongodb+srv:// connection URIs.
  • Forward full URIs unchanged to the official MongoDB Rust driver, preserving SRV discovery, TLS, multiple hosts, replica-set settings, authentication options, and query parameters.
  • Keep legacy host, port, username, password, and database connections compatible.
  • Accept database as either a string or an array of selected database names.
  • Honor the request-level schema as the active MongoDB database.
  • Strip identifier quotes from SQL-like collection browsing queries.
  • Redact accepted MongoDB URI forms from driver errors before returning JSON-RPC errors.
  • Declare connection_uri support and the mongodb / mongodb+srv schemes in the official manifest.

Host compatibility

Full URI transport requires the host-side passthrough and secure per-connection storage introduced by TabularisDB/tabularis#495. Older Tabularis versions can continue using the legacy host/port fields, but cannot send a complete Atlas/SRV URI to an external plugin.

Scope

The diff is limited to:

  • README.md
  • manifest.json
  • src/main.rs

Registry changes and release publication are intentionally outside this PR.

Validation

  • cargo test: 20 passed, 0 failed.
  • cargo build --release: passed.
  • rustfmt --edition 2021 --check src/main.rs: passed.
  • git diff --check: passed.
  • Manifest contract: validated official identity, version, executable, nested URI capabilities, exact schemes, and absence of a legacy connection-string example.
  • Live Atlas JSON-RPC smoke test: process exited successfully with no stderr; test_connection passed; get_tables returned 16 collections with request-schema propagation; quoted collection browsing returned one row with 15 columns and expected pagination.
  • No URI, credentials, request payloads, or document contents were printed during validation.

The repository-wide cargo fmt --check still reports formatting in unchanged upstream src/bin/test.rs; the modified Rust file passes the formatter check above.

Co-Authored-By: Claude <noreply@anthropic.com>
@Robbyfuu Robbyfuu changed the title feat: add MongoDB Atlas and full URI support feat(mongodb): add full URI and Atlas/SRV support Jul 20, 2026
@debba

debba commented Jul 21, 2026

Copy link
Copy Markdown
Collaborator

This looks good for me, feel free to merge when you are ready.

@Robbyfuu
Robbyfuu merged commit cc5e29d into TabularisDB:main Jul 21, 2026
1 check passed
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.

2 participants