@sqliteai/sqlite-sync-expo 0.8.61 → 0.9.62

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (22) hide show
  1. package/README.md +1 -1
  2. package/android/jniLibs/arm64-v8a/cloudsync.so +0 -0
  3. package/android/jniLibs/armeabi-v7a/cloudsync.so +0 -0
  4. package/android/jniLibs/x86_64/cloudsync.so +0 -0
  5. package/ios/CloudSync.xcframework/Info.plist +8 -8
  6. package/ios/CloudSync.xcframework/_CodeSignature/CodeDirectory +0 -0
  7. package/ios/CloudSync.xcframework/_CodeSignature/CodeRequirements-1 +0 -0
  8. package/ios/CloudSync.xcframework/_CodeSignature/CodeResources +36 -36
  9. package/ios/CloudSync.xcframework/_CodeSignature/CodeSignature +0 -0
  10. package/ios/CloudSync.xcframework/ios-arm64/CloudSync.framework/CloudSync +0 -0
  11. package/ios/CloudSync.xcframework/ios-arm64/CloudSync.framework/Headers/CloudSync.h +105 -7
  12. package/ios/CloudSync.xcframework/ios-arm64/CloudSync.framework/Info.plist +1 -1
  13. package/ios/CloudSync.xcframework/ios-arm64/CloudSync.framework/_CodeSignature/CodeResources +3 -3
  14. package/ios/CloudSync.xcframework/ios-arm64_x86_64-simulator/CloudSync.framework/CloudSync +0 -0
  15. package/ios/CloudSync.xcframework/ios-arm64_x86_64-simulator/CloudSync.framework/Headers/CloudSync.h +105 -7
  16. package/ios/CloudSync.xcframework/ios-arm64_x86_64-simulator/CloudSync.framework/Info.plist +1 -1
  17. package/ios/CloudSync.xcframework/ios-arm64_x86_64-simulator/CloudSync.framework/_CodeSignature/CodeResources +3 -3
  18. package/ios/CloudSync.xcframework/macos-arm64_x86_64/CloudSync.framework/CloudSync +0 -0
  19. package/ios/CloudSync.xcframework/macos-arm64_x86_64/CloudSync.framework/Headers/CloudSync.h +105 -7
  20. package/ios/CloudSync.xcframework/macos-arm64_x86_64/CloudSync.framework/Info.plist +1 -1
  21. package/ios/CloudSync.xcframework/macos-arm64_x86_64/CloudSync.framework/_CodeSignature/CodeResources +3 -3
  22. package/package.json +1 -1
package/README.md CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  SQLite Sync extension for Expo apps.
4
4
 
5
- **Version:** 0.8.61
5
+ **Version:** 0.9.62
6
6
 
7
7
  This package provides pre-built SQLite Sync binaries for iOS and Android, along with an Expo config plugin that automatically configures your native projects.
8
8
 
Binary file
@@ -8,38 +8,36 @@
8
8
  <key>BinaryPath</key>
9
9
  <string>CloudSync.framework/CloudSync</string>
10
10
  <key>LibraryIdentifier</key>
11
- <string>ios-arm64_x86_64-simulator</string>
11
+ <string>ios-arm64</string>
12
12
  <key>LibraryPath</key>
13
13
  <string>CloudSync.framework</string>
14
14
  <key>SupportedArchitectures</key>
15
15
  <array>
16
16
  <string>arm64</string>
17
- <string>x86_64</string>
18
17
  </array>
19
18
  <key>SupportedPlatform</key>
20
19
  <string>ios</string>
21
- <key>SupportedPlatformVariant</key>
22
- <string>simulator</string>
23
20
  </dict>
24
21
  <dict>
25
22
  <key>BinaryPath</key>
26
23
  <string>CloudSync.framework/CloudSync</string>
27
24
  <key>LibraryIdentifier</key>
28
- <string>ios-arm64</string>
25
+ <string>macos-arm64_x86_64</string>
29
26
  <key>LibraryPath</key>
30
27
  <string>CloudSync.framework</string>
31
28
  <key>SupportedArchitectures</key>
32
29
  <array>
33
30
  <string>arm64</string>
31
+ <string>x86_64</string>
34
32
  </array>
35
33
  <key>SupportedPlatform</key>
36
- <string>ios</string>
34
+ <string>macos</string>
37
35
  </dict>
38
36
  <dict>
39
37
  <key>BinaryPath</key>
40
38
  <string>CloudSync.framework/CloudSync</string>
41
39
  <key>LibraryIdentifier</key>
42
- <string>macos-arm64_x86_64</string>
40
+ <string>ios-arm64_x86_64-simulator</string>
43
41
  <key>LibraryPath</key>
44
42
  <string>CloudSync.framework</string>
45
43
  <key>SupportedArchitectures</key>
@@ -48,7 +46,9 @@
48
46
  <string>x86_64</string>
49
47
  </array>
50
48
  <key>SupportedPlatform</key>
51
- <string>macos</string>
49
+ <string>ios</string>
50
+ <key>SupportedPlatformVariant</key>
51
+ <string>simulator</string>
52
52
  </dict>
53
53
  </array>
54
54
  <key>CFBundlePackageType</key>
@@ -6,15 +6,15 @@
6
6
  <dict>
7
7
  <key>ios-arm64/CloudSync.framework/CloudSync</key>
8
8
  <data>
9
- Vp9qp92rNfFJuQPTAaJxM1hAV5k=
9
+ hzG4dTleGCM35XEYekstl8TWuAU=
10
10
  </data>
11
11
  <key>ios-arm64/CloudSync.framework/Headers/CloudSync.h</key>
12
12
  <data>
13
- 9ueFZyUsqQ5BNA2HXFLnDHNcHTE=
13
+ qzgpWDH7WWMvoLhrUYPg1Uj7cBU=
14
14
  </data>
15
15
  <key>ios-arm64/CloudSync.framework/Info.plist</key>
16
16
  <data>
17
- JhAaxeCylWAyeO/HAlEh/Ci5G2k=
17
+ rOj3g7CkXKK2JKGIUtkdpa6v92U=
18
18
  </data>
19
19
  <key>ios-arm64/CloudSync.framework/Modules/module.modulemap</key>
20
20
  <data>
@@ -22,19 +22,19 @@
22
22
  </data>
23
23
  <key>ios-arm64/CloudSync.framework/_CodeSignature/CodeResources</key>
24
24
  <data>
25
- TAwmhhkAJxhMpbxmM8djPq54GFs=
25
+ ZG3eLGAeuk31+ZPKGgLDHVK9uDs=
26
26
  </data>
27
27
  <key>ios-arm64_x86_64-simulator/CloudSync.framework/CloudSync</key>
28
28
  <data>
29
- lbfqzYvSD59a5go2RTGnPm+9WSI=
29
+ 1THHIdnQRYoqnsGpCTWplHWX+7w=
30
30
  </data>
31
31
  <key>ios-arm64_x86_64-simulator/CloudSync.framework/Headers/CloudSync.h</key>
32
32
  <data>
33
- 9ueFZyUsqQ5BNA2HXFLnDHNcHTE=
33
+ qzgpWDH7WWMvoLhrUYPg1Uj7cBU=
34
34
  </data>
35
35
  <key>ios-arm64_x86_64-simulator/CloudSync.framework/Info.plist</key>
36
36
  <data>
37
- JhAaxeCylWAyeO/HAlEh/Ci5G2k=
37
+ rOj3g7CkXKK2JKGIUtkdpa6v92U=
38
38
  </data>
39
39
  <key>ios-arm64_x86_64-simulator/CloudSync.framework/Modules/module.modulemap</key>
40
40
  <data>
@@ -42,19 +42,19 @@
42
42
  </data>
43
43
  <key>ios-arm64_x86_64-simulator/CloudSync.framework/_CodeSignature/CodeResources</key>
44
44
  <data>
45
- TAwmhhkAJxhMpbxmM8djPq54GFs=
45
+ ZG3eLGAeuk31+ZPKGgLDHVK9uDs=
46
46
  </data>
47
47
  <key>macos-arm64_x86_64/CloudSync.framework/CloudSync</key>
48
48
  <data>
49
- J5yfQBNZN3DNSZHIwiPI0vE6AWQ=
49
+ lv4+Gz7t8hMhNTIBH52JWcyZbco=
50
50
  </data>
51
51
  <key>macos-arm64_x86_64/CloudSync.framework/Headers/CloudSync.h</key>
52
52
  <data>
53
- 9ueFZyUsqQ5BNA2HXFLnDHNcHTE=
53
+ qzgpWDH7WWMvoLhrUYPg1Uj7cBU=
54
54
  </data>
55
55
  <key>macos-arm64_x86_64/CloudSync.framework/Info.plist</key>
56
56
  <data>
57
- JhAaxeCylWAyeO/HAlEh/Ci5G2k=
57
+ rOj3g7CkXKK2JKGIUtkdpa6v92U=
58
58
  </data>
59
59
  <key>macos-arm64_x86_64/CloudSync.framework/Modules/module.modulemap</key>
60
60
  <data>
@@ -62,7 +62,7 @@
62
62
  </data>
63
63
  <key>macos-arm64_x86_64/CloudSync.framework/_CodeSignature/CodeResources</key>
64
64
  <data>
65
- TAwmhhkAJxhMpbxmM8djPq54GFs=
65
+ ZG3eLGAeuk31+ZPKGgLDHVK9uDs=
66
66
  </data>
67
67
  </dict>
68
68
  <key>files2</key>
@@ -71,33 +71,33 @@
71
71
  <dict>
72
72
  <key>hash</key>
73
73
  <data>
74
- Vp9qp92rNfFJuQPTAaJxM1hAV5k=
74
+ hzG4dTleGCM35XEYekstl8TWuAU=
75
75
  </data>
76
76
  <key>hash2</key>
77
77
  <data>
78
- jGtlVxogB5R0LxXCwIWVYX9QBEZaB9fDQjx4GKjQ/Rw=
78
+ J9VIvelsWw6JNA+pikw6JMpxe/fS//mzINYhbiG+qr0=
79
79
  </data>
80
80
  </dict>
81
81
  <key>ios-arm64/CloudSync.framework/Headers/CloudSync.h</key>
82
82
  <dict>
83
83
  <key>hash</key>
84
84
  <data>
85
- 9ueFZyUsqQ5BNA2HXFLnDHNcHTE=
85
+ qzgpWDH7WWMvoLhrUYPg1Uj7cBU=
86
86
  </data>
87
87
  <key>hash2</key>
88
88
  <data>
89
- aOkkQeaVhgtLlcvear4POgvLHmvJQTmEMjkRhIi0BqE=
89
+ EHxkRMX6Rp8cUxwl237VprMG6T8oA2lDvYXe5i2KpQQ=
90
90
  </data>
91
91
  </dict>
92
92
  <key>ios-arm64/CloudSync.framework/Info.plist</key>
93
93
  <dict>
94
94
  <key>hash</key>
95
95
  <data>
96
- JhAaxeCylWAyeO/HAlEh/Ci5G2k=
96
+ rOj3g7CkXKK2JKGIUtkdpa6v92U=
97
97
  </data>
98
98
  <key>hash2</key>
99
99
  <data>
100
- ub9T/FdTz2WbWM1eH1703KJ9HB7U1bBtFVVZ1M5nkZg=
100
+ 2S9ZJ5GUuT6URXjCRufn2tBkx46od0TICnHPIjW5Z0M=
101
101
  </data>
102
102
  </dict>
103
103
  <key>ios-arm64/CloudSync.framework/Modules/module.modulemap</key>
@@ -115,44 +115,44 @@
115
115
  <dict>
116
116
  <key>hash</key>
117
117
  <data>
118
- TAwmhhkAJxhMpbxmM8djPq54GFs=
118
+ ZG3eLGAeuk31+ZPKGgLDHVK9uDs=
119
119
  </data>
120
120
  <key>hash2</key>
121
121
  <data>
122
- cck+YEMer2yFN2wU8IDBuO9FXeWcmqFz6qZ7kQrpBIE=
122
+ Gc4B2ky8eW5NtGUCkNOcGLZg5fzbNuo88dAN+pnM9Ng=
123
123
  </data>
124
124
  </dict>
125
125
  <key>ios-arm64_x86_64-simulator/CloudSync.framework/CloudSync</key>
126
126
  <dict>
127
127
  <key>hash</key>
128
128
  <data>
129
- lbfqzYvSD59a5go2RTGnPm+9WSI=
129
+ 1THHIdnQRYoqnsGpCTWplHWX+7w=
130
130
  </data>
131
131
  <key>hash2</key>
132
132
  <data>
133
- ttpF0wPgdE2+G7f70axkMpfOL3TJrYRxOKDXtAwbGBI=
133
+ VnvxGu2JoMi9DOfX1ekbVxXNvZiPq/SJ5vjy0sYIQKM=
134
134
  </data>
135
135
  </dict>
136
136
  <key>ios-arm64_x86_64-simulator/CloudSync.framework/Headers/CloudSync.h</key>
137
137
  <dict>
138
138
  <key>hash</key>
139
139
  <data>
140
- 9ueFZyUsqQ5BNA2HXFLnDHNcHTE=
140
+ qzgpWDH7WWMvoLhrUYPg1Uj7cBU=
141
141
  </data>
142
142
  <key>hash2</key>
143
143
  <data>
144
- aOkkQeaVhgtLlcvear4POgvLHmvJQTmEMjkRhIi0BqE=
144
+ EHxkRMX6Rp8cUxwl237VprMG6T8oA2lDvYXe5i2KpQQ=
145
145
  </data>
146
146
  </dict>
147
147
  <key>ios-arm64_x86_64-simulator/CloudSync.framework/Info.plist</key>
148
148
  <dict>
149
149
  <key>hash</key>
150
150
  <data>
151
- JhAaxeCylWAyeO/HAlEh/Ci5G2k=
151
+ rOj3g7CkXKK2JKGIUtkdpa6v92U=
152
152
  </data>
153
153
  <key>hash2</key>
154
154
  <data>
155
- ub9T/FdTz2WbWM1eH1703KJ9HB7U1bBtFVVZ1M5nkZg=
155
+ 2S9ZJ5GUuT6URXjCRufn2tBkx46od0TICnHPIjW5Z0M=
156
156
  </data>
157
157
  </dict>
158
158
  <key>ios-arm64_x86_64-simulator/CloudSync.framework/Modules/module.modulemap</key>
@@ -170,44 +170,44 @@
170
170
  <dict>
171
171
  <key>hash</key>
172
172
  <data>
173
- TAwmhhkAJxhMpbxmM8djPq54GFs=
173
+ ZG3eLGAeuk31+ZPKGgLDHVK9uDs=
174
174
  </data>
175
175
  <key>hash2</key>
176
176
  <data>
177
- cck+YEMer2yFN2wU8IDBuO9FXeWcmqFz6qZ7kQrpBIE=
177
+ Gc4B2ky8eW5NtGUCkNOcGLZg5fzbNuo88dAN+pnM9Ng=
178
178
  </data>
179
179
  </dict>
180
180
  <key>macos-arm64_x86_64/CloudSync.framework/CloudSync</key>
181
181
  <dict>
182
182
  <key>hash</key>
183
183
  <data>
184
- J5yfQBNZN3DNSZHIwiPI0vE6AWQ=
184
+ lv4+Gz7t8hMhNTIBH52JWcyZbco=
185
185
  </data>
186
186
  <key>hash2</key>
187
187
  <data>
188
- Y3xe82hMKAA23Nv0RrKpekrr7ONOVwxxIB5sMKwVAKs=
188
+ cRZRQ/5O2Pt+wJWthhsNpfFx+RO2SXzAS0u3sHLqu98=
189
189
  </data>
190
190
  </dict>
191
191
  <key>macos-arm64_x86_64/CloudSync.framework/Headers/CloudSync.h</key>
192
192
  <dict>
193
193
  <key>hash</key>
194
194
  <data>
195
- 9ueFZyUsqQ5BNA2HXFLnDHNcHTE=
195
+ qzgpWDH7WWMvoLhrUYPg1Uj7cBU=
196
196
  </data>
197
197
  <key>hash2</key>
198
198
  <data>
199
- aOkkQeaVhgtLlcvear4POgvLHmvJQTmEMjkRhIi0BqE=
199
+ EHxkRMX6Rp8cUxwl237VprMG6T8oA2lDvYXe5i2KpQQ=
200
200
  </data>
201
201
  </dict>
202
202
  <key>macos-arm64_x86_64/CloudSync.framework/Info.plist</key>
203
203
  <dict>
204
204
  <key>hash</key>
205
205
  <data>
206
- JhAaxeCylWAyeO/HAlEh/Ci5G2k=
206
+ rOj3g7CkXKK2JKGIUtkdpa6v92U=
207
207
  </data>
208
208
  <key>hash2</key>
209
209
  <data>
210
- ub9T/FdTz2WbWM1eH1703KJ9HB7U1bBtFVVZ1M5nkZg=
210
+ 2S9ZJ5GUuT6URXjCRufn2tBkx46od0TICnHPIjW5Z0M=
211
211
  </data>
212
212
  </dict>
213
213
  <key>macos-arm64_x86_64/CloudSync.framework/Modules/module.modulemap</key>
@@ -225,11 +225,11 @@
225
225
  <dict>
226
226
  <key>hash</key>
227
227
  <data>
228
- TAwmhhkAJxhMpbxmM8djPq54GFs=
228
+ ZG3eLGAeuk31+ZPKGgLDHVK9uDs=
229
229
  </data>
230
230
  <key>hash2</key>
231
231
  <data>
232
- cck+YEMer2yFN2wU8IDBuO9FXeWcmqFz6qZ7kQrpBIE=
232
+ Gc4B2ky8eW5NtGUCkNOcGLZg5fzbNuo88dAN+pnM9Ng=
233
233
  </data>
234
234
  </dict>
235
235
  </dict>
@@ -9,20 +9,118 @@
9
9
  #define __CLOUDSYNC__
10
10
 
11
11
  #include <stdint.h>
12
+ #include <stddef.h>
12
13
  #include <stdbool.h>
13
- #ifndef SQLITE_CORE
14
- #include "sqlite3ext.h"
15
- #else
16
- #include "sqlite3.h"
17
- #endif
14
+ #include "database.h"
18
15
 
19
16
  #ifdef __cplusplus
