Skip to content

Releases: electric-sql/electric

create-electric-app@0.1.1-next.0

23 Aug 09:01
7a03ea7
Compare
Choose a tag to compare
Pre-release

Patch Changes

  • 29c7cc3: Starter template for bootstrapping Electric applications.

@core/electric@0.5.0-next.6

23 Aug 08:59
6017643
Compare
Choose a tag to compare
Pre-release

Patch Changes

  • 11acadd: Allow for enabling SSL for PG connections via an env variable
  • 57324c4: Add server-side validation of row values incoming from Satellite clients
  • f60ce16: Implemented correct semantics for compensations to work across the stack
  • 3cf2bc2: Support for intersecting shape subscriptions
  • 571119a: Add a validation step in the electrify() function that only lets tables with supported column types to be electrified
  • 00d5a67: Add server-side enforcement of "NOT NULL" for values incoming from Satellite clients

@core/electric@0.5.0-next.5

23 Aug 09:01
7a03ea7
Compare
Choose a tag to compare
Pre-release

Patch Changes

  • 5fe00af: Fixed sync from subscription not respecting electric_user_id filtering

  • afaedcd: Make some configuration option names more descriptive. Namely,

    • rename ELECTRIC_HOST to LOGICAL_PUBLISHER_HOST
    • rename POSTGRES_REPLICATION_PORT to LOGICAL_PUBLISHER_PORT
    • rename STATUS_PORT to HTTP_API_PORT

    The first two options together define the host:port pair that the PostgreSQL database will connect to
    in order to start following Electric's logical replication stream that publishes inbound changes from all clients.

    The HTTP_API_PORT option is now more aptly named since Electric exposes more than just the status endpoint
    on that port.

electric-sql@0.5.0-next.4

01 Aug 15:34
e8c97a8
Compare
Choose a tag to compare
Pre-release

Patch Changes

  • 5567869: Use PascalCased model names in generated Prisma schema and map them to the original table names.
  • dc48f1f: Fixed liveMany, liveUnique, and liveFirst functions not exposing the include tables properly, making useLiveQuery miss some relevant updates
  • c588bdf: Fixed not sending all the transactions if more than one was done within a throttle window
  • 4531dde: Fix unreliable behaviour in the React useConnectivityState hook.
  • b29693e: Modify generated migrations file to be a .ts file instead of .js file
  • 18619ef: Fixed race condition in throttled perform snapshot
  • 232f7a5: Updated snapshotting function to be more efficient when handling a large oplog
  • 10bbae9: Moved better-sqlite3 to dependencies because CLI command uses it
  • 3cb872d: Chore: made _getMeta types more precise
  • 9db6891: Also fix casing in types that refer to model names
  • 7eab08e: Improved config.url parsing and SSL support.
  • f4184b1: Fix: ensure we do much more cleanup in useEffect returned functions and in close method of Satellite

@electric-sql/prisma-generator@1.0.2-next.0

01 Aug 15:34
e8c97a8
Compare
Choose a tag to compare

Patch Changes

  • 5567869: Use PascalCased model names in generated Prisma schema and map them to the original table names.
  • 9db6891: Also fix casing in types that refer to model names

@core/electric@0.5.0-next.4

01 Aug 15:34
e8c97a8
Compare
Choose a tag to compare
Pre-release

Patch Changes

  • f8cf910: Remove SchemaRegistry and use our cached knowledge of the pg schema to fulfill all requirements for knowledge of the replicated tables

electric-sql@0.5.0-next.3

24 Jul 15:41
a038492
Compare
Choose a tag to compare
Pre-release

Patch Changes

  • edfb298: Improved subscription data insertion to do batched inserts instead of one-by-one statements. Inserting a lot of data should be much faster.
  • a112a03: Fixed Satellite not handling mutliple concurrent subscription calls properly
  • 3345cf8: Bugfix: update the wa-sqlite driver to use the WebSocketFactory.
  • 80531f0: Fixed subscription being registered too late preventing deduplication
  • e165048: Fixed subscription data not triggering data changed notification and thus liveQuery not working as expected

@core/electric@0.5.0-next.3

24 Jul 15:41
a038492
Compare
Choose a tag to compare
Pre-release

Patch Changes

  • e4cbf80: Update Elixir to 1.15.4 to fix remote shell

electric-sql@0.5.0-next.2

20 Jul 21:07
2e171fc
Compare
Choose a tag to compare
Pre-release

Patch Changes

  • bd02d79: Fixed garbage collection on shape unsubscribe (also called on subscription errors), which caused the DELETEs performed by GC get noted in operations log and sent to the server, causing data loss
  • 49cbe27: Fixed using .sync() calls before the replication is established. Now we defer trying to subscribe until the replication is succesfully established if we're already in the process of connecting and starting.
  • 2e8bfdf: Fixed the client not being able to reconnect if the migrations were preloaded and the only operation was a subscription. In that case the client have never received any LSNs (because migrations didn't need to be sent), so reconnection yielded errors due to missing LSN but existing previously fulfilled subscriptions. We now send the LSN with the subscription data so even if it's the first and only received message, the client has enough information to proceed.
  • 93d7059: Fixed calls to the .sync() function when page reloads establishing a new subscription alongside existing one. Now we deduplicate subscription requests by hash of their contents, so no two exactly the same subscriptions are possible. This also solves calling <table>.sync() many times in multiple components - they will return the same promise.

@core/electric@0.5.0-next.2

20 Jul 21:07
2e171fc
Compare
Choose a tag to compare
Pre-release

Patch Changes

  • 089968d: Fixed the issue whereby calling electrify() on a previously electrified table caused a duplicate migration to be created and put onto the replication stream.
  • 8b8cc93: Fix a bug in schema version validation
  • e17b37e: Fix the bug where the client failed to restart the replication connection after completing the initial sync once.
  • 2e8bfdf: Fixed the client not being able to reconnect if the migrations were preloaded and the only operation was a subscription. In that case the client have never received any LSNs (because migrations didn't need to be sent), so reconnection yielded errors due to missing LSN but existing previously fulfilled subscriptions. We now send the LSN with the subscription data so even if it's the first and only received message, the client has enough information to proceed.
  • 3ca4917: Fixed an issue where sometimes subscription data would not be sent in absence of other writes to PG