Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feat: PowerSync encryption with SQLCipher #194

Merged
merged 41 commits into from
Nov 12, 2024
Merged
Show file tree
Hide file tree
Changes from 14 commits
Commits
Show all changes
41 commits
Select commit Hold shift + click to select a range
75c9792
Setup powersync core
mugikhan Oct 15, 2024
22562ab
Merge branch 'main' into feat/powersync-sqlcipher
mugikhan Oct 16, 2024
0266f78
Fix tests running in core
mugikhan Oct 16, 2024
65f4f35
Move setup web script to core
mugikhan Oct 16, 2024
78e7f03
Remove dependencies from powersync
mugikhan Oct 16, 2024
4b2a88d
Add back lints dev dependency to powersync
mugikhan Oct 16, 2024
b75cfb9
- Working sqlcipher factory with tests
mugikhan Oct 16, 2024
7a870d5
Download dynamic library for sqlciper tests
mugikhan Oct 16, 2024
52cafa6
Remove sqlcipher tests
mugikhan Oct 17, 2024
ee88681
Clean up versions
mugikhan Oct 17, 2024
12baad3
Cleanup print statement
mugikhan Oct 17, 2024
7a88bfd
Cleanup powersync export
mugikhan Oct 17, 2024
3b70e71
Update locked versions
mugikhan Oct 17, 2024
ef78f4c
Add license and notice
mugikhan Oct 17, 2024
6d860ab
Merge branch 'main' into feat/powersync-sqlcipher
mugikhan Oct 18, 2024
a6cc4b8
Update pubspec.lock
mugikhan Oct 18, 2024
5871e7e
Move setup_web script back to powersync
mugikhan Oct 18, 2024
63e6c42
Fix tests
mugikhan Oct 18, 2024
fdf478c
Update readme and dependencies
mugikhan Oct 18, 2024
bcbebe9
Copy powersync_db_worker to powersync_core for tests
mugikhan Oct 18, 2024
21f4205
Update READMEs
mugikhan Oct 18, 2024
82777ae
Update readme
mugikhan Oct 18, 2024
61942ea
Merge branch 'main' into feat/powersync-sqlcipher
mugikhan Oct 22, 2024
1774378
Update readme
mugikhan Oct 23, 2024
d4f159f
Readme polish
benitav Oct 29, 2024
0e0b170
More polish
benitav Oct 29, 2024
4b4f4e9
Explainer of the 3 SDKs, MySQL updates
benitav Oct 29, 2024
2d6f81a
Merge branch 'main' into feat/powersync-sqlcipher
benitav Oct 29, 2024
deaed88
Merge branch 'main' into feat/powersync-sqlcipher
mugikhan Nov 5, 2024
dbc312a
Update readme and lower initial release versions
mugikhan Nov 5, 2024
5a6ac7a
Merge branch 'main' into feat/powersync-sqlcipher
mugikhan Nov 5, 2024
9ad3065
Merge branch 'main' into feat/powersync-sqlcipher
mugikhan Nov 11, 2024
5888444
Improve dart demo
mugikhan Nov 11, 2024
8e6ad27
Fix changelog versions
mugikhan Nov 11, 2024
18cad56
Fix sed command for build numbers
mugikhan Nov 11, 2024
cc21ff9
Merge branch 'main' into feat/powersync-sqlcipher
mugikhan Nov 11, 2024
19457da
Update packages/powersync/README.md
mugikhan Nov 12, 2024
e1ba4a4
Fix preCommit version script
mugikhan Nov 12, 2024
8dafdae
New user agent based on core package
mugikhan Nov 12, 2024
b05b705
chore(release): publish packages
mugikhan Nov 12, 2024
d2684cd
Trigger publish on new packages
mugikhan Nov 12, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions demos/django-todolist/pubspec.lock
Original file line number Diff line number Diff line change
Expand Up @@ -311,6 +311,13 @@ packages:
relative: true
source: path
version: "1.8.6"
powersync_core:
dependency: "direct overridden"
description:
path: "../../packages/powersync_core"
relative: true
source: path
version: "0.1.0"
powersync_flutter_libs:
dependency: "direct overridden"
description:
Expand Down
7 changes: 7 additions & 0 deletions demos/supabase-anonymous-auth/pubspec.lock
Original file line number Diff line number Diff line change
Expand Up @@ -367,6 +367,13 @@ packages:
relative: true
source: path
version: "1.8.6"
powersync_core:
dependency: "direct overridden"
description:
path: "../../packages/powersync_core"
relative: true
source: path
version: "0.1.0"
powersync_flutter_libs:
dependency: "direct overridden"
description:
Expand Down
7 changes: 7 additions & 0 deletions demos/supabase-edge-function-auth/pubspec.lock
Original file line number Diff line number Diff line change
Expand Up @@ -391,6 +391,13 @@ packages:
relative: true
source: path
version: "1.8.6"
powersync_core:
dependency: "direct overridden"
description:
path: "../../packages/powersync_core"
relative: true
source: path
version: "0.1.0"
powersync_flutter_libs:
dependency: "direct overridden"
description:
Expand Down
7 changes: 7 additions & 0 deletions demos/supabase-simple-chat/pubspec.lock
Original file line number Diff line number Diff line change
Expand Up @@ -407,6 +407,13 @@ packages:
relative: true
source: path
version: "1.8.6"
powersync_core:
dependency: "direct overridden"
description:
path: "../../packages/powersync_core"
relative: true
source: path
version: "0.1.0"
powersync_flutter_libs:
dependency: "direct overridden"
description:
Expand Down
7 changes: 7 additions & 0 deletions demos/supabase-todolist-drift/pubspec.lock
Original file line number Diff line number Diff line change
Expand Up @@ -694,6 +694,13 @@ packages:
relative: true
source: path
version: "0.6.10"
powersync_core:
dependency: "direct overridden"
description:
path: "../../packages/powersync_core"
relative: true
source: path
version: "0.1.0"
powersync_flutter_libs:
dependency: "direct overridden"
description:
Expand Down
7 changes: 7 additions & 0 deletions demos/supabase-todolist-optional-sync/pubspec.lock
Original file line number Diff line number Diff line change
Expand Up @@ -471,6 +471,13 @@ packages:
relative: true
source: path
version: "1.8.6"
powersync_core:
dependency: "direct overridden"
description:
path: "../../packages/powersync_core"
relative: true
source: path
version: "0.1.0"
powersync_flutter_libs:
dependency: "direct overridden"
description:
Expand Down
70 changes: 35 additions & 35 deletions demos/supabase-todolist/ios/Runner.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
97C146FC1CF9000F007C117D /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FA1CF9000F007C117D /* Main.storyboard */; };
97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FD1CF9000F007C117D /* Assets.xcassets */; };
97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */; };
B2C70762C97CE3E3CEB912CB /* Pods_Runner.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7B9CC0EA1BA15CD3CCAD0356 /* Pods_Runner.framework */; };
FE22D026B50D91C63EC1E548 /* Pods_Runner.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3246A2C54ACF47297A0D9A97 /* Pods_Runner.framework */; };
/* End PBXBuildFile section */

