chore: unify desktop and mobile databases (#764)

* chore: unify desktop and mobile databases

- migrate `package:sqflite_flutter` to `sqlcipher_flutter_libs`
- use FFI for all SQLite operations
- use `SQfLiteEncryptionHelper` for database encryption
- enforce encryption for new SQLite datbase implementation
- migrate existing SQLite databases
 - encrypt unencrypted ones
 - migrate database locations to unified approach
- drop dependency on sqlite

Signed-off-by: The one with the braid <info@braid.business>

* chore: add sqlcipher to macos CI

Signed-off-by: The one with the braid <info@braid.business>

---------

Signed-off-by: The one with the braid <info@braid.business>
This commit is contained in:
The one with the braid (she/her) | Dфҿ mit dem Zopf (sie/ihr) 2024-03-29 15:47:11 +01:00 committed by GitHub
commit 3c532f90ba
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
16 changed files with 207 additions and 125 deletions

View file

@ -69,6 +69,7 @@ dependencies:
native_imaging: ^0.1.0
package_info_plus: ^5.0.1
pasteboard: ^0.2.0
path: ^1.9.0
path_provider: ^2.0.9
permission_handler: ^11.0.1
pretty_qr_code: ^3.2.1
@ -81,9 +82,8 @@ dependencies:
share_plus: ^7.2.1
shared_preferences: ^2.2.0 # Pinned because https://github.com/flutter/flutter/issues/118401
slugify: ^2.0.0
sqflite: ^2.3.0
sqflite_common_ffi: ^2.3.0+4
sqflite_sqlcipher: ^2.2.1
sqlcipher_flutter_libs: ^0.6.0
swipe_to_action: ^0.2.0
tor_detector_web: ^1.1.0
uni_links: ^0.5.1