Skip to content

Releases: fadion/schemaic

v0.24.0

Choose a tag to compare

@github-actions github-actions released this 06 Sep 15:46

Schemaic v0.24.0 — three more agent CLIs in the AI panel, and inline generation that follows the one you picked.

Highlights

  • Codex, Antigravity and OpenCode join Claude Code. Pick your agent CLI in Settings; all four run with database tools, so the assistant reads your schema and runs queries whichever one you choose.
  • Inline generation follows the picker. Ctrl+K now runs on the CLI you selected and honours the effort setting, instead of always reaching for Claude Code.
  • An Antigravity conversation keeps one session. Follow-up questions build on what came before rather than starting cold.

Improvements

  • The panel says what a session can actually reach — whether the CLI's own tools are sandboxed, and whether MCP servers you have registered with it are live inside the session.
  • A session that couldn't get database tools says so, rather than answering as though it had them.
  • A stopped turn keeps the answer that had already streamed in.

Fixes

  • A schema with non-ASCII names is no longer refused as too large to send: the size was counted in bytes against a limit measured in characters, so a CJK schema could be turned away at a third of its real size.

v0.23.0

Choose a tag to compare

@github-actions github-actions released this 05 Sep 14:48

Schemaic v0.23.0 — schema compare, binary cells you can open and edit, and Export on every schema node.

Highlights

  • Schema compare. Compare two databases side by side from a database row's Compare with: differences grouped by kind, either side's CREATE as a line diff, and whatever you tick handed to the usual SQL preview as one migration — ordered by dependencies, and honest about what it leaves out. The right-hand side can live on another connection of the same engine.
  • Binary cells open now. A <n bytes> cell fetches its bytes on demand into a panel that previews images, and the same panel loads a file into the cell or saves one out — bytes as bytes, never round-tripped through text. Reachable from the keyboard, and offered only where a write could have been aimed.
  • Export ▸ on every schema node. All six formats, not just SQL: the other five write one file per table into a folder you choose, with the freshly-introspected schema, streamed rows and .part-until-whole guarantees the SQL dump already made. The results grid reports progress in one modal from launch to dismissal.

Performance

  • Data entry stays smooth in a wide grid. One edit used to rebuild every mounted cell — roughly a thousand on a maximised window, twice per Tab-hop. Now only the cell that actually changed.

Fixes

  • Set NULL in the row editor, and the Activity panel's lock-wait Kill, answer a mouse click again.
  • Large blobs no longer fail to load on MySQL's packet limit or PostgreSQL's protocol, and a small preview sits centred.
  • An export that was refused says so instead of finishing quietly.
  • Two tables whose names sanitize to one filename no longer overwrite each other in a folder export.
  • A stopped export no longer leaves 0-byte .part files behind.
  • A row's own data can no longer end a PostgreSQL string literal.

v0.22.0

Choose a tag to compare

@github-actions github-actions released this 03 Sep 01:21

Schemaic v0.22.0 — users and privileges, Excel import and export, and an AI assistant that can finally read the error your query returned.

Highlights

  • Users and privileges. A new browser off the SCHEMA gear: every account and role the server knows, what each one may do as the engine's own GRANT statements, and forms to create an account, grant or revoke privileges, grant a role and drop — all through the same SQL preview every other schema change goes through. MySQL, MariaDB and PostgreSQL.
  • Excel. Export any result to .xlsx with each cell carrying the type the server gave it, and import a workbook into a table with the same preview, column mapping and validation a CSV gets.
  • The assistant can see the error. A failed query's message now reaches Explain and Ctrl+K with the values taken out and the constraint, column and error class kept — so it can help below Full data access, where it used to be told only that something failed.

Performance

  • Previewing a 200k × 50 workbook: 2.8 s and 1 GB → 21 ms and 64 MB. Worksheets stream rather than being expanded into memory, which also means a malformed workbook can no longer take the app down when you pick it.

v0.21.0

Choose a tag to compare

@github-actions github-actions released this 01 Sep 14:54

Schemaic v0.21.0 — TLS connections, running .sql scripts, importing connections from other clients, and creating databases.

Highlights

  • TLS/SSL connections. Connect over TLS on MySQL and PostgreSQL, with a per-connection mode, client certificate and CA paths, and verification against your operating system's trust store.
  • Run a .sql file. Execute a script statement by statement from a database's Import — with a confirmation naming the destructive statements it found, and a Stop that cancels the statement actually running.
  • Import connections from other clients. Bring in saved connections from DBeaver, DataGrip and CLI config files, or paste a connection URL.
  • Create and drop databases. From the schema tree's gear, with the generated DDL shown for review before it runs.

Improvements

  • Kept results. Pin a result and it stays in a results strip while you run the next query.
  • A connection can carry its own database, and new tabs open in it rather than at the server root.
  • Refresh a materialized view from the schema tree's context menu.
  • Query history rows have a right-click menu — open in a new tab, or delete the entry.
  • Databases your role cannot open are hidden, and one that failed to load puts its error behind a View control instead of in the tree.

