diff --git a/.changeset/big-shoes-care.md b/.changeset/big-shoes-care.md deleted file mode 100644 index b06e774fde..0000000000 --- a/.changeset/big-shoes-care.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@core/sync-service": patch ---- - -Fix `ELECTRIC_REPLICATION_STREAM_ID` not being able to be set because of incorrect parsing diff --git a/.changeset/chatty-adults-heal.md b/.changeset/chatty-adults-heal.md deleted file mode 100644 index 21524abff8..0000000000 --- a/.changeset/chatty-adults-heal.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@core/sync-service": patch ---- - -Add tracing of snapshot creation and more logging of postgres connection status. Prevent connection timeouts when writing snapshot data. Add `ELECTRIC_LOG_OTP_REPORTS` environment variable to enable OTP SASL reporting at runtime. diff --git a/.changeset/cyan-guests-lie.md b/.changeset/cyan-guests-lie.md deleted file mode 100644 index 1dee217c6b..0000000000 --- a/.changeset/cyan-guests-lie.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@core/sync-service": patch ---- - -Add `CLEANUP_REPLICATION_SLOTS_ON_SHUTDOWN` env var option to configure whether temporary replication slots are used, to allow easier cleanups on test deploys diff --git a/.changeset/eight-pugs-guess.md b/.changeset/eight-pugs-guess.md deleted file mode 100644 index 6ebdb1fc4a..0000000000 --- a/.changeset/eight-pugs-guess.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@core/sync-service": patch ---- - -Update acknowledged WAL on keep alive messages diff --git a/.changeset/friendly-toes-check.md b/.changeset/friendly-toes-check.md deleted file mode 100644 index 88f6fcabcc..0000000000 --- a/.changeset/friendly-toes-check.md +++ /dev/null @@ -1,8 +0,0 @@ ---- -"@electric-sql/client": minor -"@electric-sql/react": patch ---- - -- Implement `rows` and `currentRows` getters on `Shape` interface for easier data access. -- [BREAKING] Rename `valueSync` getter on `Shape` to `currentValue` for clarity and consistency. -- [BREAKING] Change `subscribe` API on `Shape` to accept callbacks with signature `({ rows: T[], value: Map }) => void` diff --git a/.changeset/fuzzy-rats-drive.md b/.changeset/fuzzy-rats-drive.md deleted file mode 100644 index f7b3202dd1..0000000000 --- a/.changeset/fuzzy-rats-drive.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@core/sync-service": patch ---- - -Consistently prefix environment variables with our ELECTRIC\_ namespace diff --git a/.changeset/hot-lions-smell.md b/.changeset/hot-lions-smell.md deleted file mode 100644 index 750e5e2b19..0000000000 --- a/.changeset/hot-lions-smell.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -"@electric-sql/client": minor -"@electric-sql/react": minor ---- - -All `Shape` interfaces (`ShapeStream`, `Shape`, `useShape`) now require `table` as an additional configuration parameter, and the shape API endpoint url only needs to point to `/v1/shape`. diff --git a/.changeset/new-eagles-deliver.md b/.changeset/new-eagles-deliver.md deleted file mode 100644 index 426128917c..0000000000 --- a/.changeset/new-eagles-deliver.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@core/sync-service": patch ---- - -Update OpenTelemetry dependencies diff --git a/.changeset/quiet-bees-prove.md b/.changeset/quiet-bees-prove.md deleted file mode 100644 index a0d1832bee..0000000000 --- a/.changeset/quiet-bees-prove.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@electric-sql/react": patch ---- - -Clear caches when cached stream is in errored state or is explicitly aborted diff --git a/.changeset/sharp-moons-provide.md b/.changeset/sharp-moons-provide.md deleted file mode 100644 index f85ab65a64..0000000000 --- a/.changeset/sharp-moons-provide.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -"@electric-sql/client": patch -"@core/sync-service": patch ---- - -Add `replica` parameter to change the behaviour for updates to include the full row, not just the modified columns diff --git a/.changeset/silly-pants-fetch.md b/.changeset/silly-pants-fetch.md deleted file mode 100644 index 16cff0dd32..0000000000 --- a/.changeset/silly-pants-fetch.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -"@electric-sql/client": minor -"@core/sync-service": minor ---- - -[breaking] Changes the API contract for the server to use new, clearer header names and query parameter names. One highlight is the change from `shape_id` to `handle` as the URL query parameter diff --git a/.changeset/tall-chairs-punch.md b/.changeset/tall-chairs-punch.md deleted file mode 100644 index 408d38d20a..0000000000 --- a/.changeset/tall-chairs-punch.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@core/sync-service": patch ---- - -Fix a possible deadlock issue when creating or updating multiple where-claused shapes that occured while updating the Postgres publication (only on PG 15+). Fix a possible race condition between reading the existing publication and writing the updated version. diff --git a/.changeset/tender-pens-cheer.md b/.changeset/tender-pens-cheer.md deleted file mode 100644 index 9a6e883e9f..0000000000 --- a/.changeset/tender-pens-cheer.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@core/sync-service": minor ---- - -[BREAKING] All shape API endpoints now accept `table` as a query parameter rather than a path parameter, so `/v1/shape/foo?offset=-1` now becomes `/v1/shape?table=foo&offset=-1`. diff --git a/packages/react-hooks/CHANGELOG.md b/packages/react-hooks/CHANGELOG.md index 72a0f55dd9..246b6a0a90 100644 --- a/packages/react-hooks/CHANGELOG.md +++ b/packages/react-hooks/CHANGELOG.md @@ -1,5 +1,23 @@ # @electric-sql/react +## 0.5.0 + +### Minor Changes + +- 4d872b6: All `Shape` interfaces (`ShapeStream`, `Shape`, `useShape`) now require `table` as an additional configuration parameter, and the shape API endpoint url only needs to point to `/v1/shape`. + +### Patch Changes + +- 61a18bd: - Implement `rows` and `currentRows` getters on `Shape` interface for easier data access. + - [BREAKING] Rename `valueSync` getter on `Shape` to `currentValue` for clarity and consistency. + - [BREAKING] Change `subscribe` API on `Shape` to accept callbacks with signature `({ rows: T[], value: Map }) => void` +- 9bd3673: Clear caches when cached stream is in errored state or is explicitly aborted +- Updated dependencies [61a18bd] +- Updated dependencies [4d872b6] +- Updated dependencies [aed079f] +- Updated dependencies [4d872b6] + - @electric-sql/client@0.7.0 + ## 0.4.7 ### Patch Changes diff --git a/packages/react-hooks/package.json b/packages/react-hooks/package.json index 5148694912..50cb9b74e5 100644 --- a/packages/react-hooks/package.json +++ b/packages/react-hooks/package.json @@ -1,6 +1,6 @@ { "name": "@electric-sql/react", - "version": "0.4.7", + "version": "0.5.0", "description": "React hooks for ElectricSQL", "type": "module", "main": "dist/cjs/index.cjs", diff --git a/packages/sync-service/CHANGELOG.md b/packages/sync-service/CHANGELOG.md index 38dc0189c6..bd6f3d200c 100644 --- a/packages/sync-service/CHANGELOG.md +++ b/packages/sync-service/CHANGELOG.md @@ -1,5 +1,23 @@ # @core/sync-service +## 0.8.0 + +### Minor Changes + +- 4d872b6: [breaking] Changes the API contract for the server to use new, clearer header names and query parameter names. One highlight is the change from `shape_id` to `handle` as the URL query parameter +- 4d872b6: [BREAKING] All shape API endpoints now accept `table` as a query parameter rather than a path parameter, so `/v1/shape/foo?offset=-1` now becomes `/v1/shape?table=foo&offset=-1`. + +### Patch Changes + +- 1cf8bf9: Fix `ELECTRIC_REPLICATION_STREAM_ID` not being able to be set because of incorrect parsing +- 16698ff: Add tracing of snapshot creation and more logging of postgres connection status. Prevent connection timeouts when writing snapshot data. Add `ELECTRIC_LOG_OTP_REPORTS` environment variable to enable OTP SASL reporting at runtime. +- c4d118d: Add `CLEANUP_REPLICATION_SLOTS_ON_SHUTDOWN` env var option to configure whether temporary replication slots are used, to allow easier cleanups on test deploys +- b110ed9: Update acknowledged WAL on keep alive messages +- 0873da2: Consistently prefix environment variables with our ELECTRIC\_ namespace +- 52caf48: Update OpenTelemetry dependencies +- aed079f: Add `replica` parameter to change the behaviour for updates to include the full row, not just the modified columns +- 85618d0: Fix a possible deadlock issue when creating or updating multiple where-claused shapes that occured while updating the Postgres publication (only on PG 15+). Fix a possible race condition between reading the existing publication and writing the updated version. + ## 0.7.7 ### Patch Changes diff --git a/packages/sync-service/package.json b/packages/sync-service/package.json index 7c55d35a69..9ec5816872 100644 --- a/packages/sync-service/package.json +++ b/packages/sync-service/package.json @@ -1,7 +1,7 @@ { "name": "@core/sync-service", "private": true, - "version": "0.7.7", + "version": "0.8.0", "scripts": { "publish:hex": "mix do deps.get, hex.publish --yes" } diff --git a/packages/typescript-client/CHANGELOG.md b/packages/typescript-client/CHANGELOG.md index 4e8b47cd39..a61f35974c 100644 --- a/packages/typescript-client/CHANGELOG.md +++ b/packages/typescript-client/CHANGELOG.md @@ -1,5 +1,19 @@ # @electric-sql/client +## 0.7.0 + +### Minor Changes + +- 61a18bd: - Implement `rows` and `currentRows` getters on `Shape` interface for easier data access. + - [BREAKING] Rename `valueSync` getter on `Shape` to `currentValue` for clarity and consistency. + - [BREAKING] Change `subscribe` API on `Shape` to accept callbacks with signature `({ rows: T[], value: Map }) => void` +- 4d872b6: All `Shape` interfaces (`ShapeStream`, `Shape`, `useShape`) now require `table` as an additional configuration parameter, and the shape API endpoint url only needs to point to `/v1/shape`. +- 4d872b6: [breaking] Changes the API contract for the server to use new, clearer header names and query parameter names. One highlight is the change from `shape_id` to `handle` as the URL query parameter + +### Patch Changes + +- aed079f: Add `replica` parameter to change the behaviour for updates to include the full row, not just the modified columns + ## 0.6.5 ### Patch Changes diff --git a/packages/typescript-client/package.json b/packages/typescript-client/package.json index 21c21f9ca0..891cfe1c3e 100644 --- a/packages/typescript-client/package.json +++ b/packages/typescript-client/package.json @@ -1,6 +1,6 @@ { "name": "@electric-sql/client", - "version": "0.6.5", + "version": "0.7.0", "description": "Postgres everywhere - your data, in sync, wherever you need it.", "type": "module", "main": "dist/cjs/index.cjs",