Commit Graph

450 Commits

Author SHA1 Message Date
Simon Binder 0f2ff8c97a
Implicitly create type converters for enums, Dart api (#478) 2020-05-12 21:47:11 +02:00
Simon Binder 04f24d3184
Ignore broken offset calculation for autocomplete 2020-05-12 13:38:28 +02:00
Simon Binder 254a54e9b6
Fix crash in analyzer plugin 2020-05-09 16:55:54 +02:00
Simon Binder 44bd89e47a
Don't throw when resolving types outside of the build analyzer
We still can't resolve the actual type, but at least we don't crash
now.
As we don't read the type of converters in the plugin or CLI, this
fixes #550
2020-05-08 21:43:36 +02:00
Simon Binder 0af49dd6df
Bring back the toCompanion method for data classes (#257) 2020-05-08 20:53:58 +02:00
Simon Binder c8935b0518
Respect foreign key constraints for stream query propagation (#528) 2020-05-06 22:55:38 +02:00
Simon Binder 8b6abd7140
Move referenced table finder to sqlparser package (#537) 2020-05-04 22:00:41 +02:00
Simon Binder 0a30b8a12e
Upgrade integration tests, release sqlparser 0.8 2020-05-03 13:28:34 +02:00
Simon Binder d3c4eac166
First release preparation for moor 3.0 2020-05-02 14:50:04 +02:00
Simon Binder 84bac1bf1d
Initial support for sql expressions in companions 2020-04-17 20:48:22 +02:00
Simon Binder 62a363105a
Refactor Insertables to avoid covariant parameters 2020-04-17 18:02:05 +02:00
Simon Binder 9a78604d98
Fix issues with new inference, enable it by default 2020-04-16 19:07:30 +02:00
Simon Binder 72e65611a7
Respect transitive imports when resolving moor converters
Might fix an error discovered in #482
2020-04-09 22:28:40 +02:00
Simon Binder 402b2f0d45
Merge pull request #474 from North101/develop
Fix weird behaviour with nested results
2020-04-05 14:21:42 +02:00
Simon Binder e90607c6da
Fix reading primaryKeys for tables in moor repo 2020-04-05 14:17:25 +02:00
Alexander Wilde 6eeaa88f67 Fix weird behaviour with nested results 2020-04-05 13:15:34 +01:00
Simon Binder 8bddb7c2c5
Skip null columns in Dart parser (#471) 2020-04-05 13:50:44 +02:00
Simon Binder 2c511d3ad4
Reformat sql_query class, reword docs 2020-04-04 13:07:17 +02:00
Simon Binder edc9029ece
Test linter behavior on nested columns 2020-04-04 13:01:40 +02:00
Simon Binder 4d56b861e4
Merge branch 'develop' of gh:simolus3/moor into develop 2020-04-04 11:51:45 +02:00
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