Commit Graph

302 Commits

Author SHA1 Message Date
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 082de160bc
Start to write changelog for the next version 2019-09-14 21:54:16 +02:00
Simon Binder 928c9832b5
Move ffi bindings into new moor_ffi package 2019-09-14 20:54:13 +02:00
Simon Binder 9e498fb575
Merge branch 'ffi' into develop
# Conflicts:
#	moor/lib/src/runtime/executor/helpers/engines.dart
2019-09-14 19:23:37 +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 29c0cdaf3f
Write integration test for Dart templates 2019-09-14 16:48:51 +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 f7ade2b7b6
Explain why we have more than one primaryKey override 2019-09-13 21:25:14 +02:00
Simon Binder 456392333d
Remove InsertStatement.insertOrReplace 2019-09-13 21:12:51 +02:00
Simon Binder e9225cf759
Always generate private watch methods 2019-09-13 21:11:17 +02:00
Simon Binder 138652fdc4
Remove DiffUtil and MoorAnimatedList 2019-09-13 21:06:11 +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 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 1130101f1f
Support writing string literals from Constant<String>
Fixes #137
2019-09-06 22:37:15 +02:00
Simon Binder b87a606fb8
Merge branch 'master' into develop 2019-09-05 10:35:07 +02:00
Simon Binder 6993b26532
Release 1.7.2 of moor
Fixed a bug where databases where not opened properly.
2019-09-04 22:19:20 +02:00
Simon Binder 81986d2010
Remove debug logs used to fix the opening problem 2019-09-04 22:11:48 +02:00
Simon Binder a17ad13542
Report more errors when database is opened 2019-09-04 21:20:09 +02:00
Simon Binder 3c56e0ad6e
Fix race condition in database opening 2019-09-04 18:38:55 +02:00
Simon Binder 1bbc26767e
Assert that the database is not opened multiple times. 2019-09-04 16:13:37 +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 4af370f0cb
Tests: Verify that an executor is open when used. 2019-08-30 19:32:44 +02:00
Simon Binder 0ef56d6163
Use doWhenOpened for custom updates and inserts 2019-08-30 09:16:55 +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 a4b256f8a5
Support custom insert statements at runtime 2019-08-29 15:52:29 +02:00
Simon Binder 4e83c0275b
Generate constructor for companions with @required fields 2019-08-29 13:54:08 +02:00
Simon Binder 78bb23a7d1
Raise SDK constraints to 2.5.0 for FFI version 2019-08-28 17:46:52 +02:00
Simon Binder 03a35ae9cd
Port ffi example to updated structs / pointer api 2019-08-28 16:57:25 +02:00
Simon Binder b1e215b8d3
Merge branch 'develop' into ffi 2019-08-28 15:36:10 +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 fc6c9857bb
Add example project to play around with the AS plugin 2019-08-26 21:11:50 +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 b1e6d931d5
Prepare release 1.7.1 2019-08-25 22:44:28 +02:00
Simon Binder ca76746000
Better explain how `getSingle` and `watchSingle` works. 2019-08-24 18:03:53 +02:00
Simon Binder 89f3987e6b
Fix generation of PRIMARY KEY constraint on int column 2019-08-23 23:07:31 +02:00
Simon Binder 77e444b13b
Verify that INTEGER PRIMARY KEY accepts absent values
Verifies that #112 is fixed
2019-08-23 22:57:16 +02:00
Simon Binder 397d3f2383
Support absent values on INTEGER PRIMARY KEY 2019-08-23 22:50:15 +02:00
Simon Binder 3e290188dc
Use explicit pedantic dependency in moor 2019-08-22 13:46:43 +02:00
Simon Binder e38719a194
Write changelogs, prepare release 1.7 2019-08-22 12:27:39 +02:00
Simon Binder a2c7b14862
Introduce flag to generate private watch methods 2019-08-19 19:04:15 +02:00
Simon Binder 17aabbe446
Ensure BoolType maps null values correctly
Fixes #106
2019-08-19 16:16:34 +02:00
Simon Binder b26baddd01
Fix some docs, make isOpen lookup faster 2019-08-17 18:25:56 +02:00
Simon Binder 8b28c957b8
Merge branch 'develop' into ffi 2019-08-16 15:20:41 +02:00
Simon Binder cdb231e1ae
Update test case for custom queries
We now use an explicit index when expanding arrays
2019-08-16 15:08:07 +02:00
Simon Binder 4ce9e12c0e
Write copyWith methods in companion classes
Fixes #102
2019-08-16 15:01:03 +02:00
Simon Binder 7d89f12aa7
Use explicit indices for array parameters 2019-08-15 21:26:27 +02:00
Simon Binder cd67773157
Document how using named() will not affect generated json 2019-08-13 09:11:03 +02:00
Simon Binder b58c200b21
Merge branch 'develop' into ffi 2019-08-08 19:22:54 +02:00
Simon Binder aa6fea6caa
Fix wrong double primary key on generated tables 2019-08-01 20:14:42 +02:00
Simon Binder 70033b0bde
Merge branch 'develop' into ffi
# Conflicts:
#	moor/lib/src/runtime/database.dart
#	moor/lib/src/runtime/executor/executor.dart
2019-07-31 20:49:15 +02:00
Simon Binder a4bfda494d
Add integration tests for transactions
Also fixes some bugs on the way
2019-07-31 20:47:58 +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 635b902352
Add test case without any additional constraints 2019-07-30 10:33:32 +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 b48970d9ef
Fixes related to the new dialects feature 2019-07-29 15:46:00 +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 5ddcd17c21
Scaffold the package layout of a future analyzer plugin 2019-07-29 10:27:50 +02:00
Simon Binder 7a9cafb02f
Deprecate diff utils, MoorAnimatedList 2019-07-28 14:45:36 +02:00
Simon Binder 7f79fd922b
Provide information about the sql dialect at runtime 2019-07-28 14:21:39 +02:00
Simon Binder 94a9b9e2bc
Document type converters feature 2019-07-28 13:44:25 +02:00
Simon Binder 7cddf6f5d7
Provide coverage upload token variable 2019-07-28 11:08:39 +02:00
Simon Binder 053d4280fc
Only format coverage once 2019-07-28 10:38:18 +02:00
Simon Binder 47a032c645
Move coverage uploading into same Cirrus task 2019-07-28 10:32:31 +02:00
Simon Binder 4c7874dd91
Test and coverage the sql parser 2019-07-28 09:49:14 +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 21956a6b48
Use variables instead of failing to write string literals
Fixes #88
2019-07-26 09:25:55 +02:00
Simon Binder 4bf58cb83b
API to close databases, integration test that saves data 2019-07-25 17:04:32 +02:00
Simon Binder fdbffa47fc
Integration tests for the web backend 2019-07-24 23:32:45 +02:00
Simon Binder 05b84a21ef
Merge branch 'develop' into ffi 2019-07-24 22:14:46 +02:00
Simon Binder a7395ba83d
Write integration tests, sort of run them in Flutter 2019-07-24 22:14:02 +02:00
Simon Binder 5f8ab42189
Start to work on MySQL example 2019-07-23 22:16:21 +02:00
Simon Binder 5b7ffb3dbf
Merge branch 'develop' into ffi 2019-07-23 09:36:11 +02:00
Simon Binder e46a8d84d5
Fix failing transaction test
Not completing is excepted behavior now
2019-07-23 09:13:31 +02:00
Simon Binder b3d381afe6
Rollback transactions when callback throws
Closes #83
2019-07-23 09:06:02 +02:00
Simon Binder 147499c1f7
Ability to rollback transactions 2019-07-23 08:49:51 +02:00
Simon Binder e36fe84480
Merge branch 'develop' into ffi
# Conflicts:
#	moor/lib/src/runtime/executor/helpers/engines.dart
#	moor/lib/src/web/web_db.dart
2019-07-22 13:06:24 +02:00
Simon Binder 2ee548e5d8
Implement the web database with the new backends api 2019-07-22 12:47:18 +02:00
Simon Binder 56f8e447bd
Migrate VM database to use the new delegate api 2019-07-22 12:11:38 +02:00
Simon Binder 2500e5ff20
Merge branch 'develop' into ffi
# Conflicts:
#	moor_flutter/lib/moor_flutter.dart
2019-07-22 11:32:07 +02:00
Simon Binder 48f87330d6
New API to create custom backends easier
Also ported the Flutter backend to that API
2019-07-22 11:30:39 +02:00
Simon Binder 4b9cd084b5
VM: transactions and before open callback 2019-07-20 22:55:27 +02:00
Simon Binder eb0edb8ac0
Merge branch 'develop' into ffi 2019-07-20 22:32:53 +02:00
Simon Binder 37cba6971c
Attempt to fix coverage collection 2019-07-20 22:15:52 +02:00
Simon Binder 7229002383
Integration test for the Dart VM 2019-07-20 20:50:09 +02:00
Simon Binder e9cba8d600
Type fixes for ffi 2019-07-20 19:30:47 +02:00
Simon Binder e00f7bfa29
Use our own sqlite api instead of Dart example 2019-07-20 17:20:47 +02:00
Simon Binder 5dde293015
Start with primitive VM implementation 2019-07-20 11:56:56 +02:00