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