fix(connections): default mongo to TLS-off so local mongo connects - #105
Merged
Conversation
A new MongoDB connection inherited ssl_mode "prefer" (the Postgres default). The Mongo driver reads `tls: ssl_mode != "disable"`, so "prefer" flipped TLS on and the handshake failed against a plain, non-TLS local Mongo — surfacing as "Test failed". Encode an ssl default per engine in the registry (Mongo → "disable", SQL engines → "prefer") and snap ssl_mode on engine change, unless the user picked a non-default mode. Users with a TLS Mongo just flip SSL on.
Merged
oesukam
added a commit
that referenced
this pull request
Aug 6, 2026
Version bump for the **v0.4.0** release: `0.3.0 → 0.4.0` in `tauri.conf.json`, `Cargo.toml`, and `Cargo.lock`. ## What's in v0.4.0 (since v0.3.0) **Features** - MongoDB support: JS scripting, table-data browse/edit/insert/delete, connection URL, TLS handling (#101, #103, #105) - Engine registry — per-engine metadata drives the connection form, queries, display (#103) - Rail sessions behave like tabs: click selects, right-click to close, dim inactive, reconnect on click (#104) - Row count + query timer moved to a footer below the grid, for both table-data and SQL tabs (#108, #109) **Fixes** - Grid fills the pane for few-column tables; no open blink (#106) - Edit-connection opens the real connection; Mongo honors its pinned database (#107) - Startup white-flash eliminated (dark window bg + pre-render tab hydration) (#110) - Mongo defaults to TLS-off so a local Mongo connects (#105) - Actionable commitlint PR-title error (#102); release gated on lint/typecheck/tests (#100) ## Gate lint (0 errors), typecheck (CI-style clean), 321 unit tests, frontend build — all green locally. After merge, the Release workflow is triggered with `publish=false` to produce a **draft** release for review.
oesukam
added a commit
that referenced
this pull request
Aug 22, 2026
Version bump for the **v0.4.0** release: `0.3.0 → 0.4.0` in `tauri.conf.json`, `Cargo.toml`, and `Cargo.lock`. ## What's in v0.4.0 (since v0.3.0) **Features** - MongoDB support: JS scripting, table-data browse/edit/insert/delete, connection URL, TLS handling (#101, #103, #105) - Engine registry — per-engine metadata drives the connection form, queries, display (#103) - Rail sessions behave like tabs: click selects, right-click to close, dim inactive, reconnect on click (#104) - Row count + query timer moved to a footer below the grid, for both table-data and SQL tabs (#108, #109) **Fixes** - Grid fills the pane for few-column tables; no open blink (#106) - Edit-connection opens the real connection; Mongo honors its pinned database (#107) - Startup white-flash eliminated (dark window bg + pre-render tab hydration) (#110) - Mongo defaults to TLS-off so a local Mongo connects (#105) - Actionable commitlint PR-title error (#102); release gated on lint/typecheck/tests (#100) ## Gate lint (0 errors), typecheck (CI-style clean), 321 unit tests, frontend build — all green locally. After merge, the Release workflow is triggered with `publish=false` to produce a **draft** release for review.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problem
A new MongoDB connection failed the Test button ("Test failed") against a plain local Mongo.
Root cause: the connection form defaults
ssl_mode: "prefer"for every engine, but the Mongo driver readstls: ssl_mode != "disable". So"prefer"flips TLS on, and a non-TLS local Mongo rejects the handshake.Fix
sslDefaultfield to the engine registry — Mongo (and other non-TLS-first engines) default to"disable"; Postgres/MySQL keep"prefer".ssl_modeto the new engine's default unless the user picked a non-default mode we'd clobber (same pattern already used for the port).Tests
Added registry assertions (Mongo →
disable, SQL →prefer). Full suite: 320 passing.