Skip to content

Releases: rust-dd/rust-sql

RSQL v1.1.0

08 Mar 19:06
28a7c89

Choose a tag to compare

Highlights

  • Major performance work across the query pipeline: zero-copy simple-query flow, packed binary IPC, faster virtual pagination with server-side cursors, dual connection pooling, WebGL grid improvements, SIMD JSON serialization with sonic-rs, and parallel page packing for very large results.
  • SSL/TLS groundwork, SSH support, and backend pool handling improvements.
  • Distribution and product polish: built-in self-updater, signed updater artifacts in the release workflow, Windows and Linux signing work, release pipeline cleanup, and a new website with an in-browser PostgreSQL sandbox at https://rsql.rust-dd.com.

Fixes and polish

  • Multiple rendering and memory fixes
  • Query execution and virtual grid speedups
  • Better release and versioning automation
  • General UI cleanup and workflow fixes

Notes

  • macOS signing and notarization are still in progress. If macOS blocks the app, run:
    xattr -dr com.apple.quarantine /Applications/RSQL.app

Full Changelog: v.1.0.1...v1.1.0

RSQL v1.0.0

05 Mar 16:26
d81946e

Choose a tag to compare

The first stable release of RSQL — a high-performance PostgreSQL client built with Tauri v2, React, and Rust.

Performance

  • Zero-copy wire protocol — uses PostgreSQL's simple_query protocol, all values returned as pre-formatted text with zero type conversion
  • Packed binary IPC — results encoded as flat strings with ASCII separators (\x1F / \x1E) instead of nested JSON arrays
  • SIMD JSON serialization — all IPC responses pre-serialized with sonic-rs via tauri::ipc::Response, bypassing Tauri's default serde_json (~3.5x faster)
  • Pre-allocated string packing — single buffer with capacity estimation, inline separator sanitization, zero intermediate allocations
  • Virtual pagination — large results pre-packed into page-sized cache strings on the Rust side, O(1) page serving
  • Dual connection pool — separate query and metadata connections per project, metadata never blocks on long-running queries
  • WebGL canvas rendering@glideapps/glide-data-grid with rAF-batched invalidation and pre-computed theme overrides
  • Conditional parallelism — Rayon for >50K rows, sequential below for cache locality
  • Multi-statement executionSELECT 1; INSERT ...; SELECT * FROM users; handled natively, returns last result set with rows

Features

  • Monaco SQL editor with context-aware autocomplete (schemas, tables, columns, aliases), SQL snippets, and formatter
  • Results grid with column sorting, inline editing (UPDATE/DELETE with transactions), export (CSV, JSON, SQL, Markdown, XML)
  • Database explorer — tree sidebar with schemas, tables, views, materialized views, functions, triggers, indexes, constraints, policies
  • ERD diagrams — interactive entity-relationship diagrams with FK lines, drag-and-drop, SVG export
  • FK navigation — click foreign key values to jump to referenced rows
  • Map view — automatic PostGIS geometry/geography detection (WKT, GeoJSON, EWKB) rendered on OpenStreetMap tiles via Leaflet
  • EXPLAIN visualizerEXPLAIN (ANALYZE, FORMAT JSON) with plan tree rendering
  • Performance monitor — live pg_stat_activity, database stats, table-level stats
  • Diff tool — pin a result, run another query, see added/removed rows (diff computed in Rust with Rayon)
  • Inline terminal — built-in PTY terminal via portable-pty + xterm.js
  • Command paletteCmd+K / Cmd+P fuzzy search across all database objects, actions, and saved workspaces
  • Workspaces — save and restore tab groups across sessions
  • Query history — searchable execution history with timing and row counts
  • OS notifications — long-running queries (>5s) notify when app is unfocused

Tech Stack

Layer Technology
Frontend React 19, TypeScript, Zustand, Monaco Editor, Leaflet
UI Tailwind CSS v4, shadcn/ui, oklch color system
Results Grid @glideapps/glide-data-grid (WebGL)
Terminal xterm.js + portable-pty
Backend Rust (edition 2024), Tauri v2, tokio-postgres
Performance sonic-rs (SIMD), rayon, packed binary IPC, dual connection pool

v.1.0.0-rc.0

01 Oct 23:13

Choose a tag to compare

What's Changed

Full Changelog: v.1.0.0-beta.3...v.1.0.0-rc.0

v.1.0.0-beta.3

08 Sep 18:09

Choose a tag to compare

See the assets to download and install this version.

Full Changelog: v.1.0.0-beta.2...v.1.0.0-beta.3

v.1.0.0-beta.2

20 May 17:22

Choose a tag to compare

v.1.0.0-beta.1

20 May 10:50

Choose a tag to compare

v.1.0.0-beta.0

19 May 16:21
5da4f8b

Choose a tag to compare

What's Changed

  • refactor: improve performance for beta by @dancixx in #6

Full Changelog: v.1.0.0-alpha.9...v.1.0.0-beta.0

v.1.0.0-alpha.9

17 Feb 00:03

Choose a tag to compare

Full Changelog: v.1.0.0-alpha.8...v.1.0.0-alpha.9

Improvements

Rewrite ui using the view! macro in https://github.com/leptos-rs/leptos.

v.1.0.0-alpha.8

23 Jan 18:05

Choose a tag to compare

RSQL v1.0.0-alpha.7

22 Jan 20:29

Choose a tag to compare

What's Changed

Full Changelog: v.1.0.0-alpha.6...v.1.0.0-alpha.7