20
17
  extern "C" {
21
18
  #endif
22
19
 
23
- #define CLOUDSYNC_VERSION "0.8.61"
20
+ #define CLOUDSYNC_VERSION "0.9.62"
21
+ #define CLOUDSYNC_MAX_TABLENAME_LEN 512
22
+
23
+ #define CLOUDSYNC_VALUE_NOTSET -1
24
+ #define CLOUDSYNC_TOMBSTONE_VALUE "__[RIP]__"
25
+ #define CLOUDSYNC_RLS_RESTRICTED_VALUE "__[RLS]__"
26
+ #define CLOUDSYNC_DISABLE_ROWIDONLY_TABLES 1
27
+ #define CLOUDSYNC_DEFAULT_ALGO "cls"
28
+
29
+ typedef enum {
30
+ CLOUDSYNC_PAYLOAD_APPLY_WILL_APPLY = 1,
31
+ CLOUDSYNC_PAYLOAD_APPLY_DID_APPLY = 2,
32
+ CLOUDSYNC_PAYLOAD_APPLY_CLEANUP = 3
33
+ } CLOUDSYNC_PAYLOAD_APPLY_STEPS;
34
+
35
+ // CRDT Algos
36
+ table_algo cloudsync_algo_from_name (const char *algo_name);
37
+ const char *cloudsync_algo_name (table_algo algo);
38
+
39
+ // Opaque structures
40
+ typedef struct cloudsync_payload_context cloudsync_payload_context;
41
+ typedef struct cloudsync_table_context cloudsync_table_context;
42
+
43
+ // CloudSync context
44
+ cloudsync_context *cloudsync_context_create (void *db);
45
+ const char *cloudsync_context_init (cloudsync_context *data);
46
+ void cloudsync_context_free (void *ctx);
47
+
48
+ // CloudSync global
49
+ int cloudsync_init_table (cloudsync_context *data, const char *table_name, const char *algo_name, bool skip_int_pk_check);
50
+ int cloudsync_cleanup (cloudsync_context *data, const char *table_name);
51
+ int cloudsync_cleanup_all (cloudsync_context *data);
52
+ int cloudsync_terminate (cloudsync_context *data);
53
+ int cloudsync_insync (cloudsync_context *data);
54
+ int cloudsync_bumpseq (cloudsync_context *data);
55
+ void *cloudsync_siteid (cloudsync_context *data);
56
+ void cloudsync_reset_siteid (cloudsync_context *data);
57
+ void cloudsync_sync_key (cloudsync_context *data, const char *key, const char *value);
58
+ int64_t cloudsync_dbversion_next (cloudsync_context *data, int64_t merging_version);
59
+ int64_t cloudsync_dbversion (cloudsync_context *data);
60
+ void cloudsync_update_schema_hash (cloudsync_context *data);
61
+ int cloudsync_dbversion_check_uptodate (cloudsync_context *data);
62
+ bool cloudsync_config_exists (cloudsync_context *data);
63
+ dbvm_t *cloudsync_colvalue_stmt (cloudsync_context *data, const char *tbl_name, bool *persistent);
64
+
65
+ // CloudSync alter table
66
+ int cloudsync_begin_alter (cloudsync_context *data, const char *table_name);
67
+ int cloudsync_commit_alter (cloudsync_context *data, const char *table_name);
68
+
69
+ // CloudSync getter/setter
70
+ void *cloudsync_db (cloudsync_context *data);
71
+ void *cloudsync_auxdata (cloudsync_context *data);
72
+ void cloudsync_set_auxdata (cloudsync_context *data, void *xdata);
73
+ int cloudsync_set_error (cloudsync_context *data, const char *err_user, int err_code);
74
+ int cloudsync_set_dberror (cloudsync_context *data);
75
+ const char *cloudsync_errmsg (cloudsync_context *data);
76
+ int cloudsync_errcode (cloudsync_context *data);
77
+ void cloudsync_reset_error (cloudsync_context *data);
78
+ int cloudsync_commit_hook (void *ctx);
79
+ void cloudsync_rollback_hook (void *ctx);
80
+
81
+ // Payload
82
+ int cloudsync_payload_apply (cloudsync_context *data, const char *payload, int blen, int *nrows);
83
+ int cloudsync_payload_encode_step (cloudsync_payload_context *payload, cloudsync_context *data, int argc, dbvalue_t **argv);
84
+ int cloudsync_payload_encode_final (cloudsync_payload_context *payload, cloudsync_context *data);
85
+ char *cloudsync_payload_blob (cloudsync_payload_context *payload, int64_t *blob_size, int64_t *nrows);
86
+ size_t cloudsync_payload_context_size (size_t *header_size);
87
+ int cloudsync_payload_get (cloudsync_context *data, char **blob, int *blob_size, int *db_version, int *seq, int64_t *new_db_version, int64_t *new_seq);
88
+ int cloudsync_payload_save (cloudsync_context *data, const char *payload_path, int *blob_size); // available only on Desktop OS (no WASM, no mobile)
89
+
90
+ // CloudSync table context
91
+ cloudsync_table_context *table_lookup (cloudsync_context *data, const char *table_name);
92
+ void *table_column_lookup (cloudsync_table_context *table, const char *col_name, bool is_merge, int *index);
93
+ bool table_enabled (cloudsync_table_context *table);
94
+ void table_set_enabled (cloudsync_table_context *table, bool value);
95
+ bool table_add_to_context (cloudsync_context *data, table_algo algo, const char *table_name);
96
+ bool table_pk_exists (cloudsync_table_context *table, const char *value, size_t len);
97
+ int table_count_cols (cloudsync_table_context *table);
98
+ int table_count_pks (cloudsync_table_context *table);
99
+ const char *table_colname (cloudsync_table_context *table, int index);
100
+ char **table_pknames (cloudsync_table_context *table);
101
+ void table_set_pknames (cloudsync_table_context *table, char **pknames);
102
+ bool table_algo_isgos (cloudsync_table_context *table);
103
+ int table_remove (cloudsync_context *data, cloudsync_table_context *table);
104
+ void table_free (cloudsync_table_context *table);
105
+
106
+ // local merge/apply
107
+ int local_mark_insert_sentinel_meta (cloudsync_table_context *table, const char *pk, size_t pklen, int64_t db_version, int seq);
108
+ int local_update_sentinel (cloudsync_table_context *table, const char *pk, size_t pklen, int64_t db_version, int seq);
109
+ int local_mark_insert_or_update_meta (cloudsync_table_context *table, const char *pk, size_t pklen, const char *col_name, int64_t db_version, int seq);
110
+ int local_mark_delete_meta (cloudsync_table_context *table, const char *pk, size_t pklen, int64_t db_version, int seq);
111
+ int local_drop_meta (cloudsync_table_context *table, const char *pk, size_t pklen);
112
+ int local_update_move_meta (cloudsync_table_context *table, const char *pk, size_t pklen, const char *pk2, size_t pklen2, int64_t db_version);
113
+
114
+ // used by changes virtual table
115
+ int merge_insert_col (cloudsync_context *data, cloudsync_table_context *table, const char *pk, int pklen, const char *col_name, dbvalue_t *col_value, int64_t col_version, int64_t db_version, const char *site_id, int site_len, int64_t seq, int64_t *rowid);
116
+ int merge_insert (cloudsync_context *data, cloudsync_table_context *table, const char *insert_pk, int insert_pk_len, int64_t insert_cl, const char *insert_name, dbvalue_t *insert_value, int64_t insert_col_version, int64_t insert_db_version, const char *insert_site_id, int insert_site_id_len, int64_t insert_seq, int64_t *rowid);
24
117
 
25
- int sqlite3_cloudsync_init (sqlite3 *db, char **pzErrMsg, const sqlite3_api_routines *pApi);
118
+ // decode bind context
119
+ char *cloudsync_pk_context_tbl (cloudsync_pk_decode_bind_context *ctx, int64_t *tbl_len);
120
+ void *cloudsync_pk_context_pk (cloudsync_pk_decode_bind_context *ctx, int64_t *pk_len);
121
+ char *cloudsync_pk_context_colname (cloudsync_pk_decode_bind_context *ctx, int64_t *colname_len);
122
+ int64_t cloudsync_pk_context_cl (cloudsync_pk_decode_bind_context *ctx);
123
+ int64_t cloudsync_pk_context_dbversion (cloudsync_pk_decode_bind_context *ctx);
26
124
 
27
125
  #ifdef __cplusplus
28
126
  }
