This enables the use of database encryption with SQLCipher. It also includes a refactor into two new packages, powersync_core (Dart only) and powersync_sqlcipher in order to achieve this.
powersync_core includes all of the original powersync setup and functionality and exports it for the other packages to use.
powersync_core is now used by powersync which is a thin package that depends on sqlite3_flutter_libs for Flutter projects
powersync_core is also used by powersync_sqlcipher which is a thin package that depends on sqlcipher_flutter_libs.
powersync_attachments_helper also depends on powersync_core for its basic functionality.
The reason for this refactor is so that we can make PowerSync compatible with both Dart and Flutter apps. It also allows us to enable encryption for users who can now install and import powersync_sqlcipher. Finally, it maintains the original PowerSync API for users using powersync.
Description
This enables the use of database encryption with SQLCipher. It also includes a refactor into two new packages,
powersync_core
(Dart only) andpowersync_sqlcipher
in order to achieve this.powersync_core
includes all of the originalpowersync
setup and functionality and exports it for the other packages to use.powersync_core
is now used bypowersync
which is a thin package that depends onsqlite3_flutter_libs
for Flutter projectspowersync_core
is also used bypowersync_sqlcipher
which is a thin package that depends onsqlcipher_flutter_libs
.powersync_attachments_helper
also depends onpowersync_core
for its basic functionality.The reason for this refactor is so that we can make
PowerSync
compatible with both Dart and Flutter apps. It also allows us to enable encryption for users who can now install and importpowersync_sqlcipher
. Finally, it maintains the original PowerSync API for users usingpowersync
.TODO