@rocicorp/zero 1.7.0 → 1.8.0-canary.0

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 (118) hide show
  1. package/out/zero/package.js +1 -1
  2. package/out/zero/package.js.map +1 -1
  3. package/out/zero-cache/src/config/normalize.d.ts.map +1 -1
  4. package/out/zero-cache/src/config/normalize.js +2 -0
  5. package/out/zero-cache/src/config/normalize.js.map +1 -1
  6. package/out/zero-cache/src/config/zero-config.d.ts +45 -0
  7. package/out/zero-cache/src/config/zero-config.d.ts.map +1 -1
  8. package/out/zero-cache/src/config/zero-config.js +54 -1
  9. package/out/zero-cache/src/config/zero-config.js.map +1 -1
  10. package/out/zero-cache/src/custom/fetch.d.ts.map +1 -1
  11. package/out/zero-cache/src/custom/fetch.js +1 -14
  12. package/out/zero-cache/src/custom/fetch.js.map +1 -1
  13. package/out/zero-cache/src/custom-queries/transform-query.d.ts.map +1 -1
  14. package/out/zero-cache/src/custom-queries/transform-query.js +5 -6
  15. package/out/zero-cache/src/custom-queries/transform-query.js.map +1 -1
  16. package/out/zero-cache/src/server/backup-watermark-reader.js +35 -0
  17. package/out/zero-cache/src/server/backup-watermark-reader.js.map +1 -0
  18. package/out/zero-cache/src/server/change-streamer.d.ts.map +1 -1
  19. package/out/zero-cache/src/server/change-streamer.js +15 -7
  20. package/out/zero-cache/src/server/change-streamer.js.map +1 -1
  21. package/out/zero-cache/src/server/syncer.d.ts.map +1 -1
  22. package/out/zero-cache/src/server/syncer.js +1 -0
  23. package/out/zero-cache/src/server/syncer.js.map +1 -1
  24. package/out/zero-cache/src/server/worker-urls.d.ts +1 -0
  25. package/out/zero-cache/src/server/worker-urls.d.ts.map +1 -1
  26. package/out/zero-cache/src/server/worker-urls.js +2 -1
  27. package/out/zero-cache/src/server/worker-urls.js.map +1 -1
  28. package/out/zero-cache/src/services/change-source/pg/logical-replication/stream.d.ts.map +1 -1
  29. package/out/zero-cache/src/services/change-source/pg/logical-replication/stream.js +13 -2
  30. package/out/zero-cache/src/services/change-source/pg/logical-replication/stream.js.map +1 -1
  31. package/out/zero-cache/src/services/change-streamer/backup-cleanup-monitor-factory.d.ts +18 -0
  32. package/out/zero-cache/src/services/change-streamer/backup-cleanup-monitor-factory.d.ts.map +1 -0
  33. package/out/zero-cache/src/services/change-streamer/backup-cleanup-monitor-factory.js +17 -0
  34. package/out/zero-cache/src/services/change-streamer/backup-cleanup-monitor-factory.js.map +1 -0
  35. package/out/zero-cache/src/services/change-streamer/backup-monitor.d.ts +4 -89
  36. package/out/zero-cache/src/services/change-streamer/backup-monitor.d.ts.map +1 -1
  37. package/out/zero-cache/src/services/change-streamer/change-streamer.js.map +1 -1
  38. package/out/zero-cache/src/services/change-streamer/litestream3-backup-monitor.d.ts +93 -0
  39. package/out/zero-cache/src/services/change-streamer/litestream3-backup-monitor.d.ts.map +1 -0
  40. package/out/zero-cache/src/services/change-streamer/{backup-monitor.js → litestream3-backup-monitor.js} +7 -7
  41. package/out/zero-cache/src/services/change-streamer/{backup-monitor.js.map → litestream3-backup-monitor.js.map} +1 -1
  42. package/out/zero-cache/src/services/change-streamer/replica-monitor.d.ts +2 -2
  43. package/out/zero-cache/src/services/change-streamer/replica-monitor.js +2 -2
  44. package/out/zero-cache/src/services/change-streamer/replica-monitor.js.map +1 -1
  45. package/out/zero-cache/src/services/change-streamer/storer.d.ts +2 -1
  46. package/out/zero-cache/src/services/change-streamer/storer.d.ts.map +1 -1
  47. package/out/zero-cache/src/services/change-streamer/storer.js +44 -4
  48. package/out/zero-cache/src/services/change-streamer/storer.js.map +1 -1
  49. package/out/zero-cache/src/services/change-streamer/vfs-backup-monitor.d.ts +25 -0
  50. package/out/zero-cache/src/services/change-streamer/vfs-backup-monitor.d.ts.map +1 -0
  51. package/out/zero-cache/src/services/change-streamer/vfs-backup-monitor.js +140 -0
  52. package/out/zero-cache/src/services/change-streamer/vfs-backup-monitor.js.map +1 -0
  53. package/out/zero-cache/src/services/litestream/commands.js.map +1 -1
  54. package/out/zero-cache/src/services/litestream/vfs-watermark-reader.d.ts +44 -0
  55. package/out/zero-cache/src/services/litestream/vfs-watermark-reader.d.ts.map +1 -0
  56. package/out/zero-cache/src/services/litestream/vfs-watermark-reader.js +65 -0
  57. package/out/zero-cache/src/services/litestream/vfs-watermark-reader.js.map +1 -0
  58. package/out/zero-cache/src/services/litestream/vfs-watermark-worker-source.d.ts +11 -0
  59. package/out/zero-cache/src/services/litestream/vfs-watermark-worker-source.d.ts.map +1 -0
  60. package/out/zero-cache/src/services/litestream/vfs-watermark-worker-source.js +74 -0
  61. package/out/zero-cache/src/services/litestream/vfs-watermark-worker-source.js.map +1 -0
  62. package/out/zero-cache/src/services/litestream/vfs-watermark-worker.d.ts +42 -0
  63. package/out/zero-cache/src/services/litestream/vfs-watermark-worker.d.ts.map +1 -0
  64. package/out/zero-cache/src/services/litestream/vfs-watermark-worker.js +117 -0
  65. package/out/zero-cache/src/services/litestream/vfs-watermark-worker.js.map +1 -0
  66. package/out/zero-cache/src/services/replicator/incremental-sync.d.ts.map +1 -1
  67. package/out/zero-cache/src/services/replicator/incremental-sync.js +9 -2
  68. package/out/zero-cache/src/services/replicator/incremental-sync.js.map +1 -1
  69. package/out/zero-cache/src/services/replicator/notifier.d.ts +1 -0
  70. package/out/zero-cache/src/services/replicator/notifier.d.ts.map +1 -1
  71. package/out/zero-cache/src/services/replicator/notifier.js +7 -1
  72. package/out/zero-cache/src/services/replicator/notifier.js.map +1 -1
  73. package/out/zero-cache/src/services/replicator/replicator.d.ts +11 -1
  74. package/out/zero-cache/src/services/replicator/replicator.d.ts.map +1 -1
  75. package/out/zero-cache/src/services/replicator/replicator.js.map +1 -1
  76. package/out/zero-cache/src/services/view-syncer/client-handler.d.ts.map +1 -1
  77. package/out/zero-cache/src/services/view-syncer/client-handler.js +6 -2
  78. package/out/zero-cache/src/services/view-syncer/client-handler.js.map +1 -1
  79. package/out/zero-cache/src/services/view-syncer/connection-context-manager.d.ts +3 -1
  80. package/out/zero-cache/src/services/view-syncer/connection-context-manager.d.ts.map +1 -1
  81. package/out/zero-cache/src/services/view-syncer/connection-context-manager.js +12 -8
  82. package/out/zero-cache/src/services/view-syncer/connection-context-manager.js.map +1 -1
  83. package/out/zero-cache/src/services/view-syncer/view-syncer.d.ts +4 -0
  84. package/out/zero-cache/src/services/view-syncer/view-syncer.d.ts.map +1 -1
  85. package/out/zero-cache/src/services/view-syncer/view-syncer.js +14 -1
  86. package/out/zero-cache/src/services/view-syncer/view-syncer.js.map +1 -1
  87. package/out/zero-cache/src/types/processes.d.ts +25 -0
  88. package/out/zero-cache/src/types/processes.d.ts.map +1 -1
  89. package/out/zero-cache/src/types/processes.js +35 -2
  90. package/out/zero-cache/src/types/processes.js.map +1 -1
  91. package/out/zero-cache/src/workers/connect-params.d.ts +2 -1
  92. package/out/zero-cache/src/workers/connect-params.d.ts.map +1 -1
  93. package/out/zero-cache/src/workers/connect-params.js +15 -1
  94. package/out/zero-cache/src/workers/connect-params.js.map +1 -1
  95. package/out/zero-cache/src/workers/replicator.d.ts +2 -2
  96. package/out/zero-cache/src/workers/replicator.d.ts.map +1 -1
  97. package/out/zero-cache/src/workers/replicator.js +5 -2
  98. package/out/zero-cache/src/workers/replicator.js.map +1 -1
  99. package/out/zero-cache/src/workers/syncer.d.ts +17 -0
  100. package/out/zero-cache/src/workers/syncer.d.ts.map +1 -1
  101. package/out/zero-cache/src/workers/syncer.js +116 -1
  102. package/out/zero-cache/src/workers/syncer.js.map +1 -1
  103. package/out/zero-client/src/client/query-manager.d.ts +10 -0
  104. package/out/zero-client/src/client/query-manager.d.ts.map +1 -1
  105. package/out/zero-client/src/client/query-manager.js +19 -2
  106. package/out/zero-client/src/client/query-manager.js.map +1 -1
  107. package/out/zero-client/src/client/version.js +1 -1
  108. package/out/zero-client/src/client/zero.d.ts.map +1 -1
  109. package/out/zero-client/src/client/zero.js +5 -1
  110. package/out/zero-client/src/client/zero.js.map +1 -1
  111. package/out/zero-server/src/adapters/drizzle.d.ts +30 -7
  112. package/out/zero-server/src/adapters/drizzle.d.ts.map +1 -1
  113. package/out/zero-server/src/adapters/drizzle.js +4 -2
  114. package/out/zero-server/src/adapters/drizzle.js.map +1 -1
  115. package/out/zql/src/ivm/memory-source.d.ts.map +1 -1
  116. package/out/zql/src/ivm/memory-source.js +11 -0
  117. package/out/zql/src/ivm/memory-source.js.map +1 -1
  118. package/package.json +1 -1
