All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Correctly send response within the request process for interruptible shapes (#111)
- Pin electric to only supported versions (#111)
- Correctly fetch query params within the Plug adapter (#111)
- Add new
phoenix_sync.installtask to simplify installation and configuration via igniter #93 - Allow for transforming the sync stream returned by
Phoenix.Sync.Router.sync/3using atransformfunction #99 - Add new
phx.sync.tanstack_db.setuptask to convert a new Phoenix app to use Tanstack DB and Vite igniter #102
- Bump
electricto version1.1.9#103
- Remove
Ectorequirement fromPhoenix.Sync.LiveView.sync_stream/4by allowing keyword-based shape definitions #95 - Ensure Electric stack is ready before calling the embedded API #104
- Forward HTTP request headers onto sync backend #107
- Update
electricto~> 1.1including new faster storage engine. - Update
electric_clientto~> 0.7.0which includestxidheaders in sync messages.
- Use 32-bit txid to ensure consistency with Electric sync messages (#71)
- Only enable sandbox if both
Ecto.SQLandElectricare installed (#86) - Fix liveview startup #87 (#88)
- Fix occasional compilation error when
Electricinstalled (#89) - Include
jasondependency if Elixir doesn't have built in JSON support (#90)
- A new
Phoenix.Sync.Shapethat maintains an live, in-memory representation of the current state of the database (#77) - Integration with
Ecto.Adapters.SQL.SandboxviaPhoenix.Sync.Sandboxto enable simulating updates to shapes within a test transaction (#73) - Interruptible shape endpoints using
Phoenix.Sync.Controller.sync_render/3(#65) - Support for defining shapes via a
changeset/1function (#70)
- Improve error messages caused by invalid module names (#74)
- Fix compilation errors when included with no
:ectodependency (#79)
- Both controller- and router-based shapes now return CORS headers for all requests requests (#62)
- Updated
electric_clientto supportEcto.ULID,:mapand:arraytypes (v0.6.3) - Updated
electricto latest version (v1.0.21)
Phoenix.Syncwill now emit a warning if the configuration is missing theenvsetting (#60)
- Updated to support latest Electric version (v1.0.13)
- Correctly resolve sync macro Plug within aliased
Phoenix.Routerscope (#40).
- Embedded client includes correct
content-typeheaders (#35). - Server errors are now propagated to the Liveview so they are not obscured by errors due to missing resume message (#37).
- Credentials and other configured params are now correctly included in the
Electric.Clientconfiguration (#38).
Phoenix.Sync.Writerfor handling optimistic writes in the client
- Updated to support Electric v1.0.1