Added
- Facet picker in result charts that draws one chart per value of a column, with shared axes and one legend. (#3593)
- iPhone and iPad mark synced connections that only a Mac can open, and explain why on tap instead of connecting. (#3680)
- Query on iPhone and iPad runs the statement at the cursor or the selection, with Run All Statements in the Run menu. (#3681)
- Open Table in a foreign key preview on iPhone and iPad, which opens the referenced row in its table. (#3682)
- Connections through SSH jump hosts now open on iPhone and iPad, with a key for each hop. (#3683)
- Saved queries on iPhone and iPad, in folders, synced with the Mac through iCloud and carried in .tablepro files. (#3684)
- iPhone and iPad show JSON values indented, open them as text or a tree, and check JSON edits before Save. (#3686)
- iPhone and iPad show an open transaction on every section of its connection, with Commit and Roll Back. (#3688)
- AWS IAM sign-in for MySQL, MariaDB, PostgreSQL and Redis connections on iPhone and iPad. (#3689)
- Google Cloud IAM sign-in for MySQL and PostgreSQL connections on iPhone and iPad. (#3689)
- Table, column and keyword suggestions above the keyboard in the query editor on iPhone and iPad. (#3690)
- SSH tunnels connect to servers that allow only post-quantum key exchange (mlkem768x25519-sha256). (#3697)
- Keyboard Interactive sign-in and TOTP codes for SSH tunnels on iPhone and iPad, answered from the app or asked of you. (#3697)
- A bar above every tab shows an open transaction with Commit and Roll Back, and the connections strip marks it. (#3697)
- iPhone and iPad show an open transaction on DuckDB and SQL Server. (#3697)
- Engine functions, operators, schema names and enum values in query suggestions on iPhone and iPad. (#3697)
- AWS IAM Identity Center sign-ins renew with their refresh token instead of asking to sign in again. (#3697)
- A Query menu in the iPad menu bar, with Run Statement, Run All Statements, Stop and Clear Query. (#3697)
- iPhone and iPad offer the Mac's Preferred SSL mode, trying TLS first on MySQL, PostgreSQL and SQL Server. (#3697)
- iPhone and iPad open ClickHouse connections, with browsing, queries and row editing. (#3697)
- A connection blocked by the macOS Local Network permission now says so and offers to open System Settings. (#3699)
- A grid save stops before sending an UPDATE or DELETE with no WHERE clause, and names the table. (#3700)
- The delete confirmation lists the rows foreign keys delete, rewrite or protect in other tables before a save. (#3703)
- Tab switches show in Instruments under Points of Interest, and
TABLEPRO_TAB_SWITCH_TRACE=1prints each one. (#3705) - Settings > License lists every paid feature by plan and marks the plans your license includes. (#3709)
- Copy Path and Copy Relative Path for linked SQL files and folders, in their context menu and the File menu. (#3711)
- Presto connections through the Trino plugin, with their own entry in New Connection and
presto://URLs. (#3712) - Autocomplete offers columns of MATERIALIZED, VALUES and data-modifying CTEs, and SELECT aliases after ORDER BY. (#3713)
- Password commands fill in {host}, {port}, {user} and {database}, and can reuse their output for a set time. (#3715)
- Pre-connect scripts see the connection's host, port, user and database, and can run for up to 300 seconds. (#3715)
- A post-disconnect script runs once the session ends, after its pre-connect script ran. (#3715)
- Redshift connections sign in with AWS IAM, IAM Identity Center included, on clusters and Serverless. (#3715)
- Set the Cassandra and ScyllaDB consistency level per connection or with CONSISTENCY, and see it in the result footer. (#3716)
- Set Cells to Value… writes one typed value into every selected cell, and pasting one value fills them all. (#3717)
- Settings > Data picks the format Copy uses for rows, and Edit > Copy Special adds Copy Cell Value and the other formats. (#3718)
- Cassandra and ScyllaDB list user-defined types under Types and offer them in the column type picker. (#3719)
- Drop Type… on a type row drops it on PostgreSQL, SQL Server, Cassandra and ScyllaDB. (#3719)
- PostgreSQL connections can use Connect Using > Socket to reach a server on this Mac through its Unix socket. (#3721)
- PostgreSQL sequences appear in the sidebar with their owning column; Set Next Value and Edit Sequence change them. (#3722)
- Show a saved connection password after Touch ID, and test a password source without connecting. (#3723)
- pgvector cells show their first elements and dimension count, open in a viewer, and refuse a wrong length on Save. (#3725)
- Pin Tab keeps a tab at the front of the strip and open through Close Other Tabs, Close All Tabs and a relaunch. (#3726)
- Cells and value fields mark invisible characters, and the text window counts a value's characters and bytes. (#3728)
- Explain Query draws Oracle and SQL Server plans, estimated or actual, and SQL Server's warnings and missing indexes. (#3730)
- Snowflake, Oracle and PostgreSQL connections can complete table and column names in the case you type or pick. (#3731)
- Server Dashboard for Oracle, MongoDB and Redis, with sessions, metrics, slow queries and Cancel or Terminate. (#3732)
- Manage SQL Server and Oracle logins, users, roles and privileges in Users & Roles. (#3733)
- File > Export > Export Data Dictionary… writes every table's columns, keys, indexes and comments as Markdown or HTML. (#3735)
- Create and edit PostgreSQL enums, composites and domains under Types, and rename a type or drop it with Cascade. (#3736)
- Search Database finds every table and column holding a value, and opens a table filtered to the matching rows. (#3737)
- Export the ER diagram as SVG, PDF, Mermaid or Graphviz DOT, or copy it as Mermaid for Markdown. (#3738)
- Compare two query results row by row, matched on key columns or whole rows, from the result chooser or the View menu. (#3739)
- Format Query follows rules from Settings > Editor > Formatter, or from a .sql-formatter.json in a linked SQL folder. (#3740)
- Saved query keywords expand into fields that Tab moves between, with default text, mirrored names and choices. (#3741)
- Import a CSV, JSON or XLSX file into an existing table as Update, Insert or Update, or Insert, Skip Existing. (#3743)
- Import Data… takes several files or a folder and imports each into its own table in one run. (#3745)
- Temporary section in the sidebar lists the temporary tables of the current session, and opens them on that session. (#3746)
- SQLite, libSQL and DuckDB connections attach more database files on every connect, each listed in the sidebar. (#3748)
- Inline suggestions and Review, Explain, Optimize and Fix can run on Apple Intelligence, on the Mac itself. (#3749)
- Commit, pull and push a linked SQL folder from its menu in the Favorites sidebar. (#3751)
- Credential profiles can sign in through a HashiCorp Vault database role, with a new user per connection kept renewed. (#3752)
- Shortcuts actions on the Mac to open a connection, run a query and add rows to a table. (#3753)
- PostgreSQL and MariaDB connections sign in with Kerberos, from the ticket cache or a principal and password. (#3754)
- Saved queries can sit on the Server Dashboard as tiles that show a value, a table or a line, each on its own interval. (#3755)
- Emacs key bindings in the SQL editor: movement, kill and yank, Option+Y yank-pop, and a mark with an active region. (#3756)
- Edit the schema from the ER diagram: add and drop foreign keys and columns, open tables, and refresh in place. (#3757)
- Generate Rows… fills a table with test data that keeps its keys, enums and foreign keys, from a repeatable seed. (#3759)
- Freeze Up to This Column on the data grid header menu keeps leading columns in view while the rest scroll. (#3760)
- Display As decodes MessagePack and Protobuf in binary columns, and reads UUIDs stored by UUID_TO_BIN(uuid, 1). (#3761)
- Run a query from the shell with
tablepro queryand get the rows as CSV, TSV, JSON or a table. (#3762) - Build a join query from the foreign keys between tables, from the Database menu or the ER diagram. (#3763)
- iPhone and iPad connect through the jump hosts, host names, ports and users a Mac read from its ~/.ssh/config. (#3769)
- View > Zoom In and Zoom Out (Cmd+= and Cmd+-) change the data grid's font size while a grid has focus. (#3770)
- MongoDB connections open on iPhone and iPad, with browsing, filters, search, document edits and shell queries. (#3771)
Changed
- Editable inspector values and the binary dump sit in the same value well as read-only values in every theme. (#3582)
- The sidebar lists an object section only when the schema holds something of that kind. (#3592)
- TLS and SSH connections use OpenSSL 3.5.9. (#3697)
- Open Quickly lists tables in other schemas with one query on Oracle, Dameng, SAP HANA, Trino, CockroachDB and Redshift. (#3708)
- AI chat and inline suggestions send columns for the tables your question or query uses, not the first tables listed by @J2TeamNNL. (#3750)
- Vim mode moved to Settings > Editor > Key bindings, which offers Standard, Vim and Emacs. (#3756)
- MySQL and MariaDB tables with a primary key leave binary values over 64 KB unread until you open, copy or export them. (#3758)
- The welcome window's actions sit at the bottom of its sidebar, without the sync status or the active license badge. (#3775)
- An SSH error on a jump host names that jump host. (#3779)
- An SSH server that shares no key exchange, cipher or MAC with TablePro gets an error naming which one. (#3779)
- SSH tunnels no longer offer SHA-1 key exchange, ssh-rsa, SHA-1 and MD5 MACs, or 3DES, Blowfish and RC4 ciphers. (#3782)
Fixed
- A dead-key quote in the SQL editor inserted three quotes, or deleted the closing quote when cancelled. (#3579)
- Undo after an accented or input method character left part of it behind or replayed each keystroke. (#3579)
- Double, triple or Shift-clicking while composing input method text deleted that text. (#3579)
- Editable values in the row inspector and array editor ignored the theme and drew a system box. (#3582)
- The row inspector's field area drew a gray surface that ignored the theme instead of the inspector's own background. (#3590)
- Line numbers in a read-only code view, such as EXPLAIN Raw, no longer draw over the toolbar above it. (#3591)
- Result chart pickers went blank when their column was missing from the new result. (#3593)
- Result chart series changed color, symbol and dash when the rows were sorted or paged. (#3593)
- Result chart toolbar kept the previous result's notices after switching to a result with no numeric column. (#3593)
- Result charts and maps blanked to a spinner on every refresh, sort or page turn. (#3593)
- Result chart labels were blank for empty text, and a NULL series merged with a literal "No value" series. (#3593)
- Filter bar suggesting the fields of a same-named collection in another database. (#3595)
- Table Info missing after opening a table, until the inspector was switched to the assistant and back. (#3595)
- Table Info showing a same-named table's numbers from another schema, or going empty after a rename. (#3595)
- Table Info keeping the old comment after Edit Comment. (#3595)
- In Dark, a read-only code view no longer shows a lighter band above and beside its text. (#3596)
- Show All Tables opens the listing as a read-only grid instead of an editor tab that ran nothing. (#3674)
- On macOS 15 and earlier, launching TablePro created a stray Application%20Support folder in ~/Library. (#3677)
- Edits on iPhone and iPad to a connection with SSL settings never reaching the Mac. (#3680)
- Redis commands on separate lines running as one command on iPhone and iPad. (#3681)
- A Redis command with an unclosed quote storing a cut value on iPhone and iPad instead of failing. (#3681)
- The row total on iPhone and iPad showing the unfiltered count when a filter applied during a slow count. (#3682)
- Filters on iPhone and iPad failing on SQL Server and matching the wrong rows for text that looks like a number. (#3682)
- Switching database on iPhone and iPad keeping the old table's rows, so a save could change a row in the new database. (#3682)
- Saving or deleting a row with a binary primary key on iPhone and iPad reported success without changing it. (#3682)
- Foreign key previews on iPhone and iPad missing some keys and showing the wrong row for composite or cross-schema keys. (#3682)
- TablePro could quit when a connection through an SSH tunnel closed while data was still arriving. (#3683)
- A very large database port on a connection through an SSH tunnel crashed TablePro on iPhone and iPad. (#3683)
- An SSH tunnel set to SSH Agent on the Mac could not sign in on iPhone and iPad. (#3683)
- A missing SSH username was reported as a wrong password or key on iPhone and iPad. (#3683)
- An SSH tunnel turned on in the iPhone or iPad form stayed off on the Mac. (#3683)
- Turning a sync category back on not bringing down what other devices added or edited while it was off. (#3684)
- A connection, group or tag deleted on iPhone or iPad coming back from iCloud before the deletion was uploaded. (#3684)
- Changes from other devices lost on iPhone and iPad when saving them failed during a sync. (#3684)
- An encrypted connection file that needs a newer TablePro asked for the passphrase again instead of showing the error. (#3685)
- Connection files without saved queries or nested groups did not open in TablePro for iPhone or in versions before 0.80. (#3685)
- Copying or exporting rows on iPhone and iPad wrote placeholder text for long and binary values. (#3686)
- A delete on iPhone and iPad reported success when a long text key or a trigger left the row in the table. (#3686)
- Typing a quote in a value or filter field on iPhone and iPad inserted a curly quote that broke JSON and SQL. (#3686)
- Loading a full value on iPhone and iPad showed NULL when the row had been deleted elsewhere. (#3686)
- After a save on iPhone and iPad, the row showed the typed values instead of what the database stored. (#3686)
- The number keyboard in Add Row on iPhone and iPad had no minus sign, so negative numbers could not be typed. (#3686)
- Clearing a MariaDB JSON field on iPhone and iPad saved an empty string instead of NULL. (#3686)
- Rows copied as JSON on iPhone and iPad were invalid when a value held a control character such as a form feed. (#3686)
- An SSH server that asks for a second sign-in step looked like a wrong password on iPhone and iPad. (#3687)
- An SSH connection noticed that its server had stopped only after the second missed keep-alive. (#3687)
- A missing or wrong SSH key passphrase, or a security key, showed only an error number on iPhone and iPad. (#3687)
- An SSH server with no key exchange, cipher or MAC in common showed only an error number on iPhone and iPad. (#3687)
- Password sign-in on iPhone and iPad failed on SSH servers that ask for the password through keyboard-interactive. (#3687)
- Oracle DDL such as CREATE TABLE left the connection reporting an open transaction that the DDL had already committed. (#3688)
- Saving a row on iPhone and iPad with MySQL autocommit off committed the session's pending changes. (#3688)
- A reconnect on iPhone and iPad went back to the connection's saved database and schema instead of the one in use. (#3688)
- A typed COMMIT after a failed PostgreSQL statement on iPhone and iPad reported success while the server kept nothing. (#3688)
- Returning to the app on iPhone and iPad dropped a PostgreSQL or DuckDB session whose transaction had failed. (#3688)
- Verify Identity through an SSH tunnel on iPhone and iPad failing for PostgreSQL and Redis. (#3689)
- Microsoft Entra ID sign-in failures on iPhone and iPad not saying why the sign-in failed. (#3689)
- AWS IAM sign-in failing to find the region when the RDS host was typed in capitals. (#3689)
- Autocomplete taking SET for a table alias in UPDATE statements. (#3690)
- Autocomplete offering nothing after an apostrophe in a comment, a backslash in a string, or inside a quoted table name. (#3690)
- An SSH profile's removed port or last jump host came back from other Macs, and a profile that failed to save was lost. (#3697)
- On iPhone and iPad, a tunnel using a Mac SSH profile found no password and could keep the profile's old server. (#3697)
- A security key's private key file on the Mac asked for a passphrase instead of saying it needs an SSH agent. (#3697)
- On MySQL with autocommit off, a Structure or foreign key read on iPhone and iPad opened a transaction the bar missed. (#3697)
- An SSL Required set on iPhone or iPad stayed Preferred in iCloud, and an iCloud reset could flip Preferred to Required. (#3697)
- On iPhone and iPad, query suggestions could change what SELECT ROW_COUNT() and SHOW WARNINGS reported. (#3697)
- Text filters on uuid, number or enum columns failed on DuckDB, and on PostgreSQL on iPhone and iPad. (#3697)
- Adding a Redis hash row from JSON stored true as 1 and nested values as debug text. (#3697)
- Oracle connections set to Verify Identity and saved by host name failed through an SSH tunnel on iPhone and iPad. (#3697)
- Accepting a quoted name with a space in it, such as [Order Details], replaced only its last word. (#3697)
- Messages from plugins and some screens stayed in English on iPhone and iPad. (#3697)
- The JSON editor's Save accepted leading zeros, unknown escapes and raw tabs. (#3697)
- A database switch in one iPad window left the other window on the old session. (#3697)
- The iPhone and iPad Structure screen showed each column of a composite foreign key as its own key. (#3697)
- On iPhone and iPad, saving or deleting a connection did not warn that it drops the open transaction. (#3697)
- Many connections opening at once through one SSH tunnel could time out on the Mac. (#3697)
- A table created or dropped in the query editor on iPhone and iPad stayed out of, or in, the table list. (#3697)
- Turning SSH off on iPhone or iPad erased the Mac's tunnel settings, and an imported tunnel stayed off on the Mac. (#3697)
- Importing a connection on iPhone or iPad warned about SSH jump host key files the device never reads. (#3697)
- Text typed just before leaving the query editor on iPhone and iPad was not saved. (#3697)
- Filters and keys on PostgreSQL bit, boolean and real columns, DuckDB BIT and MySQL BIT found no row or failed. (#3697)
- Cancelling one ClickHouse request could stop another request on the same connection. (#3697)
- A jump host with its own ProxyJump in ~/.ssh/config signed in with another hop's method. (#3697)
- Sharing a Mac connection from iPhone or iPad dropped its agent socket, TOTP, remote file and profile password. (#3697)
- Opening a connection in one iPad window while another reconnected it showed a connection error. (#3697)
- Replaying a Redis delete could remove another key when the key held a semicolon or an invisible space. (#3697)
- A closed connection could stall every other connection on the same SSH tunnel on the Mac. (#3697)
- Closing an SSH tunnel on the Mac could write into another connection that had just reused its socket. (#3697)
- The Quick Connect widget listed connections that only a Mac can open. (#3697)
- On iPhone and iPad, Commit, Roll Back or a suggestion during a table page load cut the page short and hid Next. (#3697)
- SQLite foreign keys to a table with a non-ASCII name pointed at the child's own column. (#3697)
- A jump host with no username failed as a rejected key instead of naming the missing username. (#3697)
- Mac connections with SSL read as SSL off on iPhone and iPad, and their exports left SSL out. (#3697)
- MySQL and MariaDB connections set to Verify CA failing when the certificate names a different host. (#3697)
- An SSH second factor failed on iPhone and iPad when the server allowed a single sign-in attempt. (#3697)
- SQL Server's @@rowcount read 1 after every statement because of the transaction check. (#3697)
- A dropped SSH tunnel on iPhone and iPad stayed broken until the next query failed. (#3697)
- SQLite tables whose names start with sqlite, such as sqlitebrowser_backup, were hidden. (#3697)
- A Redis key with a non-breaking space or bytes that are not UTF-8 was deleted under another name on the Mac. (#3697)
- Redis escapes and a trailing backslash read differently on iPhone and iPad than on the Mac and in redis-cli. (#3697)
- CanonicalizeHostname yes renamed a host reached through a jump, and a ProxyJump list followed every hop's own jump. (#3697)
- The Structure editor merged two SQLite foreign keys when a declared name matched another key's generated name. (#3697)
- The iPhone and iPad import sheet offered a MySQL connection that dials a Mac socket as if it could open. (#3697)
- On iPhone and iPad, a MySQL statement run while a table page loaded failed with Commands out of sync. (#3697)
- An Oracle PL/SQL block that ran DDL left its transaction shown as open. (#3697)
- An SSH agent whose keys ran out the server's sign-in attempts on the Mac did not say the server closed the connection. (#3697)
- Autocomplete in a long script opened inside comments and strings, went silent after them, or stalled typing. (#3697)
- A Redis connection kept on another database on the Mac browsed database 0 on iPhone and iPad. (#3697)
- MySQL connections set to Disabled on iPhone and iPad still negotiating TLS when a client certificate was imported. (#3697)
- Match localnetwork, tagged, command, sessiontype and version blocks in ~/.ssh/config applied whatever their condition. (#3697)
- Turning SSH off on iPhone or iPad left a tunnel that uses a Mac SSH profile on, on the Mac. (#3697)
- MySQL and Oracle Truncate and Drop on iPhone and iPad did not say they commit the open transaction. (#3697)
- ProxyJump none, ssh:// hops, IdentityAgent none and IdentityAgent SSH_AUTH_SOCK were read as host and socket names. (#3697)
- A typed ROLLBACK on iPhone and iPad left the grid, table list and row screen showing the undone changes. (#3697)
- ClickHouse edits stored NULL as empty text and failed on a column name holding a question mark. (#3697)
- Cloudflare D1 and libSQL dropped foreign keys written as REFERENCES with no column. (#3697)
- The Redis Type filter browsed another set of keys than Count Exactly counted. (#3697)
- Copy as JSON wrote invalid JSON for a JSON column holding a trailing comma or a byte order mark. (#3697)
- A SQLite key or filter in a column with no type missed rows that stored the number as a number. (#3697)
- A Redis key holding a NUL byte listed and opened under a shorter name on iPhone and iPad. (#3697)
- A history entry, saved query or SELECT * template replaced the query editor's text on iPhone and iPad. (#3697)
- Redis lines without a semicolon ran as one command on the Mac. (#3697)
- PostgreSQL and DuckDB bit columns showed as booleans and filtered with TRUE or FALSE. (#3697)
- On iPhone and iPad, a tunnel the Mac forwards to a unix socket went to the database host and port instead. (#3697)
- The buttons under a failed connection cut off their titles, such as Manage Connections. (#3699)
- Saving an edit on SQL Server, Snowflake, Trino or Teradata from a result missing a key column could change other rows. (#3700)
- A DELETE led by WITH, or whose only WHERE sat in a subquery, ran without the dangerous query prompt. (#3700)
- MCP tools that open a connection or a table timed out on a connection whose window showed it failed or not connected. (#3701)
- Reopen Last Session dropped connections that were on the connections strip but not connected. (#3701)
- Reopen Last Session forgot a session whose connections had all failed or were not connected. (#3701)
- SQL Server foreign keys showed NO ACTION for every ON DELETE and ON UPDATE rule. (#3703)
- A JSON export wrote text such as TRUE in a text column as a JSON boolean, which imported back as true. (#3707)
- An XLSX export turned a Windows line break inside a value into a plain line feed. (#3707)
- A CSV export wrote negative numbers such as -5 as '-5, so the file did not import back into a numeric column. (#3707)
- A DuckDB SQL export restored binary values as different bytes. (#3710)
- ClickHouse dropped the backslash before a quote inside an Array, Map or Tuple value, and saving that row failed. (#3710)
- A SQL Server SQL export restored text outside the database code page as question marks. (#3710)
- Saving a ClickHouse row that held a backslash, tab or newline changed the value or failed. (#3710)
- SQL Server showed a date with a midnight time, and a time with the date 1900-01-01. (#3710)
- SET and an INSERT column list offered columns of a joined or selected table instead of the table being written. (#3713)
- Canceling a connect left its pre-connect script running until it timed out. (#3715)
- Pre-connect scripts could not find Homebrew tools when TablePro was opened from the Dock. (#3715)
- The result footer left out each statement's own driver message after running several statements. (#3716)
- Writes to Amazon Keyspaces failed because every statement ran at the LOCAL_ONE consistency level. (#3716)
- Pasting into many cells of a data file rebuilt the page once for every cell. (#3717)
- Data file cleanup commands changed the cells between separately selected cells, not only the selected ones. (#3717)
- Cancelling the confirmation of Refresh Materialized View or Edit Comment showed it as an error. (#3719)
- A Cassandra function argument whose name starts or ends with a space or a quote lost it in the definition. (#3719)
- A PostgreSQL sequence in an SQL export restored as bigint with cache 1 instead of its own type and cache size. (#3722)
- Autocomplete inserts a mixed-case or reserved table or column name bare on PostgreSQL, Oracle and Snowflake. (#3731)
- SQL Server names, and Oracle schema and type names, with a bracket or quote before an accent mark were cut short. (#3733)
- Users & Roles no longer commits a transaction left open on a MySQL connection when it applies changes. (#3733)
- A SQL export with Structure only counted the rows of every table before it started. (#3735)
- The cell Filter menu offered equals on a SQL Server TEXT column, which the server refuses. (#3737)
- Filters that ignore case failed on Trino and Presto with a REGEXP_LIKE error. (#3737)
- The key, link and junction table icons in the ER diagram and its PNG export were drawn upside down. (#3738)
- In the Compare & Sync Rows tab, copying a row did nothing and clicking a heading offered a sort that did nothing. (#3739)
- The Compare & Sync Rows tab showed a DATE beside a TIMESTAMP as the same value, hiding the time that differed. (#3739)
- Format Query broke function arguments, FOR UPDATE and CREATE TABLE columns across lines, and ran EXPLAIN into SELECT. (#3740)
- Show History showed earlier versions of a UTF-16 file without a byte order mark as garbled text. (#3751)
- A linked file added with git add --intent-to-add showed M and offered a history it does not have. (#3751)
- SQL Server Windows Authentication through an SSH tunnel asked for a ticket to 127.0.0.1 instead of the server. (#3754)
- Ctrl+Y after a Backspace pasted the deleted character instead of the last Ctrl+K kill. (#3756)
- With Windows line endings, Left, Right and Delete in the SQL editor stopped between the two line-ending characters. (#3756)
- In the SQL editor, Ctrl+K at a line end did not join lines, and a second Ctrl+A or Ctrl+E moved to another line. (#3756)
- Ctrl+F, Ctrl+B, Ctrl+T, Ctrl+O and Option+Escape did nothing in the SQL editor. (#3756)
- The PHP serialized viewer could not open a value holding a PHP 8.1 enum case. (#3761)
- The ER diagram drew a foreign key into another schema to a same-named table of the current one. (#3763)
- The ER diagram drew no edge for a SQLite foreign key that spelled its table in another case. (#3763)
- The theme editor preview kept the old font size after the editor or data grid font changed. (#3770)
- Large Data Grid font sizes were cut off at the top and bottom of each row. (#3770)
- A MongoDB host list holding IPv6 addresses failed to connect. (#3771)
- Saving a MongoDB row after an aggregation on its collection could change no document, or another one. (#3771)
- A MongoDB client key chosen in its own file was never loaded, so certificate sign-in failed. (#3771)
- Saving a MongoDB row could change another document when an ObjectId and a string _id read the same. (#3771)
- MongoDB X.509 and AWS IAM sign-in failed when Auth Database was left empty. (#3771)
- MongoDB dates showed without their milliseconds, so saving a row keyed by a date could change another document. (#3771)
- Editing a connection, saved query or most settings on two devices before they synced undid the other device's change. (#3773)
- Copy as UPDATE Statement(s) on a ClickHouse table wrote a statement ClickHouse refuses. (#3778)
- A data sync into a ClickHouse table failed on every updated row, and on deleted rows of a table with projections. (#3778)
- Delete existing rows before an import or a copy failed on ClickHouse, BigQuery and Spanner. (#3778)
- A missing SSH key file asked for a passphrase instead of saying the file was not there. (#3779)
- ClickHouse queries with parameters failed when a comment held an apostrophe or a question mark. (#3781)
- ClickHouse refused to save text over 128 KiB and failed the first batch of a large import. (#3781)
- ClickHouse stored a plus sign in saved, imported or copied text as a space. (#3781)
- Data sync to ClickHouse turned backslashes in text into escapes, so
C:\newarrived with a newline. (#3781) - A filtered MongoDB table could show a row total that did not match its rows. (#3786)
- MongoDB backup and restore failed with X.509 or AWS sign-in, a bare IPv6 host, or extra TLS options. (#3786)
- A query tab saved by an old version could save edits to MongoDB aggregation rows into the wrong documents. (#3786)
- Search All Rows on a MongoDB collection skipped numbers, dates and ObjectIds. (#3786)
- A MongoDB option holding
&, such as a CA file path or replica set name, broke or changed the connection. (#3786) - Copy Connection String dropped a MongoDB connection's SRV setting and options, and a
+in a pasted URL became a space. (#3786) - Copy as UPDATE Statement(s) on a ClickHouse table matched every row sharing the sorting key. (#3787)
- Deleting a row in a ClickHouse table deleted every row sharing its sorting key, and editing a cell failed. (#3787)
- Editing or deleting one of two identical rows on Trino changed both. (#3787)
- Open Quickly paused on every keystroke when searching tables across several large connections. (#3789)
- Open Quickly did not highlight the selected row after typing a search, or highlighted two rows at once. (#3789)
- Open Quickly and Jump to Column could leave the selected row or its section header scrolled out of view. (#3789)
- Open Quickly lost an arrow key pressed right after typing. (#3789)
- Clicking an autocomplete suggestion highlighted it a third of a second late. (#3789)
- An idle MySQL connection could be released, dropping a temporary table or lock created behind a version comment. (#3791)
- Importing a MySQL dump failed on a version comment holding a quoted
*/or on mysqldump'sDELIMITER ;;line. (#3791)
Security
- MySQL and MariaDB connections set to Required sending the password or IAM token in plain text when TLS was stripped. (#3697)
- MySQL Verify CA and Verify Identity behind an SSH tunnel on iPhone and iPad accepting a certificate they should refuse. (#3697)
- MCP clients creating a database, running maintenance or stopping a server session without asking at Safe Mode Silent. (#3704)
- A Windows line break inside a value split its CSV row, which let a formula after the break past sanitizing. (#3707)
- MySQL and MariaDB connections without TLS sent the password in plain text to a server that asked for it as typed. (#3734)
- MySQL and MariaDB connections set to Preferred sent the password in plain text to a server without TLS. (#3734)
- A Cloud SQL Auth Proxy connection sent its sign-in to another program already listening on its Local Port. (#3734)
- MySQL backup and restore through MariaDB's tools sending the password in plain text to a server without TLS. (#3742)
- A MongoDB SRV connection through a tunnel bypassed the tunnel and did not check the server certificate. (#3771)
- A quote followed by a combining accent could end a text value early in data sync and on Trino. (#3781)
- An option in an imported or opened MongoDB URL could turn off the certificate check the SSL mode asked for. (#3786)
- Safe Mode, MCP and AI chat could run a MySQL, MariaDB or TiDB statement hidden in a version comment without asking. (#3791)
- SAP HANA connections accepting a server certificate issued through a compromised intermediate CA (GO-2026-6809). (#3796)