BetaWeekly digests are a beta — we're trying something new. Feedback welcome.
Config sync takes center stage across the Postgres CLI
August 31 – September 6, 2026
Supabase's CLI shipped a major rework of config management with new diff and pull commands, while PlanetScale added read-only replica management and Neon expanded to Europe. The Client SDK also gained realtime waiting and storage lifecycle controls.
Config management gets a diff-first overhaul
The dominant story this week is Supabase's systematic rebuild of how the CLI handles project configuration. The centerpiece is a new config diff command that lets developers compare configuration changes before applying them, paired with a config pull command that exports the public diffProjectConfig entrypoint. Together these give teams a proper review loop: pull the live state, diff it against local, push with confidence.
Under the hood, config push was rebuilt as diff-first partial updates instead of full overwrites, which means remote config is now patched surgically rather than clobbered. That's a meaningful safety improvement for teams who've been burned by accidental config destruction. The shadow baseline cache is now enabled by default (with opt-out), and pg-delta plan shadows got strategy-driven parallel provisioning for speed. There's also a fix for colliding schemas being skipped during migrations, and the CLI now accepts sbp_v0 tokens that were previously rejected.
A recurring theme is the migration toward v3.0.0: the baseline-tag requirement for config releases prevents semantic-release from accidentally cutting 1.0.0 from full monorepo history, and the config public surface was trimmed with a compiled build added. Workers also gained exposure control and an --instances flag across both the config package and the main CLI, plus a prompt for worker names and a unified output shape.
Client SDK: realtime, storage, and API introspection
The Supabase JS client had a productive week. The headline is waiting for Postgres changes in realtime, letting code pause until a specific pg change event fires — a genuinely useful primitive for event-driven flows and testing. Storage gained object versioning updates and bucket lifecycle configuration for automated policy management.
For API consumers, the PostgREST client now exposes a getOpenApiSpec() method to fetch the OpenAPI specification at runtime. Auth got a couple of polish fixes: a warning when schema is passed outside db options, and unenrolling unverified factors after failed registration. The canary versions of the realtime and OpenAPI features shipped earlier in the week confirm this is active, ongoing work.
PlanetScale and Neon expand their footprints
PlanetScale's CLI v0.329.0 brings read-only replica management commands, including replica selection for Postgres restores — useful for offloading read traffic or restoring from a specific replica. They also added an Authorization header option for webhooks, sent unchanged with every delivery, which matters for webhook-triggered automations like Cursor and Devin that need token auth.
Neon's big move is platform expansion: the backend is now available in AWS Europe (Frankfurt), joining US East (Ohio). The AI Gateway gained new model families including Fable 5.1, GLM 5.3 Flash, and Grok 4.6, and Neon is now a Grok Bot plugin. The CLI got a leaner neon init and neon env pull now writes function invocation URLs as environment variables. Meanwhile, a blog post on Lakebase Postgres pricing made the case for scale-to-zero economics, arguing teams shouldn't pay for idle instance hours.
The long tail
The remaining Supabase CLI releases are a steady stream of beta refinements: reading stdin on demand instead of eagerly, a warning when PowerShell mangles piped dumps, skipping provisioned ledger DDL, and injecting function slugs into served functions locally. Two auth release candidates also shipped but carry no user-facing changes beyond checksums.
Releases covered25
- Supabase CLI adds config diff command in @supabase/config v0.2.0
- Supabase CLI config v0.3.0 adds pull command and public diff export
- Supabase CLI v2.117.0-beta.18 rebuilds config push as diff-first partial updates
- Supabase CLI v2.117.0-beta.12 makes shadow baseline cache opt-out
- Supabase CLI v2.117.0-beta.11 speeds up pg-delta plan shadow provisioning
- Supabase CLI v2.117.0-beta.9 stops skipping colliding schemas
- Supabase CLI v2.117.0-beta.8 accepts sbp_v0 tokens
- Supabase CLI v3.0.0-beta.1 enforces baseline-tag required for config releases
- Supabase CLI v2.117.0-beta.15 trims config surface, adds compiled build
- Supabase CLI @supabase/config v0.4.0 adds worker exposure control and --instances flag
- Supabase CLI v3.0.0-beta.11 prompts for worker name
- Supabase CLI v3.0.0-beta.12 unifies workers command output shape
- Supabase JS Client SDK v2.113.0 adds wait for realtime Postgres changes
- Supabase JS v2.114.0 adds object versioning updates and auth factor fix
- Supabase Client SDK v2.116.0-canary.0 adds bucket lifecycle configuration
- Supabase JS v2.115.0 adds getOpenApiSpec() to PostgREST client
- Supabase JS v2.115.1-canary.0 warns on schema passed outside db options
- Supabase CLI v2.117.0-beta.20 reads stdin on demand
- Supabase CLI v3.0.0-beta.7 warns when PowerShell mangles piped dumps
- Supabase CLI v3.0.0-beta.10 skips provisioned ledger DDL
- Supabase CLI v3.0.0-beta.2 injects function slug into served functions