Performance

  • SQL export writes multi-row INSERTs, so a dump is smaller and reloads faster.
  • Large .sql files split in linear time rather than slowing as they grow.
  • The schema's maintenance probe stops as soon as the answer can no longer change.

Fixes

  • A hand-picked import file no longer picks up your .pgpass password, and a skipped entry no longer shows a password in its name.
  • A write in manual-transaction mode can be cancelled instead of trapping you until it finishes.
  • The client's DELIMITER token is no longer sent to the server.
  • A long connection name or endpoint stays inside the connection switcher, with hosts aligned to its right edge.
  • Import is dimmed on a read-only connection.
  • Non-ASCII text and a leading byte-order mark no longer break the import parsers or a script file.

v0.20.0

Choose a tag to compare

@github-actions github-actions released this 30 Aug 19:47

Schemaic v0.20.0 — query parameters, a snippet library, database export, and an inline AI that shows its work in the editor.

Highlights

  • Query parameters. Write :name in a statement, fill the values in a bar below the editor, and what runs is what the bar says — with the substituted statement shown before it goes.
  • Snippet library. A new panel beside the history, with a starter pack, editable bodies, abbrev expansion in the completion popup, per-connection scoping, and insertion straight from Find-Anywhere.
  • Database export. Export a database's structure and data as one replayable .sql file — tables, views, triggers and routines, ordered and quoted so it loads back on MySQL/MariaDB, PostgreSQL or SQLite.
  • The inline AI works in the editor's own lines. Ctrl+K's suggestion now appears as a diff in the buffer to approve or reject, an AI fix is offered wherever an error is named (the error bar, the error modal, or a right-click on a squiggle), and Explain sends a failed run to the chat panel.

Improvements

  • Syntax-coloured previews in the query history, the snippet library and the AI chat's code blocks — all from the editor's own palette.
  • Dropdowns rebuilt. The old ones could register a click on the row above or below the one under the pointer.
  • The diagram toolbar drops its groups as the panel narrows instead of running off the edge.
  • Stop stops a schema read, not only a running query.
  • Interface scale now reaches form-field widths, floating-box margins and menu rows.

Performance

  • Dragging a panel divider past its limit no longer restyles the schema tree on every frame.

Fixes

  • "Read all rows" dims while its re-run is in flight, so a large table can't be read twice by accident.
  • A confirmation dialog opens above the modal that raised it instead of behind it.
  • Window shortcuts (Ctrl+P, Ctrl+W, the panel toggles) work when focus is outside the SQL editor.
  • After a commit, the grid refetches what actually ran — a tab using parameters used to fail.
  • A NULL pasted into the grid round-trips as SQL NULL rather than the text "NULL".
  • Menu rows fill the panel a scrollbar left them, and a menu taller than the window scrolls.
  • Panel toggles and palette rows dim when the window has no room for the panel they open.

v0.19.0

Choose a tag to compare

@github-actions github-actions released this 26 Aug 05:37

Schemaic v0.19.0 — typed cell editing, MySQL scheduled events, whole-table export, and an interface scale that finally fits the whole app.

Highlights

  • Edit a column by what it holds. Cells now open the control their type deserves — a calendar for dates, a picker for ENUM and SET, a toggle for booleans, a JSON tree — in the grid and the row panel alike, with paste a clipboard block onto a selection and NULL rendered distinctly from the word "NULL".
  • MySQL scheduled events. Browse and edit them from the schema tree like any other object.
  • Export a whole table, not just the rows fetched — and the app now tells you what it could not write, instead of quietly writing a placeholder.
  • Interface scale, retuned: each step is named by its percentage, and the app's own chrome scales with it rather than only the editor.

Improvements

  • Read a capped result again at a bigger cap, from the notice itself.
  • Statement timeout — an optional bound on a runaway query.
  • Scroll the last row (or line) to the top of the pane, in both the grid and the editor.
  • The log file has a route out of the app, and a panic is recorded in it rather than nowhere.
  • Copy and paste follow the columns as drawn, so a reordered or frozen column no longer lands values in the wrong place.

Performance

  • Wide results stream faster: the per-cell type walk happens once per result rather than per cell, and a streamed chunk is bounded by bytes.
  • Pasting a large block stages in a single update instead of one per cell.

Fixes

  • A failed export leaves the original file untouched — it writes a .part sibling and renames it only on success.
  • A second PostgreSQL result set no longer merges into the first set's columns.
  • A locked SQLite file now says what is holding it, and waits rather than failing outright.
  • A failed DDL asks the server whether it spent the transaction, instead of assuming.
  • A statement that was never sent is reported as that, not as a timed-out query.
  • Dates: a UTC offset MariaDB refuses to read is no longer sent, and the offset follows the destination rather than the old text.
  • Bit-fields export as numbers, and blobs no longer reach the formats that read them back.
  • The log opens owner-only, and the SSH driver can no longer be asked for a password through RUST_LOG.
  • Modals keep the window's keyboard, cap against the layer they are centred in, and the title bar keeps working underneath them.
  • Menus, calendars and dropdowns open clear of the control that drops them, and close with the cell that opened them.

