-
-
Notifications
You must be signed in to change notification settings - Fork 525
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[sqflite_ffi_async] get more pub points
- Loading branch information
1 parent
5794cd0
commit 9406831
Showing
9 changed files
with
164 additions
and
45 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,4 +1,4 @@ | ||
## 0.1.1 | ||
## 0.1.1+1 | ||
|
||
- Allow concurrent read. | ||
|
||
|
124 changes: 101 additions & 23 deletions
124
packages/sqflite_common_ffi_async/analysis_options.yaml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,30 +1,108 @@ | ||
# This file configures the static analysis results for your project (errors, | ||
# warnings, and lints). | ||
include: package:lints/recommended.yaml | ||
|
||
# Until there are meta linter rules, each desired lint must be explicitly enabled. | ||
# See: https://github.com/dart-lang/linter/issues/288 | ||
# | ||
# This enables the 'recommended' set of lints from `package:lints`. | ||
# This set helps identify many issues that may lead to problems when running | ||
# or consuming Dart code, and enforces writing Dart using a single, idiomatic | ||
# style and format. | ||
# For a list of lints, see: http://dart-lang.github.io/linter/lints/ | ||
# See the configuration guide for more | ||
# https://github.com/dart-lang/sdk/tree/master/pkg/analyzer#configuring-the-analyzer | ||
# | ||
# If you want a smaller set of lints you can change this to specify | ||
# 'package:lints/core.yaml'. These are just the most critical lints | ||
# (the recommended set includes the core lints). | ||
# The core lints are also what is used by pub.dev for scoring packages. | ||
|
||
include: package:lints/recommended.yaml | ||
# NOTE: Please keep this file in sync with | ||
# https://github.com/flutter/flutter/blob/master/analysis_options.yaml | ||
|
||
# Uncomment the following section to specify additional rules. | ||
analyzer: | ||
# Strong mode is sometimes harder to keep | ||
language: | ||
strict-casts: true | ||
strict-inference: true | ||
|
||
# linter: | ||
# rules: | ||
# - camel_case_types | ||
errors: | ||
# treat missing required parameters as a warning (not a hint) | ||
missing_required_param: warning | ||
# treat missing returns as a warning (not a hint) | ||
missing_return: warning | ||
# allow having TODOs in the code | ||
todo: ignore | ||
# Ignore errors like | ||
# 'super_goes_last' is a deprecated lint rule and should not be used • included_file_warning | ||
included_file_warning: ignore | ||
|
||
# analyzer: | ||
# exclude: | ||
# - path/to/excluded/files/** | ||
linter: | ||
rules: | ||
- always_declare_return_types | ||
- avoid_dynamic_calls | ||
- avoid_empty_else | ||
- avoid_relative_lib_imports | ||
- avoid_shadowing_type_parameters | ||
- avoid_slow_async_io | ||
- avoid_types_as_parameter_names | ||
- await_only_futures | ||
- camel_case_extensions | ||
- camel_case_types | ||
- cancel_subscriptions | ||
- curly_braces_in_flow_control_structures | ||
# - depend_on_referenced_packages | ||
- directives_ordering | ||
- empty_catches | ||
- hash_and_equals | ||
- collection_methods_unrelated_type | ||
- no_adjacent_strings_in_list | ||
- no_duplicate_case_values | ||
- non_constant_identifier_names | ||
- omit_local_variable_types | ||
- package_api_docs | ||
- package_prefixed_library_names | ||
- prefer_generic_function_type_aliases | ||
- prefer_is_empty | ||
- prefer_is_not_empty | ||
- prefer_iterable_whereType | ||
- prefer_single_quotes | ||
- prefer_typing_uninitialized_variables | ||
- sort_child_properties_last | ||
- test_types_in_equals | ||
- throw_in_finally | ||
- unawaited_futures | ||
- unnecessary_null_aware_assignments | ||
- unnecessary_statements | ||
- unrelated_type_equality_checks | ||
- unsafe_html | ||
- use_full_hex_values_for_flutter_colors | ||
- valid_regexps | ||
|
||
# For more information about the core and recommended set of lints, see | ||
# https://dart.dev/go/core-lints | ||
- constant_identifier_names | ||
- control_flow_in_finally | ||
- empty_statements | ||
- implementation_imports | ||
- overridden_fields | ||
- package_names | ||
- prefer_const_constructors | ||
- prefer_initializing_formals | ||
- prefer_void_to_null | ||
# | ||
- annotate_overrides | ||
- avoid_init_to_null | ||
- avoid_null_checks_in_equality_operators | ||
- avoid_return_types_on_setters | ||
- empty_constructor_bodies | ||
- library_names | ||
- library_prefixes | ||
- prefer_adjacent_string_concatenation | ||
- prefer_collection_literals | ||
- prefer_contains | ||
- slash_for_doc_comments | ||
- type_init_formals | ||
- unnecessary_const | ||
- unnecessary_new | ||
- unnecessary_null_in_if_null_operators | ||
- use_rethrow_when_possible | ||
|
||
# For additional information about configuring this file, see | ||
# https://dart.dev/guides/language/analysis-options | ||
- dangling_library_doc_comments | ||
- deprecated_member_use_from_same_package | ||
- implicit_reopen | ||
- invalid_case_patterns | ||
- no_literal_bool_comparisons | ||
- no_self_assignments | ||
- no_wildcard_variable_uses | ||
- type_literal_in_constant_pattern | ||
# === doc rules === | ||
- public_member_api_docs |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,23 @@ | ||
import 'package:sqflite_common_ffi/sqflite_ffi.dart'; | ||
import 'package:sqflite_common_ffi_async/sqflite_ffi_async.dart'; | ||
|
||
Future main() async { | ||
// Init ffi loader if needed. | ||
sqfliteFfiInit(); | ||
|
||
var databaseFactory = databaseFactoryFfiAsync; | ||
var db = await databaseFactory.openDatabase('example.db'); | ||
await db.execute(''' | ||
CREATE TABLE Product ( | ||
id INTEGER PRIMARY KEY, | ||
title TEXT | ||
) | ||
'''); | ||
await db.insert('Product', <String, Object?>{'title': 'Product 1'}); | ||
await db.insert('Product', <String, Object?>{'title': 'Product 1'}); | ||
|
||
var result = await db.query('Product'); | ||
print(result); | ||
// prints [{id: 1, title: Product 1}, {id: 2, title: Product 1}] | ||
await db.close(); | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,6 +1,7 @@ | ||
/// sqflite on top of sqlite_async | ||
library; | ||
|
||
export 'package:sqflite_common/sqflite.dart'; | ||
|
||
export 'src/platform.dart' | ||
show databaseFactoryFfiAsync, databaseFactoryFfiAsyncTest; | ||
export 'package:sqflite_common/sqflite.dart'; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,14 +1,14 @@ | ||
// ignore_for_file: depend_on_referenced_packages | ||
|
||
export 'package:sqflite_common/src/batch.dart'; | ||
export 'package:sqflite_common/src/constant.dart'; | ||
export 'package:sqflite_common/src/cursor.dart'; | ||
export 'package:sqflite_common/src/database.dart'; | ||
export 'package:sqflite_common/src/database_mixin.dart'; | ||
export 'package:sqflite_common/src/factory_mixin.dart'; | ||
export 'package:sqflite_common/src/dev_utils.dart'; | ||
export 'package:sqflite_common/src/exception.dart'; | ||
export 'package:sqflite_common/src/constant.dart'; | ||
export 'package:sqflite_common/src/factory_mixin.dart'; | ||
export 'package:sqflite_common/src/internals.dart'; | ||
export 'package:sqflite_common/src/sql_command.dart'; | ||
export 'package:sqflite_common/src/transaction.dart'; | ||
export 'package:sqflite_common_ffi/src/mixin/handler_mixin.dart'; | ||
export 'package:sqflite_common/src/dev_utils.dart'; | ||
export 'package:sqflite_common/src/batch.dart'; | ||
export 'package:sqflite_common/src/cursor.dart'; | ||
export 'package:sqflite_common/src/sql_command.dart'; | ||
export 'package:sqflite_common/src/internals.dart'; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
7 changes: 7 additions & 0 deletions
7
packages/sqflite_common_ffi_async/lib/src/sqflite_ffi_async_transaction.dart
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,13 +1,20 @@ | ||
import 'package:sqflite_common_ffi_async/src/import.dart'; | ||
import 'package:sqlite_async/sqlite_async.dart' as sqlite_async; | ||
|
||
/// Write transaction. | ||
class SqfliteFfiAsyncTransaction extends SqfliteTransaction { | ||
/// Write context. | ||
final sqlite_async.SqliteWriteContext writeContext; | ||
|
||
/// Write transaction. | ||
SqfliteFfiAsyncTransaction(super.database, this.writeContext); | ||
} | ||
|
||
/// Read transaction. | ||
class SqfliteFfiAsyncReadTransaction extends SqfliteTransaction { | ||
/// Read context. | ||
final sqlite_async.SqliteReadContext readContext; | ||
|
||
/// Read transaction. | ||
SqfliteFfiAsyncReadTransaction(super.database, this.readContext); | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters