$ the-wire · showcase
CLI 2.120.0 ships persisted logs and OTel traces
By RepoJournal · Filed · About Supabase · Composed from the cited sources · methodology
Supabase CLI v2.120.0 lands the observability tooling that makes stack debugging and performance analysis possible, while ClickHouse replication gets two fixes that change what existing tables can do without a resync.
v2.120.0 supabase/cli
by github-actions[bot]
Service logs now persist to disk, ship to Analytics, and gain history through `stack logs`, and CLI runs can export OpenTelemetry traces for end-to-end performance analysis. Stack commands also accept short IDs from `stack list`. This is a minor release, so upgrading is a routine `brew upgrade supabase` or equivalent.
clickhouse: store timestamp columns as UTC supabase/etl
Postgres `timestamp` mapped to zoneless `DateTime64(6)`, so ClickHouse rendered values in the reader's time zone and filtering on the source value found nothing; `timestamp` and `timestamp[]` now map to `DateTime64(6, 'UTC')` like `timestamptz`. Existing tables with `timestamp` columns now fail with a type mismatch, so re-check destination schemas before the next replication run.
clickhouse: store NULL arrays as empty arrays supabase/etl
ClickHouse has no nullable arrays, so a top-level `NULL` array could not encode and stopped replication for every table. A `NULL` array is now stored as an empty array, making `NULL` and empty indistinguishable in ClickHouse, while `NULL` elements inside an array are kept and `NULL` in a required scalar column still fails.
feat(cli): upgrade pg-delta to 1.0.0-alpha.57 (#7020) supabase/cli
The CLI now bundles `@supabase/pg-delta@1.0.0-alpha.57` and `@supabase/pg-topo@1.0.0-alpha.8`. An unchanged declarative export no longer loses column grants from the grouped export, so `db` declarative sync stops planning spurious `REVOKE`s and becomes a no-op.
test(repo): fix live e2e reboot flake and cut cancellations (#7016) supabase/cli
The live e2e ssl reboot flake is fixed: `ssl-enforcement update` reboots the database and `get` could report the change applied before the reboot finished, landing the reboot in the next file and killing `migration up` with `57P01`. Tests now wait for a new postmaster after the toggle and the restore, and develop pushes no longer cancel a running live suite.