v0.18.0

Choose a tag to compare

@github-actions github-actions released this 23 Aug 07:20

Schemaic v0.18.0 — Server Activity, stored functions and procedures, AI schema proposals, and ER diagram export.

Highlights

  • Server Activity panel. See what the server is actually doing — every session, what it's running, how long it's been there, and which one is blocking the others — and terminate a query or a whole session from the list. Polls on a per-connection interval you set, so a production replica and a local database don't have to share one. Works on MySQL/MariaDB and PostgreSQL.
  • Stored functions and procedures. They appear in the schema tree, and there's a full editor for them: signature, body, characteristics, with the generated DDL shown for review before anything runs. MySQL/MariaDB and PostgreSQL.
  • The assistant can propose a schema change. Ask for one and it comes back as a described change you review and apply yourself — it never runs DDL on its own. It can also see the result grid on screen, and sends actual rows only when you attach them.
  • ER diagram export. Save the diagram as an image (PNG/SVG), or as source for another tool — DOT, Mermaid, PlantUML or DBML.

Improvements

  • Generate an INSERT, UPDATE or DELETE draft from a table's context menu, with the columns filled in.
  • Hide databases you don't work in with the Schema eye, and they stay out of the tree, autocomplete, new tabs and everything the assistant is told.
  • Assistant's replies are no longer boxed in bubbles — long answers read as text, with an optional accent rule instead.
  • Query history marks its recency bands in the accent, so today's runs are distinguishable at a glance.
  • A first run offers "New connection" where the switcher would be, instead of hiding the only useful action three clicks down a menu.
  • An unreachable connection gives up in about five seconds, matching the header, rather than after 21 seconds on MySQL or a minute on PostgreSQL.

Fixes

  • A new tab no longer opens inside a database you've hidden, including when two connections both have a database of that name.
  • SQLite refuses :memory: and URI filenames, which accepted every write and kept none.
  • Ctrl+K no longer splices the editor buffer into its prompt unfenced.
  • A failed run's engine error stays local unless the connection's data-access level allows it out.

v0.17.1

Choose a tag to compare

@github-actions github-actions released this 20 Aug 22:46

Schemaic v0.17.1 — a maintenance release with no user-facing changes. The app
behaves exactly as v0.17.0 does, and there is nothing here to update for if you
already have it.

Everything in this tag is release-pipeline and documentation work. The one piece
worth naming: the release workflow now refuses to build if a Velopack update
channel is ever renamed. A channel name is how an installed copy finds its update
feed, so renaming one would quietly cut every existing install off from updates —
a mistake that only shows up months later, in the field, as an app that has
silently stopped updating.

v0.17.0

Choose a tag to compare

@github-actions github-actions released this 20 Aug 21:33

Schemaic v0.17.0 — macOS support, on Apple Silicon.

Highlights

  • Schemaic runs on macOS. A .dmg to drag into /Applications, or a .pkg
    if you'd rather have an installer — both update themselves from then on. The
    one-line installer handles it too:

    curl -fsSL https://raw.githubusercontent.com/fadion/schemaic/main/install.sh | bash

    Apple Silicon only; there is no Intel build. The app isn't signed with an
    Apple Developer ID, so a .dmg downloaded in a browser needs one trip through
    System Settings → Privacy & Security → Open Anyway the first time. The
    installer script above avoids that entirely, and not by weakening anything —
    macOS quarantines what a browser downloads, and curl doesn't set that flag.

    Treat this one as a preview. It compiles on macOS and the full test suite
    passes there, but no one has yet sat in front of it on a Mac. The window
    frame — where macOS keeps its traffic lights and Schemaic draws its own header
    around them — is the most likely thing to look wrong. Please report anything
    that does.

Windows and Linux builds are unchanged.

v0.16.4

Choose a tag to compare

@github-actions github-actions released this 20 Aug 10:28

Schemaic v0.16.4 — .deb and .rpm packages for Linux, a one-line installer, and a documented way in.

Highlights

  • Linux packages. Schemaic now ships a .deb and an .rpm beside the AppImage, each with a desktop entry, an icon and software-centre metadata, so it installs and uninstalls like anything else on the system. A one-line installer picks the right one for you:

    curl -fsSL https://raw.githubusercontent.com/fadion/schemaic/main/install.sh | bash

    The AppImage remains the only Linux build that updates itself — a .deb or .rpm is updated by re-running the installer.

Improvements

  • The README now says how to install Schemaic. The Windows installer and the Linux builds were only findable by opening the Releases page and guessing at the filenames.
  • The app mark sits at the head of the header, to the left of the connection switcher.