Skip to content

v1.0.18

Compare
Choose a tag to compare
@mridoni mridoni released this 23 Aug 14:20
· 411 commits to main since this release

x86 Windows packages for these release have several problems, please use v1.0.18a

This is a maintenance release for GixSQL, that fixes a few issues and adds some new features, notably two new database drivers (Oracle and SQLite). Check the documentation for generic and driver-specific usage notes.

The packages are signed with my GPG private key. The corresponding public key ([email protected], fingerprint 70E4 08CF B89B 5FA8 32E4 5292 EFDC 94BD 5260 B939) has been published on pgp.mit.edu and keyserver.ubuntu.com and is available at https://github.com/mridoni.gpg

Please note: there have been several breaking changes both in the runtime libraries and in the preprocessing engine, so source code compiled with older versions MUST be preprocessed again and recompiled. Also, be sure you are using the updated runtime libraries (i.e libgixsql/libgixsql-*).

Binary packages available (as usual on the release page on GitHub):

  • Windows x64 (MSVC + MinGW)
  • Windows x64 (MinGW only)
  • Windows x86 (MSVC + MinGW)
  • Windows x86 (MinGW only)
  • Windows x86 "portable"
  • Linux x64 (Ubuntu 20.04)

There is also a autoconf-enabled source package, to make building on Linux and MinGW easier.

A summary of new features and fixes:

  • Added new Oracle driver, based on ODPI
  • Added new SQLite driver
  • All the drivers have been updated and now implement the complete set of supported features
  • Solution for "PG: issue with prepared statements" (#99)
  • Solution for "PCursors cannot be re-opened after close" (#98)
  • Solution for "libgixpp: setStatus is called for errors without DBI parm passed - sets SQLERRM" (#94)
  • Solution for "error handling (especially for 07001)" (#92)
  • Solution for "show-stopper bug in pgsql_prepare" (#91)
  • Solution for "PREPARE does not work with VARLENGTH groups (ocesql compat)" (#79)
  • Partial solution for "PREPARE does not work with VARLENGTH groups (ocesql compat)" (#68)
  • Solution for "The PostgreSQL driver needs START TRANSACTION before using cursors" (#14)
  • Solution for "FR: support EXEC SQL VAR" (#21)
  • Fixed a bug in "problems with "codegen / logic issue for "GIXSQLCursorDeclareParams" (#88)
  • Solution for "FR: allow mapping of "NoRecCode"' (#95) - added --no-rec-code parameter to gixpp
  • Tokens in the parser have been labeled to improve diagnostics (pulled PR #96 by @GitMensch)
  • Fixed COMP-3 handling in drivers other than PostgreSQL
  • Rewrote the test suite (still MSTest-based) to dynamically generate a matrix of test to be run on the various platforms/database drivers
  • Added options for parameter generation in gixpp (-a was removed)
  • Added new GIXSQL_FIXUP_PARAMS option for runtime, to automatically convert parameter format in prepared statements
  • "Native" cursors are now the default for the PostgreSQL driver
  • "Smart" cursor initialization is now the default for all cursors, including those declared in WORKING-STORAGE (-L was removed from gixpp), should fix #101
  • Removed dynamic cursor emulation from the ODBC driver when using PostgreSQL