/* Begin PBXCopyFilesBuildPhase section */
Expand All @@ -32,35 +32,43 @@
/* Begin PBXFileReference section */
1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GeneratedPluginRegistrant.h; sourceTree = "<group>"; };
1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GeneratedPluginRegistrant.m; sourceTree = "<group>"; };
15764CEB058B2B69D5E35280 /* Pods-Runner.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.profile.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.profile.xcconfig"; sourceTree = "<group>"; };
3153F415177CAE497AE7D235 /* Pods-Runner.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.debug.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig"; sourceTree = "<group>"; };
1AC6D6834A180EC866A1A907 /* Pods-Runner.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.release.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig"; sourceTree = "<group>"; };
3246A2C54ACF47297A0D9A97 /* Pods_Runner.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Runner.framework; sourceTree = BUILT_PRODUCTS_DIR; };
3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = AppFrameworkInfo.plist; path = Flutter/AppFrameworkInfo.plist; sourceTree = "<group>"; };
74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Runner-Bridging-Header.h"; sourceTree = "<group>"; };
74858FAE1ED2DC5600515810 /* AppDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = "<group>"; };
7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Release.xcconfig; path = Flutter/Release.xcconfig; sourceTree = "<group>"; };
7B9CC0EA1BA15CD3CCAD0356 /* Pods_Runner.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Runner.framework; sourceTree = BUILT_PRODUCTS_DIR; };
7F544BD3701C5CF77F2FF87F /* Pods-Runner.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.profile.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.profile.xcconfig"; sourceTree = "<group>"; };
9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Debug.xcconfig; path = Flutter/Debug.xcconfig; sourceTree = "<group>"; };
9740EEB31CF90195004384FC /* Generated.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Generated.xcconfig; path = Flutter/Generated.xcconfig; sourceTree = "<group>"; };
97C146EE1CF9000F007C117D /* Runner.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Runner.app; sourceTree = BUILT_PRODUCTS_DIR; };
97C146FB1CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = "<group>"; };
97C146FD1CF9000F007C117D /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; };
97C147001CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = "<group>"; };
97C147021CF9000F007C117D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
CDF8C9971FE1B0CF3262ED53 /* Pods-Runner.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.release.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig"; sourceTree = "<group>"; };
F866E203CA1A8E0C6D9ABA5C /* Pods-Runner.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.debug.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig"; sourceTree = "<group>"; };
/* End PBXFileReference section */