@@ -1 +1 @@
1
- <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>CFBundleDevelopmentRegion</key> <string>en</string> <key>CFBundleExecutable</key> <string>CloudSync</string> <key>CFBundleIdentifier</key> <string>ai.sqlite.cloudsync</string> <key>CFBundleInfoDictionaryVersion</key> <string>6.0</string> <key>CFBundlePackageType</key> <string>FMWK</string> <key>CFBundleSignature</key> <string>????</string> <key>CFBundleVersion</key> <string>0.8.61</string> <key>CFBundleShortVersionString</key> <string>0.8.61</string> <key>MinimumOSVersion</key> <string>11.0</string> </dict> </plist>
1
+ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>CFBundleDevelopmentRegion</key> <string>en</string> <key>CFBundleExecutable</key> <string>CloudSync</string> <key>CFBundleIdentifier</key> <string>ai.sqlite.cloudsync</string> <key>CFBundleInfoDictionaryVersion</key> <string>6.0</string> <key>CFBundlePackageType</key> <string>FMWK</string> <key>CFBundleSignature</key> <string>????</string> <key>CFBundleVersion</key> <string>0.9.62</string> <key>CFBundleShortVersionString</key> <string>0.9.62</string> <key>MinimumOSVersion</key> <string>11.0</string> </dict> </plist>
@@ -6,11 +6,11 @@
6
6
  <dict>
7
7
  <key>Headers/CloudSync.h</key>
8
8
  <data>
9
- 9ueFZyUsqQ5BNA2HXFLnDHNcHTE=
9
+ qzgpWDH7WWMvoLhrUYPg1Uj7cBU=
10
10
  </data>
11
11
  <key>Info.plist</key>
12
12
  <data>
13
- JhAaxeCylWAyeO/HAlEh/Ci5G2k=
13
+ rOj3g7CkXKK2JKGIUtkdpa6v92U=
14
14
  </data>
15
15
  <key>Modules/module.modulemap</key>
16
16
  <data>
@@ -23,7 +23,7 @@
23
23
  <dict>
24
24
  <key>hash2</key>
25
25
  <data>
26
- aOkkQeaVhgtLlcvear4POgvLHmvJQTmEMjkRhIi0BqE=
26
+ EHxkRMX6Rp8cUxwl237VprMG6T8oA2lDvYXe5i2KpQQ=
27
27
  </data>
28
28
  </dict>
29
29
  <key>Modules/module.modulemap</key>
@@ -9,20 +9,118 @@
9
9
  #define __CLOUDSYNC__
10
10
 
11
11
  #include <stdint.h>
12
+ #include <stddef.h>
12
13
  #include <stdbool.h>
13
- #ifndef SQLITE_CORE
14
- #include "sqlite3ext.h"
15
- #else
16
- #include "sqlite3.h"
17
- #endif
14
+ #include "database.h"
18
15
 
19
16
  #ifdef __cplusplus
