Skip to content

Commit

Permalink
chore: publish new package versions (beta) (#2145)
Browse files Browse the repository at this point in the history
This PR was opened by the [Changesets
release](https://github.com/changesets/action) GitHub action. When
you're ready to do a release, you can merge this and the packages will
be published to npm automatically. If you're not ready to do a release
yet, that's fine, whenever you add more changesets to main, this PR will
be updated.

⚠️⚠️⚠️⚠️⚠️⚠️

`main` is currently in **pre mode** so this branch has prereleases
rather than normal releases. If you want to exit prereleases, run
`changeset pre exit` on `main`.

⚠️⚠️⚠️⚠️⚠️⚠️

# Releases
## @electric-sql/experimental@0.1.2-beta.1

### Patch Changes

-   Updated dependencies [ade15b9]
-   Updated dependencies [1c28aee]
-   Updated dependencies [ade15b9]
-   Updated dependencies [dd5aeab]
    -   @electric-sql/client@1.0.0-beta.2

## @electric-sql/react@1.0.0-beta.2

### Patch Changes

- ade15b9: Expose `stream` in the useShape result data. This allows
React components to easily access the stream to match on.
-   Updated dependencies [ade15b9]
-   Updated dependencies [1c28aee]
-   Updated dependencies [ade15b9]
-   Updated dependencies [dd5aeab]
    -   @electric-sql/client@1.0.0-beta.2

## @electric-sql/client@1.0.0-beta.2

### Patch Changes

-   ade15b9: Expose `shape.stream` as public readonly property.

- 1c28aee: Start streaming only after at least one subscriber is
present.

-   ade15b9: Use "get" instead of "has" for checking searchParams

Not all implementations of JS have the has(name, value) syntax e.g.
Expo.

- dd5aeab: This PR adds support for function-based options in the
TypeScript client's params and headers. Functions can be either
synchronous or asynchronous and are resolved in parallel when needed.

    ```typescript
    const stream = new ShapeStream({
      url: 'http://localhost:3000/v1/shape',
      params: {
        table: 'items',
        userId: () => getCurrentUserId(),
        filter: async () => await getUserPreferences(),
      },
      headers: {
        Authorization: async () => `Bearer ${await getAccessToken()}`,
      },
    })
    ```

    ## Common Use Cases

    -   Authentication tokens that need to be refreshed
    -   User-specific parameters that may change
    -   Dynamic filtering based on current state
    -   Multi-tenant applications where context determines the request

## @core/elixir-client@0.2.6-beta.0

### Patch Changes

- 1b8dce0: Fix race condition where response comes before listener has
monitored itself.
- 71b8ab2: Add pool behaviour for the Elixir client to allow for
per-client persistent connections. Add request timestamp and shape
handle to replication stream messages.
- fc1796a: Fix stalled elixir client streams by ensuring that requests
are always made, even if calling process dies
- 01c63ae: Fix race condition in elixir client when multiple
simultaneous clients are streaming the same shape
- 9f0b96a: Add generic params to client config that are appended to
every request, remove database_id top-level config as it can be done via
the params.

## @core/sync-service@1.0.0-beta.2

### Patch Changes

- 8987142: Do not trap exits in `Electric.Shapes.Consumer` - not
handled.
- 218b7d4: fix: truncates no longer cause a stop to an incoming
replication stream
- 7caccbf: Return `202` for `waiting` and `starting` health status -
accepts requests but will fail to service them.
- d7e7c72: Introduced `PublicationManager` process to create and clean
up publication filters.

## @electric-sql/docs@0.0.2-beta.0

### Patch Changes

- dd5aeab: This PR adds support for function-based options in the
TypeScript client's params and headers. Functions can be either
synchronous or asynchronous and are resolved in parallel when needed.

    ```typescript
    const stream = new ShapeStream({
      url: "http://localhost:3000/v1/shape",
      params: {
        table: "items",
        userId: () => getCurrentUserId(),
        filter: async () => await getUserPreferences(),
      },
      headers: {
        Authorization: async () => `Bearer ${await getAccessToken()}`,
      },
    })
    ```

    ## Common Use Cases

    -   Authentication tokens that need to be refreshed
    -   User-specific parameters that may change
    -   Dynamic filtering based on current state
    -   Multi-tenant applications where context determines the request

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
  • Loading branch information
github-actions[bot] and github-actions[bot] authored Dec 19, 2024
1 parent 8840548 commit e3be748
Show file tree
Hide file tree
Showing 13 changed files with 129 additions and 8 deletions.
24 changes: 22 additions & 2 deletions .changeset/pre.json
Original file line number Diff line number Diff line change
Expand Up @@ -21,11 +21,31 @@
"@electric-examples/todo-app": "1.0.1",
"@electric-examples/write-patterns": "0.0.1",
"@electric-examples/yjs-provider": "0.0.1",
"@electric-sql/docs": "0.0.1"
"@electric-sql/docs": "0.0.1",
"@electric-examples/bash": "0.0.1",
"@electric-examples/nextjs": "0.0.1",
"@electric-examples/react": "0.0.1",
"@electric-examples/redis": "0.0.1",
"@electric-examples/remix": "0.0.1",
"@electric-examples/tanstack": "0.0.1"
},
"changesets": [
"beige-hotels-sin",
"beige-mice-notice",
"beige-snails-brush",
"breezy-boats-tease",
"fresh-beers-allow",
"gorgeous-bottles-mate",
"green-drinks-mix",
"healthy-comics-heal",
"polite-frogs-yell"
"lucky-boats-lie",
"lucky-cats-teach",
"mean-humans-clean",
"modern-poets-film",
"polite-frogs-yell",
"tender-seas-stare",
"wicked-papayas-tease",
"wild-bugs-raise",
"young-olives-lick"
]
}
10 changes: 10 additions & 0 deletions packages/elixir-client/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,15 @@
# @core/elixir-client

