Releases: xnuinside/simple-ddl-parser
1.0.0 Major release with output updates
v1.0.0
In output structure was done important changes that can in theory breaks code.
Important changes
- Important change:
all custom table properties that are defined after column definition in 'CREATE TABLE' statement and relative to only one dialect (only for SparkSQL, or HQL,etc), for example, like here:
https://github.com/xnuinside/simple-ddl-parser/blob/main/tests/dialects/test_snowflake.py#L767 or https://github.com/xnuinside/simple-ddl-parser/blob/main/tests/dialects/test_spark_sql.py#L133 will be saved now in property table_properties
as dict.
Previously they was placed on same level of table output as columns
, alter
, etc. Now, they grouped and moved to key table_properties
.
- Formatting parser result now represented by 2 classes - Output & TableData, that makes it more strict and readable.
And more.
Full Changelog of version 1.0.0: https://github.com/xnuinside/simple-ddl-parser/blob/main/CHANGELOG.txt#L1
v0.32.0 ALTER DROP, ADD, MODIFY, RENAME, etc statements support
v0.32.0
Improvements
- Added support for several ALTER statements (ADD, DROP, RENAME, etc) - #215
In 'alter' output added several keys:- 'dropped_columns' - to store information about columns that was in table, but after dropped by alter
- 'renamed_columns' - to store information about columns that was renamed
- 'modified_columns' - to track alter column changes for defaults, datetype, etc. Argument stores previous columns states.
Fixes
- Include source column names in FOREIGN KEY references. Fix for: #196
- ALTER statement now will be parsed correctly if names & schemas written differently in
create table
statement and alter.
For example, if in create table you use quotes like "schema_name"."table_name", but in alter was schema_name.table_name - previously it didn't work, but now parser understand that it is the same table.
v0.31.3 - Snowflake Statements & other Improvements
v0.31.3
Improvements
Snowflake update:
- Added support for Snowflake Virtual Column definition in External Column
AS ()
statement - #218 - enforce support for Snowflake _FILE_FORMAT options in External Column ddl statement - #221
Others
- Support for KEY statement in CREATE TABLE statements. KEY statements will now create INDEX entries in the DDL parser.
Big-big thanks for contribution goes to https://github.com/dmaresma and https://github.com/cfhowes
Snowflake improvements
v0.31.2
Improvements
Snowflake update:
- Added support for Snowflake AUTOINCREMENT | IDENTITY column definitions with optional parameter
ORDER|NOORDER
statement - #213
Common
- Added param 'encoding' to parse_from_file function - #142.
Default encoding is utf-8.
Thanks to https://github.com/dmaresma for contributions.
0.31.1 - Snowflake Improvements
Improvements
Snowflake updates:
- Support multiple tag definitions in a single
WITH TAG
statement. - Added support for Snowflake double single quotes - #208
Python 3.11 support & SNOWFLAKE Improvements
v0.30.0 - IDENTITY as Column property & more
0.26.1 - HQL fixes
v0.29.0 Added support for non-numeric column type parameters
v0.29.0
Fixes
- AUTOINCREMENT statement now parsed validly same way as AUTO_INCREMENT and showed up in output as 'autoincrement' property of the column
Fix for: #170 - Fix issue ' TypeError argument of type 'NoneType' is not iterable' on some foreigen keys #148
New Features
- Support for non-numeric column type parameters #171
It shows in column attribute 'type_parameters'.
v 0.28.1 fix multiline comments parsing & skip INSERT ROWS from SQL
v0.28.1
Imporvements:
- Lines started with INSERT INTO statement now successfully ignored by parser (so you can keep them in ddl - they will be just skiped)
Fixes:
- Important fix for multiline comments