20
17
  extern "C" {
21
18
  #endif
22
19
 
23
- #define CLOUDSYNC_VERSION "0.8.61"
20
+ #define CLOUDSYNC_VERSION "0.9.62"
21
+ #define CLOUDSYNC_MAX_TABLENAME_LEN 512
22
+
23
+ #define CLOUDSYNC_VALUE_NOTSET -1
24
+ #define CLOUDSYNC_TOMBSTONE_VALUE "__[RIP]__"
25
+ #define CLOUDSYNC_RLS_RESTRICTED_VALUE "__[RLS]__"
26
+ #define CLOUDSYNC_DISABLE_ROWIDONLY_TABLES 1
27
+ #define CLOUDSYNC_DEFAULT_ALGO "cls"
28
+
29
+ typedef enum {
30
+ CLOUDSYNC_PAYLOAD_APPLY_WILL_APPLY = 1,
31
+ CLOUDSYNC_PAYLOAD_APPLY_DID_APPLY = 2,
32
+ CLOUDSYNC_PAYLOAD_APPLY_CLEANUP = 3
33
+ } CLOUDSYNC_PAYLOAD_APPLY_STEPS;
34
+
35
+ // CRDT Algos
36
+ table_algo cloudsync_algo_from_name (const char *algo_name);
37
+ const char *cloudsync_algo_name (table_algo algo);
38
+
39
+ // Opaque structures
40
+ typedef struct cloudsync_payload_context cloudsync_payload_context;
41
+ typedef struct cloudsync_table_context cloudsync_table_context;
42
+
43
+ // CloudSync context
44
+ cloudsync_context *cloudsync_context_create (void *db);
45
+ const char *cloudsync_context_init (cloudsync_context *data);
46
+ void cloudsync_context_free (void *ctx);
47
+
48
+ // CloudSync global
49
+ int cloudsync_init_table (cloudsync_context *data, const char *table_name, const char *algo_name, bool skip_int_pk_check);
50
+ int cloudsync_cleanup (cloudsync_context *data, const char *table_name);
51
+ int cloudsync_cleanup_all (cloudsync_context *data);
52
+ int cloudsync_terminate (cloudsync_context *data);
53
+ int cloudsync_insync (cloudsync_context *data);
54
+ int cloudsync_bumpseq (cloudsync_context *data);
55
+ void *cloudsync_siteid (cloudsync_context *data);
56
+ void cloudsync_reset_siteid (cloudsync_context *data);
57
+ void cloudsync_sync_key (cloudsync_context *data, const char *key, const char *value);
58
+ int64_t cloudsync_dbversion_next (cloudsync_context *data, int64_t merging_version);
59
+ int64_t cloudsync_dbversion (cloudsync_context *data);
60
+ void cloudsync_update_schema_hash (cloudsync_context *data);
61
+ int cloudsync_dbversion_check_uptodate (cloudsync_context *data);
62
+ bool cloudsync_config_exists (cloudsync_context *data);
63
+ dbvm_t *cloudsync_colvalue_stmt (cloudsync_context *data, const char *tbl_name, bool *persistent);
64
+
65
+ // CloudSync alter table
66
+ int cloudsync_begin_alter (cloudsync_context *data, const char *table_name);
67
+ int cloudsync_commit_alter (cloudsync_context *data, const char *table_name);
68
+
69
+ // CloudSync getter/setter
70
+ void *cloudsync_db (cloudsync_context *data);
71
+ void *cloudsync_auxdata (cloudsync_context *data);
72
+ void cloudsync_set_auxdata (cloudsync_context *data, void *xdata);
73
+ int cloudsync_set_error (cloudsync_context *data, const char *err_user, int err_code);
74
+ int cloudsync_set_dberror (cloudsync_context *data);
75
+ const char *cloudsync_errmsg (cloudsync_context *data);
76
+ int cloudsync_errcode (cloudsync_context *data);
77
+ void cloudsync_reset_error (cloudsync_context *data);
78
+ int cloudsync_commit_hook (void *ctx);
79
+ void cloudsync_rollback_hook (void *ctx);
80
+
81
+ // Payload
82
+ int cloudsync_payload_apply (cloudsync_context *data, const char *payload, int blen, int *nrows);
83
+ int cloudsync_payload_encode_step (cloudsync_payload_context *payload, cloudsync_context *data, int argc, dbvalue_t **argv);
84
+ int cloudsync_payload_encode_final (cloudsync_payload_context *payload, cloudsync_context *data);
85
+ char *cloudsync_payload_blob (cloudsync_payload_context *payload, int64_t *blob_size, int64_t *nrows);
86
+ size_t cloudsync_payload_context_size (size_t *header_size);
87
+ int cloudsync_payload_get (cloudsync_context *data, char **blob, int *blob_size, int *db_version, int *seq, int64_t *new_db_version, int64_t *new_seq);
88
+ int cloudsync_payload_save (cloudsync_context *data, const char *payload_path, int *blob_size); // available only on Desktop OS (no WASM, no mobile)
89
+
90
+ // CloudSync table context
91
+ cloudsync_table_context *table_lookup (cloudsync_context *data, const char *table_name);
92
+ void *table_column_lookup (cloudsync_table_context *table, const char *col_name, bool is_merge, int *index);
93
+ bool table_enabled (cloudsync_table_context *table);
94
+ void table_set_enabled (cloudsync_table_context *table, bool value);
95
+ bool table_add_to_context (cloudsync_context *data, table_algo algo, const char *table_name);
96
+ bool table_pk_exists (cloudsync_table_context *table, const char *value, size_t len);
97
+ int table_count_cols (cloudsync_table_context *table);
98
+ int table_count_pks (cloudsync_table_context *table);
99
+ const char *table_colname (cloudsync_table_context *table, int index);
100
+ char **table_pknames (cloudsync_table_context *table);
101
+ void table_set_pknames (cloudsync_table_context *table, char **pknames);
102
+ bool table_algo_isgos (cloudsync_table_context *table);
103
+ int table_remove (cloudsync_context *data, cloudsync_table_context *table);
104
+ void table_free (cloudsync_table_context *table);
105
+
106
+ // local merge/apply
107
+ int local_mark_insert_sentinel_meta (cloudsync_table_context *table, const char *pk, size_t pklen, int64_t db_version, int seq);
108
+ int local_update_sentinel (cloudsync_table_context *table, const char *pk, size_t pklen, int64_t db_version, int seq);
109
+ int local_mark_insert_or_update_meta (cloudsync_table_context *table, const char *pk, size_t pklen, const char *col_name, int64_t db_version, int seq);
110
+ int local_mark_delete_meta (cloudsync_table_context *table, const char *pk, size_t pklen, int64_t db_version, int seq);
111
+ int local_drop_meta (cloudsync_table_context *table, const char *pk, size_t pklen);
112
+ int local_update_move_meta (cloudsync_table_context *table, const char *pk, size_t pklen, const char *pk2, size_t pklen2, int64_t db_version);
113
+
114
+ // used by changes virtual table
115
+ int merge_insert_col (cloudsync_context *data, cloudsync_table_context *table, const char *pk, int pklen, const char *col_name, dbvalue_t *col_value, int64_t col_version, int64_t db_version, const char *site_id, int site_len, int64_t seq, int64_t *rowid);
116
+ int merge_insert (cloudsync_context *data, cloudsync_table_context *table, const char *insert_pk, int insert_pk_len, int64_t insert_cl, const char *insert_name, dbvalue_t *insert_value, int64_t insert_col_version, int64_t insert_db_version, const char *insert_site_id, int insert_site_id_len, int64_t insert_seq, int64_t *rowid);
24
117
 
25
- int sqlite3_cloudsync_init (sqlite3 *db, char **pzErrMsg, const sqlite3_api_routines *pApi);
118
+ // decode bind context
119
+ char *cloudsync_pk_context_tbl (cloudsync_pk_decode_bind_context *ctx, int64_t *tbl_len);
120
+ void *cloudsync_pk_context_pk (cloudsync_pk_decode_bind_context *ctx, int64_t *pk_len);
121
+ char *cloudsync_pk_context_colname (cloudsync_pk_decode_bind_context *ctx, int64_t *colname_len);
122
+ int64_t cloudsync_pk_context_cl (cloudsync_pk_decode_bind_context *ctx);
123
+ int64_t cloudsync_pk_context_dbversion (cloudsync_pk_decode_bind_context *ctx);
26
124
 
27
125
  #ifdef __cplusplus
28
126
  }
@@ -1 +1 @@
1
- <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>CFBundleDevelopmentRegion</key> <string>en</string> <key>CFBundleExecutable</key> <string>CloudSync</string> <key>CFBundleIdentifier</key> <string>ai.sqlite.cloudsync</string> <key>CFBundleInfoDictionaryVersion</key> <string>6.0</string> <key>CFBundlePackageType</key> <string>FMWK</string> <key>CFBundleSignature</key> <string>????</string> <key>CFBundleVersion</key> <string>0.8.61</string> <key>CFBundleShortVersionString</key> <string>0.8.61</string> <key>MinimumOSVersion</key> <string>11.0</string> </dict> </plist>
1
+ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>CFBundleDevelopmentRegion</key> <string>en</string> <key>CFBundleExecutable</key> <string>CloudSync</string> <key>CFBundleIdentifier</key> <string>ai.sqlite.cloudsync</string> <key>CFBundleInfoDictionaryVersion</key> <string>6.0</string> <key>CFBundlePackageType</key> <string>FMWK</string> <key>CFBundleSignature</key> <string>????</string> <key>CFBundleVersion</key> <string>0.9.62</string> <key>CFBundleShortVersionString</key> <string>0.9.62</string> <key>MinimumOSVersion</key> <string>11.0</string> </dict> </plist>
@@ -6,11 +6,11 @@
6
6
  <dict>
