Open menu KS DB Merge Tools logo KS DB Merge Tools for Cross-DBMS logo

What's New

Windows MSI packages are digitally signed, Linux tar.gz packages include SHA-256 checksums for verification.
Prior to version 1.10.0, version title contains the link for Windows installer.

1.21.0, 2026-07-31

- For Windows: XdbmsMerge_1.21.0.msi, 42.89 MB
- For Linux: XdbmsMerge_Linux_x64_1.21.0.tar.gz, 53.59 MB, SHA-256 ebc590f39a8acb84f52fa1cbf77687922e19846ec23bbc9f7a0fb415e59ce79f
- Initial implementation of the Schema merge, for new table definitions from the Object list. To make it work, in the Open Databases dialog target db should be marked as 'Merge target'. This will enable conversion of data types, defaults, generated-as, and check constraint expressions into target DBMS syntax, allowing to merge-to/delete-on db marked as 'Merge target'.
- Table structure diff - new column attributes (may depend on enabledmerge target) - target type, autoinc, default (native + target), denerated (native + target)
- Table structure diff - new sections Constraint and Conversion errors
- Table text definitions - use merge target syntax, if enabled and applicable
- Home - MERGE NEW ONLY / DIFF ONLY object type labels
- Schema merge options dialog - new dialog, currently opened to specify table definition merge options - schema and convertion errors
- Find tab - new tab, opened from toolbar, search across all loaded object definitions as text
- Custom data diff - add column filters
- Custom data diff - new Drag mapping items button
- Custom data diff - fix unexptected error on clear table and then OK
- Custom data diff - minor layout updates and reorganization
- Scripting - support diff profile mapping filters
- Scripting - in case of exit code 8 (invalid object), add to log a reminder that UseObjectNamesFrom() call may be needed
- Data diff - mark with ◔ columns with filters and table name in the tab header
- Batch data diff - mark with ◔ tables with filters applied during calculation
- Object list - move table/view data compare buttons into a separate new Data column, with a new 'Open Custom data diff'
- Object list - fix no action on compare data for view which exist only in one DB (and missing in another one)
- Object list - new Err column for tables (conversion errors count, shown if target schema enabled)
- Diff profile tab - 'Click to edit column mapping' tooltip changed to 'Edit column mapping'
- Text diff - better view SQL intent (using Polyglot)
- Text diff - fix broken Indent tab toolbar behaviour for already opened tab
- Access table definitions - fix invalid NULL-ability for primary key columns
- MySQL - Update database title when specified by connection string
- Oracle - map BOOLEAN to corresponding generic type
- Scripting - initial implementation of ObjectsMerge and ObjectsDelete for table definitions
- Scripting - fix cases of local cache cleanup errors in log on completion

1.20.0, 2026-05-18

- For Windows: XdbmsMerge_1.20.0.msi, 25.92 MB
- For Linux: XdbmsMerge_Linux_x64_1.20.0.tar.gz, 43.83 MB, SHA-256 cd64d28cd48039e5c31f44deeaa00660658c664ed7268191e87c0f582e0c2dff
- MySQL - use backslash escaping depending NO_BACKSLASH_ESCAPES sql_mode of the target DB
- Verify compatibility with MySQL 9.7
- Open databases dialog - new Schemas parameter for Oracle databases
- Open databases dialog - fix invalid tab stop on hidden controls when using connection strings
- Scripting - new 'schemas' parameter for DbOpen(), applicable for Oracle
- Oracle - fix database open failure for empty 'exclude schemas' in Settings
- Oracle - update metadata reading to use parameters for schema filter
- Text diff - new 'Edit both in external diff tool' command, available after Settings configuration
- Text diff - exit edit state after edit save/apply (more convenient for subsequent external edit)
- Settings - 'Text compare options' moved to the new 'Text diff' tab, with another new parameter to setup external text diff tool
- Object list, Batch data diff - 'Use RegEx' filter option
- Batch data diff - change 'Create data slice' to a button because it could be hidden by 'Use ReGex' filter option
- Query result diff - minor layout adjustments to keep Run visually the same as in Batch data diff
- On free session expiration lock tabs and cancel any running merge, with an appropriate warning in the Execute script dialog
- License info dialog and Free session expiration notification - add 'Choose and buy a license' button opening a product web page
- License info dialog and Free session expiration notification - add Cancel to 'Enter license key' popup

1.19.0, 2026-04-10

