Releases
Last releases
Latest releases available on github
pgCodeKeeper 7.0.0
November 14, 2022
- Increased minimum JAVA version to 11.
- Stopped support for PostgreSQL versions below 10.
- Added support for PostgreSQL 15.
- Added a switch to show columns in the pgDependencies view.
- Added search by qualified object name.
- Added missing references to objects in MS SQL.
- Disabled data migration for foreign tables.
- Fixed a bug related with installing pgCodeKeeper in the latest version of Eclipse.
- Fixed a bug in MS SQL tables query.
- Removed feedback form through Eclipse.
- Сhanged the resource reading mechanism.
pgCodeKeeper 6.6.0
September 27, 2022
- It is now possible to generate the creation of CONSTRAINTs using NOT VALID/VALIDATE in migration scripts (CLI option --generate-constraint-not-valid).
- It is now possible to change the trustServerCertificate parameter for MS SQL connections.
- It is now possible to roll forward selected objects in the project editor without checked marks.
- Added support for COLLATION objects.
- Added CLI option --update-project to update project in --parse mode.
- Added CLI option --clear-lib-cache to clear libraries cache.
- Added a marker for the current group in the database selection menu.
- Improved quick fix mechanism for FUNCTION, USER MAPPING, CAST objects.
- Disabled re-launches of the parser by right-clicking in the SQL editor.
pgCodeKeeper 6.5.3
August 5, 2022
- Added recursive processing for nested directories with PRE/POST scripts.
- Fixed an error when PRE/POST files and directories did not exist in UI.
- Fixed a file location dialog when saving global PRE/POST scripts for the first time.
- Set minimum width for DB selection menu in Eclipse toolbar.
pgCodeKeeper 6.5.2
August 3, 2022
- Added PRE/POST scripts for migrations. Users may create directories named PRE and POST in projects, contents of which will be added to the beginning and end of the main migration script. PRE/POST scripts are also available in global settings and in CLI options.
- Expression analysis dependency resolution now supports function calls with named parameter notation.
- Added support for DISABLE TRIGGER options.
- Added parser support for reserved keywords in object qualified names.
- Improved rendering of DB selection menu in Eclipse toolbar.
- Fixed an error when reading USER MAPPING with objects privileges disabled. (6.5.1)
- Fixed rendering of DB selection menu in SQL Editor. (6.5.1)
pgCodeKeeper 6.5.0
July 11, 2022
- It is now possible to group DB connections into user-defined groups. Groups are rendered as submenus to easily find required DB connection when choosing one.
- It is now possible to import/export DB connections list.
- It is now possible to generate DROP/CREATE commands with IF (NOT) EXISTS options, and also drop some objects immediately before creating them.
- Added support for USER MAPPING objects.
- Fixed a missing dependency in composite types.
- Fixed object creation order: indices are created before constraints.
- Fixed expression analysis and dependency search in SELECT ... LATERAL commands.
pgCodeKeeper 6.4.3
April 21, 2022
- Fixed order of operations in migration scripts when deleting a column with its CONSTRAINT. Fixed errors when reading CONSTRAINTS objects.
- Creating a script only with selected objects (CLI --selected-only) no longer hides refreshsqlmodule MS SQL commands and doesn't move them to the end of the script.
- Changing SEQUENCE START value now generates ALTER ... START command instead of RESTART.
pgCodeKeeper 6.4.2
April 11, 2022
- Updated all library dependencies of the core program.
New mssql-jdbc driver (10.2) enables encryption by default. To preserve old behavior now we set property trustServerCertificate=true for MSSQL connections by default. To enable server certificate validation set trustServerCertificate=false in connection properties or connection string.
- Fixed an error in code generated when changing a function into a procedure and vice versa.
- Fixed an error when opening a temporary SQL editor on Windows.
- Fixed an error when parsing certain foreign options and other object options. (6.4.1)
pgCodeKeeper 6.4.0
March 24, 2022
- It is now possible to recursively load pgCodeKeeper libraries, which are referenced by other libraries added to the project. Library must be in a project (or project archive) format to have its own dependences, which must be listed in its .dependencies file.
This option is disabled by default so that behaviour of existing projects doesn't change. Users can enable this new mechanism in project settings.
In a general case, for library dependencies to be loaded, container of that library must have its loadNested flag set in .dependencies file. For instance, in this dependency chain: project → lib1 → lib2 → lib3, lib2 will be loaded if project has the option enabled, and lib3 will be loaded if the option is set in both project and lib1.
- Added a tree view of referenced libraries and their structure in Project Explorer.
- Added an option to save DB passwords in plain text in Eclipse workspace instead of Eclipse secure storage for cases where latter was unstable. Users can also use passwords stored in .pgpass file.
- Added an option to limit number of rows returned by executed SELECT statements.
- Non-relocatable extensions are now re-created when necessary.
- Improved SQL code formatter, fixed errors.
- Fixed an error where a newline was lost at the beginning of some expressions.
- Fixed reading SQL-standard function bodies via JDBC. (6.3.1)
- Fixed installation on Eclipse 2021-12. (6.3.2)
- Fixed data loss in data migration when column type or attributes change. (6.3.3)
pgCodeKeeper 6.3.0
November 17, 2021
-
Added PostgreSQL 14 support:
- parser support for new SQL and PL/pgSQL syntaxes
- support for SQL-standard function bodies, not wrapped as string literals
- support for COMPRESSION option in table columns
- support for MULTIRANGE and SUCSRIPT options in types
- support for keywords used as column names in SELECT without AS
- removed support of postfix unary operators
- Fixed an error when parsing SELECT ... INTO in PL/pgSQL IF-statement.
pgCodeKeeper 6.2.0
October 12, 2021
- Added support for SERVER and FOREIGN DATA WRAPPER objects.
- Added SQL code refactoring feature. Users can now rename objects in SQL code together with references to those objects. This feature is available in context menu of SQL editor or with a hotkey Alt+Shift+R.
- Added object references search feature for SQL code. Users can now search for all recognized references to the currently selected object in SQL editor. This feature is available in context menu of SQL editor or with a hotkey Ctrl+Shift+G.
- Added a quick fix for misplaced object errors. It is available in the error tooltip or in Quick Fix context menu in SQL editor. This quick fix moves the object's file to its expected location in the project.
- Added an option to autoformat object code when comparing them and saving them into projects.
- Fixed erroneous Java 11 requirement in CLI version.
- Fixed code generation when migrating data of tables containing IDENTITY columns.
- Improved tooltip rendering in SQL editor.
pgCodeKeeper 6.1.0
August 16, 2021
- It is now possible to selectively load schemas when reading a project or a DB via JDBC. Skipping schemas accelerates DB or project loading. Objects in ignored schemas cannot be used when generation migration scripts. See docs for further info.
- Added developer documentation describing overall project structure and work process in README.
- Improved function links in SQL editor, and also function dependencies.
- Fixed a false diff on functions with GRANT TO PUBLIC privileges.
- Added a DB type filter to the drop-down list in Project Editor.
- Fixed drop-down DB list rendering in Project Editor when running under KDE.
- Fixed an error in table data migration code generation.
- Fixed a parser error for ALTER TABLE SWITCH TO in MS SQL.
- Removed extraneous Show In menu in Project Explorer.
pgCodeKeeper 6.0.0
June 7, 2021
- Added code formatting feature for functions in plpgsql and sql languages. Implemented so far: indentation and newline formatting, tabs to spaces replacement, spaces around operators, trailing whitespace removal. Formatting functionality will be extended in future.
- Fixed error when reading a DB schema via JDBC when objects of different kinds have same oid's.
- Project Editor now has a drop down list of DB connections for convenient connection selection.
- Project Editor now remembers last direction for changes application when reopened.
pgCodeKeeper 5.11.1
March 22, 2021
- Added full support for new object syntaxes introduced in PostgreSQL 13.
- Project editor now clearly shows currently selected source for schema comparison and destination for application of selected changes.
pgCodeKeeper 5.11.0
March 18, 2021
- Starting with this version, pgCodeKeeper requires Eclipse 2020-06 (4.16) or higher.
- Improved Project editor interface, fixed rendering errors on Windows. See docs.
- Improved object dependency graph CLI mode. Now the output can be filtered by object types and it is also sorted by object type.
See CLI help on --graph-filter-object.
- Added support for function calls involving null, anyelement, etc in expression analysis.
- Fixed a crash when analysing WITH RECURSIVE expressions.
- Fixed references lookup for functions with INOUT arguments.
- Fixed index comparison when CONCURRENTLY option for code generation is enabled.
- Fixed a crash when reading IDENITY SEQUENCE over JDBC.
- Fixed errors in identifier parser.
pgCodeKeeper 5.10.8
December 2, 2020
- Added an option for data migration when re-creating tables.
- Added an option to copy selected objects' names in Project editor.
- Fixed Deselect Child Elements menu behaviour in Project editor.
- Fixed table column dependencies of indices and constraints.
- Fixed error when running some SQL commands.
pgCodeKeeper 5.10.7
August 27, 2020
- Fixed qualified name checks in ignore lists.
- Fixed saving ignore lists containing reserved words.
- Fixed trigger re-creation in MS SQL migrations.
- Fixed ALTER SCHEMA output in script execution log.
- Fixed an error in the project editor UI.
pgCodeKeeper 5.10.6
August 13, 2020
- Special characters in file names are now replaced with '_'. When file names match for different objects they will be stored in the same file.
- Added a missed option "Ignore column order" into Get changes settings dialog.
- Improved DB connection editing UI.
- Improved Mac OS X build.
- Fixed an error with project recognition when importing.
- Fixed object location checks under Windows.
- Fixed errors in MS SQL parser.
- Fixed expression analysis when changing files in MS SQL projects.
pgCodeKeeper 5.10.5
July 29, 2020
- Added standalone pgCodeKeeper packages that do not require an existing Eclipse installation. Packages are available on Github.
Previous update site versions are also available on Github. Main update site now contains only the latest version.
- Added a setting to create migration scripts only for selected objects without changing any dependencies. In CLI, all objects that passed through the allowed object and ignore list filters are considered "selected", or all changed objects if no filters are defined.
- Added a setting to ignore differences in table column order.
- Improved COMMENT ON command generation.
- Fixed dependencies between operators and their functions.
pgCodeKeeper 5.10.4
July 15, 2020
- Fixed an error when reading foreign table schemas via JDBC.
- Fixed compatibility with PostgreSQL 9.4 when reading schema via JDBC.
- Fixed order of commands for dependencies between functions.
- Fixed object location path checks to be case-insensitive.
- Fixed errors in expression analysis.
- Fixed a crash when parsing a malformed MS SQL command.
- Fixed export of types when initializing a MS SQL project.
pgCodeKeeper 5.10.3
July 2, 2020
- Selected object occurrences are now highlighted in SQL Editor.
- Added warnings for objects found in unexpected locations (project paths).
- Added parser support for nested multiline comments in PostgreSQL.
- Improved object filter dialog in Project Editor.
- Removed duplication of error markers.
- Fixed a crash when an error is found at the end of a line in a migration script.
- Fixed an error in project builder. (5.10.2)
pgCodeKeeper 5.10.1
June 16, 2020
- Added support for POLICY objects.
- Improved COMMENT ON items in SQL Editor's Outline.
- Fixed an error in COMMENT ON for DOMAIN CONSTRAINT.
- Fixed SQL comments before object code being lost when executing MS SQL migrations.
- Fixed erroneous/extraneous object references in SQL Editor.
pgCodeKeeper 5.10.0
June 2, 2020
- Reworked object references lookup. Now object refernces are collected in analysis stage of function bodies, view queries, and all other expressions. Imprecise method of text-search in expressions was retired.
- It is now possible to filter Project Editor by columns. Only tables with changes to their columns will be shown.
- Fixed an error in SQL parser in SELECT aliases.
- Fixed object references in COMMENT ON.
- Improved support for SQL string escape schemas.
- Fixed a crash when parsing MS SQL scripts.
- Excluded CAST objects belonging to extensions from JDBC loader. (5.9.14)
- Fixed DB toolbar combo content when switching editors. (5.9.14)
pgCodeKeeper 5.9.13
May 19, 2020
- Fixed order when adding new columns into a table to preserve the order specified by user.
- Fixed false differences in changed order of VIEW column comments.
- Improved DB selection dropdown UI. Increased the list width in Eclipse toolbar.
pgCodeKeeper 5.9.12
April 29, 2020
- Added support for CAST objects.
- Ignore lists now have a QUALIFIED flag that matches rules against object qualified names.
- Project builder now uses included libraries when performing a full build, and doesn't mark references to library objects as errors.
- Fixed DB connection list UI and other list UIs on Windows.
- Fixed a crash when parsing an empty migration script.
pgCodeKeeper 5.9.11
April 16, 2020
- Added a warning when Java heap space is insufficient for large projects.
- Improved output of command log and error messages when executing a script.
- Improved command list in SQL Editor's Outline, and also in Project Explorer.
- Fixed an error in query results UI.
- Fixed an error when parsing WITH (reloptions) in indices, tables, etc.
- Fixed missing links for objects used in function bodies and triggers.
pgCodeKeeper 5.9.10
March 11, 2020
- Added a preference to disable error reports when getting changes.
- Removed internal preference values from .settings/ru.taximaxim.codekeeper.ui.prefs project file. Now it contains only user-defined settings.
- Fixed an error when reading aggregate functions ordering by VARIADIC "any".
- Improved PL/pgSQL parser rules.
pgCodeKeeper 5.9.9
Feburary 19, 2020
- It is now possible to disable SQL editor parser for large files to improve performance.
- It is now possible to drag and drop the elements around in DB connection list, Ignore lists, Library lists and others.
- It is now possible to set encoding when importing a project.
- Diff Wizard now uses the global Ignore list.
- Improved parsing of PL/pgSQL INTO clause.
- Fixed code generation when changing IN/INOUT function argument modes.
- Fixed builder crash when encountering an error in expression analysis.
- Improved performance of MS SQL expression analysis.
pgCodeKeeper 5.9.8
January 28, 2020
- Added support for new object properties introduced in PostgreSQL 12.
- Dependencies are now tracked in default value expressions in MS SQL.
- Added --ignore-errors CLI switch to ignore parser and code analysis errors.
- Dependency tracking for PostgreSQL function bodies was disabled due to unstable behaviour.
- Improved error reporting in expression analysis.
- Added support for newline-split strings in PostgreSQL.
- Improved whitespace-agnostic PostgreSQL VIEW comparison.
- Fixed an error when analysing RETURNING DML statement inside a CTE. (5.9.7)
- Fixed Windows CLI bat launcher failing when passed special character containing arguments from PowerShell. (5.9.7)
pgCodeKeeper 5.9.6
December 16, 2019
- Enabled dependency processing for PostgreSQL functions when their bodies are changed.
- Reduced the number of objects recreated when their function dependencies have changes in their bodies.
- Fixed CREATE FDW parser.
- Fixed SELECT ... FOR parser.
- Fixed an error when overriding settings before launching an operation.
pgCodeKeeper 5.9.5
December 9, 2019
- Optimized migration script generation for complex/large object dependency graphs.
- Improved error messages when saving passwords in secure storage.
- Improved cancellability when reading DB via JDBC.
pgCodeKeeper 5.9.4
November 29, 2019
- It is now possible to override settings before launching Get Changes or generating a migration script. Overridden setting are only used once and don't affect program and project preferences.
- Overridable settings are also added to the Diff Wizard.
- Added support for MEMORY_OPTIMIZED MS SQL tables.
- Expression analysis has been optimized: debug logging has been turned off, analysis is now run using multiple threads, VIEW analysis is now done in a single pass and doesn't require a dependency graph.
Expression analysis an the final step when loading any DB schema. These optimizations reduces analysis time 4x relative to the last version (depends on CPU count).
- Fixed code generation when changing ANSI_NULLS and QUOTED_IDENTIFIER properties in MS SQL.
- Fixed execution of MS SQL scripts containing a single batch of commands.
- Improved error reporting when saving passwords in Eclipse's secure storage.
- Fixed parsing of RETURN QUERY EXPLAIN (5.9.3).
pgCodeKeeper 5.9.2
November 14, 2019
- Database passwords are now stored in Eclipse's encrypted Secure storage. Passwords in .pgpass file are still supported.
- It is now possible to free parser cache memory after a period of inactivity or on-demand. Default inactivity interval is 30 minutes and may be changed in the program settings.
Parser cache significantly speeds up SQL parsing but may consume hundreds of MBs of Java heap space which may be undesirable if parsing rarely.
- Fixed an error with function default privileges when changing owners.
- Fixed order of generated commands in cases with cyclic dependencies between functions and tables.
- Added a dependency from SELECT queries to PRIMARY KEYs whose columns are used in GROUP BY section.
- Added a workaround for potential GUI deadlock on Linux
- Added column dependencies to pgDependencies view graph.
pgCodeKeeper 5.9.1
October 31, 2019
- CLI is now able to run the generated script on a database (options --run-on and --run-on-target).
- Fixed errors in PL/plSQL parser, optimized code analysis.#61
- Fixed issues in code generation when altering OWNED BY property of sequences, dropping sequences, and in some other cases.#42
- Fixed an issue where order of column dependencies creation was incorrect when creating a table.#60
- Fixed an issue with dependency detection in expression using COALESCE, NULLIF, etc.
- Fixed code generation when working on partitioned indexes.#58
- Improved Query Result view UI: added a context menu for tabs, and it is now possible to close tabs with middle mouse button.
- Improved parser error messages.
- Added dependencies of Full Text Search objects to functions used by them.
pgCodeKeeper 5.9.0
October 16, 2019
- Enabled analysis for function bodies written in PL/pgSQL language: dependencies used in function bodies are tracked and errors in code are highlighted. Dependency tracking from function bodies to other functions is turned off by default.
Projects containing a lot of PL/pgSQL code may require more memory than before due to increased volume of parsed text.
- Fixed an error when working with PostgreSQL 12. (5.8.3)
- Fixed an error reporting when workign with pgCodeKeeper project libraries and also with projects themselves when reading them in CLI. (5.8.3)
- Fixed an error when using LIST identifier. (5.8.3)
- Fixed Diff Wizard script encoding. (5.8.3)
- Fixed an error when analyzing objects received from JDBC. (5.8.3)
- Fixed an error when opening Diff Wizard's script. (5.8.2)
- Data format of copied query results changed for compatibility with both SQL and CSV (SQL strings are copied). (5.8.2)
pgCodeKeeper 5.8.1
October 1, 2019
- CLI mode now exits with an error when encountering errors in loaded SQL files.
- Fixed an error when opening non-pgCodeKeeper project files in SQL editor.
- SQL parser now supports XMLTABLE, TABLESAMPLE, SELECT INTO contructs.
- MS SQL parser now supports UPDATE trigger function. Also, parser rules have been improved.
- Added REFRESH MATERIALIZED VIEW code generation when WITH [NO] DATA state changes.
pgCodeKeeper 5.8.0
September 18, 2019
- Enabled analysis for function bodies written in SQL language: dependencies used in function bodies are tracked and errors in code are highlighted. Dependency tracking from function bodies to other functions is turned off by default (analogous to MS SQL). Same functionality for plpgSQL is planned in a near future release.
- It is now possible to open an SQL editor to run queries without creating a file on disk.
- In SQL editor it is now possible to switch between PostgreSQL and MS SQL code parsers and templates for files not in pgCodeKeeper projects.
- Progress of script execution and getting changes is now shown in Windows task bar.
pgCodeKeeper 5.7.0
September 3, 2019
- Added global and per-project preference to enable simplified VIEW format. Views read via JDBC won't contain excessive parenthesis with this setting enabled.
- Improved PostgreSQL parser coverage, fixed errors.
- Restored the notification about parser errors encountered during Get Changes operation.
- Removed deprecated CLI -l (--license) parameter.
- Added new CLI mode --graph that shows object dependencies.
- Added Java VM property ru.taximaxim.codekeeper.parser.poolsize, that allows users to specify number of threads allocated to run SQL parsers in parallel.
- Fixed an error with EXCLUDE CONSTRAINTs.
- Fixed outdated syntax in VIEW statements.
- Fixed an error where users couldn't execute SQL files on MS SQL databases.
- Fixed an error with COMMENT ON INDEX code generation. (5.6.1)
pgCodeKeeper 5.6.0
August 13, 2019
- It is now possible to override certain global preferences in different projects.
- Added parser support for SELECT WITH ORDINALITY syntax.
- Project editor filter now shows correct change type based on selected target for changes application.
- It is now possible to specify Java VM parameters when using CLI launcher scripts. All parameters given after -vmargs will be passed to the JVM itself.
- Fixed incorrect name quoting in GRANT/REVOKE statements.
- Fixed an error with character varying type in MS SQL.
- Fixed function call dependency resolution when argument type has typmod. (5.5.3)
- Fixed an error when opening an SQL file outside of an Eclipse project. (5.5.3)
pgCodeKeeper 5.5.2
July 17, 2019
- Added support for IDENTITY syntax in column definition.
- Added support for ALTER EXTENSION command in SQL parser.
- Improved dependency tracking between inherited tables' columns.
- Project's default ignored objects list can now be edited from project properties dialog.
- Referenced libraries list in Project Explorer now shows file names for URLs.
pgCodeKeeper 5.5.1
July 2, 2019
- Domain field has been added to DB connection properties dialog. It enables domain authentication for MS SQL.
- Fixed order of operations for partitioned tables' columns to consider dependencies between them.
- Fixed some errors in template autocomplete UI in SQL editor.
- Improved contextual information when reporting SQL script execution errors.
pgCodeKeeper 5.5.0
June 19, 2019
- SQL editor code templates have been updated. New SQL object wizard now creates new objects using templates for further editing convenience.
- Code autocompletion in SQL editor has been split into categories: identifiers and keywords, and templates. Categories can be switched by repeatedly pressing the autocomplete hotkey (Ctrl+Space).
- MS SQL JDBC driver has been updated. New version allows for NTLM domain authentication when supplied additional connection properties.
- Fixed the condition for detecting changes in functions with default parameters. Previous condition used to trigger unnecessary dependency re-creation.
- Fixed code generation when granting PUBLIC privileges to functions, procedures and types.
- Fixed code generation for index comment when altering in CONCURRENTLY mode.
pgCodeKeeper 5.4.10
June 5, 2019
- Identical objects in project and library are not considered overrides, so that they don't block the workflow when the Disallow overrides option is set.
- It is now possible to edit path or URL in the libraries list.
- When overriding privileges with an "empty list" default privileges for the given object are used instead.
- Fixed vulnerability when extracting zip archives.
pgCodeKeeper 5.4.9
April 30, 2019
- When altering an index in CONCURRENTLY mode generated code is now optimized to minimize the time where the index is unavailable.
- When altering a MS SQL index generated code now uses DROP_EXISTING without explicitly dropping the existing version.
- Columns are now dropped only in the specified table using ONLY keyword.
- SET NOT NULL operations are no longer generated with ONLY keyword, as they are impossible to execute only on the parent table.
- When creating a NOT NULL column, separate commands for NOT NULL and DEFAULT are no longer generated.
- MS SQL parser now supports multiple actions in ALTER TABLE commands.
pgCodeKeeper 5.4.8
April 17, 2019
- Projects can now be bound to DB connections. Only selected connection can be used for bound project.
- Each DB connection can now specify an external loader (pg_dump or other). Connection parameters are passed to the loader via environment variables as described in pg_dump manual.
- Object change types in Project Editor are now shown based on selected migration direction.
- Fixed incorrect comparison of indentations in text of MS SQL user types.
pgCodeKeeper 5.4.7
April 2, 2019
- Fixed dependency processing for MS SQL views, functions, procedures and triggers.
- Fixed an error when comparing MS SQL sequences based on system types.
- Fixed ad error when comparing PostgreSQL functions.
- Fixed an error in MS SQL parser processor for DROP TRIGGER command.
- Fixed privilege override option in project update dialog.
- Fixed an error when sorting project editor by git or DB users.
- Fixed UI freezes when launching large scripts.
pgCodeKeeper 5.4.6
March 19, 2019
- It is now possible to execute data queries in SQL editor. Received data is shown in Query Result view. (5.4.5)
- Added an option to continue reading DB schema when receiving objects in inconsistent state (see 4.5.1 release changes).
- Git and DB user columns in Project Editor are now sortable.
- Fixed errors in dependency search for MS SQL expressions and functions.
- Fixed index creation code for partitioned tables (5.4.5)
- Fixed naming for a black/white list rule option, that applies it to the object's contents. (5.4.5)
- Disabled sp_refreshsqlmodule output for objects except VIEWs. (5.4.4)
- Added support for T-SQL scripts beginning with GO command. (5.4.3)
- Added support for PostgreSQL scripts lacking terminating semicolon. (5.4.3)
- Fixed erroneous TABLESPACE parameters for FOREIGN KEYS. (5.4.2)
- Fixed error where no commands were executed when launching scripts. (5.4.1)
pgCodeKeeper 5.4.0
Feburary 26, 2019
- All objects are now expected to be schema qualified, otherwise a warning is emitted. References to unqualified objects are treated as references to pg_catalog objects.
- Added project builder for MS SQL.
- Added support for indices on partitioned tables and materialized views.
- Added support for TABLESPACEs for table constraints.
- Improved dangerous statements mechanism. Scripts are now checked immediately prior to their execution.
- Improved dependency processing for MS SQL objects. Changes in functions, procedures, views, triggers and also any changes to table columns trigger dependent object updates.
- Improved and optimized SQL parser rules.
- Fixed an error where FOREIGN KEYs were duplicated for table partitions in PostgreSQL 11.
- Fixed an error when reading server name in FOREIGN TABLE.
pgCodeKeeper 5.3.9
Feburary 12, 2019
- Added support for user-defined aggregate functions.
- Added support for PostgreSQL data type aliases. Aliases are converted into standard types "on the fly", different type aliases used in objects are treated as no-change.
- Fixed "too many open files" error when launching parsers in parallel.
- Fixed SQL error reporting when launching parsers in parallel.
- SQL parser rules have been improved and optimized.
- Fixed migrations generated for function dependent objects when its default parameters change. (5.3.8)
- Added parser support for empty SQL statements. (5.3.8)
- Fixed consoles leak in program's UI. (5.3.7)
- Fixed MS SQL builder when launching parsers in parallel. (5.3.7)
pgCodeKeeper 5.3.6
January 29, 2019
- Improved project loader performance using parallel parser launches.
- In MS SQL migrations unmodified dependent objects are refreshed using sp_refreshsqlmodule instead of being re-created.
- Added support for type modifiers of user types in PostgreSQL.
- Fixed MS SQL parser for CREATE SCHEMA with object definitions.
pgCodeKeeper 5.3.5
January 15, 2019
- Script execution progress is now reported in pgCodeKeeper console. Execution result and errors are too reported in the console.
- Fixed missing dependencies from functions being called using EXEC in MS SQL.
pgCodeKeeper 5.3.4
December 11, 2018
- Added an option to override owners of library objects in Project library settings. This option is also applied in CLI when including libraries using XML files.
Owners in project override files have priority over this option.
- Fixed StackOverflowErrors when processing large DBs.
- Fixed loss of dependency information for library objects.
- Added support for special system function call syntaxes in MS SQL. (5.3.3)
- Fixed mismatched source/target library XML options in CLI. (5.3.3)
- Fixed missing operation cancellation checks when reading DB over JDBC. (5.3.3)
- Fixed load order: overrides are loaded last, after libraries. (5.3.2)
- Fixed MS SQL functions export. (5.3.2)
- Fixed an error while reading default values of MS SQL function arguments over JDBC. (5.3.1)
pgCodeKeeper 5.3.0
November 27, 2018
- Added new mechanism that allows users to override privileges and owners of objects, stored in projects and libraries. Overrides are saved in the OVERRIDES directory, which the main project structure.
Update Project dialog now has an option that saves selected differences into the overrides directory.
- CLI mode uses overrides directory automatically.
- Added support for user-defined type objects in MS SQL.
- Added notifications for errors found in libraries.
- Fixed an error when updating files for VIEWs with triggers.
- Fixed REVOKE PUBLIC privilege being ignored for FUNCTIONs and TYPEs. (5.2.1)
pgCodeKeeper 5.2.0
November 13, 2018
- Added support for procedures in PostgreSQL 11. Also fixed reading functions via JDBC in PostgreSQL 11.
Parser now supports new syntax added in PostgreSQL 11.
- Added dependency processing for all MS SQL objects.
- It is now possible to use zip-archives as libraries in pgCodeKeeper projects.
- Library files can now be included by providing remote resource URLs.
- It is now possible to include libraries in CLI using XML lists (.dependencies files, see --src-lib-xml option).
- Default privileges are no longer written in project object files.
- Table re-creation commands are now generated when its column order changes.
- Fixed processing of sequence min and max values in MS SQL.
- Fixed processing of configuration parameters of functions in PostgreSQL to comply with pg_dump fixes.
- Fixed rules for allowed user-defined operator names to comply with PostgreSQL spec.
- Fixed comparison of INCLUDE columns in indices. Column order is is now ignored.
- Disabled reading of EXTENSION owned operators. (5.1.7)
pgCodeKeeper 5.1.6
October 23, 2018
- Added support for OPERATOR objects in PostgreSQL.
- MS SQL migrations are now generated in order imposed by dependencies between objects and VIEWs.
- Fixed an incorrect reading of TEXTIMAGE_ON parameter in MS SQL tables.
- Fixed an error in CLI launch script on Windows when launching from directories with spaces in path.
- Fixed JDBC loader failing when there is no schema to put an object in.
- Deleting MS SQL ROLE members before dropping the ROLE itself.
- Fixed several errors in MS SQL support. (5.1.5)
pgCodeKeeper 5.1.4
October 8, 2018
- Significantly improved SQL parsers coverage.
- Added an option to use Windows authentication when connecting to MS SQL databases.
- Added a separate New Project Wizard for MS SQL.
- User formatting is used when processing MS SQL PROCEDURE, FUNCTION, TRIGGER, VIEW objects.
- Columns are now UPDATEd before adding a NOT NULL constraint. UPDATE has been added to the dangerous statements list.
- Improved error logging.
- Fixed an error when reading MS SQL schema over JDBC while using an unprivileged account.
- Fixed an error when reading and parsing RULEs with SELECT commands.
- Fixed an error when parsing a MS SQL USER.
- Fixed an error when writing non-integer FUNCTION COST and ROWS values.
- Fixed an error with quotation of procedure parameters' default values in MS SQL. (5.1.2)
- Fixed several errors in MS SQL support. (5.1.3)
pgCodeKeeper 5.1.1
September 24, 2018
- Added support for Microsoft SQL Server as a test phase. (5.1.0)
- It is now possible to run T-SQL scripts on MS SQL databases. Scripts are now split into separate commands using parsers which are then sent to DB. For T-SQL scripts commands are executed in batches as instructed by GO separators.
- Improved T-SQL parser, fixed most of ambiguities remaining in the parser grammar. Improved parser error messages.
- Added support for MS SQL objects ASSEMBLY, ROLE, USER.
- DB drop-down lists are now filtered by type (PG/MS) depending on context.
- Fixed a DB load crash when analysing expressions with references to non-existent objects. Such references now appear as errors in corresponding files.
- Expression analysis is now performed after all library dependencies have been loaded to avoid errors with objects referencing not-yet-loaded objects.
- Fixed false difference and incorrect read errors for MS SQL objects.
- Fixed an error where DEFERRED state of CONSTRAINT TRIGGERs was incorrectly read and written.
pgCodeKeeper 5.0.0
August 1, 2018
- SQL code generation has been changed. All SQL statements are now created for search_path = pg_catalog. This improves security and stability of generated code, for more information see PostgreSQL 10.3 changelog.
Because of this, differences in name qualification will be found when comparing projects with DBs. Projects need to be updated to the new format by saving these differences.
- Location of schema SQL files in projects has been changed. They are now stored in their schema directories instead of common SCHEMA directory.
When opening older projects pgCodeKeeper will suggest moving schema files to their new location.
- Using constant search_path for SQL code generation allows JDBC loader to read objects from all schemas with a single query. This greatly improves schema load speeds and allows us to get rid of server helper functions, they are no longer used. Work with pg_dbo_timestamp extension is also greatly sped up.
- Fixed parsing of nameless function parameter of type character varying. (4.6.1)
- Fixed compatibility with Eclipse 4.8. (4.6.1)
- Fixed decrementing SEQUENCEs to comply with PostgreSQL 10 implementation. (4.6.1)
- Fixed CONSTRAINT processing when working with pg_dbo_timestamp extension. (4.6.1)
pgCodeKeeper 4.6.0
June 21, 2018
- Added support from TEXT SEARCH objects: CONFIGURATION, DICTIONARY, PARSER, TEMPLATE. These objects are now also tracked by pg_dbo_timestamp extension.
- pg_dbo_timestamp extension has been updated to work around the issue of object privilege tracking. This fix allows pgCodeKeeper to use the extension to speed up DB schema reads. An option has been added to general settings to enable this behaviour. It also enables showing DB users who last modified objects that were found to differ.
- Fixed errors in SEQUENCEs that were read using helper-functions on PostgreSQL 10.
- Improved Ignored objects list editor UI.
- Fixed highlight of multi-line string literals in SQL editor.
- Parser now supports IMPORT FOREIGN SCHEMA command.
pgCodeKeeper 4.5.3
May 30, 2018
- Bracket highlighting has been enabled in SQL Editor. This can be customized in SQL Editor section of the global pgCodeKeeper settings.
- DB connection parameters UI has been improved. It is now possible to specify additional connection properties.
- Column dependencies in expressions are now recognized in cases where columns are referenced without being qualified by their table names, e.g. in SELECT and index expressions.
- Fixed an issue with increased memory consumption introduced in version 4.5.0.
- Improved notifications' look in Project Editor.
- Fixed broken association between SQL files and SQL editor. (4.5.2)
- Fixed JDBC failover failing when server helper function forces transaction into an error state. (4.5.2)
pgCodeKeeper 4.5.1
May 15, 2018
- pgCodeKeeper is now available in Eclipse Marketplace!
- Additional ignored objects lists can now be specified in project properties.
The lists can be created and modified using editor dialog available in project properties.
- Compare dialog has been replaced by the standard compare editor.
Object overrides view now lets users to compare object versions using this editor.
- Notification is shown when Get changes operation finds no differences.
- Parser now supports TRUNCATE, CREATE USER MAPPING commands and FROM clause in UPDATE command.
- Some internal PostgreSQL functions read data outside current transaction snapshot. Security checks have been added to these function calls.
- When changing libraries their trees in Project Explorer now update automatically.
- Diff pane in Project editor now uses global preferences to render its SQL editors. This fixes the "zero-width tabs" error on Windows.
- Improved rendering for checkboxes with very long labels on Windows.
- Improved dependency analysis performance for VIEWs.
pgCodeKeeper 4.5.0
April 25, 2018
- Ignored objects lists now allow to specify object types to which rule is applied. More in the manual.
- pgCodeKeeper project libraries:
- library structure is now shown in Project Explorer tree;
- added Object overrides view, it shows overrides in current project editor;
- library objects are now marked with an icon in the diff table of project editor.
- Improved SQL expression analysis (in SELECT and other value expressions). The improvements allow for tracking dependencies from expressions to overloaded functions, as well as to columns selected by an asterisk (SELECT * FROM ...).
- CLI logs are now written to a single file in the user directory. This can be changed in the CLI launch script.
pgCodeKeeper 4.4.0
April 11, 2018
- New feature: libraries in pgCodeKeeper projects. Other project directories, dump files, directories with SQL files, and JDBC connection strings can all be added as libraries.
- Users may now turn off SQL editor's SQL parser for unrelated files stored in pgCodeKeeper projects. This option is available in project settings.
- Fixed the message shown when SQL scripts executes with an error.
- Fixed a compatibility error with Eclipse Neon.3.
pgCodeKeeper 4.3.4
March 28, 2018
- Improved DB Store: added per-DB ignored objects lists, a read-only DB setting, a connection tester, and .pgpass import functionality. Changed internal storage format for easier expansion and maintenance.
- Improved JDBC SQL-queries cancelability, such as DB schema reads. When cancelling such operations they will now terminate immediately after cancelling their current DB query.
- Fixed an error where identifiers in RETURNS TABLE clause weren't properly quoted.
- Dollar quotes are now supported in any places in SQL code where strings are valid.
- Updated the list of keywords used for highlighting in SQL editor.
- Object links drop-down in SQL editor now shows project-relative paths.
pgCodeKeeper 4.3.3
March 14, 2018
- Product documentation has been moved out of Eclipse Help System into a separate Read the Docs project.
- SQL editor now searches and creates links for objects referenced by VIEWs. To initialize these links, rebuild or clean your projects.
- pg_dbo_timestamp extension has been updated. A crash on PostgreSQL 10 has been fixed and additional data is now saved for events. From this release pgCodeKeeper supports extension of version 0.0.2 or above.
- In-product feedback function was not working and has been restored.
- Improved quoted identifier handling by New Object wizard.
- JDBC DB schema read queries have been secured against naming conflicts between internal PostgreSQL and user objects.
- Fixed an error while searching for file author in an empty git repository.
- Fixed an error when creating a project in a directory with existing settings.
- Fixed an error where serial SEQUENCEs turned into IDENTITY's on PostgreSQL 10.
- Fixed erroneous suggestions to add builder for non-pgCodeKeeper projects.
pgCodeKeeper 4.3.0
February 27, 2018
- Added pg_dbo_timestamp extension support. This extension gathers information about DB objects DDL modifications.
pgCodeKeeper project editor settings now contain an option to show DB users who modified the objects that were found to differ.
In the future we plan to speed up JDBC schema reads by using this extension.
- Project editor can now filter objects by users who made changes in git or database.
- New SQL object wizard will now try to deduce object name and location from context. Inputting object's name and type has been improved, unwanted focus shifts fixed.
- Mock data wizard now has a button to remove all optional (not-NOT NULL) columns.
- Project editor's filter history now shows automatically when typing.
- SQL editor now suggests adding builder for file's project if it is absent.
- Fixed an error when reading SEQUENCE objects from PostgreSQL 10.
pgCodeKeeper 4.2.3
February 13, 2018
- Mock data wizard improvements:
- added support for more types: numeric, time, timestamptz;
- added support for type aliases (varchar etc);
- test data insert code can now be generated with explicit type casts for each value;
- improved and cleared up error messages about incorrect input values;
- added "any" generator, that allows any expressions or values and uses them "as is;"
- user may now select and delete many columns at once;
- the wizard is now accessible via Project Explorer's and SQL Editor's context menus for table files, it is also still accessible via File - New.
- New SQL object wizard improvements:
- object name and location are now entered as a single string with dot-separators;
- object name field is filled with default values from current context and is focused by default;
- useless dummy owner code is no longer generated.
- Project Editor now has history of previously used filters. Filtering is slightly delayed now to reduce UI hitches when filtering large change-sets. Added object container filter.
- Fixed project import when .pgcodekeeper file is missing. Also any Eclipse project may be converted into pgCodeKeeper project now (via Configure menu).
- Fixed an error when parsing qualified opclass in CREATE INDEX.
- Fixed an error when parsing implicit row constructor in expressions.
pgCodeKeeper 4.2.1
January 30, 2018
- Project editor shows last change author for projects in git repositories.
- Last change lookup uses git log ‑‑full‑history ‑‑no‑merges algorithm which results may differ from the standard one.
- This functionality may be disabled in pgCodeKeeper project editor settings.
- Added support for column OPTIONs in CREATE FOREIGN TABLE. Added support for CREATE RECURSIVE VIEW.
- JDBC-loader now notifies of errors due to outdated helper functions installed in the DB, and also permission denied errors for SEQUENCE objects.
- Fixed an error when reading privileges with special-character-containing user names via JDBC.
- Fixed errors when building project indices and when restoring them after Eclipse restart.
- SQL-editor's Outline will now open with correct filter states after it was closed.
pgCodeKeeper 4.1.3
December 19, 2017
- pgCodeKeeper is now open-source, project moved under Apache 2.0 license.
- Licensing feature has been removed along with usage restrictions.
- Fixed a project initialization error. We recommend users to check their projects' properties to see whether they have a pgCodeKeeper builder attached. In case it's not, it is recommended to add it manually via a pgCodeKeeper - Add Builder context menu item.
- Fixed errors when creating object links in SQL editor, specifically links in function bodies and in out-of-project files.
- Fixed an error where changing contents of a single project had reset all project editors.
- Added a "Cancel Execution" action to SQL editor's toolbar, allowing users to terminate a launched script without opening Eclipse's Progress view.
- Project editor's actions have been moved back inside the editor. They are still available in pgCodeKeeper main menu and using hotkeys.
- "Saved selections" feature has been removed. Instead users may copy selected objects as a filter regex string.
- Filtering in project editor has been improved. It is now possible to filter tables' subelements by their types and all objects by their SQL-code.
- Added "Collapse All" and "Expand All" options to project editor's diff table's context menu.
- Project editor's object counters have been moved to Eclipse's status bar.
- Changed pgCodeKeeper perspective's initial layout to allow for better cohesion between editors and their toolbars.
pgCodeKeeper 4.1.2
November 22, 2017
- SQL editor and migration editor have been merged into single SQL editor
that also executes scripts and performs quick object updates.
- Improved project editor's and SQL editor's toolbars.
You can now choose changes sources or script execution targets using a dropdown-combo on Eclipse's main toolbar.
- Added table test data (INSERT) generation wizard.
- Restored feedback dialog functionality.
- Migration scrips saved as temporary, out-of-project files are now always created in UTF-8 encoding.
- Fixed an error in object type filter in project editor.
pgCodeKeeper 4.1.0
September 25, 2017
- JDBC loader is now able to read schemas of different PostgreSQL versions,
9.2 through 9.6 are currently supported. Following SQL-clauses from these versions are now supported:
CREATE FUNCTION ... TRANSFORM, CREATE FUNCTION ... PARALLEL, ROW LEVEL SECURITY.
JDBC loader no longer fails when reading SEQUENCEs from PostgreSQL 10.
- Added support for FOREIGN TABLE, MATERIALIZED VIEW objects and CREATE TABLE UNLOGGED clause.
- Project builder now detects object name conflicts.
- Error markers in sql-files are disabled for non-pgCodeKeeeper projects.
- Added an object and change types filters to the diff table in the project editor.
- pgCodeKeeper item is now visible in the main menu when working in the program's editors or its files.
- Added a notification for errors found in sql-files while comparing DBs.
- Extended .-operator (dot) support when it's used with nested composite types etc.
- Object owners' names are now quoted the same as other identifiers.
- Fixed a parser error when reading malformed COMMENT ON statements.
- Fixed and error in checkbox state tracking in diff table.
pgCodeKeeper 4.0.0
September 11, 2017
We increment major version in this release due to decision
to shift our development focus onto the SQL-IDE side of the application.
Another reason is an upcoming open-source release, which we plan in the near future.
- New workflow for the migration editor — Quick Update.
If you introduce schema changes directly in pgCodeKeeper now you'll
be able to save your changes, generate a migration, apply that migration
and update your project using a single hotkey — Ctrl+Alt+A.
- Project editor's main action buttons were moved to Eclipse's toolbar
and we also assigned them hotkeys: Get Changes — Ctrl+F5,
Apply to project — Ctrl+Alt+S, Apply to DB — Ctrl+Alt+D.
Additional dependencies button was moved to pg Dependencies view.
- Migration files are now saved in project (/MIGRATION) or in the temp directory,
user may choose to auto-delete migrations when their respective editors close.
- Dangerous statements in migrations are now highlighted at their locations.
- Improved editor highlighting and tooltips, Outline view, project builder, added tooltips for errors found in code.
- Improved SQL editors code to allow for more efficient future development.
- Blocked launching of extra Get Changes jobs if a given Project Editor is already running one.
- Project Explorer context menu now shows an Eclipse's Show In submenu for pgCodeKeeper project elements.
- SQL editor's Show In context menu now has a Project Explorer item
(allowing user to quickly find editor's file in the project's tree).
- Fixed an error where newly created project would show as empty.
- Fixed an error where the application tried to access a SEQUENCE without permission to use its SCHEMA.
pgCodeKeeper 3.11.0
July 11, 2017
- Reworked CLI (command line interface). Changes include: option names, program arguments, the way lists are
passed and others. See CLI help for details (launch with --help).
- Project builder now looks for references to non-existent objects in project's sql files, those are marked as
errors.
- Fixed an error where JDBC performance-helper functions were accessed with no permission to do so.
- Fixed an error in diff table filtering interface.
pgCodeKeeper 3.10.0
May 23, 2017
- Ignored Objects list in program preferences can now be configured as white-list.
- Tabs of the Project Editor have been merged into a single interface.
- CLI build for Windows now includes a bat-script for launching.
- Added support for TABLE OF type clause.
- Added support for ALTER COLUMN SET (options) clause.
- Added support for ALTER COLUMN SET STORAGE clause.
- Improved dependency detection for expressions in SQL commands.
- Improved handling of SQL keywords, parsing of built-in types and functions.
pgCodeKeeper 3.8.6
February 7, 2017
- Added support for ENABLE/DISABLE RULE states;
- Server-side JDBC helpers have been updated and need to be reinstalled;
- Fixed a bug with getting data type names via JDBC;
- User can now choose object types (--allowed-objects) to output into migration script.
pgCodeKeeper 3.8.4
December 22, 2016
- Diff Wizard has been improved and updated. It can be launched using main menu item pgCodeKeeper - Diff Wizard
or via pgCodeKeeper item in the project's context menu. It allows users to compare and generate migration
scripts for DBs, loaded from different sources, without creating a project for them.
- CLI mode now allows users to connect to DB using JDBC connection string.
pgCodeKeeper 3.8.0
December 6, 2016
- Another JDBC DB reader mode has been added. This mode improves performance when working with DBs
containing large number of schemas and while using limited bandwith connections. To use it, it is necessary to
install "helper" stored procedures in the DB being read. To do so, open pgCodeKeeper perspective (Window -
Perspective), choose pgCodeKeeper - Install JDBC Performance Helpers in the main menu and apply the script to
the DB in question. After this the new enhanced reader will be used automatically with this DB.
- Ignored Objects feature has been improved. It is now possible to define both black and while object lists that
can be used both in GUI and CLI modes.
pgCodeKeeper 3.7.8
October 25, 2016
- Getting changes in the project editor now fills both of its tabs (Update Project and Update DB). Choosing a
different DB schema source in one tab also changes it in the other one.
- Manual Dependencies Dialog performance has been improved. Object lists in this dialog now contain all DB objects.
- Ctrl+F5 hotkey now executes selected part of the script in Migration editor (or the entire script, if no text is selected).
pgCodeKeeper 3.7.5
October 4, 2016
- pgCodeKeeper editor interface has been improved and cleaned up.
- DB schema sources (dump files or items saved in DB Store) are now selected using a single dropdown.
- Manual connection parameters inputs have been removed to clean up interface and free screen real estate.
- Selected elements panel has been merged into search text field area to free screen real estate.
- Other minor corrections and performance improvements.
pgCodeKeeper 3.7.2
September 20, 2016
- Option of opening pgCodeKeeper project editor by double clicking the «pgCodeKeeper project» item in Project Explorer has been added.
- Build is no longer started for hidden files.
- Images handling has been improved, resource leak error has been eliminated.
- Receiving indexes via JDBC error has been eliminated.
pgCodeKeeper 3.7.0
September 7, 2016
- Option to create markers of SQL syntax errors, detected by the parser, has been added. Errant files are
marked in the project tree, errant places are underlined in pgCodeKeeper SQL editor (enable pgCodeKeeper
SQL editor by clicking the file SQL — Open With — pgCodeKeeper SQL editor with a right mouse button). For
updating markers in the project make sure that pgCodeKeeper builder is enabled (how to enable: click the
project with a right mouse button — select pgCodeKeeper, then — Add builder).
- pgCodeKeeper builder operation has been improved: frequent updating and smooth progress bar displaying.
pgCodeKeeper 3.6.2
August 24, 2016
- Full support of PostgreSQL operators syntax has been added. For more information please visit:
https://www.postgresql.org/docs/9.3/static/sql-syntax-lexical.html#SQL-SYNTAX-OPERATORS
.
- Option of sending messages to the developers directly from the program has been implemented. To send
messages use the pgCodeKeeper perspective in the Eclipse, choose the menu option pgCodeKeeper — Feedback.
- Interface for working with DB connection data has been improved.
- The DB objects priviliges reading error has been fixed.
- Other fixes.
pgCodeKeeper 3.6.0
August 12, 2016
- Object dependencies storage method has been modified, which made it possible to add the object dependencies from the RULE statements.
- When generating migration script, the dependent columns indexes are now correctly taken into account.
- Parsing of type definitions with INTERNALLENGTH attribute has been fixed.
- The cases of false differences display in stored procedures that return the jsonb type and in the tables using
nextval with a value in double quotes as a default value have been updated.
pgCodeKeeper 3.5.4
July 25, 2016
- Altered privileges handling has been improved: REVOKE is generated explicitly for deleted GRANT.
- The objects random shuffling bug occurring in the project when reexporting has been fixed — now the object
order in the table file is specified explicitly.
- Loading via pg_dump is hidden by default (you can enable it in the settings).
- Clickthrough to types and domains has been implemented in the SQL editor, these objects have been also added
to the Outline list in the Eclipse.
pgCodeKeeper 3.5.1
May 18, 2016
- Support for PostgreSQL RULE objects
- SQL parser rework, optimization and performance enhancements. Optimization estimates:
parsing speed increased by a factor of 4, required memory reduced by a factor of 2.
- Optimized and refactored SQL parser. SELECT and expression parse rules were rewritten using left-recursion.
Eliminated parsing ambiguities in these rules.
- SELECT dependences analyzer has been entirely rewritten.
- Reading of the compared DB sources is now done in parallel.
- You can copy saved set of elements in the form of the RegEx filter.
- Transition to the object definition in the SQL editor has been fixed.
- Colour highlighting of the editor tabs is optional.
- Help has been updated.
- JDBC errors reports have been improved.
- Other minor corrections, mostly related to the parser.
pgCodeKeeper 3.4.1
April 29, 2016
- ORDER BY parsing has been added to the aggregate functions.