|
1 | | -# Parser - A MySQL Compatible SQL Parser |
2 | | - |
3 | | -[](https://goreportcard.com/report/github.com/pingcap/parser) |
4 | | -[](https://circleci.com/gh/pingcap/parser) |
5 | | -[](https://godoc.org/github.com/pingcap/parser) |
6 | | -[](https://codecov.io/gh/pingcap/parser) |
7 | | - |
8 | | -The goal of this project is to build a Golang parser that is fully compatible with MySQL syntax, easy to extend, and high performance. Currently, features supported by parser are as follows: |
9 | | - |
10 | | -- Highly compatible with MySQL: it supports almost all features of MySQL. For the complete details, see [parser.y](https://github.com/pingcap/parser/blob/master/parser.y) and [hintparser.y](https://github.com/pingcap/parser/blob/master/hintparser.y). |
11 | | -- Extensible: adding a new syntax requires only a few lines of Yacc and Golang code changes. As an example, see [PR-680](https://github.com/pingcap/parser/pull/680/files). |
12 | | -- Good performance: the parser is generated by goyacc in a bottom-up approach. It is efficient to build an AST tree with a state machine. |
13 | | - |
14 | | -## How to use it |
15 | | - |
16 | | -Please read the [quickstart](https://github.com/pingcap/parser/blob/master/docs/quickstart.md). |
17 | | - |
18 | | -## Future |
19 | | - |
20 | | -- Support more MySQL syntax |
21 | | -- Optimize the code structure, make it easier to extend |
22 | | -- Improve performance and benchmark |
23 | | -- Improve the quality of code and comments |
24 | | - |
25 | | -## Getting Help |
26 | | - |
27 | | -- [GitHub Issue](https://github.com/pingcap/parser/issues) |
28 | | -- [Stack Overflow](https://stackoverflow.com/questions/tagged/tidb) |
29 | | -- [User Group (Chinese)](https://asktug.com/) |
30 | | - |
31 | | -If you have any questions, feel free to discuss in sig-ddl. Here are the steps to join: |
32 | | -1. Join [TiDB Slack community](https://pingcap.com/tidbslack/), and then |
33 | | -2. Join [sig-ddl Slack channel](https://slack.tidb.io/invite?team=tidb-community&channel=sig-ddl&ref=github_sig). |
34 | | - |
35 | | -If you want to join as a special interest group member, see [DDL Special Interest Group](https://github.com/pingcap/community/tree/master/special-interest-groups/sig-ddl). |
36 | | - |
37 | | -## Users |
38 | | - |
39 | | -These projects use this parser. Please feel free to extend this list if you |
40 | | -found you are one of the users but not listed here: |
41 | | - |
42 | | -- [pingcap/tidb](https://github.com/pingcap/tidb) |
43 | | -- [XiaoMi/soar](https://github.com/XiaoMi/soar) |
44 | | -- [XiaoMi/Gaea](https://github.com/XiaoMi/Gaea) |
45 | | -- [sql-machine-learning/sqlflow](https://github.com/sql-machine-learning/sqlflow) |
46 | | -- [nooncall/shazam](https://github.com/nooncall/shazam) |
47 | | -- [bytebase/bytebase](https://github.com/bytebase/bytebase) |
48 | | - |
49 | | -## Contributing |
50 | | - |
51 | | -Contributions are welcomed and greatly appreciated. See [Contribution Guide](https://github.com/pingcap/community/blob/master/contributors/README.md) for details on submitting patches and the contribution workflow. |
52 | | - |
53 | | -Here is how to [update parser for TiDB](https://github.com/pingcap/parser/blob/master/docs/update-parser-for-tidb.md). |
54 | | - |
55 | | -## Acknowledgments |
56 | | - |
57 | | -Thanks [cznic](https://github.com/cznic) for providing some great open-source tools. |
58 | | - |
59 | | -## License |
60 | | -Parser is under the Apache 2.0 license. See the LICENSE file for details. |
61 | | - |
62 | | -## More resources |
63 | | - |
64 | | -- TiDB documentation |
65 | | - |
66 | | - - [English](https://docs.pingcap.com/tidb/stable) |
67 | | - - [简体中文](https://docs.pingcap.com/zh/tidb/stable) |
68 | | - |
69 | | -- TiDB blog |
70 | | - |
71 | | - - [English](https://pingcap.com/blog/) |
72 | | - - [简体中文](https://pingcap.com/blog-cn/) |
| 1 | +This repository has been moved to https://github.com/pingcap/tidb/tree/master/parser. |
0 commit comments