@@ -49,6 +49,7 @@ function shutdownBeforeInitializationError() {
49
49
  var TTL_CLOCK_INTERVAL = 6e4;
50
50
  var ViewSyncerService = class {
51
51
  id;
52
+ createdAtMs = Date.now();
52
53
  connContextManager;
53
54
  #shard;
54
55
  #lc;
@@ -87,6 +88,7 @@ var ViewSyncerService = class {
87
88
  #initialized = resolver();
88
89
  #cvr;
89
90
  #pipelinesSynced = false;
91
+ #servedVersion = null;
90
92
  #expiredQueriesTimer = 0;
91
93
  #authMaintenanceTimer = 0;
92
94
  #setTimeout;
@@ -242,6 +244,12 @@ var ViewSyncerService = class {
242
244
  get rowCount() {
243
245
  return this.#cvrStore.rowCount;
244
246
  }
247
+ get servedVersion() {
248
+ return this.#servedVersion;
249
+ }
250
+ #markVersionServed(version) {
251
+ this.#servedVersion = version.stateVersion;
252
+ }
245
253
  #keepAliveUntil = 0;
246
254
  /**
247
255
  * Guarantees that the ViewSyncer will remain running for at least
@@ -872,6 +880,7 @@ var ViewSyncerService = class {
872
880
  const finalVersion = this.#cvr.version;
873
881
  await this.#catchupClients(lc, cvr, finalVersion, addQueries.map((q) => q.id), pokers);
874
882
  await startAsyncSpan(tracer, "vs.#syncQueryPipelineSet.pokeEnd", () => pokers.end(finalVersion));
883
+ this.#markVersionServed(finalVersion);
875
884
  const wallTime = performance.now() - start;
876
885
  lc.info?.(`finished processing queries (process: ${totalProcessTime} ms, wall: ${wallTime} ms)`);
877
886
  });
@@ -939,7 +948,10 @@ var ViewSyncerService = class {
939
948
  span.setAttribute("rowPatchCount", rowPatchCount);
940
949
  if (rowPatchCount) lc.debug?.(`sent ${rowPatchCount} row patches`);
941
950
  for (const patch of await configPatches) await pokers.addPatch(patch);
942
- if (!usePokers) await pokers.end(cvr.version);
951
+ if (!usePokers) {
952
+ await pokers.end(cvr.version);
953
+ this.#markVersionServed(cvr.version);
954
+ }
943
955
  });
944
956
  }
945
957
  #processChanges(lc, timer, changes, updater, pokers) {
@@ -1032,6 +1044,7 @@ var ViewSyncerService = class {
1032
1044
  this.#cvr = await this.#flushUpdater(lc, updater);
1033
1045
  const finalVersion = this.#cvr.version;
1034
1046
  await startAsyncSpan(tracer, "vs.#advancePipelines.pokeEnd", () => pokers.end(finalVersion));
1047
+ this.#markVersionServed(finalVersion);
1035
1048
  const wallTime = performance.now() - start;
1036
1049
  const totalProcessTime = timer.totalElapsed();
1037
1050
  lc.debug?.(`finished processing advancement of ${numChanges} changes ((process: ${totalProcessTime} ms, wall: ${wallTime} ms))`);