Skip to content

1.8.0 - added support for Informix/GBase 8s dialect

Choose a tag to compare

@xnuinside xnuinside released this 18 Jan 04:33
· 33 commits to main since this release

Important

  1. Python 3.7 and 3.8 support is deprecated. Minimum supported version is now Python 3.9.

Improvements

  1. Added support for Python 3.13.
  2. Added tox configuration for testing across multiple Python versions (3.9-3.13).

New Features

  1. Added support for COMMENT ON syntax (TABLE, COLUMN, SCHEMA, DATABASE) - #301
  2. Added support for Informix/GBase 8s dialect - #299
    • Informix data types: SERIAL, SERIAL8, BIGSERIAL, INT8, LVARCHAR, TEXT, BYTE, BLOB, CLOB, MONEY, NCHAR, NVARCHAR
    • DATETIME YEAR TO SECOND/FRACTION/DAY syntax
    • INTERVAL HOUR TO MINUTE/DAY TO DAY/YEAR TO MONTH syntax
    • DEFAULT with Informix functions (TODAY, CURRENT, USER)
    • Storage options: IN dbspace, EXTENT SIZE, NEXT SIZE, LOCK MODE
    • GBase 8s Oracle-compatible types: VARCHAR2, NVARCHAR2, NUMBER
    • GBase 8s virtual columns: column AS (expression), GENERATED ALWAYS AS (expression)

Fixes

  1. Fixed Snowflake sequence NEXTVAL in column default value - #295
  2. Fixed escape sequence handling for '=' in generated column expressions.
  3. Added support for ALTER TABLE with multiple column operations (ADD, DROP, MODIFY) - #300
    • Multiple ADD/DROP/MODIFY operations in a single ALTER statement (comma-separated)
    • ADD COLUMN syntax (with COLUMN keyword)
    • DROP without COLUMN keyword (Oracle style)
    • Note: dropped_columns and modified_columns in output are now lists instead of single dicts
  4. Fixed BigQuery OPTIONS parsing with unicode characters (em-dash, etc.) - #298
    • String literals now support any unicode characters in descriptions