feat: Cloudflare DO SQLite persisted collection#1360
Merged
Conversation
|
5 tasks
More templates
@tanstack/angular-db
@tanstack/db
@tanstack/db-browser-wa-sqlite-persisted-collection
@tanstack/db-cloudflare-do-sqlite-persisted-collection
@tanstack/db-electron-sqlite-persisted-collection
@tanstack/db-ivm
@tanstack/db-node-sqlite-persisted-collection
@tanstack/db-react-native-sqlite-persisted-collection
@tanstack/db-sqlite-persisted-collection-core
@tanstack/electric-db-collection
@tanstack/offline-transactions
@tanstack/powersync-db-collection
@tanstack/query-db-collection
@tanstack/react-db
@tanstack/rxdb-db-collection
@tanstack/solid-db
@tanstack/svelte-db
@tanstack/trailbase-db-collection
@tanstack/vue-db
commit: |
Contributor
|
Size Change: 0 B Total Size: 110 kB ℹ️ View Unchanged
|
Contributor
|
Size Change: 0 B Total Size: 4.23 kB ℹ️ View Unchanged
|
38ea25f to
9ce6ae0
Compare
samwillis
approved these changes
Mar 16, 2026
Collaborator
samwillis
left a comment
There was a problem hiding this comment.
just need a patch changeset
37c3bf5 to
ca46819
Compare
fca6dae to
00164f5
Compare
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…ti-tab support Web Locks for per-collection leadership election, BroadcastChannel for cross-tab RPC transport, DB writer lock for SQLite write serialization, envelope dedup for exactly-once mutations, and leader heartbeats. Includes 15 unit tests with Web Locks/BroadcastChannel mocks. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
… follow-up branches Remove db-electron-sqlite-persisted-collection, db-node-sqlite-persisted-collection, and db-cloudflare-do-sqlite-persisted-collection from this branch so it contains only the core persistence packages (db, db-sqlite-persisted-collection-core, db-browser-wa-sqlite-persisted-collection, db-react-native-sqlite-persisted-collection). Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Restore db-node-sqlite-persisted-collection (better-sqlite3 driver) and db-cloudflare-do-sqlite-persisted-collection (Durable Object driver) with their test suites and e2e configurations. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
The node SQLite driver is needed by the electron package tests, so it has been moved to the kevin/persistence-electron branch instead. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…DO driver The rebase duplicated the applied_tx age-based pruning DELETE. The second copy used this.driver instead of the transaction driver parameter, which deadlocked the cloudflare DO driver's serialized queue. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…tures Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
The runtime bridge e2e test used exact equality which fails now that collections include virtual props ($collectionId, $key, $origin, $synced). Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…ommits These packages were removed from this branch before they were merged to main. Now that they're on main, the extraction commits incorrectly delete them during rebase. Restore them from main. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
af3a3ec to
7735fba
Compare
…e-cloudflare # Conflicts: # pnpm-lock.yaml
These were removed by the extraction commits but the packages are back on main now. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Follow-up to #1358 (core persistence). Adds the Cloudflare Durable Object SQLite persistence package:
db-cloudflare-do-sqlite-persisted-collection— Cloudflare Durable Object persistence with wrangler e2e testsTest plan
🤖 Generated with Claude Code