## 0.2.6-beta.0

### Patch Changes

- 1b8dce0: Fix race condition where response comes before listener has monitored itself.
- 71b8ab2: Add pool behaviour for the Elixir client to allow for per-client persistent connections. Add request timestamp and shape handle to replication stream messages.
- fc1796a: Fix stalled elixir client streams by ensuring that requests are always made, even if calling process dies
- 01c63ae: Fix race condition in elixir client when multiple simultaneous clients are streaming the same shape
- 9f0b96a: Add generic params to client config that are appended to every request, remove database_id top-level config as it can be done via the params.

## 0.2.5

### Patch Changes
Expand Down
2 changes: 1 addition & 1 deletion packages/elixir-client/package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "@core/elixir-client",
"private": true,
"version": "0.2.5",
"version": "0.2.6-beta.0",
"scripts": {
"publish:hex": "mix do deps.get, hex.publish --yes || true"
}
Expand Down
10 changes: 10 additions & 0 deletions packages/experimental/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,15 @@
# @electric-sql/experimental

## 0.1.2-beta.1

### Patch Changes

- Updated dependencies [ade15b9]
- Updated dependencies [1c28aee]
- Updated dependencies [ade15b9]
- Updated dependencies [dd5aeab]
- @electric-sql/client@1.0.0-beta.2

## 0.1.2-beta.0

