$ the-wire · showcase
Swift Realtime goes actor-per-client, temporary replication slots land
By RepoJournal · Filed · About Supabase · Composed from the cited sources · methodology
supabase-swift rewrote its Realtime connection layer around a single isolation domain and a pure transition table, while supabase/etl added TEMPORARY replication slot support behind a breaking config change.
feat(realtime)!: collapse RealtimeClient and RealtimeChannel into actors on one executor supabase/supabase-swift
`RealtimeClientV2` is now `public actor RealtimeClient`, owning a private `RealtimeExecutor` and absorbing `ConnectionManager`, so each client and its channels share one isolation domain. This is marked breaking: any Swift code touching the old type or crossing its boundary must account for actor isolation.
feat(replication): Add support for TEMPORARY replication slots (#1084) supabase/etl
`ReplicationSlotConfig` gains a `persistence: ReplicationSlotPersistence` field, and `PgReplicationClient::create_slot` and `create_slot_with_transaction` now take `&ReplicationSlotConfig` instead of a failover boolean. Both are breaking changes for anything calling the client directly.
test: add fuzz and property tests for data-loss paths supabase/etl
A new fuzz target, `decode_pgoutput_tuple`, plus property tests across the core engine and the BigQuery, ClickHouse, DuckLake, Snowflake and Iceberg destinations came with one real fix: negative NUMERIC scales were decoded wrong, with `numeric(5,-2)` coming out as scale 2046.
fix(base/worker): guard cleanup-triggered early drop against in-flight requests supabase/edge-runtime
`TryCleanupIdleWorkers` retired workers on `req_ack_count == req_demand`, which is trivially true right after boot and in the gap between one request's ack and the next delivery, so a cleanup sweep could kill an isolate before a routed request arrived and surface as a 504. It now requires the worker to have stayed caught-up for `cleanup_idle_grace`.
feat(evals): add build-database-005-apply-schema-change CLI eval (CLI-2701) supabase/evals
supabase/evals added a CLI eval for the "new migration, apply, push" workflow, which showed up in 12,177 sessions of a 1% device sample with a 35% non-zero-exit rate, and a companion eval for reconciling local migration history against a hosted project.
Action items