- For Windows: XdbmsMerge_1.19.0.msi, 25.87 MB
- For Linux: XdbmsMerge_Linux_x64_1.19.0.tar.gz, 43.83 MB, SHA-256 33413908fac40bf3e6128a08693c8f16c4a66eb5607b637393e299e9d8c24a7c
- Free version - access almost all features with the following limitations - time-limited sessions, single app instance, output watermarks, and limited command line
- Activation dialog - update description for Free license
- Activation and 'License info' dialogs - accept valid trial/standard keys without additional confirmation dialogs (but keep them for errors)
- License info - accept valid trial/standard keys without need to restart
- License info - change 'full license' to 'Standard license'
- Toolbar - new buttons to include granular change types - new on left, new on right, changed, unchanged
- Toolbar - 'Show all/new/changed' filters are changed to toggles, and now it is kind of "presets" for combinations of granular filters
- Toolbar - 'Unchanged' filter shortcut removed, the filter itself now only available as a granular 'include' option
- Toolbar - Diff results panel (refres, excel, automation, copy) - moved to the right and placed before the Settings panel
- Home, Batch data diff - click on New or New + Changed count opens open list that includes new items only for the given side (and excludes new items from the other side)
- Home - per-side button indicating that list of shown object types is reduced to show only those which have new/changed/unchanged items and suggesting to remove this filter - use single common tooltip and icon (otherwise it would require too many options for new 'include' combinations)
- Home - fix cases of visually loosing recent database date digits for some regional settings
- Home, Object list, Query result diff, Data diff, Text diff - update toggle buttons styles, like in new main toolbar
- Batch data diff - add Unchanged column and support Unchanged fiter
- Object list, Data diff, Query result diff, Text diff - highlight NEW and NEW+CHG totals only if list includes new items for given side
- Object list - next/previous change in the text preview (with Alt+PgDown/PgUp shortcuts, first last change also made available by Alt+Shift+PgDown/PgUp)
- Object list - fix update of text preview selected line after disable preview, change object, enable again
- Text diff - edit mode initial support
- Text diff - allow Merge actions for portions of definitions
- Text diff - support Unchanged filter
- Text diff - produce foldings even if it is a single line (otherwise it looks like a bug that we don't fold a line violating the filter)
- Data diff - disable merge/delete for MySQL Views (even if supported by DB engine, lacks for implementation on the app side and fails)
- What's new tab - make list of changes read-only
- Update EULA - usage, trademark notice, feedback

1.18.0, 2026-02-18

- For Windows: XdbmsMerge_1.18.0.msi, 25.74 MB
- For Linux: XdbmsMerge_Linux_x64_1.18.0.tar.gz, 43.83 MB, SHA-256 cb4915bb4679f60f07ddbf0d2eac769f99848cd68801d29567062a30fb539faf
- Free & Standard: Msi changed to 64-bit with default per-machine installation to Program Files
- Free & Standard: Data diff - treat some errors as critical and show unexpected error dialog (for errors which have to be more related to app logic and not to server/connectivity issues)
- Free & Standard: Data diff - fix cases of showing blobs as System.Byte[] if other side db/table/column is missing
- Free & Standard: Verify compatibility with MariaDB 12.2
- Free & Standard: Execute script dialog - update execution status every 0.5 sec (instead of every row like before, about 25-40 % faster)
- Free & Standard: Fix broken data diff for SQL Server tables with spacial data types
- Free & Standard: What's new tab - make list of changes read-only
- Free & Standard: SQLite - set pragma busy_timeout to prevent 'database is locked' errors (particularly, for the batch data diff)
- Free & Standard: SQLite - update retrieval of blob columns, include fixes made previously for SQLite tool
- Free & Standard: Oracle - fix retrieval of certain value ranges for some numeric and datetime data types
- Standard: Data merge and batch data merge - option to generate upsert SQL (instead of INSERT+UPDATE)
- Standard: Data merge and batch data merge confirmations - more compact comment regarding triggers disable for Id-Remap merge
- Standard: Data diff with mappings taken from diff profile - fix missing column existing only in one db
- Standard: Data diff - fix nullref unexpected error on custom mapping saving to diff profile created after that custom mapping

1.17.0, 2026-01-30

- For Windows: XdbmsMerge_1.17.0.msi, 25.70 MB
- For Linux: XdbmsMerge_Linux_x64_1.17.0.tar.gz, 43.81 MB, SHA-256 f672c172d97dfd71c65fe90c9e85965734290ef867390041e58d5e7cab667235
- Free & Standard: Data merge - warn about potential data changes caused by triggers on target tables
- Free & Standard: Verify compatibility with MySQL 9.6
- Free & Standard: Verify compatibility with MariaDB 12.1
- Free & Standard: Verify compatibility with Oracle 26ai
- Free & Standard: Verify compatibility with SQL Server 2025
- Free & Standard: PostgreSQL - Fix recognition of bpchar data type (without length specifier)
- Free & Standard: Update code sign certificate (may cause smart screen warnings)
- Free & Standard: Codesign all unsigned dlls, to fix compatibility with enabled Smart App Control
- Free & Standard: Remove obsolete SHA1 codesign from all binaries and msi, leave only SHA256
- Free & Standard: Execute script dialog - remove execution result 'Not started' for non-executed-yet script items (which was looking confusing for started but not completed script items)
- Free & Standard: Fix product name in ThirdPartyNotices.txt
- Free & Standard: Open databases - clear database list on trying to refresh for new invalid parameters (was leaving previous db list before)
- Free & Standard: Fix unexpected error on object type changes calculation
- Free & Standard: Fix internal assembly name for 64-bit GUI exe
- Standard: Data merge (table diff and batch data diff) - option to disable triggers on target tables during merge
- Standard: Data diff, Query result diff, Batch data diff, Object list: Next/previous changes - implement for new+changed and 'new only' (to jump from 'new on the left' to 'new on the right' and vice versa)
- Standard: Data diff: Next/previous changes - jump thru pages with the same type of changes directly to the page with different type of changes
- Standard: Query result diff: consider new items block from one side followed by new block on other side as a jump target for new/previous change actions
- Standard: PostgreSQL, Id-Remap Merge - replace lastval()-based logic (which can be invalid in case of triggers) with CTE+RETURNING

1.16.0, 2025-11-16

- For Windows: XdbmsMerge_1.16.0.msi, 25.50 MB
- For Linux: XdbmsMerge_Linux_x64_1.16.0.tar.gz, 40.49 MB, SHA-256 1414fa5c5476e2261c48bb9b2e777ffbcc2e46f46b5b7b79253d5bec17b10c06
- Free & Standard: Open databases - SQL Server - new Encrypt and 'Trust server certificate' options
- Free & Standard: Open databases - SQL Server - Windows/SQL authorization options changed to dropdown with more azure-related options
- Free & Standard: Execute script dialog - fix occasional 'database locked' unexpected errors during Run
- Free & Standard: Execute script dialog - fix occasional unfinished execution
- Free & Standard: Execute script dialog - new execution result option 'Update on item/row change during Run'
- Free & Standard: Use newer version of SQL Server, update ThirdPartyNotices.txt with new dependencies
- Free & Standard: Access - attempt to fix STA error which may hide actual DB engine connectivity failure reason (was reported for Batch data diff)
- Free & Standard: Linux version AOT compilation
- Standard: Scripting - fix cases when command line tool local cache cleanup could affect running GUI instance
- Standard: Execute script dialog - 'Show all' made not available during Run
- Standard: Diff profiles editor - minor label text fixes

1.15.0, 2025-10-09

- For Windows: XdbmsMerge_1.15.0.msi, 22.99 MB
- For Linux: XdbmsMerge_Linux_x64_1.15.0.tar.gz, 53.75 MB, SHA-256 0dd4944b5616b0e364c8a363a076fa10bbd5e6bb40f8b5ba1cd8f6763602bf46
- Free & Standard: Fix unexpected XmlException on app start in case of damaged settings file (https://github.com/KS-DB-Merge-Tools/Issues/issues/21)
- Free & Standard: Oracle - wrap transactions with BEGIN..END block to rollback on failure
- Free & Standard: Oracle - fix Vector native data type recognition for Oracle editions reporting PRODUCT_COMPONENT_VERSION.VERSION of 23.0.* (check for VERSION_FULL in this case)
- Free & Standard: Verified compatibility with MySQL 9.4
- Free & Standard: Verified compatibility with MariaDB 12.0
- Free & Standard: Execute script dialog - 'no backup' warning
- Free & Standard: Data diff - show A-F hex literals in upper case for blobs (for better readability)
- Standard: Diff profiles custom schema mapping and names normalization configuration
- Standard: Foreign keys - fix ignored schema-only parent table change when Settings have schema diff match by schema and name configured
- Standard: Text diff and Object list text preview - new 'Wrap by character' toggle
- Standard: Data diff - truncate string and binary values depending new on settings (relates to https://github.com/KS-DB-Merge-Tools/Issues/issues/19)
- Standard: Query result diff - truncate string values the same way as for data diff, depending on new settings
- Standard: Data merge dialog - minor layout adjustments in the Action section
- Standard: Batch data merge dialog - added explicit merge/delete action indication, removed 'no backup' warning (it needs to be done in the Execute script dialog)
- Standard: Settings - new options to truncate string and binary values on Data diff tab
- Standard: Settings - remove 'Data Merge/Delete' section since these options are confirmed on every merge/delete action
- Standard: Settings - rollback internal settings version number in case of downgrade to make subsequent upgrade more correct
- Standard: Settings - add note about diff profile custom schema mapping
- Standard: Object list - fix changed index name highlight

Notice, 2025-10-03

Verified compatibility with PostgreSQL 18

1.14.0, 2025-07-01

- For Windows: XdbmsMerge_1.14.0.msi, 22.92 MB
- For Linux: XdbmsMerge_Linux_x64_1.14.0.tar.gz, 53.73 MB, SHA-256 153ee77e985b7825fb71f9c0419641b57b0ac2a6c8054a5b548532cb4dc514f3
- Free & Standard: Execute script dialog - completely new dialog, with Script Structure. Transaction and autoincrement options are moved to Data Merge and Batch Data Merge confirmation dialogs.
- Free & Standard: Execute script dialog - in case of failure, rollback started transaction regardless of 'Stop on first error' option
- Free & Standard: Execute script dialog - Copy ALL / Save ALL buttons removed. The whole script can be retreived on Copy / Save for the root Script element.
- Free & Standard: Execute script dialog - Any script element text is truncated to 10k chars. First statement, if larger than 10k, shown without truncation.
- Free & Standard: Data merge dialog - added 'Auto-generated primary key values' and 'Transactions' sections
- Free & Standard: Update UI group box control styles
- Free & Standard: Activation dialog - make non-topmost and show in task bar
- Free & Standard: Verified compatibility with MariaDB 11.8
- Free & Standard: SQL Server - for 'With transaction' generated scripts, add XACT_ABORT to rollback transactions
- Free & Standard: Oracle - for 'With transaction' generated scripts, add BEGIN/END with rollback on failure to rollback transactions
- Free & Standard: Oracle - save/copy script with Id-Remap DECLARE..BEGIN..END statements - save these blocks with '/' delimiter to fix script execution by sqlplus
- Free & Standard: SQLite - enable foreign keys by default, can be disabled in Settings for the Standard version
- Standard: Execute script dialog - 'Show all' button to show the whole script if it was truncated
- Standard: Batch data merge dialog - content organized into sections, added 'Transactions' section
- Standard: Batch data merge dialog - added 'Import existing identity, sequence or other auto-generated primary key values on INSERT' option in the Scope section, shown for 'New' and 'New and changed'
- Standard: Batch data merge dialog - Id-Remap and some other large texts are hidden in the expander controls
- Standard: Data merge dialog - Id-Remap large texts are hidden in the expander controls
- Standard: Data diff - fix unexpected 'index out of range' error when click on first column header in the row details grid (https://github.com/KS-DB-Merge-Tools/Issues/issues/17)

1.12.0, 2025-05-05

- For Windows: XdbmsMerge_1.12.0.msi, 22.82 MB
- For Linux: XdbmsMerge_Linux_x64_1.12.0.tar.gz, 53.73 MB, SHA-256 108aff0da8277507ebc1b47772b29ad055bfdcf5ab0c1a8d08c0ddc8f20520ff
- Free & Standard: All dialogs and progress panels - replace hyperlink buttons with regular buttons
- Free & Standard: Layout adjustments for some dialogs caused by changing hyperlinks with buttons
- Free & Standard: In dialogs, make Yes/Ok/Run default on Enter
- Free & Standard: Pressed hyperlink indication
- Free & Standard: Verified compatibility with MySQL 9.3
- Free & Standard: Activation dialog - update Questions section content
- Free & Standard: Activation dialog - 'Copy' updated to 'Copy both' instance Id and app version
- Free & Standard: Generic dialog - clicked Copy indication
- Free & Standard: Unexpected error dialog - fix locked log file right after sending a report
- Free & Standard: Msi - Update EULA formatting
- Standard: Settings - change tabs background to system control color (like in other dialogs)
- Free: License info - Standard key entry using generic dialog

1.11.1, 2025-04-18

- For Windows: XdbmsMerge_1.11.1.msi, 22.83 MB
- For Linux: XdbmsMerge_Linux_x64_1.11.1.tar.gz, 53.73 MB, SHA-256 721fc3735a36c9efad41b0f4ef542e27d2c3fb20fb6045b7b84bf05e1565d0db
- Free & Standard: Msi - Help button on the Welcome dialog, going to the new Installation help page
- Free & Standard: Msi - Update EULA formatting
- Free & Standard: Accessibility - ability to copy text from basic yes/no and ok/cancel dialogs (for example, for further translation)
- Free & Standard: Activation dialog - added 'Interface language and documentation' section, 'Help' renamed to 'Questions?'
- Free & Standard: Handle application settings reading failure
- Free & Standard: Fix occasional empty file settings of the correct size but filled with zero bytes
- Free & Standard: Oracle - apply system schema filter for Id-Remap mapping tables (exclusion by table name hits db open performance)
- Free & Standard: Oracle - add VECSYS to the default exclude schemas list (for new installations)
- Standard: Text diff - new 'Show line numbers' toggle
- Standard: Fix unexpected DispatcherUnhandledException in cases related to the quick filter usage (Batch data diff, etc)
- Standard: Id-Remap Merge dialog - fix 'Id-Merge' typo
- Standard: ScriptEditor - fix help url
- Standard: Diff profile editor - remove Extensions group

1.11.0, 2025-03-11

- For Windows: XdbmsMerge_1.11.0.msi, 22.79 MB
- For Linux: XdbmsMerge_Linux_x64_1.11.0.tar.gz, 53.71 MB, SHA-256 991ceb6108dcd9ac71099eac1bfbe2937718dfd874c2c5985acda9b4c81dbfc0
- Free & Standard: Fix failure with unexpected error on parsing foreigh keys and indexes, skip such objects and add an error to the progress (related to https://github.com/KS-DB-Merge-Tools/Issues/issues/13)
- Free & Standard: PostgreSQL - read parent table columns from metadata instead of parsing and fix potential issues related to parsing in the previous implementation (related to https://github.com/KS-DB-Merge-Tools/Issues/issues/13)
- Free & Standard: Support PostgreSQL 9.3 .. 9.6
- Free & Standard: MySQL/MariaDB, PostgreSQL - support open by connection string
- Free & Standard: Msi - 64-bit executable added, installed both x32 and x64
- Free & Standard: Msi - removed Uninstall from Windows menu
- Free & Standard: Msi - in Windows menu product page is replaced with 'Which app do I need' help page
- Free & Standard: Remove 'Tools' word from app shortcuts to make them a bit more compact
- Free & Standard: Data diff - fix merge failure for tables with generated-as columns
- Free & Standard: Verified compatibility with MariaDB 11.6 and 11.7
- Free & Standard: Verified compatibility with MySQL 9.2
- Free & Standard: Fix case of local cache failure after opening gui with command line args
- Free & Standard: Merge data warning dialog - include merge/delete action and target DB name, misc. other redesign
- Free & Standard: Scripting DataMerge - new updateOnlyChanged optional parameter
- Free & Standard: Command line tool - add current thread ID to the log on app start
- Free & Standard: Scripting, Query result diff - output PostgreSQL scalar arrays properly (like {s1, s2} instead of System.String[])
- Standard: Merge data warning dialog - new option 'Update only changed columns'
- Standard: Settings - new option 'Update only changed columns' on the Data Diff tab, minor adjustments for 'merge all pages' controls
- Standard: Settings - remove Local cache from Data diff tab (were moved to Misc. earlier)
- Standard: Batch data merge dialog - new 'Update only changed' option, shown for Changed and New-and-changed non-Id-Remap merge
- Standard: Batch data merge dialog - update title and adjust window vertical position on window height change
- Standard: Do not assign DL for self-referenced tables (the same way as for other sycled table dependencies)
- Standard: Batch data merge confirm dialog - replace 'all the tables .. must have DL ..' with 'all the tables that needs to be merged must have DL ..'
- Standard: Batch data merge confirm dialog - don't allow Id-Remap merge if selected table(s) has no children with DL
- Standard: Data merge confirm dialog - fix 'Some of selected tables have', change to 'This table has'
- Standard: Data merge confirm dialog - don't allow Id-Remap merge if selected table has no children with DL
- Standard: Id-Remap Merge dialog - exclude tables without DL (children and other parents). This could make possible the same table to appear both in tables to merge and other parents, and if both selected - 'An item with the same key has already been added' unexpected error (https://github.com/KS-DB-Merge-Tools/Issues/issues/12)
- Standard: Query result diff - fix errors like 'Reading as System.Object is not supported for fields having DataTypeName regclass' for PostgreSQL
- Standard: Scripting - fix 'invalid license' message text in console

1.10.0, 2024-11-25

- For Windows: XdbmsMerge_1.10.0.msi, 17.58 MB
- For Linux: XdbmsMerge_Linux_x64_1.10.0.tar.gz, 53.70 MB, SHA-256 827426945649dc45ebd62c29fb5ef75fc844e387637045ad516dbce0129d6fa7
- Free & Standard: Pro renamed to Standard
- Free & Standard: Scripting - binary for Linux x64
- Free & Standard: EULA updated (more details on automated usage, removed redundant statement regarding terminal)
- Free & Standard: Verified compatibility with MySQL 9.0 and 9.1
- Free & Standard: Oracle, string/binary values SQL formatting - split by chunks with length of 1000 to fix SP2-0027 when running generated script with SQLPlus
- Free & Standard: Oracle, script generation - add slash delimiter after triggers, procedures and functions to fix merge out of app
- Free & Standard: Update libraries (including for MySQL/MariaDB, Oracle and PostgreSQL connectivity)
- Free & Standard: Scripting - /forcescriptrun parameter to prevent unintended merge/delete script execution, new related error code 10 'deny script run'
- Free & Standard: Scripting - new function SetOption, for now to setup text diff options and local cache folder
- Free & Standard: Scripting - unknown return code changed from 7 to 255, 7 is used now for 'not supported statement' error
- Free & Standard: Scripting - data merge/delete - logging improvements, new error code 8 'invalid object'
- Free & Standard: Scripting - new error code 9 'EULA not accepted' for Linux and related --accepteula parameter
- Free & Standard: Scripting - new LogTo(logConnectionString) parameter, false by default, currently affects database reading for Oracle and SQL Server
- Free & Standard: Scripting - update command line arguments parsing and help
- Free & Standard: Scripting - improve diagnostics of parsing errors
- Free & Standard: Scripting - fix local cache cleanup on completion

1.9.0, 2024-10-17

- Free & Pro: Verified compatibility with PostgreSQL 17
- Free & Pro: Verified compatibility with MariaDB 11.5
- Free & Pro: Verified compatibility with Access 2024
- Pro: Scripting / Automation support, new tools: XdbmsMergeCmd.exe to run and Script Editor application to simplify creation and troubleshooting of scripts
- Pro: Json export (in addition to Xlsx, 'Export' toolbar button icon and tooltip updated respectively)
- Pro: Settings, Misc tab - Reports section updated to specify default export format (xlsx/json)
- Pro: Settings - new 'Local temp folder' configuration on the Misc tab
- Pro: Id-Remap Merge - ignore child tables having multiple foreign keys on the same column (was causing unexpected error before)

1.8.0, 2024-08-02

- Free & Pro: Object list, Data diff, Text diff and Query result diff tabs - totals panel redesign: highlight counts of currenlty shown items according to the new/changed filters, other layout updates
- Free & Pro: Data diff - new toggle to show list of selected columns, disabled by default
- Free & Pro: Home tab - new button indicating that list of shown object types is reduced to show those which have new/changed items, suggesting to remove this filter (appears only in appropriate case)
- Free & Pro: Fix cases of splash screen jump for non-100% system display scale
- Free & Pro: Support email changed back to support@db-merge-tools.net (agreement, activation dialog)
- Pro: Home, Object list, Data diff, Text diff and Query result diff tabs - new Unchanged total count
- Pro: New 'Show only unchanged' toolbar button, applicable for Home, Object list, Data diff and Query result diff tabs
- Pro: New 'Last change below' and 'First change above' toolbar buttons, applicable for Object list, Data diff, Text diff, Query result diff, Batch data diff and Table structure diff tabs
- Pro: Data diff - fix 'Index out of range' unexpected error on 'Next change' for tables without common key and with result truncated by paging
- Pro: Postgres - update table indexes retreival

1.7.1, 2024-07-16

- Pro: Indexes - fix index match for Oracle databases
- Pro: Indexes - fix ignored UNIQUE index change
- Pro: Indexes - recognize as changed if match by table and columns but different index name
- Pro: PostgreSQL - exclude some indexes which are already counted as primary keys in table definition
- Pro: SQL Server, SQLite - fix recognition of Cascade foreign key option
- Pro: Settings - Text Diff renamed to Schema Diff and added option to match objects by schema and name

1.7.0, 2024-07-12

- Free & Pro: Views - recognize as changed by returned column names and data types (similar to tables)
- Free & Pro: Verified compatibility with MariaDB 11.4
- Free & Pro: Activation dialog - fix typo in the 'Information about current license'
- Free & Pro: What's new tab - fix typo in the 'Information about current license'
- Pro: Change format of diff profile files, suggest convertion to the new format on load
- Pro: Diff profile editor - new 'Data slices' section
- Pro: Diff profile editor - 'Show in Batch data diff' option for table mappings and queries
- Pro: Batch data diff - options to show 'Custom mappings' and 'Custom queries' from diff profile
- Pro: Batch data diff - 'Create data slice' command
- Pro: Batch data diff - Data slice mode to show data slice, comparing to the regular mode it has data slice name in the tab header, different tab icon and removed 'Create data slice' command
- Pro: Batch data diff - show 'use sys.dm_db_partition_stats' only if one of DBs is MS SQL

1.6.2, 2024-06-26

- Free & Pro: Postgres - optimize table columns reading performance

1.6.1, 2024-06-25

- Free & Pro: Postgres - optimize table and view columns reading performance
- Free & Pro: Fix table and view columns reading progress indication
- Free & Pro: Oracle - exclude materialized views and view logs from tables list
- Free & Pro: Oracle - cache potentially large object definitions on disk instead of memory (views)
- Pro: Don't load triggers for PostgreSQL, Oracle and MySQL/MariaDB, view triggers for SQL Server

1.6.0, 2024-05-31

- Free & Pro: Cache potentially large object definitions on disk instead of memory (MySQL, PostgreSQL and SQL Server views)
- Free & Pro: MySQL - data diff, fix processing of Geometry data types for MySQL 8.3 and 8.4
- Free & Pro: SQL Server - support open by connection string
- Free & Pro: Oracle - fix 'Value can not be null. Parameter name: key' APEX_040000 schema loading error on Oracle 11g
- Free & Pro: Oracle - Home tab, fix missing database name in header if used 'Open new application instance' for database opened previously using connection string
- Free & Pro: SQLite - update System.Data.SQLite library to the latest available 1.0.118 based on SQLite 3.42.0
- Free & Pro: Check for local cache folder existence on startup
- Free & Pro: Open databases dialog - Allow to drag & drop files to file name text boxes (Access and SQLite db files, SSH key files)
- Pro: Diff profiles (exposed in Home, new Diff Profile editor tab, 'Save to diff profile' options in Custom data diff dialog, Query key fields dialog, Query result diff tab)
- Pro: 'Compare indented' option for views in the Text diff and Object list tabs
- Pro: Data diff - Export all pages confirmation dialog
- Pro: Settings - 'Export all pages' data diff settings
- Pro: Data diff - merge rows of table without DL and having other foreign-key-dependent tables - fix invalid unconditional Id-Remap logic, replaced with unconditional regular data merge (Id-Remap can't be done for tables without DL)
- Pro: Data merge warning dialog - warn about auto-increment merge and non-applicable Id-Remap caused by missing dependency level
- Pro: Data merge - fix ignored saved 'Merge all page' setting in case of Id-Remap confirmation shown (without 'Merge all pages' confirmation)
- Pro: Fix export of datetime values for Access and SQL Server
- Pro: Query result diff - PostgreSQL: if query fails with 'type unknown to Npgsql' error, make a retry with AllResultTypesAreUnknown enabled
- Pro: Query result diff - fix default focus on query text
- Pro: Excel exports without opening file - remove hour glass before report completion notification
- Pro: Data merge confirmation, copy all results - fix in 1000000 limit message 'Script' -> 'Combined result'
- Free: Text diff - fix missing changes in background highlight on switching text diff options

1.5.3, 2024-04-05

- Free & Pro: EULA updated (divided into sections, more information and clarifications)
- Free & Pro: Home - fix bug 'Open single database, Refresh, and other side loaded with the same DB instead of refresh'
- Free & Pro: SQL syntax highlight - recognize multiline strings
- Free & Pro: What's new - enable word wrap for list of changes to avoid horizontal scroll for long items
- Free & Pro: Text diff - change line numbers to dark-gray to avoid visual confusion with actual text
- Free & Pro: Fix focus on selected tab, switching between data diff tabs and clicking Refresh could produce selection of some other previously focused tab
- Free & Pro: Data diff - add 'Click to sort by this column' column tooltip where applicable
- Pro: Query result diff - fix cases of missing first row selection on Run (and therefore fix missing bottom row grid)
- Pro: Query result diff - clear previous result on subsequent Run
- Pro: Query result diff - handle properly cases when only one side result is available (error on other side, different resultset count, other side returned no table result)
- Pro: Query result diff - error text word wrap, ability to copy, and some other layout updates
- Pro: Query result diff - better error handling of database connection errors for some DBMS
- Pro: Text diff - new 'Show tabs and spaces' toggle
- Pro: Text diff - new bottom line implementation, with selectable text and fixed tabulation width
- Pro: Table structure diff - show 'Compare data' and 'Open in Query result diff' buttons for tables missing on other side (or other side db is not loaded at all)
- Pro: Data diff - allow to compare string values in the separate text diff tab (the up-right arrow near column name in the bottom grid, useful for multiline values)

1.5.2, 2024-03-15

- Free & Pro: Splash screen
- Free & Pro: Verified compatibility with MariaDB 11.3
- Free & Pro: SQL syntax highlight - highlight identifiers and numbers, reduced list of keywords to the most generally used
- Free & Pro: Custom data diff - fix broken paging on setting up sort order for more than one key
- Free & Pro: Custom data diff - deny sorting on more than one non-key column (not supported)
- Free & Pro: Custom data diff - minor layout adjustments
- Free & Pro: Data diff - use the same fonts in the merge/delete progress as in other places
- Free & Pro: Fix 'It is an expired trial key' key entry error presentation
- Pro: Fix cases of broken Ctrl+C in the new text editor (Query result diff, etc.)
- Pro: Text diff - change Expand above/below links to folding sections (and fix some syntax highlight issues if it shows new/changed lines)
- Pro: Text diff - if show only new/changed lines, do not hide block containing only one line
- Pro: Text diff - show 'Additional lines' configuration directly in tab and remove it from Settings

1.5.1, 2024-02-16

- Free & Pro: SQL Syntax highlight in the Text diff, Object list text preview, Merge dialog and Query result diff
- Free & Pro: SQLite - exclude system tables like sqlite_sequence, configurable for Pro
- Free & Pro: Ability to switch to the full screen, with F11 shortcut
- Free & Pro: Updated application binary protection
- Pro: Query result diff - deny run the different queries on same dbms

1.5.0, 2024-02-15

- Withdrawn release, same change list as for 1.5.1

1.4.0, 2024-02-06

- Free & Pro: Fix 'read sequences' database open error for MariaDB
- Free & Pro: Home tab, Object list - fix Refresh
- Free & Pro: Object list - show object action buttons for new objects or if other side db is not opened (as result, allow to view data)
- Free & Pro: Home tab - 'Copy all' database progress actions appearing in case of errors
- Free & Pro: Access - fix table column nullability
- Free & Pro: Reduce cases of duplicated ';' in generated scripts
- Free & Pro: Data merge dialog - minor label fixes
- Pro: Id-Remap Merge new feature allowing to merge properly foreign key values referencing to autoincrement/sequence numeric primary keys, integrated with Data Diff and Batch Data Diff merge actions
- Pro: Batch data merge dialog - show Id-Remap Merge suggestion and applicability warnings in appropriate cases
- Pro: Batch data merge dialog - minor label fixes
- Pro: Batch data merge dialog - Alt hotkeys
- Pro: Data merge dialog - show Id-Remap Merge suggestion in appropriate cases
- Pro: Access - fix ForeignKey/Relation identification (was counted as new instead of same/changed)
- Pro: Query result diff - 'Split..' and 'Run both..' options adjustments for the new case of opening from Object List when other side db is not opened

1.3.1, 2023-12-15

- Free & Pro: Oracle - Fix ORA-01008 on paging for table with multi-column primary key
- Free & Pro: MySQL - Fix processing of Geometry data types for MySQL 8.1 and 8.2
- Free & Pro: MySQL and MariaDB - Verified compatibility with MySQL 8.1, 8.2 and MariaDB 11.2
- Free & Pro: SQL Server - Open db with server authentication and without saved password from recent list - fix invalid Windows Authentication and focus on password in the password prompt
- Free & Pro: Home tab - indicate that recent database requires password entry (was opened by password without saved password)
- Free & Pro: Opening db with save password if other side loaded and has no saved saved password - fix invalid save password for both (and the same for unsaved password)
- Free & Pro: Recent database open only if one side has no saved password - fix missing password for other side
- Pro: Fix 'Item with the same key has already been added' on some cases opening database having more than one index on the same table and columns
- Pro: Try to find other side matching index by table name, columns and index name first. If not found then match by table name and columns without index name (as previously).
- Pro: Batch data merge dialog - restore lost note regarding script generation time and space
- Pro: Batch data diff - fix invalid 'Change columns' = No for the case of new column(s) in the left db without other changes
- Pro: Opening database in the new app instance: fix some cases of lost 'Save passwords' (both for other side database and the newly opened one)

1.3.0, 2023-09-05

- Free & Pro: Update Oracle metadata reading, fix view columns case-insensitive-duplicates check
- Free & Pro: Fix occasional 'Cannot set Owner property to a Window that has not been shown previously' unexpected error for basic dialogs
- Free & Pro: Improved logic of object changes invalidation after refresh
- Free & Pro: Fix app crash on unknown error during dialog open
- Free & Pro: CREATE TABLE text - fix quoted identifiers for DBMS with schemas
- Pro: Initial support for foreign keys / relations
- Pro: Initial support for indexes
- Pro: Support for All-in-one license
- Pro: Fix 'Cannot call StartAt' unknown error on Batch data diff -> click on view name -> compare data
- Pro: Access - fix missing table DL

1.2.2, 2023-07-20

- Free & Pro: Oracle - verify compatibility with 12c
- Free & Pro: Oracle - fix null reference error on reading Personal Oracle Database and recognize Personal Oracle Database version
- Free & Pro: Oracle - more items in default exclude schemas list for new installations: APEX_040000, APEX_040200, ORDDATA, ORDSYS, RDSADMIN
- Free & Pro: Open database dialog - fix 'Test connection' ignoring database name for MySQL and PostgreSQL (was checking only connection to server)

1.2.1, 2023-07-14

- Free & Pro: Oracle - Fix column reading on 11g and verify compatibility with 11g
- Free & Pro: Oracle - Fix 'ORA-01882: timezone region not found' if client has timezone not configured for server
- Free & Pro: Oracle - Retry database connection open on timeout

1.2.0, 2023-07-13

- Free & Pro: Oracle database support
- Free & Pro: Fix some issues for MariaDB 11.0 and verify its compatibility
- Free & Pro: Fix bug that no-schemas side Home changed counts and Object list rows are multiplied by same-name-different-schema objects from has-schema side
- Free & Pro: Object list - change sorting to be based on both side items (previously left-side items were listed first)
- Free & Pro: SQLite - map String data type to String generic type (was Other before)
- Free & Pro: Access vs others - fix invalid NULL vs NULL calculation and presentation as 'changed'
- Free & Pro: Home tab, database open - 'Close both' progress action (useful if both progresses have errors)
- Free & Pro: Open database - clear server, user, password and database on selecting dbms not previously used
- Free & Pro: Data diff tab - show italic NULL text for NULLs in columns with 'visual match' mapping (which have a gray background color, was just nothing before)
- Free & Pro: Unknown error dialog - minor label adjustments
- Free & Pro: Open database dialog - fix 'Save passswords' typo
- Free & Pro: Update code sign certificate (may cause smart screen warnings)
- Pro: Batch data diff, merge new and changed - add option to delete target rows missing in source
- Pro: Batch data diff - populate startup data in the background and fix occasional DispatcherUnhandledException unexpected error for large lists
- Pro: Batch data diff - for MS SQL merge target fix merge failure caused by multiple IDENTITY_INSERTs
- Pro: Database open - fix 'Open new app instance' behaviour (lost password)
- Pro: Data merge - fix ignored disabled identity/autoincrement for Copy ALL and Save ALL actions
- Pro: Query result diff - fix data type recognition for Access
- Pro: Settings - configure Oracle system schemas to exclude
- Pro: Object list - show selected count only if something selected
- Free: Data diff - show total counts in the top panel
- Free: Object list - show counts in the top panel
- Free: Text diff - show counts in the top panel
- Free: Data merge/delete 'all page rows selected' confirmation warning - add clarification that other pages are not going to be processed

1.1.3, 2023-03-06

- Free & Pro: Data diff - fix failure if more than one column is missing on the other side
- Free & Pro: Apply zoom to almost all dialogs (except unknown error and initial activation dialog)
- Free & Pro: Handle settings reading error on app start
- Free & Pro: Open database(s) icon updated to be the same as on the Home tab (without 'plus')
- Free & Pro: Home tab - recent databases, opening DBs from toolbar one by one - fix invalid left side progress for the second DB
- Free & Pro: Home tab - new 'Delete this pair from recent database list' button
- Free & Pro: Activation dialog - minor label and layout adjustments, change support email to use the new ksdbmerge.tools domain
- Free & Pro: Activation dialog - more responsive processing of trial retreival, disable OK during execution to fix 'DialogResult can be set only after..' occasional error
- Free & Pro: Check for updates - change requested url to use the new ksdbmerge.tools domain
- Free & Pro: Data merge warning dialog - minor layout adjustments
- Free & Pro: Custom data diff - fix unknown error on specifying the same column twice (as left without pair vs right without pair)
- Pro: Batch data diff - don't generate scripts on delete cancellation
- Pro: Query result diff - hide per page counts (there is no paging), show selected counts only if any row selected
- Pro: Query result diff - show resultset number only if there is more than one resultset
- Pro: Query result diff - add result error tooltip showing the whole error text (useful if error is truncated)
- Pro: Query result diff - fix 'method not implemented' error on subsequent run
- Pro: Data diff - show selected counts only if any row selected
- Pro: What's new - 'license key is not valid for this update' notice

1.1.2, 2023-02-02

- Free & Pro: Data diff tab - fix non-closeable progress on merge/delete script generation failure
- Free & Pro: Data diff tab - fix occasional 'index out of range' error on merge/delete all pages for table with changed columns
- Free & Pro: Data diff tab - fix 'Failed to define merge script structure' delete script generation error in case of changed key name(s) (custom mapping or case-sensitive only changes)
- Free & Pro: Data diff tab - save error log for unexpected error on tab open
- Free & Pro: Run data script dialog - new option 'Import existing autoincrement/identity values on INSERT'
- Free & Pro: MySQL, PostgreSQL - check for object/column names to be case-insentitive unique
- Free & Pro: SQL Server - fix recent db password save
- Free & Pro: EULA minor adjustments regarding location
- Pro: Fix command line password arguments processing
- Pro: Batch data diff - 'Changed columns' - ignore case and make 'Yes' for 'Other' data type
- Pro: Batch data diff - DL columns (foreigh key dependency level)
- Pro: Object list - DL columns with configurable visibility (foreigh key dependency level)
- Pro: Batch data diff - merge/delete actions made active allowing to process multiple selected tables
- Pro: New 'Batch data merge warning' dialog
- Pro: Execute data script - show table name with 'and N more' if processing more than 1 table from the Batch data diff

1.1.1, 2023-01-18

- Free & Pro: Msi - allow per-user installation, without UAC confirmation and Administrator privileges (upgrade from per-machine to per-user still requires Administrator privileges to uninstall previous per-machine version)
- Free & Pro: Msi - change images to application icon
- Free & Pro: Msi - option to launch after installation completion
- Free & Pro: Msi - fix some cases of the broken shortcuts removal on uninstall (conflict with PostgreSQL tool)
- Free & Pro: MySQL - allow missing table create/update date to fix RDS Aurora MySQL compatibility
- Free & Pro: SQLite - don't fail on reading table definition with missing column data type
- Free & Pro: Access - providing more details on database engine connectivity error
- Free & Pro: Object list - Refresh implemented
- Free & Pro: Data merge dialog - handle connectivity failure on Run
- Free & Pro: Merge data dialog - allow window resize/minimize/maximize
- Free & Pro: Data diff - fix sorting in the right panel on columns having case-sensitive changes
- Pro: Handle copy to clipboard error (clipboard can be busy with some other app, https://stackoverflow.com/a/68857/282694)
- Pro: Batch data diff - Select row with single click (like in object list and data diff, instead of double)
- Pro: Batch data diff - Fix calculation of Total+New for the case of Common key = No (was SQL error before)
- Pro: Object list - fix 'Compare selected' for views
- Pro: Table structure diff - Case-insensitive match by name
- Pro: Custom data diff - allow window resize/minimize/maximize

1.1.0, 2022-12-03

- Free & Pro: Update hyperlinks, grids, text, selection look & feel
- Free & Pro: Do not consider table name difference as a table change (otherwise for example same columns but DBMS with vs without schema provides all changed tables)
- Free & Pro: Object list - object name hyperlink tooltips
- Free & Pro: Data diff - add 'Page'/'Paging' label
- Free & Pro: Toolbar online help button
- Pro: Scroll background changes indication - more pale colors, fixed Changed indication in the object list

1.0.1, 2022-11-18

- Free & Pro: Data merge - fix some script generation issues for system comma decimal separator
- Free: Allow custom data diff from toolbar and don't trigger it if no key on data diff (same way as in Pro but wihtout views)

1.0.0, 2022-11-16

- Free & Pro: Provide table definition text as pseudo-sql instead of csv
- Free & Pro: Database open dialog - take last data from recent list (dbms per side, rest of data per dbms)
- Free & Pro: Object list - show creted/modified coulmns as N/A if corresponding metadata can not be retrieved from DB
- Free & Pro: Fix comparison failure of MySQL/MariaDB tinyint(1) data type which is synonym of boolean, read such columns as a number the same way as other tinyint options
- Free & Pro: Data diff - fix merge script generation for changed case of column names and custom mapping
- Free & Pro: Database reload dialog
- Pro: Query result diff tab
- Pro: Export to Excel (Home, Object list, Data diff, Batch data diff, Query result diff, Table structure diff tabs)
- Pro: Table structure diff - compare data without mapping prompt, the same way as from Object list
- Pro: Settings dialog
- Pro: Custom data diff - deny Key and Compare mapping type if one sides has Other data type
- Pro: Object list - 'Open in Query result diff' item action
- Pro: Table structure diff - show native type name attributes (like size and so on, earlier was available only for SQLite)
- Pro: Home tab panels - show separate Batch data diff buttons for tables and views
- Pro: Object list - deny 'Compare selected' for items selected for the same database
- Free: Data diff paging and page merge confirmation
- Free: Object list - allow 'Compare selected' for items selected for different databases
- Free: Data diff - remove limitation on number of columns and primary key column count
- Free: Allow to compare data from table definition text diff
- Free: Home tab - allow show new/all/changed

0.4.0, 2022-11-09

- Free & Pro: Read Access files without Access (only DB engine needed)
- Free & Pro: Fix a number of issues of comparability and mergeability for SQLite blob, boolean and datetimes
- Free & Pro: Data diff - fix rare occasional ArgumentOutOfRangeException on open (was 'unknown error' before)

0.3.0, 2022-11-07

- Free & Pro: Fix a number of issues of comparability and mergeability between SQL Server, MySQL/MariaDB and PostgreSQL
- Free & Pro: Make Other generic type not comparable
- Free & Pro: Fix some cases of failures of script generation for numeric values MySQL target
- Free & Pro: SQLite - fix incorrect value retreival for tinyint negative numbers
- Free & Pro: Fix DateTime generic type detection for date/datetime SQLite native types
- Free & Pro: More light app icon (for dark theme)

0.2.0, 2022-10-11

- Free & Pro: Fix compatibility mode shortcut icon
- Free & Pro: Table text preview - add 'Primary Key' Yes/No column
- Free & Pro: Data diff - ingore case searching for compatible primary key columns
- Free & Pro: Open DB dialog - hide port for SQL Server to allow to connect with non-TCP protocols. Port can be specified with server using comma, like for SQL Server connection strings and MssqlMerge.
- Pro: Batch data diff - initial implementation
- Pro: Custom data diff - fix dialog open from toolbar

0.1.0, 2022-10-06

- Free & Pro: Initial public version