### Patch Changes
Expand Down
2 changes: 1 addition & 1 deletion packages/experimental/package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "@electric-sql/experimental",
"description": "Experimental TypeScript features for ElectricSQL.",
"version": "0.1.2-beta.0",
"version": "0.1.2-beta.1",
"author": "ElectricSQL team and contributors.",
"bugs": {
"url": "https://github.com/electric-sql/electric/issues"
Expand Down
11 changes: 11 additions & 0 deletions packages/react-hooks/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,16 @@
# @electric-sql/react

## 1.0.0-beta.2

### Patch Changes

- ade15b9: Expose `stream` in the useShape result data. This allows React components to easily access the stream to match on.
- Updated dependencies [ade15b9]
- Updated dependencies [1c28aee]
- Updated dependencies [ade15b9]
- Updated dependencies [dd5aeab]
- @electric-sql/client@1.0.0-beta.2

## 1.0.0-beta.1

### Patch Changes
Expand Down
2 changes: 1 addition & 1 deletion packages/react-hooks/package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "@electric-sql/react",
"description": "React hooks for ElectricSQL",
"version": "1.0.0-beta.1",
"version": "1.0.0-beta.2",
"author": "ElectricSQL team and contributors.",
"bugs": {
"url": "https://github.com/electric-sql/electric/issues"
Expand Down
9 changes: 9 additions & 0 deletions packages/sync-service/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,14 @@
# @core/sync-service

## 1.0.0-beta.2

### Patch Changes

- 8987142: Do not trap exits in `Electric.Shapes.Consumer` - not handled.
- 218b7d4: fix: truncates no longer cause a stop to an incoming replication stream
- 7caccbf: Return `202` for `waiting` and `starting` health status - accepts requests but will fail to service them.
- d7e7c72: Introduced `PublicationManager` process to create and clean up publication filters.

## 1.0.0-beta.1

### Patch Changes
Expand Down
2 changes: 1 addition & 1 deletion packages/sync-service/package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "@core/sync-service",
"private": true,
"version": "1.0.0-beta.1",
"version": "1.0.0-beta.2",
"scripts": {
"publish:hex": "mix do deps.get, hex.publish --yes || true"
}
Expand Down
33 changes: 33 additions & 0 deletions packages/typescript-client/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,38 @@
# @electric-sql/client

## 1.0.0-beta.2

### Patch Changes

- ade15b9: Expose `shape.stream` as public readonly property.
- 1c28aee: Start streaming only after at least one subscriber is present.
- ade15b9: Use "get" instead of "has" for checking searchParams

Not all implementations of JS have the has(name, value) syntax e.g. Expo.

- dd5aeab: This PR adds support for function-based options in the TypeScript client's params and headers. Functions can be either synchronous or asynchronous and are resolved in parallel when needed.

```typescript
const stream = new ShapeStream({
url: 'http://localhost:3000/v1/shape',
params: {
table: 'items',
userId: () => getCurrentUserId(),
filter: async () => await getUserPreferences(),
},
headers: {
Authorization: async () => `Bearer ${await getAccessToken()}`,
},
})
```

## Common Use Cases

- Authentication tokens that need to be refreshed
- User-specific parameters that may change
- Dynamic filtering based on current state
- Multi-tenant applications where context determines the request

## 1.0.0-beta.1

### Patch Changes
Expand Down
2 changes: 1 addition & 1 deletion packages/typescript-client/package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "@electric-sql/client",
"description": "Postgres everywhere - your data, in sync, wherever you need it.",
"version": "1.0.0-beta.1",
"version": "1.0.0-beta.2",
"author": "ElectricSQL team and contributors.",
"bugs": {
"url": "https://github.com/electric-sql/electric/issues"
Expand Down
28 changes: 28 additions & 0 deletions website/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
# @electric-sql/docs

## 0.0.2-beta.0

### Patch Changes

- dd5aeab: This PR adds support for function-based options in the TypeScript client's params and headers. Functions can be either synchronous or asynchronous and are resolved in parallel when needed.

```typescript
const stream = new ShapeStream({
url: "http://localhost:3000/v1/shape",
params: {
table: "items",
userId: () => getCurrentUserId(),
filter: async () => await getUserPreferences(),
},
headers: {
Authorization: async () => `Bearer ${await getAccessToken()}`,
},
})
```

## Common Use Cases

- Authentication tokens that need to be refreshed
- User-specific parameters that may change
- Dynamic filtering based on current state
- Multi-tenant applications where context determines the request
2 changes: 1 addition & 1 deletion website/package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "@electric-sql/docs",
"private": true,
"version": "0.0.1",
"version": "0.0.2-beta.0",
"scripts": {
"api:generate": "redocly build-docs ./electric-api.yaml --output=./public/openapi.html",
"api:watch": "nodemon -w ./ -x \"npm run api:generate\" -e \"*.yaml\"",
Expand Down

0 comments on commit e3be748

Please sign in to comment.