Commit Graph

341 Commits

Author SHA1 Message Date
Simon Binder 57efa4bb89
Add more tests for node to text 2020-08-22 12:36:36 +02:00
Simon Binder 6fba2555c1
Api to turn AST nodes into a textual represenation 2020-08-21 16:44:17 +02:00
Simon Binder a037de6621
Support rowid resolution outside of selects
This fixes #754
2020-08-10 10:46:33 +02:00
Simon Binder 0d9196dca8
Resolve columns in CREATE TRIGGER declaration (#751) 2020-08-07 20:38:32 +02:00
Simon Binder c2ce934361
Apply type converters on variables (#730) 2020-07-23 17:30:26 +02:00
Simon Binder 640cae1244
Scan [identifiers] in sql queries (#724) 2020-07-22 10:43:44 +02:00
Simon Binder ba708ee9c5
Merge branch 'use-sqlite3-package' into develop 2020-07-18 17:47:27 +02:00
Simon Binder 144116b5e1
Re-run generator in Flutter example, fix type inference bug (#715) 2020-07-18 13:38:21 +02:00
Simon Binder cb7c36d63b
sqlparser: Improve numeric token parsing 2020-07-18 11:01:04 +02:00
Simon Binder 800ee8ac3a
Add implicit cast when inferring binary expressions 2020-07-18 09:49:49 +02:00
Simon Binder 74caeced85
Fix typo in parsing error message 2020-07-12 17:59:24 +02:00
Simon Binder 5b1a36df8e
Fix typo in parsing error message 2020-07-12 17:58:45 +02:00
Simon Binder 35629abf2b
Migrate sqlparser from moor_ffi to sqlite3 2020-07-10 17:32:45 +02:00
Simon Binder 7ff91a620a
Some improvements related to generator error recovery 2020-07-07 23:01:02 +02:00
Simon Binder ac20d9b324
Fix some pub warnings that appeared during publishing 2020-06-28 21:17:33 +02:00
Simon Binder 3a558c3d1d
Prepare moor 3.2, moor_ffi 0.7 release 2020-06-28 17:27:32 +02:00
Simon Binder 2897dd4ae0
Parse NULLS FIRST and NULLS LAST 2020-06-27 14:38:16 +02:00
Simon Binder 5136412573
Parse DEFERRABLE clauses on foreign key constraints 2020-06-27 14:26:09 +02:00
Simon Binder 211b6fa2e9
sqlparser: Support remaining sqlite keywords 2020-06-26 22:54:42 +02:00
Simon Binder d5c6467e37
Finish documentation, remove unnecessary null hint 2020-06-24 17:11:41 +02:00
Simon Binder ccea0a5d36
Don't throw parsing errors for top-level statements 2020-06-24 17:08:13 +02:00
Simon Binder c342b29b33
Fix sqlparser crashes related to unknown tables 2020-06-19 13:43:16 +02:00
Simon Binder 5c9c175c85
Merge branch 'develop' of gh:simolus3/moor into develop 2020-06-17 23:00:56 +02:00
Markus Richter 85ac74f69f
add suggested test(s) 2020-06-17 21:22:03 +02:00
Markus Richter f298a10636
Allow Backticks(`) for escaping identifiers
This is sqlite-conformant behaviour according to https://sqlite.org/lang_keywords.html.
2020-06-17 17:20:44 +02:00
Simon Binder 1e8a1de6c0
sqlparser: Add visit methods for Queryable subclasses 2020-06-16 14:25:31 +02:00
Simon Binder 5c6331e486
sqlparser: Make InsertSource an AstNode 2020-06-15 17:45:28 +02:00
Simon Binder 7ae3783473
sqlparser: Make TriggerTarget an ast node 2020-06-15 17:21:49 +02:00
Simon Binder 896d62d76c
Support nested CASE expressions (#609) 2020-06-02 12:05:02 +02:00
Simon Binder fee32fc302
Start with transformers in sqlparser 2020-05-24 22:30:25 +02:00
Simon Binder 01e5a47189
Make utility visitor methods an extension 2020-05-24 19:53:36 +02:00
Simon Binder e772ca0225
Support views in ReferencedTablesVisitor 2020-05-23 15:27:58 +02:00
Simon Binder 3db0fd57f1
Update changelog to include views in sqlparser 2020-05-22 17:33:34 +02:00
Simon Binder 8aca8db941
Merge branch 'views' of https://github.com/mqus/moor into mqus-views
# Conflicts:
#	sqlparser/test/analysis/schema/from_create_table_test.dart
2020-05-22 17:29:04 +02:00
Simon Binder 5d93f9fcf9
Analysis support for custom result sets 2020-05-21 15:22:49 +02:00
Markus Richter 5596c30cc7
Support subquery expressions in types2 (#583) 2020-05-19 19:42:36 +02:00
Simon Binder 65f02cb22c
Prepare 3.1 release of moor, 0.6 or moor_ffi, 0.9 of sqlparser 2020-05-18 20:45:48 +02:00
Simon Binder 52fd09c041
Fix reading a column without datatype 2020-05-17 15:18:25 +02:00
Simon Binder 6b88385755
Rename test files to end with _test.dart 2020-05-16 19:49:00 +02:00
Simon Binder a1304c537f
Formatting 2020-05-16 19:42:33 +02:00
Simon Binder 888e131d50
Report analysis error for view column mismatches 2020-05-16 19:36:56 +02:00
Simon Binder 58335958c0
Test selecting from a view 2020-05-16 19:29:11 +02:00
Simon Binder 46ba81b672
Interface for columns with type, resolve in ViewReader 2020-05-16 19:16:06 +02:00
Simon Binder f7e7622b4c
Rename resultset.dart to result_set.dart, format parser test 2020-05-16 18:55:07 +02:00
Markus Richter df6f6fafa2
Add NamedResultSet type, adress review issues 2020-05-16 13:50:30 +02:00
mqus 0bc2a7548d
Apply suggestions from code review
Co-authored-by: Simon Binder <oss@simonbinder.eu>
2020-05-16 12:08:05 +02:00
Markus Richter 186153e585
Add parser test,advance analyzer,fix review issues
Also:
- Add toString method to Literal and alter the one on Reference to make debugging and analysing tests easier
- Add `@required` to columns in SelectStatement constructor to make it clear that it can't be null (required by childNodes getter)
2020-05-15 19:58:16 +02:00
Simon Binder cf830165e1
Support enum converters for moor files, add documentation 2020-05-13 21:43:58 +02:00
Markus Richter d86d7ab7e3
Parser is ready, work on analyzer was started. 2020-05-13 14:29:22 +02:00
Simon Binder 9841c960d1
Parse row values, warn on misuse 2020-05-06 21:08:47 +02:00
Simon Binder 8b6abd7140
Move referenced table finder to sqlparser package (#537) 2020-05-04 22:00:41 +02:00
Simon Binder 28a7451f1d
Merge pull request #536 from mqus/patch-1
Fix documentation source code issues
2020-05-04 12:16:53 +02:00
mqus 882b789c1b
Fix example source code issues
Just some typos
2020-05-03 22:29:30 +02:00
Simon Binder bd250ee9e7
Support collate expression with new type inference (#533) 2020-05-03 21:13:29 +02:00
Simon Binder 0a30b8a12e
Upgrade integration tests, release sqlparser 0.8 2020-05-03 13:28:34 +02:00
Simon Binder fc0b1f4388
Use package:charcode for sql scanning 2020-05-02 14:17:49 +02:00
Simon Binder 453ccbefdc
Support double-equals in types2 2020-04-19 13:43:42 +02:00
Simon Binder 6b2bd27d4d
Parse and analyze VALUES clause for selects 2020-04-16 22:41:21 +02:00
Simon Binder c007e1f9ac
Sort token types and keywords 2020-04-16 21:14:51 +02:00
Simon Binder 9a78604d98
Fix issues with new inference, enable it by default 2020-04-16 19:07:30 +02:00
Simon Binder af5333db3c
Support compound select statements in from 2020-04-07 15:37:35 +02:00
Simon Binder dcb4c4b972
Resolve nested result sets in generator 2020-04-03 20:30:41 +02:00
Simon Binder d5ad3c6d34
Parse nested star columns 2020-04-03 18:37:33 +02:00
Simon Binder 2b9a85714f
Improve nullability detection in new type inference 2020-03-24 19:33:57 +01:00
Simon Binder 1a2d3bdee7
Parse comma separated tables as proper join (#453) 2020-03-22 11:51:39 +01:00
Simon Binder d533a0a254
Fix error recovery on early finished statements #453 2020-03-21 22:02:27 +01:00
Simon Binder 87d1f2941b
Test for string concatenation variable inference 2020-02-23 19:23:50 +01:00
Simon Binder 990755f170
Static analysis for moor_ffi functions 2020-02-19 12:25:40 +01:00
Simon Binder 10b12a5976
Remove two more tiny deprecated members 2020-02-17 21:22:43 +01:00
Simon Binder 57fa1d50c6
Release moor and moor_generator 2.4.0, sqlparser 0.7.0 2020-02-12 21:01:41 +01:00
Simon Binder 7fc1671bf8
Fix null pointer in SqlEngine constructor 2020-02-12 19:52:19 +01:00
Simon Binder b295542a07
Prepare release for 2.4 2020-02-10 19:46:27 +01:00
Simon Binder 814e7bf61d
SqlEngine: Migrate default construtor to options 2020-02-10 18:48:03 +01:00
Simon Binder b143ee5a4b
Refactor sql scoping, make aliased tables explicit 2020-02-05 22:52:45 +01:00
Simon Binder aa52c4ba3d
Analysis for upsert clauses 2020-02-05 12:26:14 +01:00
Simon Binder 8839ec75a8
types2: Inference for upsert clauses 2020-02-03 21:54:49 +01:00
Simon Binder 0c171c3b81
sqlparser: Support upsert clauses (#367) 2020-02-03 21:43:18 +01:00
Simon Binder fbe061c84d
Support current time literals in the sql parser 2020-02-01 13:18:53 +01:00
Simon Binder 27430cbb07
Add table-valued query to test moor file 2020-01-26 15:37:46 +01:00
Simon Binder 71ef9b8cd7
Support table-valued json1 functions 2020-01-26 14:42:52 +01:00
Simon Binder 5268d88344
Extract json1 support into an extension 2020-01-26 14:22:07 +01:00
Simon Binder c82bff8c97
Analysis support for table-valued functions 2020-01-26 14:04:35 +01:00
Simon Binder 5622ed5c43
Analysis support for table-valued functions 2020-01-26 13:51:53 +01:00
Simon Binder 223f1615ab
Support parsing table valued functions 2020-01-26 13:13:44 +01:00
Simon Binder ceb300e32e
Parse rowid as a valid expression in the sql parser 2020-01-26 12:23:47 +01:00
Simon Binder de38761db9
Support type converters in moor files (#103) 2020-01-25 15:43:55 +01:00
Simon Binder 257cfaca2e
Finish changelog and pubspec for 2.3 release 2020-01-21 17:55:41 +01:00
Simon Binder 8c62365f26
Improve type inference for parentheses 2020-01-19 13:07:47 +01:00
Simon Binder c8a155a44b
Autocomplete table names in sqlparser 2020-01-18 21:41:36 +01:00
Simon Binder b04ebc9e8c
Utils to make testing autocomplete easier 2020-01-18 20:51:09 +01:00
Simon Binder eb77d06cac
sqlparser: Recover from invalid column definitions 2020-01-18 15:09:42 +01:00
Simon Binder 4a2184110f
Run tests for types1 for types2 resolver 2020-01-16 22:07:02 +01:00
Simon Binder 8ae68707f8
Smarter many-to-one propagation in types2 2020-01-15 22:10:18 +01:00
Simon Binder ddda6797e1
types: Analyze functions 2020-01-13 20:40:46 +01:00
Simon Binder 5d8040554f
CLI tool to export a moor schema to json 2020-01-12 10:38:03 +01:00
Simon Binder 9c38ed1ea5
Support CASE expressions in the new type resolver 2020-01-10 21:31:22 +01:00
Simon Binder 6434f7a7d5
Support virtual tables in the analyzer plugin 2020-01-09 22:45:25 +01:00
Simon Binder 643ef5640c
Faster sql tokenization with char codes 2020-01-09 22:09:17 +01:00
Simon Binder 5c82b2f2a7
Loose coupling between highlighter and analyzer plugin 2020-01-09 13:50:11 +01:00
Simon Binder a3708b7230
Remove deprecated usages of SqlEngine constructor 2020-01-07 11:40:43 +01:00