Commit Graph

290 Commits

Author SHA1 Message Date
Simon Binder cf607f0108
Escape column names during insert 2019-12-12 09:23:41 +01:00
Simon Binder a23ff772fa
Improve syntax highlighting in the sql IDE 2019-12-11 21:14:33 +01:00
Simon Binder bdea374fa2
Generator: Extract writer into a top-level library 2019-12-11 10:44:28 +01:00
Simon Binder 2c97373bdd
Support implicit-dynamic: false
Closes #268
2019-12-10 20:38:08 +01:00
Simon Binder 74ebb8a9ab
Ability to create fts5 tables in moor files (#196) 2019-12-10 20:24:08 +01:00
Simon Binder 40eaf17a7d
Generator tests: Always provide task and file for a step 2019-12-07 17:53:53 +01:00
Simon Binder 028d5558f5
Fix alias typo when generating table classes 2019-12-07 09:29:18 +01:00
Simon Binder 28b1e19145
Test that dart components can be used from UseMoor/Dao
Fixes #267
2019-12-05 19:23:52 +01:00
Simon Binder 3c74a20f56
Enable more recent lints and enforce them 2019-12-04 21:45:09 +01:00
Simon Binder 092f64d7cf
Escape column names during insert 2019-12-02 21:40:41 +01:00
Simon Binder a0ce3421c9
Resolve json functions when option is set (#235) 2019-11-28 21:50:55 +01:00
Simon Binder 8320ddc788
Make modules configurable via a build option 2019-11-28 20:46:42 +01:00
Simon Binder 9e7e6d0922
Use json_serializable for the build options 2019-11-28 20:34:07 +01:00
Simon Binder 75d4463085
Use same generator session in same build step 2019-11-28 20:14:08 +01:00
Simon Binder a937956d41
Prepare 2.1.1 release of moor_generator
Contains fixes for CTE crashes and build issues
2019-11-24 21:28:45 +01:00
Simon Binder f7bc2f1210
Verify that tables are found through delegated columns 2019-11-24 21:21:32 +01:00
Simon Binder 68b516fff4
Fix analyzer crash at CTE (#255) 2019-11-24 21:21:32 +01:00
Simon Binder 6fb57ca53f
Disable our own caching algorithm across build steps 2019-11-24 21:20:55 +01:00
Simon Binder 684c988d4e
Verify that tables are found through delegated columns 2019-11-24 14:54:19 +01:00
Simon Binder bb1fcc1590
Fix analyzer crash at CTE (#255) 2019-11-24 14:46:20 +01:00
Simon Binder a1f9e7ce13
Disable our own caching algorithm across build steps 2019-11-20 11:51:38 +01:00
Simon Binder 7609df34f0
Support selecting custom expressions 2019-11-16 16:38:02 +01:00
Simon Binder 598fef750e
RELEASE
- moor 2.1.0
- moor_generator 2.1.0
- sqlparser 0.4.0
- moor_ffi 0.2.0
2019-11-16 11:23:11 +01:00
Simon Binder e83464df28
Prepare 2.1.0 release 2019-11-13 21:14:38 +01:00
Simon Binder 98470109cf
Remove built_value(_generator) dependency from generator 2019-11-04 17:09:21 +01:00
Simon Binder 5cc1f85441
Inject mock streams via .connect constructor 2019-10-30 19:25:26 +01:00
Simon Binder bf1e174ca3
Formally support analyzer 0.40.0
It looks like we don't use any of the removed APIs, but that's hard to verify because most of our dependencies don't support analyzer 0.40.0 yet.
2019-10-27 10:46:29 +01:00
Simon Binder 45a8d8fbb3
IDE: Add navigation support for more types of columns 2019-10-24 20:41:58 +02:00
Simon Binder 8a54fd4729
Generate code for CREATE TRIGGER statements 2019-10-21 18:13:28 +02:00
Simon Binder a69f469444
Support sqlite_master, sqlite_sequence tables (#197) 2019-10-19 16:56:36 +02:00
Simon Binder fd27c878d4
Fix errors in sqlparser that were swallowed before 2019-10-19 16:41:30 +02:00
Simon Binder 263004fe7b
Option to use the column name as json key in moor files
Closes #176
2019-10-17 21:44:20 +02:00
Simon Binder 95f37575f8
Optionally use data class name for companions
Closes #185
2019-10-16 21:33:13 +02:00
Simon Binder 4c090af98c
Ability to override json keys in moor files (#176) 2019-10-14 19:59:52 +02:00
Simon Binder ff7d587339
Add real-world example for table inheritance to test 2019-10-11 22:03:32 +02:00
Simon Binder 0b9d4c897b
Properly handle overridden elements when parsing columns 2019-10-11 18:00:17 +02:00
Simon Binder 337e260667
Support inheritance in table definitions (#169) 2019-10-11 17:43:48 +02:00
Simon Binder 24c4e5c7d4
Don't run analyzer tests on the CI 2019-10-11 16:42:08 +02:00
Simon Binder 5ae3d7c2af
Prepare pubspec and changelog for 2.0.1 release 2019-10-11 13:17:50 +02:00
Simon Binder fb85ac80cb
Run builder on integration tests, support analyzer 0.38 2019-10-10 17:30:22 +02:00
Simon Binder aef8e15d61
Merge remote-tracking branch 'origin/master' into develop
# Conflicts:
#	moor_generator/CHANGELOG.md
2019-10-09 20:32:25 +02:00
Simon Binder 5510a90583
Fix warnings (2.6-dev SDK), escape \r, constant workaround 2019-10-09 19:48:52 +02:00
Simon Binder 6e32e37dd7
Remove unnecessary type parameter on createCompanion 2019-10-05 22:41:23 +02:00
Simon Binder 718af051ff
Optionally disable verification code (#173) 2019-10-05 21:41:20 +02:00
Simon Binder ed03bff4c2
Recognize boolean and datetime column in moor 2019-10-05 21:24:41 +02:00
Simon Binder 364e3f0c1a
Release moor 2.0 2019-10-03 15:39:32 +02:00
Simon Binder 20cac9fefd
Merge branch 'develop' into beta 2019-10-01 20:39:44 +02:00
Simon Binder 7cae79d76b
Document how to debug the plugin, prepare 2.0 release 2019-10-01 17:58:17 +02:00
Simon Binder 1ba687696f
Plugin: Navigation support for table references 2019-09-28 23:15:23 +02:00
Simon Binder d91c69493f
Plugin: Navigation for column references in queries 2019-09-28 22:24:40 +02:00
Simon Binder b9f934c1d4
Report information about where a column was declared 2019-09-28 22:01:28 +02:00
Simon Binder 12a6c45a42
Plugin: Fix deadlock when analyzing Dart imports in .moor 2019-09-28 19:21:03 +02:00
Simon Binder 1fc9ccb3cc
Plugin: Report navigation targets for import statements 2019-09-27 23:15:08 +02:00
Simon Binder ab787b82be
Use existing parser code for auto-complete
This works very well when the user is typing at the end of a statement, but won't provide accurate results when editing in the middle.
2019-09-27 22:06:14 +02:00
Simon Binder b684a7be69
Replace imports of test_api with test 2019-09-26 22:52:20 +02:00
Simon Binder a6cfc5fdd8
Better types for nested expressions, more 2.0 docs 2019-09-26 22:46:19 +02:00
Simon Binder fb68dc0888
Introduce option to generate less query code 2019-09-25 20:01:16 +02:00
Simon Binder 0cbac2ee37
Parse compound select statements 2019-09-25 14:58:44 +02:00
Simon Binder 75f432c5f4
Merge branch 'develop' into beta 2019-09-24 22:51:09 +02:00
Simon Binder ba21a594af
Fix autocomplete and suggestions in the analyzer plugin 2019-09-24 20:50:23 +02:00
Simon Binder 18639a364c
Merge branch 'develop' into beta 2019-09-22 21:45:51 +02:00
Simon Binder 7d962a1f01
Fix typo in new override flag 2019-09-20 19:36:09 +02:00
Simon Binder 161f7c0203
Optionally override hashCode and equals in result sets 2019-09-20 19:31:36 +02:00
Simon Binder 4e166f189c
Colorize errors in moor files again 2019-09-18 21:40:19 +02:00
Simon Binder 7121bac866
More work on the analyzer plugin
- finish migration to refactored generator
- document how to use the analysis plugin
- better error reporting without redundant messages
2019-09-18 20:48:44 +02:00
Simon Binder 00b2956b35
Allow data class names to be overridden in sql
Closes #147
2019-09-17 15:23:24 +02:00
Simon Binder 746b8401ec
Scan comments in sql 2019-09-16 22:33:36 +02:00
Simon Binder 2bf42a6157
Resolve table references declared by foreign key clause 2019-09-16 19:36:56 +02:00
Simon Binder 25ceda3505
Report lints about invalid Dart Templates in SQL 2019-09-15 11:59:47 +02:00
Simon Binder 5b6bd1db37
Fix some queries with Dart templates not compiling 2019-09-15 10:51:35 +02:00
Simon Binder c95a3badb2
Infer types for dart placeholder expressions
Also, infer where clauses to have a bool type
2019-09-14 22:44:20 +02:00
Simon Binder e89f9227ab
Don't write ResultSet classes for single-column queries
Fixes #148
2019-09-14 19:03:52 +02:00
Simon Binder 54c3dbc4b8
Write variables created in a dart template 2019-09-14 17:48:17 +02:00
Simon Binder 349b245089
Write implementation for Dart placeholders 2019-09-14 16:42:24 +02:00
Simon Binder bf7c9feddf
Write parameter declarations for Dart placeholders 2019-09-14 12:26:58 +02:00
Simon Binder 7a8191fe7e
Fix moor queries not expanding array vars properly 2019-09-14 09:27:36 +02:00
Simon Binder e9225cf759
Always generate private watch methods 2019-09-13 21:11:17 +02:00
Simon Binder c8ae99b52e
Breaking changes for the upcoming version
1. Removes transaction parameter in callbacks, custom queries
2. Removes MigrationStrategy.onFinished
2019-09-13 21:04:15 +02:00
Simon Binder 3097bb0591
Don't write get/watch methods for queries declared in moor 2019-09-13 20:23:48 +02:00
Simon Binder 8ff5a7625e
Write another integration test with cyclic queries 2019-09-13 20:15:55 +02:00
Simon Binder e50e7b3f21
Write integration test for tables feature 2019-09-13 20:01:09 +02:00
Simon Binder 156ef1ceb5
Support queries declared in .moor files 2019-09-12 21:08:30 +02:00
Simon Binder 6a0716daaf
Handle import statements and declared queries in .moor 2019-09-12 19:51:15 +02:00
Simon Binder f3db52717f
Extract steps into multiple files 2019-09-12 19:09:56 +02:00
Simon Binder b8cca3dcc2
Migrate AS plugin and build backend to new task api 2019-09-12 16:01:28 +02:00
Simon Binder e394292978
Refactor the backend (again)
We now have a two-pass parsing and analyzing model that
supports (zyklic) imports between Dart and moor files.
2019-09-11 23:00:46 +02:00
Simon Binder 28f13abfc3
Fix type converters loosing generic information
Fixes #144
2019-09-11 21:30:42 +02:00
Simon Binder a5cecd3ba6
Support moor file AST in the plugin 2019-09-09 20:34:14 +02:00
Simon Binder 1b7721a98f
Plugin: Import assists for column nullability 2019-09-08 21:36:26 +02:00
Simon Binder d79b04193c
Report syntax errors in moor files from the plugin 2019-09-08 11:22:36 +02:00
Simon Binder e807822f3f
Make plugin operate on the new MoorFile AST node 2019-09-08 10:29:59 +02:00
Simon Binder 7354b56712
Merge branch 'develop' into analyzer-plugin
# Conflicts:
#	moor_generator/lib/src/analyzer/moor/parser.dart
#	sqlparser/lib/src/engine/sql_engine.dart
2019-09-07 23:05:36 +02:00
Simon Binder 35e5bdb317
Introduce new top-level ast node for moor files 2019-09-07 21:33:56 +02:00
Simon Binder 8268867369
Fix analyzer errors, re-run build_runner 2019-09-07 20:01:33 +02:00
Simon Binder 1fcc6facee
Implement basic functionality of the analyzer plugin 2019-09-07 18:49:11 +02:00
Simon Binder 10dca6a8a9
Migrate analysis plugin to refactored generator 2019-09-07 15:19:40 +02:00
Simon Binder b550afd68f
Merge branch 'develop' into analyzer-plugin
# Conflicts:
#	moor_generator/lib/src/parser/moor/moor_analyzer.dart
2019-09-07 11:31:34 +02:00
Simon Binder 71d1bfdc9c
Scaffold api to support type converters in moor files
I still don't know how to parse expressions though :(
2019-09-06 22:23:44 +02:00
Simon Binder ba772ef07f
Better error handling when parsing multiple sql statements 2019-09-03 21:24:59 +02:00
Simon Binder 867f953107
Merge branch 'develop' into refactor-generator
# Conflicts:
#	moor_generator/lib/src/analyzer/sql_queries/lints/linter.dart
2019-09-03 19:35:23 +02:00