7
7
  <key>Headers/CloudSync.h</key>
8
8
  <data>
9
- 9ueFZyUsqQ5BNA2HXFLnDHNcHTE=
9
+ qzgpWDH7WWMvoLhrUYPg1Uj7cBU=
10
10
  </data>
11
11
  <key>Info.plist</key>
12
12
  <data>
13
- JhAaxeCylWAyeO/HAlEh/Ci5G2k=
13
+ rOj3g7CkXKK2JKGIUtkdpa6v92U=
14
14
  </data>
15
15
  <key>Modules/module.modulemap</key>
16
16
  <data>
@@ -23,7 +23,7 @@
23
23
  <dict>
24
24
  <key>hash2</key>
25
25
  <data>
26
- aOkkQeaVhgtLlcvear4POgvLHmvJQTmEMjkRhIi0BqE=
26
+ EHxkRMX6Rp8cUxwl237VprMG6T8oA2lDvYXe5i2KpQQ=
27
27
  </data>
28
28
  </dict>
29
29
  <key>Modules/module.modulemap</key>
@@ -9,20 +9,118 @@
9
9
  #define __CLOUDSYNC__
10
10
 
11
11
  #include <stdint.h>
12
+ #include <stddef.h>
12
13
  #include <stdbool.h>
13
- #ifndef SQLITE_CORE
14
- #include "sqlite3ext.h"
15
- #else
16
- #include "sqlite3.h"
17
- #endif
14
+ #include "database.h"
18
15
 
19
16
  #ifdef __cplusplus
20
17
  extern "C" {
21
18
  #endif
22
19
 
23
- #define CLOUDSYNC_VERSION "0.8.61"
20
+ #define CLOUDSYNC_VERSION "0.9.62"
21
+ #define CLOUDSYNC_MAX_TABLENAME_LEN 512
22
+
23
+ #define CLOUDSYNC_VALUE_NOTSET -1
24
+ #define CLOUDSYNC_TOMBSTONE_VALUE "__[RIP]__"
25
+ #define CLOUDSYNC_RLS_RESTRICTED_VALUE "__[RLS]__"
26
+ #define CLOUDSYNC_DISABLE_ROWIDONLY_TABLES 1
27
+ #define CLOUDSYNC_DEFAULT_ALGO "cls"
28
+
29
+ typedef enum {
30
+ CLOUDSYNC_PAYLOAD_APPLY_WILL_APPLY = 1,
31
+ CLOUDSYNC_PAYLOAD_APPLY_DID_APPLY = 2,
32
+ CLOUDSYNC_PAYLOAD_APPLY_CLEANUP = 3
33
+ } CLOUDSYNC_PAYLOAD_APPLY_STEPS;
34
+
35
+ // CRDT Algos
36
+ table_algo cloudsync_algo_from_name (const char *algo_name);
37
+ const char *cloudsync_algo_name (table_algo algo);
38
+
39
+ // Opaque structures
40
+ typedef struct cloudsync_payload_context cloudsync_payload_context;
41
+ typedef struct cloudsync_table_context cloudsync_table_context;
42
+
43
+ // CloudSync context
44
+ cloudsync_context *cloudsync_context_create (void *db);
45
+ const char *cloudsync_context_init (cloudsync_context *data);
46
+ void cloudsync_context_free (void *ctx);
47
+
48
+ // CloudSync global
49
+ int cloudsync_init_table (cloudsync_context *data, const char *table_name, const char *algo_name, bool skip_int_pk_check);
50
+ int cloudsync_cleanup (cloudsync_context *data, const char *table_name);
51
+ int cloudsync_cleanup_all (cloudsync_context *data);
52
+ int cloudsync_terminate (cloudsync_context *data);
53
+ int cloudsync_insync (cloudsync_context *data);
54
+ int cloudsync_bumpseq (cloudsync_context *data);
55
+ void *cloudsync_siteid (cloudsync_context *data);
56
+ void cloudsync_reset_siteid (cloudsync_context *data);
57
+ void cloudsync_sync_key (cloudsync_context *data, const char *key, const char *value);
58
+ int64_t cloudsync_dbversion_next (cloudsync_context *data, int64_t merging_version);
59
+ int64_t cloudsync_dbversion (cloudsync_context *data);
60
+ void cloudsync_update_schema_hash (cloudsync_context *data);
61
+ int cloudsync_dbversion_check_uptodate (cloudsync_context *data);
62
+ bool cloudsync_config_exists (cloudsync_context *data);
63
+ dbvm_t *cloudsync_colvalue_stmt (cloudsync_context *data, const char *tbl_name, bool *persistent);
64
+
65
+ // CloudSync alter table
66
+ int cloudsync_begin_alter (cloudsync_context *data, const char *table_name);
67
+ int cloudsync_commit_alter (cloudsync_context *data, const char *table_name);
68
+
69
+ // CloudSync getter/setter
70
+ void *cloudsync_db (cloudsync_context *data);
71
+ void *cloudsync_auxdata (cloudsync_context *data);
72
+ void cloudsync_set_auxdata (cloudsync_context *data, void *xdata);
73
+ int cloudsync_set_error (cloudsync_context *data, const char *err_user, int err_code);
74
+ int cloudsync_set_dberror (cloudsync_context *data);
75
+ const char *cloudsync_errmsg (cloudsync_context *data);
76
+ int cloudsync_errcode (cloudsync_context *data);
77
+ void cloudsync_reset_error (cloudsync_context *data);
78
+ int cloudsync_commit_hook (void *ctx);
79
+ void cloudsync_rollback_hook (void *ctx);
80
+
81
+ // Payload
82
+ int cloudsync_payload_apply (cloudsync_context *data, const char *payload, int blen, int *nrows);
83
+ int cloudsync_payload_encode_step (cloudsync_payload_context *payload, cloudsync_context *data, int argc, dbvalue_t **argv);
84
+ int cloudsync_payload_encode_final (cloudsync_payload_context *payload, cloudsync_context *data);
85
+ char *cloudsync_payload_blob (cloudsync_payload_context *payload, int64_t *blob_size, int64_t *nrows);
86
+ size_t cloudsync_payload_context_size (size_t *header_size);
87
+ int cloudsync_payload_get (cloudsync_context *data, char **blob, int *blob_size, int *db_version, int *seq, int64_t *new_db_version, int64_t *new_seq);
88
+ int cloudsync_payload_save (cloudsync_context *data, const char *payload_path, int *blob_size); // available only on Desktop OS (no WASM, no mobile)
89
+
90
+ // CloudSync table context
91
+ cloudsync_table_context *table_lookup (cloudsync_context *data, const char *table_name);
92
+ void *table_column_lookup (cloudsync_table_context *table, const char *col_name, bool is_merge, int *index);
93
+ bool table_enabled (cloudsync_table_context *table);
94
+ void table_set_enabled (cloudsync_table_context *table, bool value);
95
+ bool table_add_to_context (cloudsync_context *data, table_algo algo, const char *table_name);
96
+ bool table_pk_exists (cloudsync_table_context *table, const char *value, size_t len);
97
+ int table_count_cols (cloudsync_table_context *table);
98
+ int table_count_pks (cloudsync_table_context *table);
99
+ const char *table_colname (cloudsync_table_context *table, int index);
100
+ char **table_pknames (cloudsync_table_context *table);
101
+ void table_set_pknames (cloudsync_table_context *table, char **pknames);
102
+ bool table_algo_isgos (cloudsync_table_context *table);
103
+ int table_remove (cloudsync_context *data, cloudsync_table_context *table);
104
+ void table_free (cloudsync_table_context *table);
105
+
106
+ // local merge/apply
107
+ int local_mark_insert_sentinel_meta (cloudsync_table_context *table, const char *pk, size_t pklen, int64_t db_version, int seq);
108
+ int local_update_sentinel (cloudsync_table_context *table, const char *pk, size_t pklen, int64_t db_version, int seq);
109
+ int local_mark_insert_or_update_meta (cloudsync_table_context *table, const char *pk, size_t pklen, const char *col_name, int64_t db_version, int seq);
110
+ int local_mark_delete_meta (cloudsync_table_context *table, const char *pk, size_t pklen, int64_t db_version, int seq);
111
+ int local_drop_meta (cloudsync_table_context *table, const char *pk, size_t pklen);
112
+ int local_update_move_meta (cloudsync_table_context *table, const char *pk, size_t pklen, const char *pk2, size_t pklen2, int64_t db_version);
113
+
114
+ // used by changes virtual table
115
+ int merge_insert_col (cloudsync_context *data, cloudsync_table_context *table, const char *pk, int pklen, const char *col_name, dbvalue_t *col_value, int64_t col_version, int64_t db_version, const char *site_id, int site_len, int64_t seq, int64_t *rowid);
116
+ int merge_insert (cloudsync_context *data, cloudsync_table_context *table, const char *insert_pk, int insert_pk_len, int64_t insert_cl, const char *insert_name, dbvalue_t *insert_value, int64_t insert_col_version, int64_t insert_db_version, const char *insert_site_id, int insert_site_id_len, int64_t insert_seq, int64_t *rowid);
24
117
 
25
- int sqlite3_cloudsync_init (sqlite3 *db, char **pzErrMsg, const sqlite3_api_routines *pApi);
118
+ // decode bind context
119
+ char *cloudsync_pk_context_tbl (cloudsync_pk_decode_bind_context *ctx, int64_t *tbl_len);
120
+ void *cloudsync_pk_context_pk (cloudsync_pk_decode_bind_context *ctx, int64_t *pk_len);
121
+ char *cloudsync_pk_context_colname (cloudsync_pk_decode_bind_context *ctx, int64_t *colname_len);
122
+ int64_t cloudsync_pk_context_cl (cloudsync_pk_decode_bind_context *ctx);
123
+ int64_t cloudsync_pk_context_dbversion (cloudsync_pk_decode_bind_context *ctx);
26
124
 
27
125
  #ifdef __cplusplus
28
126
  }
