Abdullah Atta
8385bd41ea
core: do not connect sse or run sync if user is logged out
2023-01-19 10:57:27 +05:00
Abdullah Atta
c5489e3c4a
core: fix double refresh token requests on page refresh
2023-01-16 13:49:05 +05:00
Abdullah Atta
9116a24392
global: update license year to 2023
2023-01-16 13:48:28 +05:00
Abdullah Atta
15ed1b498a
core: use 15s timeout for remote sync
2023-01-13 17:18:44 +05:00
Abdullah Atta
d5793e9e4e
core: gracefully handle case where syncing device gets disconnected
2023-01-13 15:57:33 +05:00
Abdullah Atta
961b953f5a
web: refresh app on sync merge conflict
2023-01-13 14:45:45 +05:00
Abdullah Atta
b3c4dbb910
core: send sync aborted event on out-of-stack sync errors
2023-01-13 14:34:29 +05:00
Abdullah Atta
088235a46d
web: add support for disabling sync & auto sync
2023-01-03 21:46:11 +05:00
Abdullah Atta
f1a2afd9d6
core: do not sync vault key alone
...
this caused a sync loop because vault key is always synced regardless of
whether it has changed or not.
2022-12-02 11:24:56 +05:00
Abdullah Atta
0c0dff3b28
core: fix "Cannot send data if connection is not in "Connected" state"
2022-11-23 12:19:12 +05:00
Abdullah Atta
3ab6c4646c
core: use mutex to establish only 1 connection at a time
2022-11-23 12:19:12 +05:00
Abdullah Atta
349cd27650
core: refactor collector to do everything in 1 step
...
This will speed up the sync slightly since we aren't iterating over all
items twice. It also simplifies the code a bit.
2022-11-10 14:38:32 +05:00
Abdullah Atta
7b458a56b2
core: revert "make sync hub connection more reliable"
2022-10-26 08:51:18 +05:00
Abdullah Atta
73b09847b8
core: make sync hub connection more reliable
2022-10-17 22:46:31 +05:00
Ammar Ahmed
e5e965415d
feat: realtime & auto sync for all users ( #944 )
2022-09-20 18:33:55 +05:00
Abdullah Atta
ca0d746966
core: fail fast if sync connection fails
...
this adds reslience to the sync logic in cases where network
isn't responding or is very slow to respond. Previously there were
cases where the sync would get stuck in Connecting state.
This will no longer happen.
2022-09-19 16:20:12 +05:00
ammarahm-ed
c8dc5207b4
core: fix auto sync does not send sync complete event
2022-09-08 18:30:49 +05:00
Abdullah Atta
201366b39e
core: get rid of noteIds in notebook topics
...
This is a BREAKING change in the core & will require updating the
clients. The way it works is instead of keeping noteIds of all the
notes in the topic, it keeps an in-memory cache. This in-memory
cache `topicReferences` lives in the notes collection & decouples
notes from notebooks/topics. This also simplifies all the different
actions where references would persist after the note was deleted.
Since the note acts as the source of truth for where it currently is,
there is nothing else to do except rebuild the `topicReferences`
cache.
2022-09-08 13:39:06 +05:00
Abdullah Atta
d81f5dba65
refactor: migrate to theme-ui from rebass
2022-08-31 07:26:27 +05:00
Abdullah Atta
c317774c8a
docs: add license header
2022-08-30 16:17:04 +05:00
thecodrr
f1ceecf982
fix: log error (as warning) during connection check
2022-08-16 09:23:49 +05:00
thecodrr
e4b1399d45
fix: refresh monographs on sync complete
2022-08-15 19:08:43 +05:00
thecodrr
cf9bad7db8
fix: content type being set to "content" during sync
...
this bug broke export/publishing & basically
everything that depends on content type
to function.
2022-08-06 10:45:15 +05:00
thecodrr
b4db7d5923
fix: avoid sync locking
2022-07-20 17:39:02 +05:00
thecodrr
e0d2cbc019
fix: make sure connection is disconnected before reconnecting
2022-07-20 16:55:48 +05:00
thecodrr
93be4c7e31
fix: reconnect synchub if connection has been closed
2022-07-20 16:47:29 +05:00
thecodrr
32d4cfa594
feat: disable interruptible syncing
2022-07-20 07:19:48 +05:00
thecodrr
530a1cc625
feat: add log messages all over the place
2022-07-19 11:16:46 +05:00
thecodrr
732ef2cac8
fix: check for conflicts before syncing
2022-07-15 15:48:13 +05:00
thecodrr
27dade850a
fix: properly handle concurrent syncs
2022-07-09 21:24:18 +05:00
thecodrr
e67ee7534e
fix: throw error if sync is already in progress
2022-07-08 12:13:03 +05:00
thecodrr
f774948838
fix: speed up sync by skipping negotiation
2022-04-14 01:10:46 +05:00
thecodrr
7b57b0b916
fix: parse & throw json errors from signalr errors
2022-04-13 16:46:19 +05:00
thecodrr
0a7f80cad5
fix: data collection & upload progress on sync
2022-04-01 20:03:00 +05:00
thecodrr
f8bb3d2d71
fix: improve fetch items progress
2022-04-01 14:50:12 +05:00
thecodrr
d2e6cffa55
fix: resolve if device synced
2022-04-01 10:38:43 +05:00
thecodrr
9378a205d7
fix: make fetch queue properly async
2022-03-31 17:14:09 +05:00
thecodrr
c234c87a76
feat: use messagepack for syncing
2022-03-31 16:18:34 +05:00
thecodrr
2d6824cc73
fix: set last synced time from server if there is nothing to sync locally
2022-03-31 11:37:13 +05:00
thecodrr
baa2b8ab81
fix: incorrect upload progress
2022-03-31 10:33:38 +05:00
thecodrr
e02f368f4c
fix: force sync & sync progress
2022-03-31 09:40:51 +05:00
thecodrr
054cd5e8f2
fix: wait for fetching to complete
2022-03-31 00:08:21 +05:00
thecodrr
32a2d79409
fix: process sync items after fetch completes
2022-03-30 23:16:38 +05:00
thecodrr
2cbe8dffd8
feat: make sync more resilient
2022-03-30 20:45:16 +05:00
thecodrr
4db686d7f8
fix: generate id per sync instead of using connection id
2022-03-30 16:52:09 +05:00
thecodrr
854b45f8fc
fix: clear sync queue on finish
2022-03-30 16:36:21 +05:00
thecodrr
4135028137
feat: improve sync over websockets
2022-03-30 15:52:48 +05:00
thecodrr
ffd71b2cae
fix: allow concurrent sync
2022-03-28 15:00:27 +05:00
thecodrr
91ae3bc581
fix: ignore newly synced items
2022-03-28 13:31:18 +05:00
thecodrr
e81be52386
fix: run sync on realtime sync completed
2022-03-28 13:08:28 +05:00