Querious Release Notes

Version 3.0.6October 26, 2020 - Build 300052

Changes

  • Fixes query/SQL text fields (like in the Query view) being scrolled slightly to the right and wider than it should be.
  • When editing a table row, Querious will assign NULL instead of `default` to a field with no entered value when "No Auto Value on Zero" SQL mode is on.
  • In the Query view, "Explain" does not use the "EXTENDED" keyword for MySQL 8+ which does not support it.
  • The Table Indexes view should show all index types now even if the storage engine is unknown (ex from a MySQL variant).
  • Open Quickly has the correct Dark Mode appearance.
  • Addressed a scenario in the Query view where connections to the server might increase, so Querious is maintaining a large list of idle connections.
  • Fixed SQL syntax errors in Database Comparison's generated synchronization script.
  • When importing CSV to the database, if an error occurs and you click "Continue", it doesn't hang on importing the rest of the data.
  • Fixes an issue only on Big Sur when trying to rename an item in the left sidebar.
  • Fixes a memory leak when importing or exporting.

Version 3.0.5May 18, 2020 - Build 300050

Changes

  • Added a new option in Database Comparison to remove occurrences of the Reference database's name from CREATE statements for added objects.
  • Changes the Database comparison's generated script so that views are last, so that tables referenced by views are sure to exist.
  • Truncating tables uses a USE statement rather than `db`.`table` so that it preserves replications.
  • Fixes some query errors when dropping the primary key or adding a new autoincrement column when there is no primary key.
  • The Values list popover for editing enum/set values in the Table Columns view no longer exhibits weird behavior after having deleted an enum value which was being edited
  • Changing column types when importing CSV into a new table respects the newly set type.
  • Other minor fixes.

Version 3.0.4April 15, 2020 - Build 300049

Changes

  • Fixes table cells in the Table Content view sometimes showing a foreign key jump arrow when they shouldn't, specifically when the selection is a MySQL View.
  • Fixes the overlap of a table field value and the Foreign Key jump arrow button in the Table Content view.
  • Works around an issue in macOS to expand the drag area for resizing the last table column in the Table Content view, so that it doesn't get superceded by the drag area for resizing the window.
  • Fixes the Focus on Database field fuzzy filtering mismatching in some cases.
  • Small improvement to the minimum table field cell size in the Table Content view.
  • Deleting the database which is currently focused no longer tries to still reload the table previously selected.
  • Now includes NO_AUTO_VALUE_ON_ZERO in the SQL_MODE when duplicating a database.
  • Fixes the Database Comparison view not respecting the checkboxes for ignoring certain steps when generating the script.
  • A number of small visual fixes for Dark Mode.
  • Addresses issues in database synchronization script execution.

Version 3.0.3March 9, 2020 - Build 300045

Changes

  • Fixes scrolling/resizing issues in the Database Relationships view when zoomed out.
  • The import panel now displays the compression format of the file, and does not let it be changed because it's unnecessary.
  • When modifying a saved connection in the connection view, it no longer has the color carry over from the previously-selected saved connection.
  • Fixes an issue in the previous version where the Query view's results summary wasn't updated while more queries were executed.
  • Fixes a few rare crashes when importing.
  • Fixes a rare crash when exporting encounters an error on the server.

Version 3.0.2February 26, 2020 - Build 300042

Changes

  • Fixes database structure comparison having extraneous parenthesis in the SQL for primary keys.
  • Fixes an issue resulting in "row 50 not having the correct columns" in the CSV import preview.
  • Fixes the final case of NULL indicator being small on non-Retina displays sometimes.
  • Fixes the missing Save/Revert buttons for saved queries in the Query view.

Version 3.0.1February 21, 2020 - Build 300040

