Hayden
31a811d1bb
Feat column codeCompletion ( #218 )
...
* feat: flink support column suggestion
* feat: flink column suggestion unit test
* feat: hive support column suggestion
* feat: hive column suggestion unit test
* feat: trinosql support column suggestion
* feat: trino column suggest unit test
* feat: sparksql collect column suggesstion
* feat: spark column suggestion unit test
* feat: rebuild flinksql lib
2023-11-28 21:18:44 +08:00
琉易
3dadc0c4b5
feat: mysql auto complete ( #219 )
...
* refactor: mysql auto complete
* test: mysql auto complete
---------
Co-authored-by: liuyi <liuyi@dtstack.com>
2023-11-28 21:17:18 +08:00
霜序
e203f1a48a
feat: support impala ( #184 )
...
* feat(impala): add impala sqlLexer
* feat(impala): add impala grammar
* feat(impala): add alter table sql
* feat(impala): update alter table sql
* feat(impala): add alter db sql
* feat(impala): add alter view sql
* feat(impala): add compute stats/comment statement and update partition_desc for alter table
* feat(impala): add drop statement sql
* feat(impala): add revoke and grant sql
* feat(impala): add create db/function/role/view sql
* feat(impala): add describe/explain/invalidata_metadata/load_data sql
* feat(impala): add refresh/set/shutdown sql
* feat(impala): add truncate_table/use/values sql
* fix(impala): update shutdown and invaliddate_metadata
* feat(impala): add show/update/upsert sql
* feat(impala): add create/insert sql
* feat(impala): add select and delete sql
* feat(impala): add impala tokens and fix todo
* feat(impala): update impalaparser and some test unit
* feat(impala): add syntax suggestion
* feat(impala): add syntax suggestion
* feat(impala): update test unit
* feat(impala): remove reference
* fix(impala): add statement for sqlname and collect tableName
* fix(impala): fix syntax suggestion unit test
* fix(impala): update syntax suggestion and collect column
* feat(impala): add collect column create
2023-11-28 21:11:07 +08:00
XCynthia
db05cb3e4f
feat: pgsql collect column name ( #216 )
...
* feat(pgsql: collect column name): pgsql: collect column name
* feat(pgsql): repair column name's unit test and sql
* feat(pgsql): pgsql: collect expression's column
* feat(update column's collect of some expression): pgsql: update column's collect of some expression
---------
Co-authored-by: zhaoge <>
2023-11-28 10:07:29 +08:00
琉易
428d851913
feat: #190 improve mysql grammer ( #196 )
...
* refactor: generic rename to mysql
* refactor: g4 with mysql syntax
* test: mysql syntax
* refactor: remove useless keywords
* refactor: remove nonReserved keywords
* refactor: lint specificFunction
---------
Co-authored-by: liuyi <liuyi@dtstack.com>
2023-11-27 15:25:40 +08:00
琉易
6bbcb3c8d3
fix : #213 flinksql expression syntax ( #215 )
...
* fix : #213 use uid to replace SLASH_TEXT in dtFilePath rule
* test: #213 flinksql syntax expression
---------
Co-authored-by: liuyi <liuyi@dtstack.com>
2023-11-23 20:59:21 +08:00
zhaoge
a5757a30b6
feat: pgsql: update routine's name
2023-11-20 09:41:12 +08:00
zhaoge
adeb26b7df
feat: pgsql: optimize drop rule's content
2023-11-20 09:41:12 +08:00
zhaoge
4736a65e0c
feat(pgsql: upgrade rules' name): pgsql: upgrade rules' name
2023-11-20 09:41:12 +08:00
XCynthia
cbb1279f9e
feat: support pgsql code completion ( #205 )
...
* feat: pgsql: complete sql, upgrade syntax file and complete autoImprove
* feat: pgsql: complete unit test
* feat: pgsql: update unit test for autocomplete
* feat(pgsql: update split's context type ): pgsql: update split's context type
* feat(pgsql: update schema, table, procedure, tablespace, function, view,database's rule name): pgsql
* feat: pgsql: update usualName's rule realize
* feat: pgsql:update funcName's using
---------
Co-authored-by: zhaoge <>
2023-11-15 15:34:42 +08:00
XCynthia
2e6d18e7dc
feat: improve pgsql grammar and add unit tests( #201 )
...
* feat(pgsql: upgrade keywords and refresh them to parser file): pgsql
* feat(pgsql: check create table's syntax): pgsql
* feat(pgsql: check and update drop syntax): pgsql: check and update drop syntax
* feat: pgsql: check create's sql syntax and update g4 file
* feat: pgsql:complete other's sql and syntax except select, insert, drop
* feat: pgsql: update create, delete, insert, select, update and others' syntax
* test: pgsql: update alter's sql
* feat: pgsql: update syntax g4 file
* feat: pgsql: upgrade keywords to without '_P' in lexer and parser file
* docs: pgsql: update copyright and Reference of parser and lexer
---------
Co-authored-by: zhaoge <>
2023-11-09 11:53:40 +08:00
liuyi
56c410ebb1
fix : #197 keyword rename like value more
2023-11-02 15:07:01 +08:00
Hayden
21dcb3fdce
Improve/flink keywords ( #195 )
...
* refactor: improve flinksql keywords rule
* test: correct flink sql unit test
2023-10-30 17:57:27 +08:00
Hayden
887de81521
refactor: replace string pattern with lexer rule ( #194 )
2023-10-26 15:35:52 +08:00
Hayden
91b7fd24c0
Feat/trino sql ( #188 )
...
* refactor: prefix trino lexer rule name with KW_
* test: add commentOtherLine function
* feat: optimize trino antlr grammar to adapt to c3
* feat: trinosqlParser supports codeCompletion and spliting
* test: trinoSql codeCompletion unit tests
2023-10-24 14:37:27 +08:00
琉易
0d9d3d65f3
test: accurate description ( #183 )
...
* test: accurate description
* refactor: optimize the use of tableName and viewName for
---------
Co-authored-by: liuyi <liuyi@dtstack.com>
2023-10-18 10:53:43 +08:00
琉易
4d1dfa676f
feat: support spark sql auto complete ( #179 )
...
* refactor: spark sql g4
* feat: support spark sql suggestion
* test: spark sql suggestion unit test
* test: hive spell check
* feat: spark sql keyword has multiple values
* test: KW_NOT KW_RLIKE split into two value
---------
Co-authored-by: liuyi <liuyi@dtstack.com>
2023-10-12 17:08:21 +08:00
Hayden
53ead45ff5
Optimize/auto complete ( #178 )
...
* feat: optimize hive function name auto complete
* feat: optimize flink rules that c3 prefer to
* feat: optimize flink autoComplete
* test: flink auto complete unit tests
2023-10-11 17:15:06 +08:00
Hayden
c4030929b2
Feat/auto complete ( #175 )
...
* feat: update hive grammar to adapt to c3
* feat: support viewName, dbName, fnName autoComplete to hive
* test: add hive suggestion unit test
* test: optimze flink suggestion unit tests
2023-10-10 16:37:49 +08:00
Frank
05da14d007
Feat/spark g4 ( #168 )
...
* feat: spark g4 test
* fix: fixed build lint
---------
Co-authored-by: liuyi <liuyi@dtstack.com>
Co-authored-by: dilu <dilu@dtstack.com>
2023-10-08 14:23:06 +08:00
hayden
b8c47d0ac9
feat: declare copyright ownership
2023-09-27 17:54:46 +08:00
琉易
623a004cd1
refactor: spark sql grammar ( #163 )
...
* feat: import apache spark g4
* feat: optimize parser g4
* feat: replace KW_
* fix: remove useless rules
---------
Co-authored-by: liuyi <liuyi@dtstack.com>
2023-09-27 09:54:13 +08:00
XCynthia
2ec03f1770
feat: hive Authorization syntax and unit tests ( #159 )
...
Co-authored-by: zhaoge <>
2023-09-12 20:10:43 +08:00
XCynthia
97ab76af76
Feat check hive create syntax ( #157 )
...
* check and update abort and alter sql
* delete superfluous space
* update grammar lib after change alter parser
* update alter parser to be compatible
* check create sql
---------
Co-authored-by: zhaoge <>
2023-09-06 16:42:04 +08:00
Hayden
885b85e842
Test/hive dml ( #155 )
...
* feat: add showIndex parser rule
* test: uncomment show index test cases
* test: add unit tests about DML syntax to HiveSQL
* test: add unit tests about export and import syntax to HiveSQL
* refactor: recompile hive grammar
* test: correct description of HiveSQL unit tests
2023-09-06 15:15:04 +08:00
XCynthia
6dad62ddf4
check alter sql and syntax ( #156 )
...
* check and update abort and alter sql
* delete superfluous space
* update grammar lib after change alter parser
* update alter parser to be compatible
---------
Co-authored-by: zhaoge <>
2023-09-06 11:46:46 +08:00
Hayden
ded9f28e36
feat: improve hive keywords rule ( #154 )
2023-09-05 14:27:21 +08:00
Hayden
af1d71c576
Feat/hive ddl ( #150 )
...
* test: test cases about Alter Either Table or Partition
* feat: support alter protection and correct alter compact
* feat: improve keyword rules
* feat: recompile hive grammar
2023-08-30 17:58:20 +08:00
hayden
13b58b2dec
feat: support DT_ADD_CONFIG_FILE syntax
2023-08-28 13:04:28 +08:00
hayden
82d097b034
fix: allow ROW and ROWS as function name
2023-08-28 12:48:18 +08:00
hayden
ebd9a1ed85
feat: hiveSQL support create/drop/alter index grammar
2023-07-07 14:52:59 +08:00
hayden
1d890e58fe
feat: format hive grammar files name
2023-07-07 14:48:44 +08:00
Hayden
1b02ff5d75
feat: FlinkSQL supports auto complete ( #115 )
...
* feat: add antlr4-c3 dependencies
* feat: distinguish table, catalog and database from uid
* feat: move semicolon from sqlStatements to sqlStatement
* chore: move antlr4ts-cli to devDependencies
* feat: improve basic parser and support suggestions of token and syntax
* feat: implement suggest method in sql parsers
* test: flink sql suggestion test cases
* feat: optimize ts defination of suggestion
* feat: add split listener and optimize performance of auto-completion
* test: supplementary flink suggestion unit tests
2023-06-09 11:22:53 +08:00
Ziv
34f64e6bea
refactor: migrate antlr4 v4.12.0 to antlr4ts(4.9.0) ( #106 )
...
* build: ignore gen folder
* refactor: remove useless code
* fix: correct the Javascript usage in grammar
* refactor: move to antlr4ts
* fix: remove useless
* fix: update grammars for javascript target
* refactor: migrate to antlr4ts
* refactor: migrate to antlr4ts
* refactor: implements ParserErrorListener
* fix: rename the start reserved word
* refactor: remove unused import
* refactor: migrate to antlr4ts
* test: update the expects of test cases
* refactor: migrate hive to antlr4ts
* refactor: update the incompatible syntax for antlr4ts
* refactor: migrate pgsql grammar to antlr4ts, increasing tests
* refactor: migrate the plsql to antlr4ts
* build: remove unused config
* build: migrate to antlr4ts
* build: migrate ts-jest to @swc/jest
* refactor: migrate to anltr4ts
* build: migrate ts-jest to @swc/jest
2023-05-30 14:44:03 +08:00
Hayden
793ff6ef0e
feat: replace fliePath with slashText to resolve conflict between filePath and arithmetic ( #112 )
2023-05-30 10:19:13 +08:00
wewoor
8084c7919a
fix: rename TrinoSqlParser to TrinoSql
2023-05-25 10:53:03 +08:00
wewoor
46a8a7ab12
fix: rename to TrinoSqlParser
2023-05-24 18:11:50 +08:00
Ziv
eeb111b5c5
fix: correct the grammar usage, especially in the parts targeting javascript ( #109 )
...
* build: ignore gen folder
* fix: correct the grammar when targeting Typescript
* fix: move base Lexer and fix javascript syntax
* fix: correct the usage of Javascript in grammar
2023-05-24 15:07:53 +08:00
mumiao
9c82a5d248
feat: support trino(presto) sql language ( #105 )
...
* feat(trino): intergrate prestoGrammar to dt-sql-parser
* feat(trino): add trinoSQl test framework
* feat(trino): intergrate test files for trinoSQL
* test(trino): support alterStatement test
* test(trino): support alter table set authorization statement
* feat(trino): complete trinosql alter unit tests
* test(trino): complete dropStatement unit cases for trinosql
* test(trino): complete create statement unit cases for trinoSQL
* test(trino): complete insertStatement unit cases for trinoSQl
* test(trino): dropStatement test files changed to short line split
* test(trino): complete selectStatement unit cases and grammar check
* test(trino): complete commentStatement unit case for trinoSQL
* test(trino): complete analyze commit and call clause unit case
* test(trino): complete delete deny and describe statement unit case
* test(trino): complete explain execute and grant statement unit case
* feat(trino): improve GRANT Role grammar
* test(trino): complete show statement unit case
* test(trino): complete truncateTable startTransaction update and values statement unit case
* test(trino): improve update statement test cases
* test(trino): complete revoke revoke roles and rollback statement unit case
* test(trino): add set statement test case
* feat: generator new trino parser and lexer file
* feat(trino): improve alter statement grammar
* test(trino): complete alter statement unit cases
* feat(trino): support case-insensitive lexers
* fix(trino): rm unless gen files
* test(trino): complete merge and reset session statement unit cases
* test(trino): complete merge anduse statement unit cases
* test(trino): complete prepare and refresh materialized view statement unit cases
* test(trino): improve statement unit cases
* test(trino): complete match recognize statement unit cases
* test(trino): complete window with row pattern recognition statement unit cases
2023-05-24 15:07:02 +08:00
Hayden
0924acf730
feat: update the builtin funcs of flinksql ( #102 )
...
* style: put evrry branch on a single line
* feat: support ASYMMETRIC and SYMMETRIC for between and
* feat: support SIMILAR TO predicate
* feat: support nested boolean expression
* feat: support escape to like and similar in flink sql
* test: add where clause test cases
* feat: add reservedKeywordsUsedAsFunctionName rule
* feat: add timepointLiteral rule and improve function call grammar
2023-05-24 15:03:08 +08:00
mumiao
c409b80ee1
feat(flink): support insert multipe tables statement for FlinkSQL 1.15( #104 )
...
* feat(flink): support insert multipe tables statement for FlinkSQL 1.15
* test: recover jest.config info
* fix(flink): correct typo
* fix(flinksql): resolve conflicts
2023-05-23 14:40:52 +08:00
野迂迂
4b824fb500
feat(flink): support NOT NULL syntax ( #103 )
...
* feat(flink): support NOT NULL syntax
* feat(flinksql): support NULL
2023-05-23 10:12:05 +08:00
Hayden
40c911597b
refactor: improve keywords definations ( #100 )
...
* feat: improve keywords definations and add prefix named KW_
* test: capitalize keywords in alter sql test cases
* test: capitalize keywords in create sql test cases
* feat: merge interval rule and timeIntervalExpression rule in flinksql grammar
* test: put keywords in quotation marks around insert sql test cases
* test: put keywords in quotation marks around select sql test cases
* feat: improve uid rule
* test: rename sum to _sum because it is a reserved keyword
* docs: improve comments in flinkSqlLexer
2023-05-19 14:28:25 +08:00
Hayden
a026ae0592
feat: complete Query statements of FlinkSQL ( #93 )
...
* feat: add inlineDataValueClasue rule
* test: update tests of select statements
* feat: support flinksql window TVF grammar
* test: flink sql windown TVF statement test
* feat: support grouping sets grammar
* test: window TVF Aggregation and Group Window Aggregation tests
* test: supplemental selectAggregation with test cases
* test: add Having statement test case
* feat: support flinkSql over aggregation grammar
* test: add over aggregation grammar test cases
* test: flink sql join statement test cases
* test: flink sql set Operations grammar test cases
* test: flink sql limit clause test case
* feat: remove allPlusUid and replace with uid
* feat: support flink sql pattern recognition grammar
* test: flink sql pattern recognition tests
* feat: add flink sql with clause rule
* test: flink sql with clasue select tests
* feat: rebuild flink sql parser
2023-05-17 10:30:25 +08:00
Ziv
fbee70cde5
feat: update alter and drop statements ( #94 )
...
* feat: add UNIQUE keyword
* feat: support ifExist, addConstraint, dropConstraint and addUnique of alter table statement
* feat: support ifExist, addConstraint, dropConstraint and addUnique of alter table statement
* tests: add tests of alter statements
* docs: add comments for sql syntax
* build: optimize promote of build/antlr4
* ci: add max_old_space_size
* ci: add max_old_space_size
* ci: update tests script
2023-05-17 10:00:35 +08:00
mumiao
dc417e1381
feat: improve flinksql insertStatement
...
* feat: feat: improve flinksql insertStatement
* feat: complete insertFromSelectQueries syntax unit tests
* feat: complete insertValuesIntoTable syntax unit tests
* feat: improve insertValuesIntoTable sql case data
* feat: complete insertMultipeTables unit cases
* feat: depracate insertMulStatement grammar for 1.1.4
* fix: depracate unless files
* test: recover jest.config info
* feat: improve insertMultipleTable.sql test case
* feat: build new flinksql parser and lexer
* feat: generator new flink parser and lexer file
* test: improve readSQL logic
* test: fix insertMultipleTable sql error
* test: recover jest.config.js info
2023-05-12 09:31:54 +08:00
野迂迂
370cccf8d9
feat: improve flinksql createStatement ( #91 )
...
* feat: improve flinksql createStatement
* feat: complete CREATE syntax unit tests
* feat: complete CREATA TABLE syntax tests
* feat: develop flinkSQL grammar
* feat: improve tableConstraint
* fix: convert TIMESTAMP_LTZ
* test: improve tests
* feat: build new flinksql parser and lexer
* test: add CREATE TEMPLATE TABLE test
2023-05-11 17:41:34 +08:00
nankaNULL
c0842b3e07
Feat/flink dt sql ( #75 )
...
* feat: dt self develop grammar
* feat: dt self develop grammar
2023-03-21 09:53:25 +08:00
nankaNULL
4f02f9aca0
Feat/flink grammar ( #73 )
...
* feat: complete flink sql insert statement
* feat: complete flink sql drop statement
* feat: complete flink sql alert statement
* feat: complete flink sql create statement, remove console log
* feat: complete flink sql describe, show, explain, use statement
* feat(flinksql): add statement, such as set, load
* fix(flinksql): fix insert, add temporary table
2023-02-27 19:03:32 +08:00
Ziv
14c2534de7
fix: remove space character in line comment rule ( #69 )
...
* fix: remove space character in line comment rule
* build: recompile grammars
* test: add cases for line comment
2023-01-09 11:01:10 +08:00