Simon Binder
0b7b1b7146
Fix Dart parser when primaryKey is not overridden
2020-04-04 11:48:00 +02:00
Alexander Wilde
c3f5ba9aa0
Fix generating class for results with nested results.
2020-04-04 01:04:37 +01:00
Simon Binder
c692c56d43
Support primaryKey override with inheritance ( #467 )
2020-04-03 22:02:01 +02:00
Simon Binder
1340e9291c
Generate code for nested results ( #288 )
2020-04-03 21:31:27 +02:00
Simon Binder
dcb4c4b972
Resolve nested result sets in generator
2020-04-03 20:30:41 +02:00
Simon Binder
29eec7f784
Fix parser tests in moor_generator
2020-03-22 11:56:28 +01:00
Simon Binder
2da8577b01
Add failing test for #447
2020-03-18 13:09:18 +01:00
Simon Binder
5b675a811b
Don't consider rowid aliases required ( #445 )
2020-03-16 20:36:03 +01:00
Simon Binder
d600bbc70e
Fix find_stream_update_rules_test
2020-03-04 22:50:49 +01:00
Simon Binder
3002d87bcb
New tableUpdates stream method on QueryEngine ( #394 )
2020-03-04 22:43:41 +01:00
Simon Binder
b823f534c8
Write update kind for compiled update and delete queries
2020-03-04 21:28:08 +01:00
Simon Binder
b0b9a0ed47
Generate more accurate update rules for triggers
2020-03-04 20:59:03 +01:00
Simon Binder
0b0d5792fd
Allow more specific updates in stream queries
2020-03-04 20:28:31 +01:00
Simon Binder
799eba1c67
Verify update rule generation in generator, fix tests
2020-03-04 16:52:08 +01:00
Simon Binder
545fbcc86a
Find and generate update rules during builds
2020-03-04 16:34:16 +01:00
Simon Binder
6c6b198943
Tests for column nullability assists
2020-02-27 11:18:08 +01:00
Simon Binder
3e691a72a6
Tests for syntax highlighting
2020-02-25 21:54:12 +01:00
Simon Binder
990755f170
Static analysis for moor_ffi functions
2020-02-19 12:25:40 +01:00
Simon Binder
d43e227757
Make eager ast resolving behavior opt-in
2020-02-17 21:05:56 +01:00
Simon Binder
e2b65e968a
Rename customSelectQuery to just customSelect
...
Also fix a crash in the builder
2020-02-17 20:43:42 +01:00
Simon Binder
11af414551
Remove the second type parameter on expressions
2020-02-17 18:05:24 +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
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
04a43b36d6
Handle table aliases in moor_generator
2020-02-10 18:41:02 +01:00
Simon Binder
d44004e598
Explain how to use moor with built_value
2020-02-08 15:29:31 +01:00
Simon Binder
cd9b7101b4
Optional part builder, example with built_value
...
See #89
2020-02-06 22:27:54 +01:00
Simon Binder
9494768a32
Start work on pooled connections
2020-02-01 15:56:30 +01:00
Simon Binder
5268d88344
Extract json1 support into an extension
2020-01-26 14:22:07 +01:00
Simon Binder
de38761db9
Support type converters in moor files ( #103 )
2020-01-25 15:43:55 +01:00
Simon Binder
845d32471c
Add another missing analyzer tag to test
2020-01-23 17:16:14 +01:00
Simon Binder
c6230e628f
Fix uri -> path resolution on Windows
2020-01-22 12:00:21 +01:00
Simon Binder
2efe11d386
Update sqlparser dependency in moor_generator
2020-01-21 22:05:40 +01:00
Simon Binder
257cfaca2e
Finish changelog and pubspec for 2.3 release
2020-01-21 17:55:41 +01:00
Simon Binder
40a34ac793
Add missing analyzer tag to cyclic_moor_dart_dependency
2020-01-21 10:27:30 +01:00
Simon Binder
8c62365f26
Improve type inference for parentheses
2020-01-19 13:07:47 +01:00
Simon Binder
d0cb2eec37
Add analyze command to moor cli tool, documentation site
2020-01-16 23:10:05 +01:00
Simon Binder
8ae68707f8
Smarter many-to-one propagation in types2
2020-01-15 22:10:18 +01:00
Simon Binder
5d8040554f
CLI tool to export a moor schema to json
2020-01-12 10:38:03 +01:00
Simon Binder
6434f7a7d5
Support virtual tables in the analyzer plugin
2020-01-09 22:45:25 +01:00
Simon Binder
1b60879a09
Fix unnecessary re-query when subscriptions switch ( #329 )
2020-01-09 16:14:20 +01:00
Simon Binder
5c82b2f2a7
Loose coupling between highlighter and analyzer plugin
2020-01-09 13:50:11 +01:00
Simon Binder
a0684364c5
Fix analyzer plugin crash, highlight import strings
2020-01-08 12:17:43 +01:00
Simon Binder
a6e4a3669c
Fix null error when outlining a non-analyzed file
2020-01-06 20:01:41 +01:00
Simon Binder
debf8b30f4
Report error when import can't be resolved
2020-01-06 19:57:44 +01:00
Simon Binder
b6b5e7f7c2
Fix analysis errors from deprecated engine constructor
2020-01-05 21:41:56 +01:00
Simon Binder
70259c8f83
Build options to enable types2 inference
2020-01-04 22:29:21 +01:00
Simon Binder
373ad320c4
Support @create-queries in moor files
2020-01-03 22:15:40 +01:00
Simon Binder
00c1d2a2e7
Migrator support for indexes, tests
2020-01-03 20:08:10 +01:00
Simon Binder
5b04a08786
Generate code for indices
2020-01-03 19:36:38 +01:00
Simon Binder
8df6ab3a14
Generate fields for triggers
2020-01-03 15:47:18 +01:00
Simon Binder
3ee05bf647
Respect tables in the body of a CREATE TRIGGER statement
2020-01-03 15:38:13 +01:00
Simon Binder
cf6824af82
Analyze body of CREATE TRIGGER statements
2020-01-01 21:19:10 +01:00
Simon Binder
8b86143ebb
Generate code for triggers
2019-12-31 16:03:03 +01:00
Simon Binder
a3697c6f38
Find references of a trigger
2019-12-31 15:07:08 +01:00
Simon Binder
04f75d11d3
Migrate some trigger code to refactorings on develop
2019-12-30 21:38:24 +01:00
Simon Binder
ba603f22cc
Merge branch 'develop' into views-triggers-indexes
...
# Conflicts:
# moor/lib/moor.dart
# moor/lib/src/runtime/api/query_engine.dart
# moor/lib/src/runtime/query_builder/schema/entities.dart
# moor/test/data/tables/custom_tables.g.dart
# moor/test/data/tables/tables.moor
# moor/test/parsed_sql/moor_files_integration_test.dart
# moor_generator/lib/src/analyzer/moor/parser.dart
# moor_generator/lib/src/analyzer/runner/steps.dart
# moor_generator/lib/src/analyzer/runner/steps/analyze_dart.dart
# moor_generator/lib/src/model/specified_db_classes.dart
# moor_generator/lib/src/writer/database_writer.dart
# sqlparser/lib/src/ast/ast.dart
# sqlparser/lib/src/ast/statements/create_table.dart
# sqlparser/lib/src/ast/statements/statement.dart
# sqlparser/lib/src/reader/parser/schema.dart
# sqlparser/lib/src/reader/tokenizer/token.dart
# sqlparser/test/engine/autocomplete/static_test.dart
2019-12-30 21:08:32 +01:00
Simon Binder
e9cada5e54
Api to globally override the default ValueSerializer
...
Closes #303
2019-12-27 18:17:45 +01:00
Simon Binder
7abda32ac4
Add argument to sql visitor class
2019-12-26 12:35:29 +01:00
Simon Binder
72934d1b87
Check isRequired at compile time, save verification code
2019-12-25 22:26:32 +01:00
Simon Binder
5314520746
clientDefault values for columns #294
2019-12-25 22:22:46 +01:00
Simon Binder
d2b70e69dc
Support explicit type arguments in moor_generator
2019-12-25 21:07:08 +01:00
Simon Binder
6f8b8193b2
Increase timeout for analyzer, test moor_generator later
2019-12-23 15:13:30 +01:00
Simon Binder
e01b7a1b88
Remove author from pubspec, bump version for next release
2019-12-23 12:52:46 +01:00
Simon Binder
3f0c35abff
Improve changelog, error description for columns
2019-12-23 12:24:22 +01:00
Simon Binder
fb66ad101a
Merge the two query_handler_test files together
2019-12-21 23:12:24 +01:00
Simon Binder
d7225ad9a5
Support inheritance for daos ( #285 )
2019-12-21 22:44:52 +01:00
Simon Binder
c07ca12273
Set hasMultipleTables: true when appropriate
2019-12-21 14:57:36 +01:00
Simon Binder
7cfbb4d074
Check if a query references multiple tables
2019-12-21 14:51:36 +01:00
Simon Binder
2c57a80771
Revert using mapFromRow() for matched tables in queries
2019-12-21 14:51:22 +01:00
Simon Binder
8f15356357
Merge branch 'master' into develop
...
# Conflicts:
# moor/CHANGELOG.md
# moor/test/data/tables/custom_tables.g.dart
# moor/test/data/tables/tables.moor
# moor_generator/lib/src/analyzer/runner/task.dart
# moor_generator/lib/src/backends/build/moor_builder.dart
# moor_generator/test/analyzer/moor/cfe_test.dart
2019-12-18 22:04:50 +01:00
Simon Binder
cb38590ee4
Parse special `@`-queries (not analyzed yet), #280
2019-12-17 22:03:59 +01:00
Simon Binder
a8aa65e4c1
Improve some docs, abstract base plugin class
2019-12-17 12:05:09 +01:00
Simon Binder
d2864d6859
Support reading MoorOptions in CLI analyzer
2019-12-16 21:50:21 +01:00
Simon Binder
587e8fd1a9
Don't crash when reading part of files
2019-12-16 19:34:26 +01:00
Simon Binder
ae91b5d526
Expose plugin debug server as cli command
2019-12-15 21:38:46 +01:00
Simon Binder
49a1e8253e
Initial, rough implementation of a standalone runner
2019-12-15 21:14:03 +01:00
Simon Binder
9f9361cfd7
Replace plugin backend with more general common backend
2019-12-15 11:29:50 +01:00
Simon Binder
e4fed775de
Basic tests for the file tracker, even found a bug
2019-12-14 22:30:35 +01:00
Simon Binder
ebd94cad82
Extract common moor drivers
2019-12-14 22:03:16 +01:00
Simon Binder
c69b7cb283
Move builders and analyzer plugin into subfolder
2019-12-14 21:49:51 +01:00
Simon Binder
8661e0a28a
Refactoring on the model classes in moor_generator
2019-12-14 21:43:04 +01:00
Simon Binder
f30f6f6b9b
Ignore warning for analyzer src import
2019-12-13 22:31:24 +01:00
Simon Binder
c9f29fab5b
Support detailed analysis for fts5 functions
2019-12-13 22:30:36 +01:00
Simon Binder
94634bd48b
Support custom fts5 queries
2019-12-12 18:56:37 +01:00
Simon Binder
da9ca61e0c
Don't remap tables from sql -> moor -> sql
2019-12-12 18:06:56 +01:00
Simon Binder
7ab71f7558
Adapt tests for new equals methods
2019-12-12 18:00:29 +01:00
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
3872c64561
Upgrade build_test, remove own writer workaround
2019-11-21 16:12:58 +01:00
Simon Binder
a1f9e7ce13
Disable our own caching algorithm across build steps
2019-11-20 11:51:38 +01:00
Simon Binder
261fbe6ba0
Verify behavior of the type-extracting builder
2019-11-18 15:02:31 +01:00
Simon Binder
8819245685
Resolve Dart expressions in moor files
2019-11-18 13:59:10 +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
Simon Binder
35fcdb2c0f
Implement error handling in the refactored builder
2019-09-03 19:30:05 +02:00
Simon Binder
74dc2e5404
Finish refactoring of moor_generator
2019-09-02 20:28:57 +02:00
Simon Binder
ad8bdba4b8
Start migration of writer code
2019-09-02 17:26:30 +02:00
Simon Binder
6e89a319ad
Refactored parser can now parse Dart tables
2019-08-31 12:22:25 +02:00
Simon Binder
23fca61961
Start with some refactoring in the generator
...
The idea is that we have a setup that let's us use multiple backends (build, analyzer plugin, standalone) with maximum code sharing.
2019-08-30 23:09:22 +02:00
Simon Binder
876db0671e
Provide lints on insert statements that will fail
2019-08-29 21:09:20 +02:00
Simon Binder
3cb00a4b31
Remove unnecessary "this." in insert companion constructor
2019-08-29 16:33:15 +02:00
Simon Binder
241baed0c3
Generate query implementations for insert statements
2019-08-29 16:27:55 +02:00
Simon Binder
4e83c0275b
Generate constructor for companions with @required fields
2019-08-29 13:54:08 +02:00
Simon Binder
0860b6645a
Generate selectable for custom queries
...
This makes is easier to use getSingle() and watchSingle()
on them.
Fixes #120
2019-08-27 18:44:34 +02:00
Simon Binder
a3f6f1e326
Merge branch 'develop' into analyzer-plugin
...
# Conflicts:
# moor_generator/pubspec.yaml
2019-08-26 15:32:28 +02:00
Simon Binder
37672dad2d
Bump moor dependency in moor_generator
2019-08-26 15:30:51 +02:00
Simon Binder
b1e6d931d5
Prepare release 1.7.1
2019-08-25 22:44:28 +02:00
Simon Binder
397d3f2383
Support absent values on INTEGER PRIMARY KEY
2019-08-23 22:50:15 +02:00
Simon Binder
8bbfea305c
Drop support for analyzer versions <0.37.0
...
We use MethodInvocation#typeArgumentTypes, which was introduced in version 0.37.0
2019-08-23 22:37:29 +02:00
Simon Binder
e38719a194
Write changelogs, prepare release 1.7
2019-08-22 12:27:39 +02:00
Simon Binder
367cc5cbb9
Merge branch 'develop' into beta
2019-08-20 15:36:38 +02:00
Simon Binder
a2c7b14862
Introduce flag to generate private watch methods
2019-08-19 19:04:15 +02:00
Simon Binder
3dcf59af63
Fix some bugs in the sql parser, another integration test
2019-08-17 22:21:34 +02:00
Simon Binder
e97efdf928
Support analyzer version 0.38 in the generator
2019-08-17 21:15:40 +02:00
Simon Binder
7ebd49a067
Merge branch 'develop' into beta
2019-08-16 16:30:41 +02:00
Simon Binder
4ce9e12c0e
Write copyWith methods in companion classes
...
Fixes #102
2019-08-16 15:01:03 +02:00
Simon Binder
c7a0397fb6
Verify that generated queries don't skip indexes
2019-08-16 14:44:40 +02:00
Simon Binder
7d89f12aa7
Use explicit indices for array parameters
2019-08-15 21:26:27 +02:00
Simon Binder
aa6fea6caa
Fix wrong double primary key on generated tables
2019-08-01 20:14:42 +02:00
Simon Binder
f4bd6828a9
Some more fixes on the analyzer
...
Sadly, the analyzer doesn't support custom file types yet,
so that's it for the moor analyzer plugin for now.
2019-07-31 18:05:54 +02:00
Simon Binder
4210c0c836
Start some work on the analyzer plugin
...
Of course it's not working at all
2019-07-30 18:34:33 +02:00
Simon Binder
4e75cee785
Merge branch 'develop' into analyzer-plugin
2019-07-30 14:17:37 +02:00
Simon Binder
b1820ef5aa
Generate code to match default values for CREATE TABLE
2019-07-30 10:30:06 +02:00
Simon Binder
aa3706ae9d
Support table constraints in CREATE TABLE
2019-07-30 10:13:47 +02:00
Simon Binder
3819eae1e8
Merge branch 'develop' into analyzer-plugin
2019-07-29 18:08:21 +02:00
Simon Binder
634b1adb72
Support includes on the @UseDao annotation as well
2019-07-29 15:19:58 +02:00
Simon Binder
e0a82b0e32
Finally generate table classes from sql
2019-07-29 14:22:39 +02:00
Simon Binder
4798d0a7e5
Parse specified tables from .moor files
2019-07-29 12:54:49 +02:00
Simon Binder
5ddcd17c21
Scaffold the package layout of a future analyzer plugin
2019-07-29 10:27:50 +02:00
Simon Binder
b4cdcf0431
Support type converters in compiled custom statements
2019-07-28 00:02:17 +02:00
Simon Binder
dbda5dccc1
Cache type converters in static fields
2019-07-27 22:44:44 +02:00
Simon Binder
6acc81c88b
Merge branch 'master' into develop
...
# Conflicts:
# moor_generator/lib/src/parser/table_parser.dart
2019-07-20 23:25:18 +02:00
Simon Binder
c88a5d87e3
Actually support analyzer 0.37 in moor_generator
2019-07-20 23:17:11 +02:00
Simon Binder
1b4df63694
Actually support analyzer 0.37 in moor_generator
2019-07-20 23:10:58 +02:00
Simon Binder
37cba6971c
Attempt to fix coverage collection
2019-07-20 22:15:52 +02:00
Simon Binder
35e6ed67df
Use new GeneratorSession for the writer
2019-07-20 10:18:41 +02:00
Simon Binder
e6cf035ad2
Put dao parser in own file
2019-07-18 20:27:07 +02:00
Simon Binder
001de4dc79
Extract logic out of moor generator in some smaller files
2019-07-18 18:17:58 +02:00
Simon Binder
c5e9e8cfc8
Start generator refactoring
...
Remove global shared state in favor of sessions that are only valid for a single build step.
2019-07-18 18:01:27 +02:00
Simon Binder
ff93af231c
Write correct mapping code for custom objects
2019-07-18 12:53:26 +02:00
Simon Binder
bf4d16add6
Write verification and to-sql mapping for custom columns
2019-07-18 12:21:10 +02:00
Simon Binder
c2bff3ae42
API and parser for custom types
2019-07-18 12:02:16 +02:00
Simon Binder
f108090f7b
Release version 1.6
2019-07-13 10:50:53 +02:00
Simon Binder
f21021a6e9
Final preparations for the 1.6 release
...
Short summary of updates
- web support
- using zones to resolve the current transaction
- comparable date time values
- collate expressions
- many bug fixes
2019-07-12 10:52:42 +02:00
Simon Binder
0e7ee6114b
Avoid writing duplicate mapping methods
2019-07-10 19:37:15 +02:00
Simon Binder
02a8dabd63
Fix crash when variables appear more than once
2019-07-10 18:25:18 +02:00
Simon Binder
df05e643e0
Migrate example to 1.6, update readme
2019-07-10 17:55:57 +02:00
Simon Binder
809f239ca3
Generate code for array variables in compiled statements
2019-07-07 16:04:55 +02:00
Simon Binder
2a51a04cc8
Remove usage of ParsedLibraryResultImpl.tmp
2019-07-05 18:36:05 +02:00
Simon Binder
316f9e1052
Only resolve columns declared in scope of a statement
...
Fixes #52
2019-07-02 12:28:54 +02:00
Simon Binder
2487c64c08
RELEASE 1.5
...
- Analyzed custom queries
- Better callbacks
- Update companions
2019-07-01 22:24:38 +02:00
Simon Binder
3dddc6993a
Remove outdated todo entries
2019-07-01 21:37:08 +02:00
Simon Binder
464754267e
Document new features for version 1.5
2019-06-30 22:16:58 +02:00
Simon Binder
f5492b8bcb
Generate code for update and delete statements
2019-06-30 19:34:54 +02:00
Simon Binder
f8834f0e15
More fluent api to define queries
2019-06-30 13:35:13 +02:00
Simon Binder
b4de942915
Write query engine override param for generated queries
...
This allows them to be used in transactions and post-
migration callbacks.
2019-06-30 13:09:07 +02:00
Simon Binder
53ea5835a8
For custom queries, use a matching data class if possible
2019-06-30 12:01:46 +02:00
Simon Binder
ff530dd4ea
Improve documentation of the sqlparser library
2019-06-29 22:29:16 +02:00
Simon Binder
22f78589db
Support custom queries in daos
2019-06-29 15:51:23 +02:00
Simon Binder
1ea1c12592
Make the dao generator use the same logic as the main one
2019-06-29 15:43:41 +02:00
Simon Binder
7becfdcb85
Don't use the MoorGenerator as a god class
2019-06-29 15:34:27 +02:00
Simon Binder
53d57d6a96
Refactor generator: Extract common operations
2019-06-29 15:23:14 +02:00
Simon Binder
33682a0ad1
Write readsFrom field for custom queries
2019-06-29 14:04:01 +02:00
Simon Binder
d930664581
Escape strings before writing dart literals
2019-06-29 13:55:13 +02:00
Simon Binder
646987ad69
Correctly write variables in analyzed queries
2019-06-29 13:47:33 +02:00
Simon Binder
2a8edbde0d
Write implementation methods for queries
2019-06-29 11:23:06 +02:00
Simon Binder
40a4ebdadf
Started to integrate the sqlparser into moor generator
2019-06-28 23:41:27 +02:00
Simon Binder
1d36e3316d
Merge branch 'delightful-queries' into develop
2019-06-22 19:02:57 +02:00
Simon Binder
151c374bfe
Fix outdated use of Value.use() in generated code
2019-06-21 21:07:06 +02:00
Simon Binder
62c5106e7d
Migrate tests to companion
2019-06-21 20:29:42 +02:00
Simon Binder
0616fb7082
Migrate to update companions everywhere :)
2019-06-21 20:08:42 +02:00
Simon Binder
0abc3993f4
Fully migrate to new update companions
2019-06-21 19:48:18 +02:00
Simon Binder
eee11d53d3
Start to migrate verification logic with update companions
2019-06-21 10:48:42 +02:00
Simon Binder
ecf6740cb7
Constraints on type parameters for data classes
2019-06-21 10:27:14 +02:00
Simon Binder
6ac9109c0a
Fix dead code in generated update companions
2019-06-21 09:44:38 +02:00
Simon Binder
b79611e6e0
Backwards compatibility: Use DataClasses as companion
2019-06-21 09:42:42 +02:00
Simon Binder
ec2592203c
Generate update companions for data classes
2019-06-21 09:16:22 +02:00
Simon Binder
2a5ede1c04
Merge branch 'develop' into delightful-queries
2019-06-16 14:52:49 +02:00
Simon Binder
5fc921aefc
Provide detailed error messages for inconsistent data
2019-06-16 14:44:43 +02:00
Simon Binder
52f3ee045f
Extract sql parser to yet another subpackage
2019-06-15 23:01:10 +02:00
Simon Binder
c297b27f60
Scan identifiers
2019-06-15 15:16:58 +02:00
Simon Binder
cafaafe2eb
Start with new custom scanner
2019-06-15 15:16:57 +02:00
Simon Binder
69f0b9b393
Begin with simple ast and parser
2019-06-15 15:16:48 +02:00
Simon Binder
87e39c7ad4
Add an option to generate fromJsonString factories
2019-06-09 22:58:06 +02:00
Simon Binder
f87472e980
Enable and enforce curly brace for control flow lint
2019-06-09 12:30:12 +02:00
Simon Binder
a1241bab1d
Version 1.4
...
More configurable serialization logic, type for floating point values
2019-06-09 12:27:24 +02:00
Simon Binder
9241bbccc1
Better integration of floating-point values
2019-06-08 15:04:49 +02:00
Simon Binder
02b646524c
Upgrade dependencies
2019-06-05 21:12:23 +02:00
Simon Binder
8cc2c21c9a
Annotation to change the generated json key
2019-06-04 22:04:21 +02:00
Simon Binder
dc0b0e086d
Change email in pubspec
2019-05-29 19:43:21 +02:00
Simon Binder
023c055e44
Implement new serialization api in generated classes
2019-05-23 19:17:47 +02:00
Simon Binder
5db9a5f87d
Actually use the real type, add parent for data classes
2019-05-17 21:25:02 +02:00
Simon Binder
f83781d250
Add links to custom homepage in pubspec.yaml
2019-05-12 10:58:07 +02:00
Simon Binder
b2345a9f28
Add real datatype for numeric values
2019-05-12 10:53:00 +02:00
Simon Binder
766e5fbbdb
Raise SDK dependencies
2019-05-09 11:30:14 +02:00
Simon Binder
12d510e78f
Explain deprecated member use of "elements2"
2019-05-06 20:42:18 +02:00
Simon Binder
cd520e5d1e
Fix syntax error in generated code with empty primary key
2019-04-29 18:25:03 +02:00
Simon Binder
ea776f8637
Update docs for 1.3
2019-04-20 16:25:55 +02:00
Simon Binder
165693d635
Smaller readme improvement
2019-04-14 16:58:05 +02:00
Simon Binder
091eff1c4e
Merge branch 'master' into develop
...
# Conflicts:
# moor_generator/pubspec.yaml
2019-04-14 16:51:37 +02:00
Simon Binder
1bb4fe4aab
Changelog for version 1.3.0
2019-04-14 16:47:15 +02:00
Simon Binder
825867d949
Upgrade dependencies
2019-04-14 16:29:24 +02:00
Simon Binder
f28eb13b4c
Fix hashcodes, document joins
2019-04-06 13:11:49 +02:00
Simon Binder
ab5ac57778
Use jenkins hash
2019-04-05 17:47:51 +02:00