/* Begin PBXFrameworksBuildPhase section */
97C146EB1CF9000F007C117D /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
B2C70762C97CE3E3CEB912CB /* Pods_Runner.framework in Frameworks */,
FE22D026B50D91C63EC1E548 /* Pods_Runner.framework in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXFrameworksBuildPhase section */

/* Begin PBXGroup section */
114FDDDC75E03531AE956759 /* Frameworks */ = {
isa = PBXGroup;
children = (
3246A2C54ACF47297A0D9A97 /* Pods_Runner.framework */,
);
name = Frameworks;
sourceTree = "<group>";
};
9740EEB11CF90186004384FC /* Flutter */ = {
isa = PBXGroup;
children = (
Expand All @@ -79,7 +87,7 @@
97C146F01CF9000F007C117D /* Runner */,
97C146EF1CF9000F007C117D /* Products */,
A151B04DC3D1415EEF784588 /* Pods */,
C1E97B63847FB6B811E12FEA /* Frameworks */,
114FDDDC75E03531AE956759 /* Frameworks */,
);
sourceTree = "<group>";
};
Expand Down Expand Up @@ -109,36 +117,28 @@
A151B04DC3D1415EEF784588 /* Pods */ = {
isa = PBXGroup;
children = (
3153F415177CAE497AE7D235 /* Pods-Runner.debug.xcconfig */,
CDF8C9971FE1B0CF3262ED53 /* Pods-Runner.release.xcconfig */,
15764CEB058B2B69D5E35280 /* Pods-Runner.profile.xcconfig */,
F866E203CA1A8E0C6D9ABA5C /* Pods-Runner.debug.xcconfig */,
1AC6D6834A180EC866A1A907 /* Pods-Runner.release.xcconfig */,
7F544BD3701C5CF77F2FF87F /* Pods-Runner.profile.xcconfig */,
);
path = Pods;
sourceTree = "<group>";
};
C1E97B63847FB6B811E12FEA /* Frameworks */ = {
isa = PBXGroup;
children = (
7B9CC0EA1BA15CD3CCAD0356 /* Pods_Runner.framework */,
);
name = Frameworks;
sourceTree = "<group>";
};
/* End PBXGroup section */