@@ -1 +1 @@
1
- <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>CFBundleDevelopmentRegion</key> <string>en</string> <key>CFBundleExecutable</key> <string>CloudSync</string> <key>CFBundleIdentifier</key> <string>ai.sqlite.cloudsync</string> <key>CFBundleInfoDictionaryVersion</key> <string>6.0</string> <key>CFBundlePackageType</key> <string>FMWK</string> <key>CFBundleSignature</key> <string>????</string> <key>CFBundleVersion</key> <string>0.8.61</string> <key>CFBundleShortVersionString</key> <string>0.8.61</string> <key>MinimumOSVersion</key> <string>11.0</string> </dict> </plist>
1
+ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>CFBundleDevelopmentRegion</key> <string>en</string> <key>CFBundleExecutable</key> <string>CloudSync</string> <key>CFBundleIdentifier</key> <string>ai.sqlite.cloudsync</string> <key>CFBundleInfoDictionaryVersion</key> <string>6.0</string> <key>CFBundlePackageType</key> <string>FMWK</string> <key>CFBundleSignature</key> <string>????</string> <key>CFBundleVersion</key> <string>0.9.62</string> <key>CFBundleShortVersionString</key> <string>0.9.62</string> <key>MinimumOSVersion</key> <string>11.0</string> </dict> </plist>
@@ -6,11 +6,11 @@
6
6
  <dict>
7
7
  <key>Headers/CloudSync.h</key>
8
8
  <data>
9
- 9ueFZyUsqQ5BNA2HXFLnDHNcHTE=
9
+ qzgpWDH7WWMvoLhrUYPg1Uj7cBU=
10
10
  </data>
11
11
  <key>Info.plist</key>
12
12
  <data>
13
- JhAaxeCylWAyeO/HAlEh/Ci5G2k=
13
+ rOj3g7CkXKK2JKGIUtkdpa6v92U=
14
14
  </data>
15
15
  <key>Modules/module.modulemap</key>
16
16
  <data>
@@ -23,7 +23,7 @@
23
23
  <dict>
24
24
  <key>hash2</key>
25
25
  <data>
26
- aOkkQeaVhgtLlcvear4POgvLHmvJQTmEMjkRhIi0BqE=
26
+ EHxkRMX6Rp8cUxwl237VprMG6T8oA2lDvYXe5i2KpQQ=
27
27
  </data>
28
28
  </dict>
29
29
  <key>Modules/module.modulemap</key>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sqliteai/sqlite-sync-expo",
3
- "version": "0.8.61",
3
+ "version": "0.9.62",
4
4
  "description": "SQLite Sync extension for Expo - Sync on-device databases with SQLite Cloud",
5
5
  "main": "src/index.js",
6
6
  "types": "src/index.d.ts",