You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Update SQLCipher Swift Package Manager dependencies to 4.16.0
- Update workspace Package.resolved to SQLCipher 4.16.0
- Update MobileSyncExplorerHybrid project to use SQLCipher 4.16.0
- Update AccountEditor project to use SQLCipher 4.16.0
- Update update-sqlcipher skill with SPM update instructions and troubleshooting
Fixes package resolution conflict between iOS submodule (4.16.0) and sample apps (4.15.0).
The submodule will now point to the iOS SDK commit with the SQLCipher update.
73
73
74
-
### 3. Verify Podspec Dependencies
74
+
### 3. Update Swift Package Manager Dependencies
75
+
76
+
**CRITICAL:** The workspace and sample apps use Swift Package Manager for SQLCipher dependencies. These must be updated to match the iOS submodule version.
Find the section `XCRemoteSwiftPackageReference "SQLCipher"` and update:
120
+
```
121
+
requirement = {
122
+
kind = exactVersion;
123
+
version = 4.16.0; // Update from 4.15.0
124
+
};
125
+
```
126
+
127
+
**Why this is needed:** The sample apps declare exact SQLCipher versions in their project files. If these don't match the iOS submodule's version, Xcode's package resolution will fail with:
128
+
```
129
+
Could not resolve package dependencies:
130
+
Failed to resolve dependencies Dependencies could not be resolved because root depends on 'sqlcipher.swift' 4.16.0 and root depends on 'sqlcipher.swift' 4.15.0.
131
+
```
132
+
133
+
### 4. Verify Podspec Dependencies
75
134
76
135
Check `SalesforceHybridSDK.podspec`:
77
136
@@ -87,7 +146,7 @@ The hybrid SDK depends on `MobileSync` from the iOS SDK, which transitively depe
87
146
88
147
**Important:** The iOS SDK's podspec (SmartStore.podspec) should already have the updated SQLCipher dependency. The hybrid SDK inherits it.
89
148
90
-
### 4. Build the Hybrid SDK
149
+
### 5. Build the Hybrid SDK
91
150
92
151
Build the SalesforceHybridSDK library to catch compilation issues:
93
152
@@ -104,7 +163,7 @@ Address any compilation errors related to:
104
163
- API changes in MobileSync or SmartStore
105
164
- Cordova plugin compatibility
106
165
107
-
### 5. Run Hybrid SDK Tests
166
+
### 6. Run Hybrid SDK Tests
108
167
109
168
**CRITICAL**: Full SalesforceHybridSDK test suite must pass before proceeding.
110
169
@@ -132,7 +191,7 @@ If tests fail:
132
191
- Review Cordova plugin implementations in `libs/SalesforceHybridSDK/SalesforceHybridSDK/Classes/Plugins/`
133
192
- Compare behavior with the iOS SDK's SmartStore tests
134
193
135
-
### 6. Verify Sample Apps
194
+
### 7. Verify Sample Apps
136
195
137
196
Test the hybrid sample applications:
138
197
@@ -156,14 +215,14 @@ Run the sample apps on a simulator to ensure:
156
215
- SmartStore operations function correctly
157
216
- MobileSync operations function correctly
158
217
159
-
### 7. Check Cross-Platform Consistency
218
+
### 8. Check Cross-Platform Consistency
160
219
161
220
Since this is a hybrid SDK:
162
221
- Verify the Android hybrid SDK has the corresponding SQLCipher update
163
222
- Check the Shared repo for any JavaScript changes needed
164
223
- Ensure CordovaPlugin repo is aware of the update (will need `tools/update.sh` run)
xcodebuild: error: Could not resolve package dependencies:
282
+
Failed to resolve dependencies Dependencies could not be resolved because root depends on 'sqlcipher.swift' 4.16.0 and root depends on 'sqlcipher.swift' 4.15.0.
283
+
```
284
+
285
+
**Cause:** Version mismatch between:
286
+
- iOS submodule's SQLCipher dependency (in SmartStore.podspec)
287
+
- Workspace Package.resolved
288
+
- Sample app project files
289
+
290
+
**Solution:**
291
+
1. Check iOS submodule version: `grep -A 5 "SQLCipher" external/SalesforceMobileSDK-iOS/SmartStore.podspec`
292
+
2. Update workspace Package.resolved to match
293
+
3. Update both sample app project.pbxproj files to match
0 commit comments