@livestore/common 0.3.0-dev.24 → 0.3.0-dev.25

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 (49) hide show
  1. package/dist/.tsbuildinfo +1 -1
  2. package/dist/adapter-types.d.ts +4 -2
  3. package/dist/adapter-types.d.ts.map +1 -1
  4. package/dist/adapter-types.js +1 -1
  5. package/dist/adapter-types.js.map +1 -1
  6. package/dist/devtools/devtools-messages-client-session.d.ts +21 -21
  7. package/dist/devtools/devtools-messages-common.d.ts +6 -6
  8. package/dist/devtools/devtools-messages-leader.d.ts +24 -24
  9. package/dist/leader-thread/LeaderSyncProcessor.d.ts +2 -1
  10. package/dist/leader-thread/LeaderSyncProcessor.d.ts.map +1 -1
  11. package/dist/leader-thread/LeaderSyncProcessor.js +13 -11
  12. package/dist/leader-thread/LeaderSyncProcessor.js.map +1 -1
  13. package/dist/leader-thread/make-leader-thread-layer.d.ts.map +1 -1
  14. package/dist/leader-thread/make-leader-thread-layer.js +1 -0
  15. package/dist/leader-thread/make-leader-thread-layer.js.map +1 -1
  16. package/dist/leader-thread/mutationlog.d.ts +1 -0
  17. package/dist/leader-thread/mutationlog.d.ts.map +1 -1
  18. package/dist/leader-thread/mutationlog.js +1 -0
  19. package/dist/leader-thread/mutationlog.js.map +1 -1
  20. package/dist/schema/MutationEvent.d.ts +17 -1
  21. package/dist/schema/MutationEvent.d.ts.map +1 -1
  22. package/dist/schema/MutationEvent.js +18 -2
  23. package/dist/schema/MutationEvent.js.map +1 -1
  24. package/dist/sync/ClientSessionSyncProcessor.d.ts +2 -0
  25. package/dist/sync/ClientSessionSyncProcessor.d.ts.map +1 -1
  26. package/dist/sync/ClientSessionSyncProcessor.js +8 -5
  27. package/dist/sync/ClientSessionSyncProcessor.js.map +1 -1
  28. package/dist/sync/sync.d.ts +10 -0
  29. package/dist/sync/sync.d.ts.map +1 -1
  30. package/dist/sync/sync.js.map +1 -1
  31. package/dist/sync/syncstate.d.ts +26 -4
  32. package/dist/sync/syncstate.d.ts.map +1 -1
  33. package/dist/sync/syncstate.js +95 -25
  34. package/dist/sync/syncstate.js.map +1 -1
  35. package/dist/sync/syncstate.test.js +59 -28
  36. package/dist/sync/syncstate.test.js.map +1 -1
  37. package/dist/version.d.ts +1 -1
  38. package/dist/version.js +1 -1
  39. package/package.json +2 -2
  40. package/src/adapter-types.ts +4 -2
  41. package/src/leader-thread/LeaderSyncProcessor.ts +16 -12
  42. package/src/leader-thread/make-leader-thread-layer.ts +1 -0
  43. package/src/leader-thread/mutationlog.ts +1 -0
  44. package/src/schema/MutationEvent.ts +18 -2
  45. package/src/sync/ClientSessionSyncProcessor.ts +10 -4
  46. package/src/sync/sync.ts +10 -0
  47. package/src/sync/syncstate.test.ts +65 -31
  48. package/src/sync/syncstate.ts +116 -34
  49. package/src/version.ts +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"syncstate.test.js","sourceRoot":"","sources":["../../src/sync/syncstate.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"syncstate.test.js","sourceRoot":"","sources":["../../src/sync/syncstate.test.ts"],"names":[],"mappings":"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"}
package/dist/version.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- export declare const liveStoreVersion: "0.3.0-dev.24";
1
+ export declare const liveStoreVersion: "0.3.0-dev.25";
2
2
  /**
3
3
  * This version number is incremented whenever the internal storage format changes in a breaking way.
4
4
  * Whenever this version changes, LiveStore will start with fresh database files. Old database files are not deleted.
package/dist/version.js CHANGED
@@ -1,7 +1,7 @@
1
1
  // TODO bring back when Expo and Playwright supports `with` imports
2
2
  // import packageJson from '../package.json' with { type: 'json' }
3
3
  // export const liveStoreVersion = packageJson.version
4
- export const liveStoreVersion = '0.3.0-dev.24';
4
+ export const liveStoreVersion = '0.3.0-dev.25';
5
5
  /**
6
6
  * This version number is incremented whenever the internal storage format changes in a breaking way.
7
7
  * Whenever this version changes, LiveStore will start with fresh database files. Old database files are not deleted.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@livestore/common",
3
- "version": "0.3.0-dev.24",
3
+ "version": "0.3.0-dev.25",
4
4
  "type": "module",
5
5
  "sideEffects": false,
6
6
  "exports": {
@@ -54,7 +54,7 @@
54
54
  "graphology": "0.26.0-alpha1",
55
55
  "graphology-dag": "0.4.1",
56
56
  "graphology-types": "0.24.8",
57
- "@livestore/utils": "0.3.0-dev.24"
57
+ "@livestore/utils": "0.3.0-dev.25"
58
58
  },
59
59
  "devDependencies": {
60
60
  "vitest": "^3.0.8"
@@ -40,7 +40,9 @@ export interface ClientSession {
40
40
 
41
41
  export interface ClientSessionLeaderThreadProxy {
42
42
  mutations: {
43
- pull: Stream.Stream<{ payload: PayloadUpstream; remaining: number }, UnexpectedError>
43
+ pull: (args: {
44
+ cursor: EventId.EventId
45
+ }) => Stream.Stream<{ payload: PayloadUpstream; remaining: number }, UnexpectedError>
44
46
  /** It's important that a client session doesn't call `push` concurrently. */
45
47
  push(batch: ReadonlyArray<MutationEvent.AnyEncoded>): Effect.Effect<void, UnexpectedError | LeaderAheadError>
46
48
  }
