diff --git a/.changeset/fix-comlink-dispose-listener.md b/.changeset/fix-comlink-dispose-listener.md deleted file mode 100644 index c407afdc2..000000000 --- a/.changeset/fix-comlink-dispose-listener.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@powersync/web": patch ---- - -Avoid binding `this` when disposing table change listeners in the web adapter to prevent Comlink serialization errors on close. diff --git a/.changeset/neat-bears-listen.md b/.changeset/neat-bears-listen.md deleted file mode 100644 index 7ac6bdc40..000000000 --- a/.changeset/neat-bears-listen.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@powersync/node': patch ---- - -DB operations will now throw a dedicated `ConnectionClosed` error when an attempt to perform an operation on a closed connection is made. diff --git a/.changeset/rare-windows-argue.md b/.changeset/rare-windows-argue.md deleted file mode 100644 index d7c5548d0..000000000 --- a/.changeset/rare-windows-argue.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -'@powersync/web': minor ---- - -- Fixed some edge cases where multiple tabs with OPFS can cause sync deadlocks. -- Fixed issue where calling `powerSync.close()` would cause a disconnect if using multiple tabs (the default should not be to disconnect if using multiple tabs) -- Improved shared sync implementation database delegation and opening strategy. diff --git a/.changeset/witty-steaks-worry.md b/.changeset/witty-steaks-worry.md deleted file mode 100644 index f92c5e058..000000000 --- a/.changeset/witty-steaks-worry.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@powersync/common': minor ---- - -- Improved serializing of upload and download errors for SyncStatus events. Some JS `Error`s are not cloneable, the JSON representation of a SyncStatus should now always be cloneable. diff --git a/demos/angular-supabase-todolist/package.json b/demos/angular-supabase-todolist/package.json index 875e79be2..5a0292707 100644 --- a/demos/angular-supabase-todolist/package.json +++ b/demos/angular-supabase-todolist/package.json @@ -23,7 +23,7 @@ "@angular/router": "^19.2.4", "@angular/service-worker": "^19.2.4", "@journeyapps/wa-sqlite": "^1.4.1", - "@powersync/web": "^1.30.0", + "@powersync/web": "^1.31.0", "@supabase/supabase-js": "^2.44.4", "rxjs": "~7.8.1", "tslib": "^2.6.3", diff --git a/demos/django-react-native-todolist/package.json b/demos/django-react-native-todolist/package.json index 516b1daf7..22ec173e3 100644 --- a/demos/django-react-native-todolist/package.json +++ b/demos/django-react-native-todolist/package.json @@ -13,7 +13,7 @@ "@expo/vector-icons": "^14.0.0", "@journeyapps/react-native-quick-sqlite": "^2.5.0", "@powersync/react": "^1.8.2", - "@powersync/react-native": "^1.28.0", + "@powersync/react-native": "^1.28.1", "@react-native-community/async-storage": "^1.12.1", "@react-native-community/masked-view": "^0.1.11", "@react-navigation/drawer": "^7.1.1", diff --git a/demos/example-capacitor/package.json b/demos/example-capacitor/package.json index 7b67bc174..f582f72f1 100644 --- a/demos/example-capacitor/package.json +++ b/demos/example-capacitor/package.json @@ -28,7 +28,7 @@ "@powersync/capacitor": "^0.2.0", "@journeyapps/wa-sqlite": "^1.4.1", "@powersync/react": "^1.8.2", - "@powersync/web": "^1.30.0", + "@powersync/web": "^1.31.0", "react": "^18.2.0", "react-dom": "^18.2.0", "react-router-dom": "^6.23.0" diff --git a/demos/example-electron-node/package.json b/demos/example-electron-node/package.json index 684a3c28f..0c94ef976 100644 --- a/demos/example-electron-node/package.json +++ b/demos/example-electron-node/package.json @@ -41,7 +41,7 @@ "webpack": "^5.90.1" }, "dependencies": { - "@powersync/node": "^0.15.1", + "@powersync/node": "^0.15.2", "better-sqlite3": "^12.2.0", "electron-squirrel-startup": "^1.0.1" } diff --git a/demos/example-electron/package.json b/demos/example-electron/package.json index 200000e8d..db0b95d7d 100644 --- a/demos/example-electron/package.json +++ b/demos/example-electron/package.json @@ -27,7 +27,7 @@ "@mui/x-data-grid": "^6.19.11", "express": "^4.19.2", "@powersync/react": "^1.8.2", - "@powersync/web": "^1.30.0", + "@powersync/web": "^1.31.0", "electron-squirrel-startup": "^1.0.0", "react": "^18.2.0", "react-dom": "^18.2.0", diff --git a/demos/example-nextjs/package.json b/demos/example-nextjs/package.json index 9d9be3314..412ef4102 100644 --- a/demos/example-nextjs/package.json +++ b/demos/example-nextjs/package.json @@ -19,7 +19,7 @@ "@mui/icons-material": "^5.15.18", "@mui/material": "^5.15.18", "@powersync/react": "^1.8.2", - "@powersync/web": "^1.30.0", + "@powersync/web": "^1.31.0", "lato-font": "^3.0.0", "lexical": "^0.15.0", "next": "14.2.3", diff --git a/demos/example-node/package.json b/demos/example-node/package.json index f1df7dacc..019c19fe1 100644 --- a/demos/example-node/package.json +++ b/demos/example-node/package.json @@ -10,7 +10,7 @@ "start": "node --import ./register.mjs src/main.ts" }, "dependencies": { - "@powersync/node": "^0.15.1", + "@powersync/node": "^0.15.2", "better-sqlite3": "^12.2.0", "better-sqlite3-multiple-ciphers": "^12.2.0", "dotenv": "^16.4.7", diff --git a/demos/example-vite-encryption/package.json b/demos/example-vite-encryption/package.json index b532ee9e3..54100ab49 100644 --- a/demos/example-vite-encryption/package.json +++ b/demos/example-vite-encryption/package.json @@ -11,7 +11,7 @@ "test:build": "pnpm build" }, "dependencies": { - "@powersync/web": "^1.30.0" + "@powersync/web": "^1.31.0" }, "devDependencies": { "@swc/core": "~1.6.0", diff --git a/demos/example-vite/package.json b/demos/example-vite/package.json index 7c79d798f..c5ae7b375 100644 --- a/demos/example-vite/package.json +++ b/demos/example-vite/package.json @@ -12,7 +12,7 @@ "test:build": "pnpm build && vitest run" }, "dependencies": { - "@powersync/web": "^1.30.0" + "@powersync/web": "^1.31.0" }, "devDependencies": { "@swc/core": "~1.6.0", diff --git a/demos/example-webpack/package.json b/demos/example-webpack/package.json index 31a3925d5..90f155fe4 100644 --- a/demos/example-webpack/package.json +++ b/demos/example-webpack/package.json @@ -9,7 +9,7 @@ "test:build": "pnpm build" }, "dependencies": { - "@powersync/web": "^1.30.0" + "@powersync/web": "^1.31.0" }, "devDependencies": { "@types/webpack": "^5.28.5", diff --git a/demos/react-multi-client/package.json b/demos/react-multi-client/package.json index a85258fd4..44599b701 100644 --- a/demos/react-multi-client/package.json +++ b/demos/react-multi-client/package.json @@ -12,7 +12,7 @@ "dependencies": { "@journeyapps/wa-sqlite": "^1.4.1", "@powersync/react": "^1.8.2", - "@powersync/web": "^1.30.0", + "@powersync/web": "^1.31.0", "@supabase/supabase-js": "^2.43.1", "@vitejs/plugin-react": "^4.2.1", "@webflow/webflow-cli": "^1.6.9", diff --git a/demos/react-native-barebones-opsqlite/package.json b/demos/react-native-barebones-opsqlite/package.json index 5b23e0281..98c4266ac 100644 --- a/demos/react-native-barebones-opsqlite/package.json +++ b/demos/react-native-barebones-opsqlite/package.json @@ -11,9 +11,9 @@ "dependencies": { "@azure/core-asynciterator-polyfill": "^1.0.2", "@op-engineering/op-sqlite": "^14.0.2", - "@powersync/op-sqlite": "^0.7.17", + "@powersync/op-sqlite": "^0.7.18", "@powersync/react": "^1.8.2", - "@powersync/react-native": "^1.28.0", + "@powersync/react-native": "^1.28.1", "react": "18.3.1", "react-native": "0.77.0" }, diff --git a/demos/react-native-supabase-group-chat/package.json b/demos/react-native-supabase-group-chat/package.json index 1249b9dc2..2c87d1e8e 100644 --- a/demos/react-native-supabase-group-chat/package.json +++ b/demos/react-native-supabase-group-chat/package.json @@ -23,7 +23,7 @@ "@expo/vector-icons": "^15.0.3", "@faker-js/faker": "^10.1.0", "@journeyapps/react-native-quick-sqlite": "^2.5.0", - "@powersync/react-native": "^1.28.0", + "@powersync/react-native": "^1.28.1", "@react-native-async-storage/async-storage": "2.2.0", "@react-navigation/bottom-tabs": "^7.4.0", "@react-navigation/elements": "^2.6.3", diff --git a/demos/react-native-supabase-todolist/package.json b/demos/react-native-supabase-todolist/package.json index 2d4be9a7a..7a18dacb9 100644 --- a/demos/react-native-supabase-todolist/package.json +++ b/demos/react-native-supabase-todolist/package.json @@ -14,7 +14,7 @@ "@journeyapps/react-native-quick-sqlite": "^2.5.0", "@powersync/attachments": "^2.4.1", "@powersync/react": "^1.8.2", - "@powersync/react-native": "^1.28.0", + "@powersync/react-native": "^1.28.1", "@react-native-community/masked-view": "^0.1.11", "@react-navigation/drawer": "^7.1.1", "@react-navigation/native": "^7.0.14", diff --git a/demos/react-native-web-supabase-todolist/package.json b/demos/react-native-web-supabase-todolist/package.json index 267f80a57..0eee58183 100644 --- a/demos/react-native-web-supabase-todolist/package.json +++ b/demos/react-native-web-supabase-todolist/package.json @@ -17,8 +17,8 @@ "@journeyapps/wa-sqlite": "^1.4.1", "@powersync/attachments": "^2.4.1", "@powersync/react": "^1.8.2", - "@powersync/react-native": "^1.28.0", - "@powersync/web": "^1.30.0", + "@powersync/react-native": "^1.28.1", + "@powersync/web": "^1.31.0", "@react-native-async-storage/async-storage": "1.23.1", "@react-navigation/bottom-tabs": "^7.2.0", "@react-navigation/drawer": "^7.1.1", diff --git a/demos/react-neon-tanstack-query-notes/package.json b/demos/react-neon-tanstack-query-notes/package.json index b1cdf0e91..77e0ee357 100644 --- a/demos/react-neon-tanstack-query-notes/package.json +++ b/demos/react-neon-tanstack-query-notes/package.json @@ -18,8 +18,8 @@ "@neondatabase/serverless": "^1.0.2", "@powersync/drizzle-driver": "^0.7.1", "@powersync/react": "^1.8.2", - "@powersync/tanstack-react-query": "^0.1.12", - "@powersync/web": "^1.30.0", + "@powersync/tanstack-react-query": "^0.1.13", + "@powersync/web": "^1.31.0", "@radix-ui/react-slot": "^1.2.4", "@radix-ui/react-toggle": "^1.1.10", "@tailwindcss/vite": "^4.1.17", diff --git a/demos/react-supabase-todolist-optional-sync/package.json b/demos/react-supabase-todolist-optional-sync/package.json index 7c48cac68..f6f2b0dd9 100644 --- a/demos/react-supabase-todolist-optional-sync/package.json +++ b/demos/react-supabase-todolist-optional-sync/package.json @@ -10,7 +10,7 @@ }, "dependencies": { "@powersync/react": "^1.8.2", - "@powersync/web": "^1.30.0", + "@powersync/web": "^1.31.0", "@emotion/react": "11.11.4", "@emotion/styled": "11.11.5", "@journeyapps/wa-sqlite": "^1.4.1", diff --git a/demos/react-supabase-todolist-sync-streams/package.json b/demos/react-supabase-todolist-sync-streams/package.json index 09ae10bb4..c81d3ba39 100644 --- a/demos/react-supabase-todolist-sync-streams/package.json +++ b/demos/react-supabase-todolist-sync-streams/package.json @@ -10,7 +10,7 @@ }, "dependencies": { "@powersync/react": "^1.8.2", - "@powersync/web": "^1.30.0", + "@powersync/web": "^1.31.0", "@emotion/react": "11.11.4", "@emotion/styled": "11.11.5", "@journeyapps/wa-sqlite": "^1.4.1", diff --git a/demos/react-supabase-todolist-tanstackdb/package.json b/demos/react-supabase-todolist-tanstackdb/package.json index 0771b8115..35a76b5a0 100644 --- a/demos/react-supabase-todolist-tanstackdb/package.json +++ b/demos/react-supabase-todolist-tanstackdb/package.json @@ -18,7 +18,7 @@ "@mui/material": "^5.15.12", "@mui/x-data-grid": "^6.19.6", "@powersync/react": "^1.8.2", - "@powersync/web": "^1.30.0", + "@powersync/web": "^1.31.0", "@supabase/supabase-js": "^2.39.7", "@tanstack/db": "^0.5.11", "@tanstack/powersync-db-collection": "^0.1.15", diff --git a/demos/react-supabase-todolist/package.json b/demos/react-supabase-todolist/package.json index 09ae10bb4..c81d3ba39 100644 --- a/demos/react-supabase-todolist/package.json +++ b/demos/react-supabase-todolist/package.json @@ -10,7 +10,7 @@ }, "dependencies": { "@powersync/react": "^1.8.2", - "@powersync/web": "^1.30.0", + "@powersync/web": "^1.31.0", "@emotion/react": "11.11.4", "@emotion/styled": "11.11.5", "@journeyapps/wa-sqlite": "^1.4.1", diff --git a/demos/vue-supabase-todolist/package.json b/demos/vue-supabase-todolist/package.json index b43ca5d2d..7f0971c62 100644 --- a/demos/vue-supabase-todolist/package.json +++ b/demos/vue-supabase-todolist/package.json @@ -11,7 +11,7 @@ "test:build": "pnpm build" }, "dependencies": { - "@powersync/web": "^1.30.0", + "@powersync/web": "^1.31.0", "@powersync/vue": "^0.4.1", "@mdi/font": "7.4.47", "@supabase/supabase-js": "^2.39.7", diff --git a/demos/yjs-react-supabase-text-collab/package.json b/demos/yjs-react-supabase-text-collab/package.json index 295ab9970..514aadda4 100644 --- a/demos/yjs-react-supabase-text-collab/package.json +++ b/demos/yjs-react-supabase-text-collab/package.json @@ -15,7 +15,7 @@ "@mui/material": "^5.15.12", "@mui/x-data-grid": "^6.19.6", "@powersync/react": "^1.8.2", - "@powersync/web": "^1.30.0", + "@powersync/web": "^1.31.0", "@supabase/supabase-js": "^2.39.8", "@tiptap/extension-collaboration": "2.2.2", "@tiptap/extension-collaboration-cursor": "2.2.2", diff --git a/packages/attachments/package.json b/packages/attachments/package.json index eff725bac..4bc431048 100644 --- a/packages/attachments/package.json +++ b/packages/attachments/package.json @@ -46,7 +46,7 @@ "test:exports": "attw --pack ." }, "peerDependencies": { - "@powersync/common": "workspace:^1.44.0" + "@powersync/common": "workspace:^1.45.0" }, "devDependencies": { "@powersync/common": "workspace:*", diff --git a/packages/common/CHANGELOG.md b/packages/common/CHANGELOG.md index aa779dc5c..bed30c64a 100644 --- a/packages/common/CHANGELOG.md +++ b/packages/common/CHANGELOG.md @@ -1,5 +1,11 @@ # @powersync/common +## 1.45.0 + +### Minor Changes + +- 133f376: - Improved serializing of upload and download errors for SyncStatus events. Some JS `Error`s are not cloneable, the JSON representation of a SyncStatus should now always be cloneable. + ## 1.44.0 ### Minor Changes @@ -620,7 +626,6 @@ - ca458d3: Updated logic to correspond with React Native Quick SQLite concurrent transactions. Added helper methods on transaction contexts. API changes include: - - Removal of synchronous DB operations in transactions: `execute`, `commit`, `rollback` are now async functions. `executeAsync`, `commitAsync` and `rollbackAsync` have been removed. - Transaction contexts now have `get`, `getAll` and `getOptional` helpers. - Added a default lock timeout of 2 minutes to aide with potential recursive lock/transaction requests. diff --git a/packages/common/package.json b/packages/common/package.json index 1d98f9100..532795bc5 100644 --- a/packages/common/package.json +++ b/packages/common/package.json @@ -1,6 +1,6 @@ { "name": "@powersync/common", - "version": "1.44.0", + "version": "1.45.0", "publishConfig": { "registry": "https://registry.npmjs.org/", "access": "public" diff --git a/packages/drizzle-driver/package.json b/packages/drizzle-driver/package.json index 27c387365..818f2e4b7 100644 --- a/packages/drizzle-driver/package.json +++ b/packages/drizzle-driver/package.json @@ -43,7 +43,7 @@ "test:exports": "attw --pack ." }, "peerDependencies": { - "@powersync/common": "workspace:^1.44.0", + "@powersync/common": "workspace:^1.45.0", "drizzle-orm": "<1.0.0" }, "devDependencies": { diff --git a/packages/kysely-driver/package.json b/packages/kysely-driver/package.json index bd39089b2..b27e37ed7 100644 --- a/packages/kysely-driver/package.json +++ b/packages/kysely-driver/package.json @@ -43,7 +43,7 @@ "test:exports": "attw --pack ." }, "peerDependencies": { - "@powersync/common": "workspace:^1.44.0" + "@powersync/common": "workspace:^1.45.0" }, "dependencies": { "kysely": "^0.28.0" diff --git a/packages/node/CHANGELOG.md b/packages/node/CHANGELOG.md index 891ed714c..36c994915 100644 --- a/packages/node/CHANGELOG.md +++ b/packages/node/CHANGELOG.md @@ -1,5 +1,13 @@ # @powersync/node +## 0.15.2 + +### Patch Changes + +- 133f376: DB operations will now throw a dedicated `ConnectionClosed` error when an attempt to perform an operation on a closed connection is made. +- Updated dependencies [133f376] + - @powersync/common@1.45.0 + ## 0.15.1 ### Patch Changes @@ -112,7 +120,6 @@ - 688265f: Use upstream better-sqlite3 dependency instead of the PowerSync fork. After upgrading: - 1. Ensure you no longer depend on the `@powersync/better-sqlite3` package: `npm uninstall @powersync/better-sqlite3`. 2. Unlike in older versions, the upstream `better-sqlite3` dependency is marked as optional since custom forks are supported too. diff --git a/packages/node/package.json b/packages/node/package.json index 03001da33..325d15f06 100644 --- a/packages/node/package.json +++ b/packages/node/package.json @@ -1,6 +1,6 @@ { "name": "@powersync/node", - "version": "0.15.1", + "version": "0.15.2", "publishConfig": { "registry": "https://registry.npmjs.org/", "access": "public" @@ -57,7 +57,7 @@ }, "homepage": "https://docs.powersync.com/", "peerDependencies": { - "@powersync/common": "workspace:^1.44.0", + "@powersync/common": "workspace:^1.45.0", "better-sqlite3": "12.x" }, "peerDependenciesMeta": { diff --git a/packages/powersync-op-sqlite/CHANGELOG.md b/packages/powersync-op-sqlite/CHANGELOG.md index 53aebf617..072bea933 100644 --- a/packages/powersync-op-sqlite/CHANGELOG.md +++ b/packages/powersync-op-sqlite/CHANGELOG.md @@ -1,5 +1,12 @@ # @powersync/op-sqlite +## 0.7.18 + +### Patch Changes + +- Updated dependencies [133f376] + - @powersync/common@1.45.0 + ## 0.7.17 ### Patch Changes @@ -155,7 +162,6 @@ - ddc0bd1: Updated op-sqlite upstream peer dependency from 11.x.x to support ^13.x.x and ^14.x.x, Noteworthy changes from version 11 to version 14 include: - 1. SQLite updated to 3.49.1 2. SQLCipher updated to 4.8.0 3. Monorepo config resolution, you may need to move your `op-sqlite` config from your application's `package.json` to the monorepo root `package.json` depending on where your package manager tool hoists modules (see [1](https://op-engineering.github.io/op-sqlite/docs/installation) and [2](https://github.com/OP-Engineering/op-sqlite/issues/264)). diff --git a/packages/powersync-op-sqlite/package.json b/packages/powersync-op-sqlite/package.json index 3c4c4ee8c..fdfca26af 100644 --- a/packages/powersync-op-sqlite/package.json +++ b/packages/powersync-op-sqlite/package.json @@ -1,6 +1,6 @@ { "name": "@powersync/op-sqlite", - "version": "0.7.17", + "version": "0.7.18", "description": "PowerSync - sync Postgres or MongoDB with SQLite in your React Native app for offline-first and real-time data", "source": "./src/index.ts", "main": "./lib/commonjs/index.js", @@ -66,7 +66,7 @@ }, "peerDependencies": { "@op-engineering/op-sqlite": "^13.0.0 || ^14.0.0", - "@powersync/common": "workspace:^1.44.0", + "@powersync/common": "workspace:^1.45.0", "react": "*", "react-native": "*" }, diff --git a/packages/react-native/CHANGELOG.md b/packages/react-native/CHANGELOG.md index 066da8171..37a4a6d50 100644 --- a/packages/react-native/CHANGELOG.md +++ b/packages/react-native/CHANGELOG.md @@ -1,5 +1,13 @@ # @powersync/react-native +## 1.28.1 + +### Patch Changes + +- Updated dependencies [133f376] + - @powersync/common@1.45.0 + - @powersync/react@1.8.2 + ## 1.28.0 ### Minor Changes @@ -958,7 +966,6 @@ - ca458d3: Updated logic to correspond with React Native Quick SQLite concurrent transactions. Added helper methods on transaction contexts. API changes include: - - Removal of synchronous DB operations in transactions: `execute`, `commit`, `rollback` are now async functions. `executeAsync`, `commitAsync` and `rollbackAsync` have been removed. - Transaction contexts now have `get`, `getAll` and `getOptional` helpers. - Added a default lock timeout of 2 minutes to aide with potential recursive lock/transaction requests. diff --git a/packages/react-native/package.json b/packages/react-native/package.json index b62773aad..02e840f9f 100644 --- a/packages/react-native/package.json +++ b/packages/react-native/package.json @@ -1,6 +1,6 @@ { "name": "@powersync/react-native", - "version": "1.28.0", + "version": "1.28.1", "publishConfig": { "registry": "https://registry.npmjs.org/", "access": "public" @@ -33,7 +33,7 @@ "homepage": "https://docs.powersync.com/", "peerDependencies": { "@journeyapps/react-native-quick-sqlite": "^2.5.0", - "@powersync/common": "workspace:^1.44.0", + "@powersync/common": "workspace:^1.45.0", "react": "*", "react-native": "*" }, diff --git a/packages/react/package.json b/packages/react/package.json index f236d6297..fe0f26e60 100644 --- a/packages/react/package.json +++ b/packages/react/package.json @@ -33,7 +33,7 @@ }, "homepage": "https://docs.powersync.com", "peerDependencies": { - "@powersync/common": "workspace:^1.44.0", + "@powersync/common": "workspace:^1.45.0", "react": "*" }, "devDependencies": { diff --git a/packages/tanstack-react-query/CHANGELOG.md b/packages/tanstack-react-query/CHANGELOG.md index bf53e84cf..8d51edd1a 100644 --- a/packages/tanstack-react-query/CHANGELOG.md +++ b/packages/tanstack-react-query/CHANGELOG.md @@ -1,5 +1,13 @@ # @powersync/tanstack-react-query +## 0.1.13 + +### Patch Changes + +- Updated dependencies [133f376] + - @powersync/common@1.45.0 + - @powersync/react@1.8.2 + ## 0.1.12 ### Patch Changes diff --git a/packages/tanstack-react-query/package.json b/packages/tanstack-react-query/package.json index 3fd1ab98d..e4aa9bf8f 100644 --- a/packages/tanstack-react-query/package.json +++ b/packages/tanstack-react-query/package.json @@ -1,6 +1,6 @@ { "name": "@powersync/tanstack-react-query", - "version": "0.1.12", + "version": "0.1.13", "publishConfig": { "registry": "https://registry.npmjs.org/", "access": "public" @@ -32,7 +32,7 @@ }, "homepage": "https://docs.powersync.com", "peerDependencies": { - "@powersync/common": "workspace:^1.44.0", + "@powersync/common": "workspace:^1.45.0", "react": "*" }, "dependencies": { diff --git a/packages/vue/package.json b/packages/vue/package.json index 3eef8d946..3145c3f88 100644 --- a/packages/vue/package.json +++ b/packages/vue/package.json @@ -33,7 +33,7 @@ "homepage": "https://docs.powersync.com", "peerDependencies": { "vue": "*", - "@powersync/common": "workspace:^1.44.0" + "@powersync/common": "workspace:^1.45.0" }, "devDependencies": { "@powersync/common": "workspace:*", diff --git a/packages/web/CHANGELOG.md b/packages/web/CHANGELOG.md index 51fe8d146..3dc137d57 100644 --- a/packages/web/CHANGELOG.md +++ b/packages/web/CHANGELOG.md @@ -1,5 +1,19 @@ # @powersync/web +## 1.31.0 + +### Minor Changes + +- 133f376: - Fixed some edge cases where multiple tabs with OPFS can cause sync deadlocks. + - Fixed issue where calling `powerSync.close()` would cause a disconnect if using multiple tabs (the default should not be to disconnect if using multiple tabs) + - Improved shared sync implementation database delegation and opening strategy. + +### Patch Changes + +- d0c67b1: Avoid binding `this` when disposing table change listeners in the web adapter to prevent Comlink serialization errors on close. +- Updated dependencies [133f376] + - @powersync/common@1.45.0 + ## 1.30.0 ### Minor Changes diff --git a/packages/web/package.json b/packages/web/package.json index a34b01abe..5235eb96a 100644 --- a/packages/web/package.json +++ b/packages/web/package.json @@ -1,6 +1,6 @@ { "name": "@powersync/web", - "version": "1.30.0", + "version": "1.31.0", "description": "PowerSync Web SDK", "main": "lib/src/index.js", "types": "lib/src/index.d.ts", @@ -62,7 +62,7 @@ "license": "Apache-2.0", "peerDependencies": { "@journeyapps/wa-sqlite": "^1.4.1", - "@powersync/common": "workspace:^1.44.0" + "@powersync/common": "workspace:^1.45.0" }, "dependencies": { "@powersync/common": "workspace:*", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 394b0ad36..f0355a129 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -277,7 +277,7 @@ importers: packages/drizzle-driver: dependencies: '@powersync/common': - specifier: workspace:^1.44.0 + specifier: workspace:^1.45.0 version: link:../common devDependencies: '@journeyapps/wa-sqlite': @@ -291,7 +291,7 @@ importers: version: 20.19.27 drizzle-orm: specifier: ^0.44.7 - version: 0.44.7(@op-engineering/op-sqlite@14.1.4(react-native@0.78.0(@babel/core@7.28.5)(@babel/preset-env@7.28.5(@babel/core@7.28.5))(@react-native-community/cli-server-api@15.0.1)(@types/react@19.2.7)(react@19.0.0))(react@19.0.0))(@opentelemetry/api@1.9.0)(@types/sql.js@1.4.9)(better-sqlite3@12.5.0)(kysely@0.28.9)(sql.js@1.13.0) + version: 0.44.7(@op-engineering/op-sqlite@14.1.4)(@opentelemetry/api@1.9.0)(@types/sql.js@1.4.9)(better-sqlite3@12.5.0)(kysely@0.28.9)(sql.js@1.13.0) vite: specifier: ^6.1.0 version: 6.4.1(@types/node@20.19.27)(jiti@1.21.7)(lightningcss@1.30.2)(terser@5.44.1)(yaml@2.8.2) @@ -305,7 +305,7 @@ importers: packages/kysely-driver: dependencies: '@powersync/common': - specifier: workspace:^1.44.0 + specifier: workspace:^1.45.0 version: link:../common kysely: specifier: ^0.28.0 @@ -359,7 +359,7 @@ importers: version: 12.5.0 drizzle-orm: specifier: ^0.44.7 - version: 0.44.7(@op-engineering/op-sqlite@14.1.4(react-native@0.78.0(@babel/core@7.28.5)(@babel/preset-env@7.28.5(@babel/core@7.28.5))(@react-native-community/cli-server-api@15.0.1)(@types/react@19.2.7)(react@19.0.0))(react@19.0.0))(@opentelemetry/api@1.9.0)(@types/sql.js@1.4.9)(better-sqlite3@12.5.0)(kysely@0.28.9)(sql.js@1.13.0) + version: 0.44.7(@op-engineering/op-sqlite@14.1.4)(@opentelemetry/api@1.9.0)(@types/sql.js@1.4.9)(better-sqlite3@12.5.0)(kysely@0.28.9)(sql.js@1.13.0) rollup: specifier: 4.14.3 version: 4.14.3 @@ -588,13 +588,13 @@ importers: version: 4.0.1 source-map-loader: specifier: ^5.0.0 - version: 5.0.0(webpack@5.104.1) + version: 5.0.0(webpack@5.104.1(webpack-cli@5.1.4)) stream-browserify: specifier: ^3.0.0 version: 3.0.0 terser-webpack-plugin: specifier: ^5.3.9 - version: 5.3.16(webpack@5.104.1) + version: 5.3.16(webpack@5.104.1(webpack-cli@5.1.4)) uuid: specifier: ^9.0.1 version: 9.0.1 @@ -17452,9 +17452,7 @@ snapshots: transitivePeerDependencies: - '@babel/core' - '@babel/preset-env' - - bufferutil - supports-color - - utf-8-validate '@react-native/normalize-colors@0.72.0': {} @@ -18931,17 +18929,17 @@ snapshots: '@webassemblyjs/ast': 1.14.1 '@xtuc/long': 4.2.2 - '@webpack-cli/configtest@2.1.1(webpack-cli@5.1.4)(webpack@5.104.1)': + '@webpack-cli/configtest@2.1.1(webpack-cli@5.1.4(webpack@5.104.1))(webpack@5.104.1(webpack-cli@5.1.4))': dependencies: webpack: 5.104.1(webpack-cli@5.1.4) webpack-cli: 5.1.4(webpack@5.104.1) - '@webpack-cli/info@2.0.2(webpack-cli@5.1.4)(webpack@5.104.1)': + '@webpack-cli/info@2.0.2(webpack-cli@5.1.4(webpack@5.104.1))(webpack@5.104.1(webpack-cli@5.1.4))': dependencies: webpack: 5.104.1(webpack-cli@5.1.4) webpack-cli: 5.1.4(webpack@5.104.1) - '@webpack-cli/serve@2.0.5(webpack-cli@5.1.4)(webpack@5.104.1)': + '@webpack-cli/serve@2.0.5(webpack-cli@5.1.4(webpack@5.104.1))(webpack@5.104.1(webpack-cli@5.1.4))': dependencies: webpack: 5.104.1(webpack-cli@5.1.4) webpack-cli: 5.1.4(webpack@5.104.1) @@ -20747,7 +20745,7 @@ snapshots: dotenv@16.6.1: {} - drizzle-orm@0.44.7(@op-engineering/op-sqlite@14.1.4(react-native@0.78.0(@babel/core@7.28.5)(@babel/preset-env@7.28.5(@babel/core@7.28.5))(@react-native-community/cli-server-api@15.0.1)(@types/react@19.2.7)(react@19.0.0))(react@19.0.0))(@opentelemetry/api@1.9.0)(@types/sql.js@1.4.9)(better-sqlite3@12.5.0)(kysely@0.28.9)(sql.js@1.13.0): + drizzle-orm@0.44.7(@op-engineering/op-sqlite@14.1.4)(@opentelemetry/api@1.9.0)(@types/sql.js@1.4.9)(better-sqlite3@12.5.0)(kysely@0.28.9)(sql.js@1.13.0): optionalDependencies: '@op-engineering/op-sqlite': 14.1.4(react-native@0.78.0(@babel/core@7.28.5)(@babel/preset-env@7.28.5(@babel/core@7.28.5))(@react-native-community/cli-server-api@15.0.1)(@types/react@19.2.7)(react@19.0.0))(react@19.0.0) '@opentelemetry/api': 1.9.0 @@ -27195,7 +27193,7 @@ snapshots: source-map-js@1.2.1: {} - source-map-loader@5.0.0(webpack@5.104.1): + source-map-loader@5.0.0(webpack@5.104.1(webpack-cli@5.1.4)): dependencies: iconv-lite: 0.6.3 source-map-js: 1.2.1 @@ -27596,7 +27594,7 @@ snapshots: optionalDependencies: '@swc/core': 1.6.13 - terser-webpack-plugin@5.3.16(webpack@5.104.1): + terser-webpack-plugin@5.3.16(webpack@5.104.1(webpack-cli@5.1.4)): dependencies: '@jridgewell/trace-mapping': 0.3.31 jest-worker: 27.5.1 @@ -28358,9 +28356,9 @@ snapshots: webpack-cli@5.1.4(webpack@5.104.1): dependencies: '@discoveryjs/json-ext': 0.5.7 - '@webpack-cli/configtest': 2.1.1(webpack-cli@5.1.4)(webpack@5.104.1) - '@webpack-cli/info': 2.0.2(webpack-cli@5.1.4)(webpack@5.104.1) - '@webpack-cli/serve': 2.0.5(webpack-cli@5.1.4)(webpack@5.104.1) + '@webpack-cli/configtest': 2.1.1(webpack-cli@5.1.4(webpack@5.104.1))(webpack@5.104.1(webpack-cli@5.1.4)) + '@webpack-cli/info': 2.0.2(webpack-cli@5.1.4(webpack@5.104.1))(webpack@5.104.1(webpack-cli@5.1.4)) + '@webpack-cli/serve': 2.0.5(webpack-cli@5.1.4(webpack@5.104.1))(webpack@5.104.1(webpack-cli@5.1.4)) colorette: 2.0.20 commander: 10.0.1 cross-spawn: 7.0.6 @@ -28525,7 +28523,7 @@ snapshots: neo-async: 2.6.2 schema-utils: 4.3.3 tapable: 2.3.0 - terser-webpack-plugin: 5.3.16(webpack@5.104.1) + terser-webpack-plugin: 5.3.16(webpack@5.104.1(webpack-cli@5.1.4)) watchpack: 2.5.0 webpack-sources: 3.3.3 optionalDependencies: diff --git a/tools/diagnostics-app/CHANGELOG.md b/tools/diagnostics-app/CHANGELOG.md index 5e7f3cdbc..ba7236cd6 100644 --- a/tools/diagnostics-app/CHANGELOG.md +++ b/tools/diagnostics-app/CHANGELOG.md @@ -1,5 +1,14 @@ # diagnostics-app +## 0.9.21 + +### Patch Changes + +- Updated dependencies [d0c67b1] +- Updated dependencies [133f376] + - @powersync/web@1.31.0 + - @powersync/react@1.8.2 + ## 0.9.20 ### Patch Changes diff --git a/tools/diagnostics-app/package.json b/tools/diagnostics-app/package.json index b703a2593..07e246833 100644 --- a/tools/diagnostics-app/package.json +++ b/tools/diagnostics-app/package.json @@ -1,6 +1,6 @@ { "name": "@powersync/diagnostics-app", - "version": "0.9.20", + "version": "0.9.21", "private": true, "scripts": { "dev": "vite",