/* Begin PBXNativeTarget section */
97C146ED1CF9000F007C117D /* Runner */ = {
isa = PBXNativeTarget;
buildConfigurationList = 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */;
buildPhases = (
E916CBFE94483EF7C2F17F6C /* [CP] Check Pods Manifest.lock */,
39B3199DCFC6D38A9384399C /* [CP] Check Pods Manifest.lock */,
9740EEB61CF901F6004384FC /* Run Script */,
97C146EA1CF9000F007C117D /* Sources */,
97C146EB1CF9000F007C117D /* Frameworks */,
97C146EC1CF9000F007C117D /* Resources */,
9705A1C41CF9048500538489 /* Embed Frameworks */,
3B06AD1E1E4923F5004D2608 /* Thin Binary */,
0A5FBCADCBC1AF2E0353A84D /* [CP] Embed Pods Frameworks */,
FE8EB41334261949D37FC328 /* [CP] Embed Pods Frameworks */,
);
buildRules = (
);
Expand Down Expand Up @@ -197,21 +197,26 @@
/* End PBXResourcesBuildPhase section */

/* Begin PBXShellScriptBuildPhase section */
0A5FBCADCBC1AF2E0353A84D /* [CP] Embed Pods Frameworks */ = {
39B3199DCFC6D38A9384399C /* [CP] Check Pods Manifest.lock */ = {
isa = PBXShellScriptBuildPhase;
buildActionMask = 2147483647;
files = (
);
inputFileListPaths = (
"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-input-files.xcfilelist",
);
name = "[CP] Embed Pods Frameworks";
inputPaths = (
"${PODS_PODFILE_DIR_PATH}/Podfile.lock",
"${PODS_ROOT}/Manifest.lock",
);
name = "[CP] Check Pods Manifest.lock";
outputFileListPaths = (
"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-output-files.xcfilelist",
);
outputPaths = (
"$(DERIVED_FILE_DIR)/Pods-Runner-checkManifestLockResult.txt",
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh\"\n";
shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n";
showEnvVarsInLog = 0;
};
3B06AD1E1E4923F5004D2608 /* Thin Binary */ = {
Expand Down Expand Up @@ -245,26 +250,21 @@
shellPath = /bin/sh;
shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" build";
};
E916CBFE94483EF7C2F17F6C /* [CP] Check Pods Manifest.lock */ = {
FE8EB41334261949D37FC328 /* [CP] Embed Pods Frameworks */ = {
isa = PBXShellScriptBuildPhase;
buildActionMask = 2147483647;
files = (
);
inputFileListPaths = (
"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-input-files.xcfilelist",
);
inputPaths = (
"${PODS_PODFILE_DIR_PATH}/Podfile.lock",
"${PODS_ROOT}/Manifest.lock",
);
name = "[CP] Check Pods Manifest.lock";
name = "[CP] Embed Pods Frameworks";
outputFileListPaths = (
);
outputPaths = (
"$(DERIVED_FILE_DIR)/Pods-Runner-checkManifestLockResult.txt",
"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-output-files.xcfilelist",
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n";
shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh\"\n";
showEnvVarsInLog = 0;
};
/* End PBXShellScriptBuildPhase section */
Expand Down
8 changes: 4 additions & 4 deletions demos/supabase-todolist/macos/Podfile.lock
Original file line number Diff line number Diff line change
Expand Up @@ -5,10 +5,10 @@ PODS:
- path_provider_foundation (0.0.1):
- Flutter
- FlutterMacOS
- powersync-sqlite-core (0.2.1)
- powersync-sqlite-core (0.3.0)
- powersync_flutter_libs (0.0.1):
- FlutterMacOS
- powersync-sqlite-core (~> 0.2.1)
- powersync-sqlite-core (~> 0.3.0)
- shared_preferences_foundation (0.0.1):
- Flutter
- FlutterMacOS
Expand Down Expand Up @@ -67,8 +67,8 @@ SPEC CHECKSUMS:
app_links: 10e0a0ab602ffaf34d142cd4862f29d34b303b2a
FlutterMacOS: 8f6f14fa908a6fb3fba0cd85dbd81ec4b251fb24
path_provider_foundation: 2b6b4c569c0fb62ec74538f866245ac84301af46
powersync-sqlite-core: 38ead13d8b21920cfbc79e9b3415b833574a506d
powersync_flutter_libs: 3f05f43c382c77cb7bec64785c2b6b1e9bd33c22
powersync-sqlite-core: ad0e70e23bacd858fe2e79032dc4aabdf972d1bd
powersync_flutter_libs: af2c75e3176a179e90e5f5980f0b38356d56823b
shared_preferences_foundation: fcdcbc04712aee1108ac7fda236f363274528f78
sqlite3: 0bb0e6389d824e40296f531b858a2a0b71c0d2fb
sqlite3_flutter_libs: 5ca46c1a04eddfbeeb5b16566164aa7ad1616e7b
Expand Down
Loading
Loading