JDBC loader is able to read schemas of different PostgreSQL versions now,
9.2 though 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.
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.
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
Fixed an error where JDBC performance-helper functions were accessed with no permission to do so.
Fixed an error in diff table filtering interface.
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.
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.
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.
December 6, 2016
Another JDBC DB reader mode has been added. This mode usage increases the performance when working with DBs
containing a large number of schemes 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.
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).
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.
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.
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.
Option of sending messages to the developers directly from the programme has been implemented. To send
messages use the pgCodeKeeper perspective in the Eclipse, choose the pgCodeKeeper menu option — Feedback.
Interface for working with DB connection data has been improved.
The DB objects priviliges reading error has been eliminated.
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 the migration script, the dependent columns indexes are now correctly taken into account.
The analysis of the type definition with the INTERNALLENGTH attribute has been updated.
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.
July 25, 2016
Altered privileges handling has been improved: REVOKE is generated explicitly for remote 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.