Hayden
1038a3a828
fix: trino validation ( #248 )
...
* fix : #246 program does not match standaloneClause
* test: patch unit tests
2024-01-16 11:14:03 +08:00
Hayden
8f72a5af60
Fix/export abstract visitor ( #237 )
...
* fix : #236 export AbstractParseTreeVisitor
* build: set isolatedModules true
* feat: import parser about from filters
2023-12-19 19:22:27 +08:00
Hayden
3c7c59fb70
feat: optimize suggestion ( #231 )
...
* feat: optimize the strategy of finding the right range
* test: apply commentOtherLine util to all suggestion tests
* test: decomment suggestion test cases
* test: add suggestion test cases in multiple statements
* chore: improve comments
* test: update log info in test
2023-12-13 11:33:47 +08:00
Hayden
ee8b468778
feat: add ErrorStrategy( #230 )
...
* refactor: rename errorHandler to errorListener
* feat: add ErrorStrategy to mark context exceptions
* test: errorStrategy unit tests
2023-12-11 17:34:49 +08:00
Hayden
23f5aac113
Fix/split listener ( #228 )
...
* feat: improve FlinkSqlSplitListener
* feat: improve ImpalaSqlSplitListener
* feat: improve MysqlSplitListener
* fix: correct PgSqlSplitListener
* feat: improve TrinoSqlSplitListener
* test: add split listener unit test
* chore: ignore iml file
* feat: add pgsql missing rules
* test: fix pgsql unit tests
2023-12-08 18:33:16 +08:00
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
琉易
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
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
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
Hayden
f9dbd9fc23
Refactor/basic parser ( #182 )
...
* feat: replace errorCollector with ParserErrorListener to collect lexer error
* refactor: remove useless method in basicParser
* feat: correct splitSQLByStatement method
* feat: rename parse to parseWithCache and add new parse method
* refactor: rename parserTree to parseTree
* test: rename parserTree to parseTree
* refactor: rename parserError to parseError
* feat: export ErrorHandler type
* feat: use errorhandler form params
* test: basic parser unit tests
* style: lint via prettier
2023-10-16 17:59:28 +08:00
Hayden
7de192d486
chroe: devops ( #180 )
...
* ci: add dependencies about lint tool
* ci: replace eslint with prettier
* ci: add husky, cz and commitlint
* style: lint fix via prettier
* ci: add prettier and check-types to github workflow
'
2023-10-13 11:16:36 +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
hayden
9bd842b7d6
test: patch dtAddFile syntax unit tests
2023-08-28 13:05:31 +08:00
hayden
53559bc315
test: add test case about ROW as function
2023-08-28 12:49:09 +08:00
wewoor
72c13b7bc7
docs: update content
2023-06-14 10:51:01 +08:00
Ziv
e914cf2c33
test: add benchmark for flinksql ( #120 )
2023-06-13 09:28:48 +08:00
Hayden
e34a9f6128
Fix/basic suggestion ( #119 )
...
* fix: correct suggetion logic in multiple sql case
* test: add multiple sql test case of suggestion
* feat: export SyntaxContextType as enum
2023-06-12 15:21:27 +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
Hayden
d750fcd574
test: split flink sql syntax.test.ts ( #116 )
2023-06-07 09:34:24 +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
Hayden
3509964afc
test: add flink template test cases ( #111 )
...
* feat: rebuild flink sql parser
* test: add sqls templates in stream app test cases
2023-05-25 09:24:24 +08:00
mumiao
89b22af5ce
docs(readme): fix documentation error ( #110 )
2023-05-24 17:01:17 +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
wewoor
526a58ad2e
Merge branch 'master' of github.com:DTStack/dt-sql-parser
2023-05-12 10:47:46 +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
wewoor
7b7c2ab8d8
test: drop statment tests
2023-05-11 19:06:19 +08:00
wewoor
65a754e533
test: update tests of alter statemnts
2023-05-11 18:54:56 +08:00
wewoor
04a56ba618
refactor: import readSQL function
2023-05-11 18:12:50 +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
Ziv
c1c72def30
feat: upgrade antlr4 to 4.12.0 ( #88 )
2023-05-04 10:13:05 +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
nankaNULL
0c9a831585
fix: fix flinksql create table grammar, add test ( #65 )
...
* fix: fix flinksql create table grammar, add test
* feat: add cross join, left outer join and time temporal join
* test: supplement flinksql join test
* fix: fix catalog table grammar, add test
* fix: fix flinksql data type, add test
* fix: delete console
* feat: add query with clause, add test
2022-12-28 14:20:33 +08:00
xiaowei
0f6c7849f2
refactor(test): import from src index file
2021-01-05 17:41:21 +08:00
Erindcl
da2581533f
fix: delete mock data
2021-01-05 11:49:40 +08:00
Erindcl
771b562c78
fix(flink): clear useless comments
2020-12-14 11:48:08 +08:00
Erindcl
3054e90917
feat(flin): add split sql test
2020-12-14 11:23:40 +08:00
Erindcl
a9b1e90d73
feat(flink): update grammar to match special columnName
2020-12-09 11:08:56 +08:00
Erindcl
e67f991ede
feat(flink): modify grammar to match keywords
2020-12-08 16:04:56 +08:00
Erindcl
cc1d5abcdd
feat(flink): add performance test
2020-12-04 11:14:20 +08:00
Erindcl
c9d88d00a6
feat(flink): update flinkSql grammar and add some test
2020-12-03 20:03:25 +08:00
Erindcl
8cfdd0e856
test(flink): add flink visitor and listener test
2020-12-02 10:35:37 +08:00