From c9718c8edae943ab086cf4eb723d59f888243975 Mon Sep 17 00:00:00 2001 From: xnuinside Date: Fri, 5 Jan 2024 23:39:31 +0300 Subject: [PATCH] release 0.31.3 --- CHANGELOG.txt | 14 +++++------- README.md | 57 ++++++++++++++++++++++++++++--------------------- docs/README.rst | 56 +++++++++++++++++++++++++++++++----------------- 3 files changed, 75 insertions(+), 52 deletions(-) diff --git a/CHANGELOG.txt b/CHANGELOG.txt index 226ba71..b680d4b 100644 --- a/CHANGELOG.txt +++ b/CHANGELOG.txt @@ -1,16 +1,12 @@ -**v0.31.5** -### Improvements -1. Support for KEY statement in CREATE TABLE statements. KEY statements will now create INDEX entries in the DDL parser. - -**v0.31.4** -### Improvements -#### Snowflake update: -1. enforce support for Snowflake _FILE_FORMAT options in External Column ddl statement - https://github.com/xnuinside/simple-ddl-parser/issues/221 - **v0.31.3** ### Improvements #### Snowflake update: 1. Added support for Snowflake Virtual Column definition in External Column `AS ()` statement - https://github.com/xnuinside/simple-ddl-parser/issues/218 +2. enforce support for Snowflake _FILE_FORMAT options in External Column ddl statement - https://github.com/xnuinside/simple-ddl-parser/issues/221 + +#### Others +1. Support for KEY statement in CREATE TABLE statements. KEY statements will now create INDEX entries in the DDL parser. + **v0.31.2** ### Improvements diff --git a/README.md b/README.md index bf9fbe8..adf7c54 100644 --- a/README.md +++ b/README.md @@ -497,6 +497,15 @@ https://github.com/PBalsdon ## Changelog +**v0.31.3** +### Improvements +#### Snowflake update: +1. Added support for Snowflake Virtual Column definition in External Column `AS ()` statement - https://github.com/xnuinside/simple-ddl-parser/issues/218 +2. enforce support for Snowflake _FILE_FORMAT options in External Column ddl statement - https://github.com/xnuinside/simple-ddl-parser/issues/221 + +#### Others +1. Support for KEY statement in CREATE TABLE statements. KEY statements will now create INDEX entries in the DDL parser. + **v0.31.2** ### Improvements @@ -520,7 +529,7 @@ Default encoding is utf-8. Fix for: https://github.com/xnuinside/simple-ddl-parser/issues/199 ### Improvements: -1. Added `Snowflake Table DDL support of WITH MASKING POLICY column definition` - https://github.com/xnuinside/simple-ddl-parser/issues/201 +1. Added `Snowflake Table DDL support of WITH MASKING POLICY column definition` - https://github.com/xnuinside/simple-ddl-parser/issues/201 ### Updates: @@ -555,11 +564,11 @@ Added support for ORGANIZE BY statement ### Fixes 1. AUTOINCREMENT statement now parsed validly same way as AUTO_INCREMENT and showed up in output as 'autoincrement' property of the column Fix for: https://github.com/xnuinside/simple-ddl-parser/issues/170 -2. Fix issue ' TypeError argument of type 'NoneType' is not iterable' on some foreigen keys https://github.com/xnuinside/simple-ddl-parser/issues/148 +2. Fix issue ' TypeError argument of type 'NoneType' is not iterable' on some foreigen keys https://github.com/xnuinside/simple-ddl-parser/issues/148 ### New Features -1. Support for non-numeric column type parameters https://github.com/xnuinside/simple-ddl-parser/issues/171 +1. Support for non-numeric column type parameters https://github.com/xnuinside/simple-ddl-parser/issues/171 It shows in column attribute 'type_parameters'. @@ -574,8 +583,8 @@ Fixes: **v0.28.0** Important Changes (Pay attention): -1. Because of parsing now AUTO_INCREMENT as a separate property of column previous output changed. -Previously it was parsed as a part of type like: 'INT AUTO_INCREMENT'. +1. Because of parsing now AUTO_INCREMENT as a separate property of column previous output changed. +Previously it was parsed as a part of type like: 'INT AUTO_INCREMENT'. Now type will be only 'INT', but in column property you will see 'autoincrement': True. Amazing innovation: @@ -604,10 +613,10 @@ Fixes: Improvements: 1. Added support for '*' in size column (ORACLE dialect) - https://github.com/xnuinside/simple-ddl-parser/issues/151 -2. Added arg 'debug' to parser, works same way as 'silent' - to get more clear error output. +2. Added arg 'debug' to parser, works same way as 'silent' - to get more clear error output. New features: -1. Added support for ORACLE 'ORGANIZATION INDEX' +1. Added support for ORACLE 'ORGANIZATION INDEX' 2. Added support for SparkSQL Partition by with procedure call - https://github.com/xnuinside/simple-ddl-parser/issues/154 3. Added support for DEFAULT CHARSET statement MySQL - https://github.com/xnuinside/simple-ddl-parser/issues/153 @@ -659,7 +668,7 @@ Improvements: New features: 1. Support SparkSQL USING - https://github.com/xnuinside/simple-ddl-parser/issues/117 Updates initiated by ticket https://github.com/xnuinside/simple-ddl-parser/issues/120: -2. In Parser you can use argument json_dump=True in method .run() if you want get result in JSON format. +2. In Parser you can use argument json_dump=True in method .run() if you want get result in JSON format. - README updated Fixes: @@ -678,7 +687,7 @@ Fixes: 1. Added flag to raise errors if parser cannot parse statement DDLParser(.., silent=False) - https://github.com/xnuinside/simple-ddl-parser/issues/109 2. Added flag to DDLParser(.., normalize_names=True) that change output of parser: if flag is True (default 'False') then all identifiers will be returned without '[', '"' and other delimiters that used in different SQL dialects to separate custom names from reserved words & statements. -For example, if flag set 'True' and you pass this input: +For example, if flag set 'True' and you pass this input: CREATE TABLE [dbo].[TO_Requests]( [Request_ID] [int] IDENTITY(1,1) NOT NULL, @@ -695,30 +704,30 @@ In output you will have names like 'dbo' and 'TO_Requests', not '[dbo]' and '[TO **v0.24.1** ## Fixes: -### HQL: +### HQL: 1. fields_terminated_by now parses , as "','", not as '' previously ### Common: -1. To output added 'if_not_exists' field in result to get availability 1-to-1 re-create ddl by metadata. +1. To output added 'if_not_exists' field in result to get availability 1-to-1 re-create ddl by metadata. **v0.24.0** ## Fixes: -### HQL: +### HQL: -1. More then 2 tblproperties now are parsed correctly https://github.com/xnuinside/simple-ddl-parser/pull/104 +1. More then 2 tblproperties now are parsed correctly https://github.com/xnuinside/simple-ddl-parser/pull/104 ### Common: 2. 'set' in lower case now also parsed validly. -3. Now names like 'schema', 'database', 'table' can be used as names in CREATE DATABASE | SCHEMA | TABLESPACE | DOMAIN | TYPE statements and after INDEX and CONSTRAINT. +3. Now names like 'schema', 'database', 'table' can be used as names in CREATE DATABASE | SCHEMA | TABLESPACE | DOMAIN | TYPE statements and after INDEX and CONSTRAINT. 4. Creation of empty tables also parsed correctly (like CREATE Table table;). -## New Statements Support: +## New Statements Support: -### HQL: +### HQL: 1. Added support for CLUSTERED BY - https://github.com/xnuinside/simple-ddl-parser/issues/103 2. Added support for INTO ... BUCKETS 3. CREATE REMOTE DATABASE | SCHEMA @@ -729,7 +738,7 @@ Big refactoring: less code complexity & increase code coverage. Radon added to p ### Fixes: -1. Fix for issue with ALTER UNIQUE - https://github.com/xnuinside/simple-ddl-parser/issues/101 +1. Fix for issue with ALTER UNIQUE - https://github.com/xnuinside/simple-ddl-parser/issues/101 ### New Features @@ -756,8 +765,8 @@ PostgreSQL: ### Fixes: ### BigQuery: -1. CREATE TABLE statement with 'project_id' in format like project.dataset.table_name now is parsed validly. -'project' added to output. +1. CREATE TABLE statement with 'project_id' in format like project.dataset.table_name now is parsed validly. +'project' added to output. Also added support project.dataset.name format in CREATE SCHEMA and ALTER statement @@ -787,7 +796,7 @@ I started to add partial support for BigQuery ## MSSQL: -1. Added support for PRIMARY KEY CLUSTERED - full details about clusterisation are parsed now in separate key 'clustered_primary_key'. +1. Added support for PRIMARY KEY CLUSTERED - full details about clusterisation are parsed now in separate key 'clustered_primary_key'. I don't like that but when I started I did not thought about all those details, so in version 1.0.* I will work on more beautiful and logically output structure. https://github.com/xnuinside/simple-ddl-parser/issues/91 @@ -796,11 +805,11 @@ Pay attention: previously they parsed somehow, but in incorrect structure. ### Improvements: 1. Strings in double quotes moved as separate token from ID to fix a lot of issues with strings with spaces inside -2. Now parser can parse statements separated by new line also (without GO or ; at the end of statement) - https://github.com/xnuinside/simple-ddl-parser/issues/90 +2. Now parser can parse statements separated by new line also (without GO or ; at the end of statement) - https://github.com/xnuinside/simple-ddl-parser/issues/90 ### Fixes: -1. Now open strings is not valid in checks (previously the was parsed.) Open string sample 'some string (exist open quote, but there is no close quote) +1. Now open strings is not valid in checks (previously the was parsed.) Open string sample 'some string (exist open quote, but there is no close quote) 2. Order like ASC, DESK in primary keys now parsed valid (not as previously as column name) **v0.21.2** @@ -817,13 +826,13 @@ Fixies: ## MSSQL: - 1. Added support for statements: + 1. Added support for statements: 1. PERIOD FOR SYSTEM_TIME in CREATE TABLE statement 2. ON [PRIMARY] after CREATE TABLE statement (sample in test files test_mssql_specific.py) 3. WITH statement for TABLE properties 4. TEXTIMAGE_ON statement 5. DEFAULT NEXT VALUE FOR in COLUMN DEFAULT - + 2. Added support for separating tables DDL by 'GO' statement as in output of MSSQL 3. Added support for CREATE TYPE as TABLE diff --git a/docs/README.rst b/docs/README.rst index 6c18ad5..383baad 100644 --- a/docs/README.rst +++ b/docs/README.rst @@ -567,6 +567,24 @@ https://github.com/PBalsdon Changelog --------- +**v0.31.3** + +Improvements +^^^^^^^^^^^^ + +Snowflake update: +~~~~~~~~~~~~~~~~~ + + +#. Added support for Snowflake Virtual Column definition in External Column ``AS ()`` statement - https://github.com/xnuinside/simple-ddl-parser/issues/218 +#. enforce support for Snowflake _FILE_FORMAT options in External Column ddl statement - https://github.com/xnuinside/simple-ddl-parser/issues/221 + +Others +~~~~~~ + + +#. Support for KEY statement in CREATE TABLE statements. KEY statements will now create INDEX entries in the DDL parser. + **v0.31.2** Improvements @@ -610,7 +628,7 @@ Improvements: ^^^^^^^^^^^^^ -#. Added ``Snowflake Table DDL support of WITH MASKING POLICY column definition`` - https://github.com/xnuinside/simple-ddl-parser/issues/201 +#. Added ``Snowflake Table DDL support of WITH MASKING POLICY column definition`` - https://github.com/xnuinside/simple-ddl-parser/issues/201 Updates: ^^^^^^^^ @@ -666,13 +684,13 @@ Fixes #. AUTOINCREMENT statement now parsed validly same way as AUTO_INCREMENT and showed up in output as 'autoincrement' property of the column Fix for: https://github.com/xnuinside/simple-ddl-parser/issues/170 -#. Fix issue ' TypeError argument of type 'NoneType' is not iterable' on some foreigen keys https://github.com/xnuinside/simple-ddl-parser/issues/148 +#. Fix issue ' TypeError argument of type 'NoneType' is not iterable' on some foreigen keys https://github.com/xnuinside/simple-ddl-parser/issues/148 New Features ^^^^^^^^^^^^ -#. Support for non-numeric column type parameters https://github.com/xnuinside/simple-ddl-parser/issues/171 +#. Support for non-numeric column type parameters https://github.com/xnuinside/simple-ddl-parser/issues/171 It shows in column attribute 'type_parameters'. **v0.28.1** @@ -691,8 +709,8 @@ Fixes: Important Changes (Pay attention): -#. Because of parsing now AUTO_INCREMENT as a separate property of column previous output changed. - Previously it was parsed as a part of type like: 'INT AUTO_INCREMENT'. +#. Because of parsing now AUTO_INCREMENT as a separate property of column previous output changed. + Previously it was parsed as a part of type like: 'INT AUTO_INCREMENT'. Now type will be only 'INT', but in column property you will see 'autoincrement': True. Amazing innovation: @@ -729,12 +747,12 @@ Improvements: #. Added support for '*' in size column (ORACLE dialect) - https://github.com/xnuinside/simple-ddl-parser/issues/151 -#. Added arg 'debug' to parser, works same way as 'silent' - to get more clear error output. +#. Added arg 'debug' to parser, works same way as 'silent' - to get more clear error output. New features: -#. Added support for ORACLE 'ORGANIZATION INDEX' +#. Added support for ORACLE 'ORGANIZATION INDEX' #. Added support for SparkSQL Partition by with procedure call - https://github.com/xnuinside/simple-ddl-parser/issues/154 #. Added support for DEFAULT CHARSET statement MySQL - https://github.com/xnuinside/simple-ddl-parser/issues/153 @@ -795,7 +813,7 @@ New features: #. Support SparkSQL USING - https://github.com/xnuinside/simple-ddl-parser/issues/117 Updates initiated by ticket https://github.com/xnuinside/simple-ddl-parser/issues/120: -#. In Parser you can use argument json_dump=True in method .run() if you want get result in JSON format. +#. In Parser you can use argument json_dump=True in method .run() if you want get result in JSON format. * README updated @@ -823,7 +841,7 @@ New features: #. Added flag to raise errors if parser cannot parse statement DDLParser(.., silent=False) - https://github.com/xnuinside/simple-ddl-parser/issues/109 #. Added flag to DDLParser(.., normalize_names=True) that change output of parser: if flag is True (default 'False') then all identifiers will be returned without '[', '"' and other delimiters that used in different SQL dialects to separate custom names from reserved words & statements. - For example, if flag set 'True' and you pass this input: + For example, if flag set 'True' and you pass this input: CREATE TABLE [dbo].\ `TO_Requests <[Request_ID] [int] IDENTITY(1,1>`_ NOT NULL, [user_id] [int] @@ -853,7 +871,7 @@ Common: ^^^^^^^ -#. To output added 'if_not_exists' field in result to get availability 1-to-1 re-create ddl by metadata. +#. To output added 'if_not_exists' field in result to get availability 1-to-1 re-create ddl by metadata. **v0.24.0** @@ -864,14 +882,14 @@ HQL: ^^^^ -#. More then 2 tblproperties now are parsed correctly https://github.com/xnuinside/simple-ddl-parser/pull/104 +#. More then 2 tblproperties now are parsed correctly https://github.com/xnuinside/simple-ddl-parser/pull/104 Common: ^^^^^^^ #. 'set' in lower case now also parsed validly. -#. Now names like 'schema', 'database', 'table' can be used as names in CREATE DATABASE | SCHEMA | TABLESPACE | DOMAIN | TYPE statements and after INDEX and CONSTRAINT. +#. Now names like 'schema', 'database', 'table' can be used as names in CREATE DATABASE | SCHEMA | TABLESPACE | DOMAIN | TYPE statements and after INDEX and CONSTRAINT. #. Creation of empty tables also parsed correctly (like CREATE Table table;). New Statements Support: @@ -893,7 +911,7 @@ Fixes: ^^^^^^ -#. Fix for issue with ALTER UNIQUE - https://github.com/xnuinside/simple-ddl-parser/issues/101 +#. Fix for issue with ALTER UNIQUE - https://github.com/xnuinside/simple-ddl-parser/issues/101 New Features ^^^^^^^^^^^^ @@ -935,8 +953,8 @@ BigQuery: ^^^^^^^^^ -#. CREATE TABLE statement with 'project_id' in format like project.dataset.table_name now is parsed validly. - 'project' added to output. +#. CREATE TABLE statement with 'project_id' in format like project.dataset.table_name now is parsed validly. + 'project' added to output. Also added support project.dataset.name format in CREATE SCHEMA and ALTER statement **v0.22.2** @@ -981,7 +999,7 @@ MSSQL: ------ -#. Added support for PRIMARY KEY CLUSTERED - full details about clusterisation are parsed now in separate key 'clustered_primary_key'. +#. Added support for PRIMARY KEY CLUSTERED - full details about clusterisation are parsed now in separate key 'clustered_primary_key'. I don't like that but when I started I did not thought about all those details, so in version 1.0.* I will work on more beautiful and logically output structure. https://github.com/xnuinside/simple-ddl-parser/issues/91 @@ -992,13 +1010,13 @@ Improvements: #. Strings in double quotes moved as separate token from ID to fix a lot of issues with strings with spaces inside -#. Now parser can parse statements separated by new line also (without GO or ; at the end of statement) - https://github.com/xnuinside/simple-ddl-parser/issues/90 +#. Now parser can parse statements separated by new line also (without GO or ; at the end of statement) - https://github.com/xnuinside/simple-ddl-parser/issues/90 Fixes: ^^^^^^ -#. Now open strings is not valid in checks (previously the was parsed.) Open string sample 'some string (exist open quote, but there is no close quote) +#. Now open strings is not valid in checks (previously the was parsed.) Open string sample 'some string (exist open quote, but there is no close quote) #. Order like ASC, DESK in primary keys now parsed valid (not as previously as column name) **v0.21.2** @@ -1022,7 +1040,7 @@ New Features: ## MSSQL: - 1. Added support for statements: + 1. Added support for statements: 1. PERIOD FOR SYSTEM_TIME in CREATE TABLE statement 2. ON [PRIMARY] after CREATE TABLE statement (sample in test files test_mssql_specific.py) 3. WITH statement for TABLE properties