Changes

  • When exporting SQL, the SQL_MODE is explicitly set to an empty string so that ANSI_QUOTES cannot be applied by the server's settings, which makes the created SQL file usable on servers which do not have ANSI_QUOTES enabled, which is the norm.
  • In Database Structure Comparison, the Ignore Table Auto Increment setting is honored.
  • In Database Structure Comparison, the Ignore Table Auto Increment and Ignore Table Average Row Length settings are turned on by default.
  • Fixes Records Document: Split, Join, and Go To panels not performing the intended action.
  • Saved queries in the sidebar have their query start indicators in the line number gutter shown immediately.
  • Saved queries in the sidebar have syntax coloring applied immediately.
  • The Server Slow Query log only loads the last 20 MB from the file, like it does with the Errors log.
  • Fixes the search operators not showing the correct list of available operators depending on the selected column, after having navigated between two different tables.
  • Duplicating a row in the Table Content view with unloaded values loads them first so the values are properly duplicated.
  • Binary columns which are foreign keys show the foreign key jump button again in the Table Content view.
  • When editing a table field in the Table Content view, using the up and down arrows selects the cell in the previous/next row, but now also correctly selects all of the text so it can be edited, instead of having the cursor at the end or beginning of the field with no selection.
  • Fixes the NULL indicator in a table value cell having the wrong scale when the window is moved between a Retina and non-Retina screen.
  • When editing a table field's value, such as a NULL value, pressing escape doesn't doubly show the NULL indicator and the NULL value as text.
  • Fixes a subtle and rare bug in CSV importing which could lead to a mistaken error about incorrect column counts.
  • When saving a Records Document, it applies CSV enclosers properly according to the setting (always vs when needed).
  • Opens saved connections with the exact same user and host, but having different databases, in separate sessions, so the tabs are named properly (with the separate saved connections' nicknames as expected).
  • The Table Indexes view has the index columns list clip to the list's bounds rather than truncates to whatever tokens fit. This is a better indicator that "there's more not being shown".
  • Fixes a rare crash when importing SQL.
  • Solves a rare slowdown when searching in the Focus on Database field in the sidebar.

Version 3.0 🎉February 13, 2020 - Build 300038

Check out the website for a list of most of the major changes in Querious 3.

Changes

  • Renames Source and Target in Database Comparison to Target and Reference for better clarity.
  • Added "Add Connection Settings" to the popups in the New Database Comparison setup window.
  • Added a confirmation before synchronizing structure in Database Comparison.
  • Big performance improvement when scrolling in the Table Content view.
  • Big performance improvement when scrolling in the Query view results.

Version 3.0 Final CandidateFebruary 5, 2020 - Build 300035

Changes

  • The "Show All"/"Find" button in the Table Content view now has a menu attached to it to copy the equivalent SELECT statement or open the query in the Query View.
  • All import/export/transfer operations, whether they succeed or fail, are shown when they finish.
  • Added a new SSH Host option to the export filename template options.
  • When duplicating a database, the SQL mode is set to ignore invalid dates so that existing values are duplicated properly.
  • Contains fixes for the database comparison's generated synchronization script.
  • Fixes a crash which could occur when selecting a value from an enum's popup menu, while the table cell was also focused for text editing.

Version 3.0 betaFebruary 1, 2020 - Build 300034

Changes

  • Allows SSH aliases for tunneling, without specifying a username.

Version 3.0 betaJanuary 20, 2020 - Build 300033

Changes

  • The primary sidebar icon size can be changed from using the system default (to always using small icons, like Querious 2).
  • Fixed a crash when using the querious:// URL scheme.
  • Fixed a rare crash when testing a saved connection in the connection settings panel.
  • The SQL export option "Include DEFINER clause" applies to triggers.
  • Created MySQL events are not immediately deleted by MySQL.

Version 3.0 betaJanuary 6, 2020 - Build 300032

New

  • Server Access connections through SSH now support elliptic curve keys.
  • Added a button in the Server Access connection settings panel to copy from the SSH Tunnel.

Changes

  • In the Server Error Log view, the log is now limited to 20 MB of the end of the file, addressing memory usage when the log is very very large.
  • Refresh All also removes all cached table content in the current tab.

Fixes

  • Creating a database doesn't result in an error. Broken in the previous beta.
  • Modifying sidebar favorites is now synchronized across multiple tabs to the same connection.
  • Fixes a crash which would happen when closing a connection tab while it was reconnecting
  • Fixes a crash when editing text in the JSON editor.
  • Fixes a problem where new/unconnected tabs would show a "Reconnect" button when waking up from sleep. Clicking the button would crash.
  • If connecting through SSH fails, it doesn't still continue to try to connect to MySQL. Broken during the beta.
  • Connects to the initial database when opening a new connected tab. Broken during the beta.
  • Hopefully finally found and got all the edge cases of tabbing between columns the Table Columns view working.

Version 3.0 betaDecember 13, 2019 - Build 300030

Changes

  • Includes changes to many create/drop/insert/update/alter statements to prefer the USE statement to specify the database, allowing the queries to propogate across replicated slaves.
  • Adresses an issue introduced in the previous beta when connecting to custom Unix socket files.

Version 3.0 betaDecember 11, 2019 - Build 300029

Changes

  • When the machine awakes from sleep, there is much improved handling of the auto-reconnecting when the network is available.
  • Small interface tweaks to the connection settings layout so the choice between TCP vs Unix is more prominent. When using Unix Sockets it will also automatically check for the standard MAMP socket file location when no path is explicitly given.
  • For MySQL 8 when the table status is cached (the new default), it now shows the correct auto increment value by ignoring the cached value.
  • Using a default value of CURRENT_TIMESTAMP etc for a column imported via CSV works correctly instead of it trying to import the literal string 'CURRENT_TIMESTAMP'.
  • Fixes negative numbers being displayed as invalid JSON.
  • Potentially addresses an issue leading to the error: "ERROR 2061 (HY000): Authentication plugin 'caching_sha2_password'; Authentication requires secure connection." when connecting to MySQL 8.

Version 3.0 betaNovember 19, 2019 - Build 300023

Changes

  • The Database Relationships graph updates appropriately if tables are modified since the last time it was viewed.
  • Right-click and selecting Import… doesn't scroll the sidebar anymore.
  • Fixes missing INSERT batching in SQL exports.
  • OPTIMIZE results are converted to KB/MB/etc.
  • Adresses tabbing behavior in the Table Columns view.

Version 3.0 betaNovember 12, 2019 - Build 300017


Note: If you have not seen it yet, try using File —> New Database Comparison to find differences in table structure (column names, types, etc) and even create a synchronization script.


Changes

  • Fixes a Dark Mode issue in View Structure.

Version 3.0 betaNovember 11, 2019 - Build 300015

Changes

  • Added a preference for the default string search operator in the Table Content view.
  • Open in New Tab correctly selects the right item in the sidebar again.
  • Fixes the sometimes-missing import/export progress bar in windows.
  • Fixed checkboxes in columns so they don't sometimes randomly show true when the value is NULL.
  • You can now specify the authentication plugin used for MySQL in the saved connection settings panel, such as if you have a MySQL 8 server using the MySQL 5 authentication plugin (mysql_native_password).
  • When selecting and deleting by word in a query field, the word boundaries should be more syntax appropriate. Ex: when the cursor is after "one.two" and pressing option-delete, it will delete leaving "one.", stopping at the period.
  • When an item is to be selected in the sidebar (like when using Open Quickly) it's now scrolled to the top of the sidebar.
  • In the Table Structure view, when changing the type of a column using the popup, while at the same time the name is currently being edited, it no longer loses the edited name.
  • Shows system notification when import/export ends. For some reason they stopped showing.
  • Fixes layout of the Run SQL Script sheet.

Version 3.0 betaOctober 28, 2019 - Build 300012

Changes

  • Prevents the sidebar database "focus" field from opening the popup menu automatically at unwanted times.
  • The recently-new "Show value suggestions menu" preference is now on by default.
  • The table content fields shows the suggestions menu for enums and sets all the time, and by the preference appropriately for everything else.
  • Dark mode fix for Foreign Keys list in the Structure view.
  • Applies an earlier fix for the NULL value issue with MariaDB back to 10.2.6+ appropriately instead of just 10.2.27+
  • Fixes infinite reloading across multiple tabs open to the same table in the Content view.
  • The query is shown if there's an error when creating or updating a user.

Version 3.0 betaOctober 16, 2019 - Build 300010

Changes

  • Avoids a crash in macOS Catalina when the open dialog for imports closes.
  • Addresses clipping of characters and words in result lists when multi-line / taller fields are turned on in preferences.
  • Avoids an infinite reload of table results when row caching is turned off and multiple tabs are viewing the same table.
  • LEFT JOIN and RIGHT JOIN are indented properly when formatting queries.
  • Reverts, for now, a prior change for routines' defintion SQL.
  • SSL host verification is on by default for security. Can be turned off in Advanced preferences.

Version 3.0 betaOctober 1, 2019 - Build 300009

Changes

  • Works around an issue in MySQL where routine create statements would replace escape characters with literal values
  • The Table Structure view doesn't change numeric types to have a 0 default value if they're allowed to be null.
  • Supports MySQL 8 syntax for changing password
  • If creating a new user fails, the query is shown in the error.
  • Changing a value in the Table Structure view and then pressing the Tab key correctly tabs between fields.
  • Anything that changes the table cached content (eg, Truncating the table) correctly refreshes the view again.

Version 3.0 betaSeptember 25, 2019 - Build 300008

Changes

  • Fixes an issue with registration.

Version 3.0 betaSeptember 22, 2019 - Build 300007

Changes

  • Fixes a crash when trying CSV import.

Version 3.0 betaAugust 19, 2019 - Build 300006

New

  • Added a database "renaming" option in the main sidebar. (Actually duplicates because renaming a database isn't supported by MySQL.)
  • Added a preference for how the width of columns is calculated in the Table Content view.
  • Spacebar toggles the checkbox of selected rows in the schema object lists during the Export process.

Fixes

  • The tab key cycles between columns within tables in the Table Content and Table Structure views appropriately.
  • When editing a JSON-typed column, the JSON editor opens in the field value popover now, instead of Text.
  • Fixes the User Privileges view, where clicking on the database/table/field-level permissions list was not working correctly.
  • Addresses some Dark Mode issues.
  • Shows the "NULL" default value suggestion in the Table Structure view where it was logically missing.
  • A new Connection window opens at launch again when appropriate.
  • Foreign keys popover loads the view and loads properly.
  • The option to ignore constraints is enabled when deleting a database.
  • When editing a value in the field value popover, when the popover closes, it doesn't try to save the value even if the value did not change.
  • A number of stability improvements.

Version 3.0 betaJuly 17, 2019 - Build 300004

Changes

  • Addresses some issues on macOS 10.12 and 10.13.
  • The tab key in the Table Content view cycles only through cells in the selected row.
  • Improvement in handling of reconnection after the SSH tunnel has been disconnected.

Version 3.0 betaJuly 16, 2019 - Build 300002

General

  • Dark mode fixes in the Server view.
  • Misc fixes and optimizations.

Version 3.0 betaJuly 1, 2019 - Build 300001

General

  • Fixed a crash at launch for some.
  • Some dark mode appearance fixes in the Query view.

Version 3.0 betaJune 28, 2019 - Build 300000

General

  • Requires macOS 10.12
  • Added Dark Mode support for 10.14+
  • Significant optimizations when multiple tabs are connected to the same server. Less memory is used, less CPU, faster connection for new tabs, reconnection, etc
  • Should now support servers with the NO_BACKSLASH_ESCAPES SQL mode turned on.
  • Added support for querious://connect/favorite and querious://connect/new to open new connections by clicking a link, allowing some automation integration with other tools.
  • A number of internal optimizations for stability, consistency, and performance.

Database Structure Comparison

  • There is an entirely-new feature to compare and synchronize database structure. Accessed through File —> New Database Comparison, select a Source and Target database, and a series of SQL statements will be generated that modify Source so that it has Target's structure.

Connection Window

  • Connection color is shown on tabs when active and hovered over.
  • Added preference to show connection name and selection in the tab label.
  • Added a contextual menu when right-clicking on tabs in the tab bar (Close other Tabs, Move to New Window, etc).
  • Shows an error icon next to the transfers button in the window toolbar when there's a failure.

Connection Settings

  • Added an option in the connection settings panel for enabling cleartext passwords (needed for some MySQL authentication plugins).
  • Adds a new preference to specify a path to mysql plugins used for authentication.
  • Adds a preference for whether the host's SSL certificate needs to be identified.

Primary Sidebar

  • Tables, Functions, Events, etc can now be grouped into folders according to their type rather than all being in one list.
  • Rows are sized according to the system preference for sidebars.
  • Items can now be marked as favorites through their contextual (right-click) menu, which sorts them to the top of the list.
  • The "focused" database popup at the top of the primary sidebar is now a fuzzy-matching field with a drop-down list. It should be quicker to use.

Table Content

  • "Boolean" columns can now display a checkbox. See the preference in Preferences → Results for tinyint and bit columns.
  • Adds a [-] remove button to the first/only filter in the Table Content view, making it easy to click that to remove the filter rather than having to select "Show All" from the popup menu.
  • Added a new preference for JSON to be edited in the field value panel rather than inline in the table.
  • The field value panel is no longer a sheet, but a less obtrusive popover.

Database Relationships

  • The relationship graph now optionally shows table columns fields and types, as well as their PK/FK status.
  • The relationship graph can now be exported as a PDF.
  • The relationship graph has improved and faster layout.

Query View

  • Added color themes, including a default one for dark mode. See Preferences.
  • Added a preference for whether Querious continues, stops, or asks what to do when an error is encountered while executing multiple queries.
  • All-new SQL formatter with more options (stripping comments and indenting). Easily triggered with Cntrl-F.
  • Added a new "Minify SQL" formatting option.

Server View

  • Can now export the Slow Queries log file.
  • Can now export the Server Errors log file.
  • The Process list can now hide sleeping connections.
  • The Server Errors log view can now show the raw text of the log, particularly if it can't be parsed correctly.

Structure View

  • The Primary Key view's popup allows easily creating a new column that will be the autoincremented column.
  • The CREATE statement in the View Structure view is now formatted for better readability.

Import

  • It is now possible to create a new table directly from a CSV/Tab file being imported.
  • When importing CSV, empy column values in the file can instead import as specified default values.
  • Importing from compressed gz files is supported.
  • Added an option for whether Querious continues, stops, or asks what to do when an error is encountered while importing. SQL can ask on any error, while CSV importing can only ask for some. Some errors will still cause the import to fail.

Export

  • Added several SQL export options, such as 'Include Definer Clause', Use 'INSERT IGNORE', and 'Use single transaction'.
  • SQL exporting has feature equivalence to mysqlpump.
  • All exporting can now export directly to compressed gz files.
  • Export settings can be saved and loaded through an action menu in the export panel.
  • There is a new "Entire Server" option for SQL exporting which allows multiple databases and even users to exported to the same file. This is one way to essentially dump the contents of the entire server at once.
  • When exporting as SQL, views are exported in dependency order so they don't cause problems when the SQL is imported.
  • Added a 2-digit year template option for export file names.

Duplication

  • Duplication is more reliable due to better handling of dependencies.
  • Fixes faulty SQL where the CREATE VIEW syntax still referenced the old database leading to an error.
  • Trigger creation is now the last step in duplication so that triggers are not fired when inserting data which lead to issues. One example is a trigger which auto-populates another table from the first table's data, leading to a duplication of data because it was already inserted when copying table data explicitly.
  • Removes the DEFINER and SQL SECURITY clauses so that duplicating between servers where the user does not exist will work.