@@ -164,7 +166,7 @@ export class UnexpectedError extends Schema.TaggedError<UnexpectedError>()('Live
164
166
  export class IntentionalShutdownCause extends Schema.TaggedError<IntentionalShutdownCause>()(
165
167
  'LiveStore.IntentionalShutdownCause',
166
168
  {
167
- reason: Schema.Literal('devtools-reset', 'devtools-import', 'manual'),
169
+ reason: Schema.Literal('devtools-reset', 'devtools-import', 'adapter-reset', 'manual'),
168
170
  },
169
171
  ) {}
170
172
 
@@ -74,6 +74,7 @@ export const makeLeaderSyncProcessor = ({
74
74
  dbMutationLog,
75
75
  clientId,
76
76
  initialBlockingSyncContext,
77
+ onError,
77
78
  }: {
78
79
  schema: LiveStoreSchema
79
80
  /** Only used to know whether we can safely query dbMutationLog during setup execution */
@@ -81,13 +82,14 @@ export const makeLeaderSyncProcessor = ({
81
82
  dbMutationLog: SqliteDb
82
83
  clientId: string
83
84
  initialBlockingSyncContext: InitialBlockingSyncContext
85
+ onError: 'shutdown' | 'ignore'
84
86
  }): Effect.Effect<LeaderSyncProcessor, UnexpectedError, Scope.Scope> =>
85
87
  Effect.gen(function* () {
86
88
  const syncBackendQueue = yield* BucketQueue.make<MutationEvent.EncodedWithMeta>()
87
89
 
88
90
  const syncStateSref = yield* SubscriptionRef.make<SyncState.SyncState | undefined>(undefined)
89
91
 
90
- const isLocalEvent = (mutationEventEncoded: MutationEvent.EncodedWithMeta) => {
92
+ const isClientEvent = (mutationEventEncoded: MutationEvent.EncodedWithMeta) => {
91
93
  const mutationDef = getMutationDef(schema, mutationEventEncoded.mutation)
92
94
  return mutationDef.options.clientOnly
93
95
  }
@@ -234,8 +236,10 @@ export const makeLeaderSyncProcessor = ({
234
236
 
235
237
  const shutdownOnError = (cause: unknown) =>
236
238
  Effect.gen(function* () {
237
- yield* shutdownChannel.send(UnexpectedError.make({ cause }))
238
- yield* Effect.die(cause)
239
+ if (onError === 'shutdown') {
240
+ yield* shutdownChannel.send(UnexpectedError.make({ cause }))
241
+ yield* Effect.die(cause)
242
+ }
239
243
  })
240
244
 
241
245
  yield* backgroundApplyLocalPushes({
@@ -245,7 +249,7 @@ export const makeLeaderSyncProcessor = ({
245
249
  syncStateSref,
246
250
  syncBackendQueue,
247
251
  schema,
248
- isLocalEvent,
252
+ isClientEvent,
249
253
  otelSpan,
250
254
  currentLocalPushGenerationRef,
251
255
  }).pipe(Effect.tapCauseLogPretty, Effect.catchAllCause(shutdownOnError), Effect.forkScoped)
@@ -265,7 +269,7 @@ export const makeLeaderSyncProcessor = ({
265
269
  yield* backgroundBackendPulling({
266
270
  dbReady,
267
271
  initialBackendHead,
268
- isLocalEvent,
272
+ isClientEvent,
269
273
  restartBackendPushing: (filteredRebasedPending) =>
270
274
  Effect.gen(function* () {
271
275
  // Stop current pushing fiber
@@ -319,7 +323,7 @@ const backgroundApplyLocalPushes = ({
319
323
  syncStateSref,
320
324
  syncBackendQueue,
321
325
  schema,
322
- isLocalEvent,
326
+ isClientEvent,
323
327
  otelSpan,
324
328
  currentLocalPushGenerationRef,
325
329
  }: {
@@ -329,7 +333,7 @@ const backgroundApplyLocalPushes = ({
329
333
  syncStateSref: SubscriptionRef.SubscriptionRef<SyncState.SyncState | undefined>
330
334
  syncBackendQueue: BucketQueue.BucketQueue<MutationEvent.EncodedWithMeta>
331
335
  schema: LiveStoreSchema
332
- isLocalEvent: (mutationEventEncoded: MutationEvent.EncodedWithMeta) => boolean
336
+ isClientEvent: (mutationEventEncoded: MutationEvent.EncodedWithMeta) => boolean
333
337
  otelSpan: otel.Span | undefined
334
338
  currentLocalPushGenerationRef: { current: number }
335
339
  }) =>
@@ -369,7 +373,7 @@ const backgroundApplyLocalPushes = ({
369
373
  const updateResult = SyncState.updateSyncState({
370
374
  syncState,
371
375
  payload: { _tag: 'local-push', newEvents },
372
- isLocalEvent,
376
+ isClientEvent,
373
377
  isEqualEvent: MutationEvent.isEqualEncoded,
374
378
  })
375
379
 
@@ -527,7 +531,7 @@ const makeApplyMutationItems: Effect.Effect<ApplyMutationItems, UnexpectedError,
527
531
  const backgroundBackendPulling = ({
528
532
  dbReady,
529
533
  initialBackendHead,
530
- isLocalEvent,
534
+ isClientEvent,
531
535
  restartBackendPushing,
532
536
  otelSpan,
533
537
  syncStateSref,
@@ -538,7 +542,7 @@ const backgroundBackendPulling = ({
538
542
  }: {
539
543
  dbReady: Deferred.Deferred<void>
540
544
  initialBackendHead: EventId.GlobalEventId
541
- isLocalEvent: (mutationEventEncoded: MutationEvent.EncodedWithMeta) => boolean
545
+ isClientEvent: (mutationEventEncoded: MutationEvent.EncodedWithMeta) => boolean
542
546
  restartBackendPushing: (
543
547
  filteredRebasedPending: ReadonlyArray<MutationEvent.EncodedWithMeta>,
544
548
  ) => Effect.Effect<void, UnexpectedError, LeaderThreadCtx | HttpClient.HttpClient>
@@ -587,9 +591,9 @@ const backgroundBackendPulling = ({
587
591
  const updateResult = SyncState.updateSyncState({
588
592
  syncState,
589
593
  payload: { _tag: 'upstream-advance', newEvents, trimRollbackUntil },
590
- isLocalEvent,
594
+ isClientEvent,
591
595
  isEqualEvent: MutationEvent.isEqualEncoded,
592
- ignoreLocalEvents: true,
596
+ ignoreClientEvents: true,
593
597
  })
594
598
 
595
599
  if (updateResult._tag === 'reject') {
@@ -71,6 +71,7 @@ export const makeLeaderThreadLayer = ({
71
71
  dbMutationLog,
72
72
  initialBlockingSyncContext,
73
73
  clientId,
74
+ onError: syncOptions?.onSyncError ?? 'ignore',
74
75
  })
75
76
 
76
77
  const extraIncomingMessagesQueue = yield* Queue.unbounded<Devtools.Leader.MessageToApp>().pipe(
@@ -7,6 +7,7 @@ import { MUTATION_LOG_META_TABLE, mutationLogMetaTable, SYNC_STATUS_TABLE } from
7
7
  import { prepareBindValues, sql } from '../util.js'
8
8
  import { LeaderThreadCtx } from './types.js'
9
9
 
10
+ /** Exclusive of the "since event" */
10
11
  export const getMutationEventsSince = (
11
12
  since: EventId.EventId,
12
13
  ): Effect.Effect<ReadonlyArray<MutationEvent.AnyEncoded>, never, LeaderThreadCtx> =>
@@ -178,10 +178,26 @@ export class EncodedWithMeta extends Schema.Class<EncodedWithMeta>('MutationEven
178
178
  }
179
179
  }
180
180
 
181
- rebase = (parentId: EventId.EventId, isLocal: boolean) =>
181
+ /**
182
+ * Example: (global event)
183
+ * For event id (2,0) → (1,0) which should be rebased on event id (3,1) → (3,0)
184
+ * the resulting event id will be (4,0) → (3,0)
185
+ *
186
+ * Example: (client event)
187
+ * For event id (2,1) → (2,0) which should be rebased on event id (3,0) → (2,0)
188
+ * the resulting event id will be (3,1) → (3,0)
189
+ *
190
+ * Syntax: (2,1) → (2,0)
191
+ * ^ ^ ^ ^
192
+ * | | | +- client parent id
193
+ * | | +--- global parent id
194
+ * | +-- client id
195
+ * +---- global id
196
+ */
197
+ rebase = (parentId: EventId.EventId, isClient: boolean) =>
182
198
  new EncodedWithMeta({
183
199
  ...this,
184
- ...EventId.nextPair(parentId, isLocal),
200
+ ...EventId.nextPair(parentId, isClient),
185
201
  })
186
202
 
187
203
  static fromGlobal = (mutationEvent: AnyEncodedGlobal) =>
@@ -17,6 +17,8 @@ import * as SyncState from './syncstate.js'
17
17
  * - The goal is to never block the UI, so we'll interrupt rebasing if a new mutations is pushed by the client session.
18
18
  * - We also want to avoid "backwards-jumping" in the UI, so we'll transactionally apply a read model changes during a rebase.
19
19
  * - We might need to make the rebase behaviour configurable e.g. to let users manually trigger a rebase
20
+ *
21
+ * Longer term we should evalutate whether we can unify the ClientSessionSyncProcessor with the LeaderSyncProcessor.
20
22
  */
21
23
  export const makeClientSessionSyncProcessor = ({
22
24
  schema,
@@ -64,7 +66,7 @@ export const makeClientSessionSyncProcessor = ({
64
66
  }
65
67
 
66
68
  const syncStateUpdateQueue = Queue.unbounded<SyncState.SyncState>().pipe(Effect.runSync)
67
- const isLocalEvent = (mutationEventEncoded: MutationEvent.EncodedWithMeta) =>
69
+ const isClientEvent = (mutationEventEncoded: MutationEvent.EncodedWithMeta) =>
68
70
  getMutationDef(schema, mutationEventEncoded.mutation).options.clientOnly
69
71
 
70
72
  /** We're queuing push requests to reduce the number of messages sent to the leader by batching them */
@@ -91,7 +93,7 @@ export const makeClientSessionSyncProcessor = ({
91
93
  const updateResult = SyncState.updateSyncState({
92
94
  syncState: syncStateRef.current,
93
95
  payload: { _tag: 'local-push', newEvents: encodedMutationEvents },
94
- isLocalEvent,
96
+ isClientEvent,
95
97
  isEqualEvent: MutationEvent.isEqualEncoded,
96
98
  })
97
99
 
@@ -166,7 +168,10 @@ export const makeClientSessionSyncProcessor = ({
166
168
 
167
169
  yield* FiberHandle.run(leaderPushingFiberHandle, backgroundLeaderPushing)
168
170
 
169
- yield* clientSession.leaderThread.mutations.pull.pipe(
171
+ // NOTE We need to lazily call `.pull` as we want the cursor to be updated
172
+ yield* Stream.suspend(() =>
173
+ clientSession.leaderThread.mutations.pull({ cursor: syncStateRef.current.localHead }),
174
+ ).pipe(
170
175
  Stream.tap(({ payload, remaining }) =>
171
176
  Effect.gen(function* () {
172
177
  // console.log('pulled payload from leader', { payload, remaining })
@@ -177,7 +182,7 @@ export const makeClientSessionSyncProcessor = ({
177
182
  const updateResult = SyncState.updateSyncState({
178
183
  syncState: syncStateRef.current,
179
184
  payload,
180
- isLocalEvent,
185
+ isClientEvent,
181
186
  isEqualEvent: MutationEvent.isEqualEncoded,
182
187
  })
183
188
 
@@ -259,6 +264,7 @@ export const makeClientSessionSyncProcessor = ({
259
264
  ),
260
265
  Stream.runDrain,
261
266
  Effect.forever, // NOTE Whenever the leader changes, we need to re-start the stream
267
+ Effect.interruptible,
262
268
  Effect.withSpan('client-session-sync-processor:pull'),
263
269
  Effect.tapCauseLogPretty,
264
270
  Effect.forkScoped,
package/src/sync/sync.ts CHANGED
@@ -19,6 +19,16 @@ export type SyncOptions = {
19
19
  backend?: SyncBackendConstructor<any>
20
20
  /** @default { _tag: 'Skip' } */
21
21
  initialSyncOptions?: InitialSyncOptions
22
+ /**
23
+ * What to do if there is an error during sync.
24
+ *
25
+ * Options:
26
+ * `shutdown` will stop the sync processor and cause the app to crash.
27
+ * `ignore` will log the error and let the app continue running acting as if it was offline.
28
+ *
29
+ * @default 'ignore'
30
+ * */
31
+ onSyncError?: 'shutdown' | 'ignore'
22
32
  }
23
33
 
24
34
  export type SyncBackendConstructor<TSyncMetadata = Schema.JsonValue> = (