Skip to content

fix(pg-delta): declarative apply error results - #5082

Merged
avallete merged 3 commits into
developfrom
fix/db-declarative-export-pgmq
Apr 15, 2026
Merged

fix(pg-delta): declarative apply error results#5082
avallete merged 3 commits into
developfrom
fix/db-declarative-export-pgmq

Conversation

@avallete

Copy link
Copy Markdown
Member

What kind of change does this PR introduce?

  • Improve readability report for decalrative appy errors wrapping

Before:

failed to parse pg-delta apply output: json: cannot unmarshal object into Go struct field ApplyResult.stuckStatements of type string stdout: {"status":"stuck","totalStatements":15,"totalRounds":2,"totalApplied":10,"totalSkipped":0,"errors":[],"stuckStatements":[{"statement":{"id":"cluster/extensions/pgmq.sql:0","sql":"CREATE EXTENSION pgmq WITH SCHEMA pgmq;","statementClass":"CREATE_EXTENSION"},"code":"3F000","message":"schema \"pgmq\" does not exist","isDependencyError":true},{"statement":{"id":"schemas/public/functions/pgmq_read.sql:0","sql":"CREATE FUNCTION public.pgmq_read (\n queue_name text,\n sleep_seconds integer DEFAULT 0,\n n integer DEFAULT 1\n)\n RETURNS SETOF pgmq.message_record\n LANGUAGE plpgsql\n SECURITY DEFINER\n SET search_path TO 'pgmq'\n AS $function$\nBEGIN\n -- Validate input parameters\n IF queue_name IS NULL OR queue_name = '' THEN\n RAISE EXCEPTION 'queue_name cannot be null or empty';\n END IF;\n \n IF sleep_seconds IS NULL OR sleep_seconds < 0 THEN\n RAISE EXCEPTION 'sleep_seconds must be non-negative, got: %', sleep_seconds;\n END IF;\n \n IF n IS NULL OR n <= 0 THEN\n RAISE EXCEPTION 'n must be a positive integer, got: %', n;\n END IF;\n \n RETURN QUERY\n SELECT * FROM pgmq.read(queue_name, sleep_seconds, n);\nEND;\n$function$;","statementClass":"CREATE_FUNCTION"},"code":"3F000","message":"schema \"pgmq\" does not exist","isDependencyError":true},{"statement":{"id":"schemas/public/functions/pgmq_read.sql:1","sql":"GRANT ALL ON FUNCTION public.pgmq_read(text, integer, integer) TO anon;","statementClass":"GRANT"},"code":"42883","message":"function public.pgmq_read(text, integer, integer) does not exist","isDependencyError":true},{"statement":{"id":"schemas/public/functions/pgmq_read.sql:2","sql":"GRANT ALL ON FUNCTION public.pgmq_read(text, integer, integer) TO authenticated;","statementClass":"GRANT"},"code":"42883","message":"function public.pgmq_read(text, integer, integer) does not exist","isDependencyError":true},{"statement":{"id":"schemas/public/functions/pgmq_read.sql:3","sql":"GRANT ALL ON FUNCTION public.pgmq_read(text, integer, integer) TO service_role;","statementClass":"GRANT"},"code":"42883","message":"function public.pgmq_read(text, integer, integer) does not exist","isDependencyError":true}]}

After:

Applying declarative schemas via pg-delta...
pg-delta apply returned status "stuck".
28/33 statements applied in 2 round(s); 0 skipped.
Stuck statements:
- cluster/extensions/pgmq.sql:0 [CREATE_EXTENSION]
schema "pgmq" does not exist (SQLSTATE 3F000, dependency error)
SQL: CREATE EXTENSION pgmq WITH SCHEMA pgmq;
- schemas/public/functions/pgmq_read.sql:0 [CREATE_FUNCTION]
schema "pgmq" does not exist (SQLSTATE 3F000, dependency error)
SQL: CREATE FUNCTION public.pgmq_read ( queue_name text, sleep_seconds integer DEFAULT 0, n integer DEFAULT 1 ) RETURNS SE...
- schemas/public/functions/pgmq_read.sql:1 [GRANT]
function public.pgmq_read(text, integer, integer) does not exist (SQLSTATE 42883, dependency error)
SQL: GRANT ALL ON FUNCTION public.pgmq_read(text, integer, integer) TO anon;
- schemas/public/functions/pgmq_read.sql:2 [GRANT]
function public.pgmq_read(text, integer, integer) does not exist (SQLSTATE 42883, dependency error)
SQL: GRANT ALL ON FUNCTION public.pgmq_read(text, integer, integer) TO authenticated;
- schemas/public/functions/pgmq_read.sql:3 [GRANT]
function public.pgmq_read(text, integer, integer) does not exist (SQLSTATE 42883, dependency error)
SQL: GRANT ALL ON FUNCTION public.pgmq_read(text, integer, integer) TO service_role;
Debug information saved to supabase/.temp/pgdelta/debug/20260414-163345
To report this issue, you can:
1. Open an issue at https://github.com/supabase/pg-toolbelt/issues
Attach the files from the debug folder above.
2. Open a support ticket at https://supabase.com/dashboard/support
(only visible to Supabase employees)
WARNING: The debug folder may contain sensitive information about your
database schema, including table structures, function definitions, and role
configurations. Review the contents carefully before sharing publicly.
If unsure, prefer opening a support ticket (option 2) instead.
  • Upgrade pg-delta to resolve the error with pgmq

Fixes#5080

Improve readability report for decalrative appy errors wrapping
@coveralls

coveralls commented Apr 14, 2026

Copy link
Copy Markdown

Coverage Report for CI Build 24461742037

Coverage decreased (-0.04%) to 63.733%

Details

  • Coverage decreased (-0.04%) from the base build.
  • Patch coverage: 42 uncovered changes across 1 file (54 of 96 lines covered, 56.25%).
  • 5 coverage regressions across 1 file.

Uncovered Changes

FileChangedCovered%
internal/pgdelta/apply.go965456.25%

Coverage Regressions

5 previously-covered lines in 1 file lost coverage.

FileLines Losing CoverageCoverage
internal/utils/git.go557.14%

Coverage Stats

Coverage Status
Relevant Lines:15452
Covered Lines:9848
Line Coverage:63.73%
Coverage Strength:6.99 hits per line

💛 - Coveralls

@avallete
avallete marked this pull request as ready for review April 15, 2026 14:58
@avallete
avallete requested a review from a team as a code ownerApril 15, 2026 14:58
@avallete
avallete merged commit 5be6e90 into developApr 15, 2026
15 checks passed
@avallete
avallete deleted the fix/db-declarative-export-pgmq branch April 15, 2026 15:13
@supabase-cli-releasersupabase-cli-releaserBot mentioned this pull request Apr 21, 2026
avallete added a commit that referenced this pull request Apr 24, 2026
* fix(pg-delta): declarative-sync-no-declarative-dir-set (#5078)
* feat(declarative): add tests for skipping config updates when PgDelta is enabled
- These tests verify that the configuration remains unchanged when PgDelta is enabled, ensuring the declarative directory is the source of truth.
- Updated the WriteDeclarativeSchemas function to reflect the new behavior regarding PgDelta configuration.
* fix(declarative): DSL change due to upgrade
* feat(auth): add support for configuring passkeys and webauthn (#5077)
* fix: atomic parser (#5064)
* fix
* test
---------
Co-authored-by: Andrew Valleteau <avallete@users.noreply.github.com>
* fix(pg-delta): declarative apply error results (#5082)
* fix(pg-delta): declarative apply error results
Improve readability report for decalrative appy errors wrapping
* chore: upgrade pg-delta to alpha 13
* feat(telemetry): attach org/project groups to all CLI events
Only ~19% of CLI events had PostHog group properties ($group_0, $group_1)
because groups were only set during `supabase link`. Commands using
--project-ref without linking sent events invisible to group analytics.
Add EnsureProjectGroupsCached which resolves and caches project metadata
(including org ID) in linked-project.json when a project ref is available.
The cache is checked before every cli_command_executed event, so the API
call only happens once per unique project ref.
Closes GROWTH-761
* fix: address code review feedback
- Guard against log.Fatalln crash: check auth token before calling
GetSupabase(), and move the API call to cmd/root.go where it belongs
- Don't overwrite existing linked-project.json cache — supabase link
is the authoritative source, we only fill the gap when no cache exists
- Fire GroupIdentify for org and project after caching, matching the
link flow so PostHog has group metadata
- Restructure so telemetry package has no API dependencies (pure
caching + PostHog calls), making tests reliable without gock/mocks
* fix: adds etl to managed schema (#5090)
* chore: sync API types from infrastructure (#5093)
Co-authored-by: supabase-cli-releaser[bot] <246109035+supabase-cli-releaser[bot]@users.noreply.github.com>
* chore(deps): bump the actions-major group across 1 directory with 5 updates (#5088)
Bumps the actions-major group with 5 updates in the / directory:
| Package | From | To |
| --- | --- | --- |
| [actions/create-github-app-token](https://github.com/actions/create-github-app-token) | `3.0.0` | `3.1.1` |
| [peter-evans/create-pull-request](https://github.com/peter-evans/create-pull-request) | `8.1.0` | `8.1.1` |
| [actions/upload-artifact](https://github.com/actions/upload-artifact) | `7.0.0` | `7.0.1` |
| [github/codeql-action](https://github.com/github/codeql-action) | `4.35.1` | `4.35.2` |
| [docker/build-push-action](https://github.com/docker/build-push-action) | `7.0.0` | `7.1.0` |
Updates `actions/create-github-app-token` from 3.0.0 to 3.1.1
- [Release notes](https://github.com/actions/create-github-app-token/releases)
- [Commits](actions/create-github-app-token@f8d387b...1b10c78)
Updates `peter-evans/create-pull-request` from 8.1.0 to 8.1.1
- [Release notes](https://github.com/peter-evans/create-pull-request/releases)
- [Commits](peter-evans/create-pull-request@c0f553f...5f6978f)
Updates `actions/upload-artifact` from 7.0.0 to 7.0.1
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](actions/upload-artifact@bbbca2d...043fb46)
Updates `github/codeql-action` from 4.35.1 to 4.35.2
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](github/codeql-action@c10b806...95e58e9)
Updates `docker/build-push-action` from 7.0.0 to 7.1.0
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](docker/build-push-action@d08e5c3...bcafcac)
---
updated-dependencies:
- dependency-name: actions/create-github-app-token
dependency-version: 3.1.1
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: actions-major
- dependency-name: peter-evans/create-pull-request
dependency-version: 8.1.1
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: actions-major
- dependency-name: actions/upload-artifact
dependency-version: 7.0.1
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: actions-major
- dependency-name: github/codeql-action
dependency-version: 4.35.2
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: actions-major
- dependency-name: docker/build-push-action
dependency-version: 7.1.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: actions-major
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Andrew Valleteau <avallete@users.noreply.github.com>
* fix: functions download (#5096)
* fix
* test
---------
Co-authored-by: Andrew Valleteau <avallete@users.noreply.github.com>
* feat(db): strengthen RLS advisory message for stronger agent compliance
* chore(deps): upgrade pg-delta to alpha.17 (#5110)
Closes: #5094
* chore(deps): bump the actions-major group across 1 directory with 4 updates (#5108)
Bumps the actions-major group with 4 updates in the / directory: [dependabot/fetch-metadata](https://github.com/dependabot/fetch-metadata), [t1m0thyj/unlock-keyring](https://github.com/t1m0thyj/unlock-keyring), [goreleaser/goreleaser-action](https://github.com/goreleaser/goreleaser-action) and [actions/setup-node](https://github.com/actions/setup-node).
Updates `dependabot/fetch-metadata` from 3.0.0 to 3.1.0
- [Release notes](https://github.com/dependabot/fetch-metadata/releases)
- [Commits](dependabot/fetch-metadata@ffa630c...25dd0e3)
Updates `t1m0thyj/unlock-keyring` from 1.1.0 to 1.2.0
- [Release notes](https://github.com/t1m0thyj/unlock-keyring/releases)
- [Commits](t1m0thyj/unlock-keyring@728cc71...cbcf205)
Updates `goreleaser/goreleaser-action` from 7.0.0 to 7.1.0
- [Release notes](https://github.com/goreleaser/goreleaser-action/releases)
- [Commits](goreleaser/goreleaser-action@ec59f47...e24998b)
Updates `actions/setup-node` from 6.3.0 to 6.4.0
- [Release notes](https://github.com/actions/setup-node/releases)
- [Commits](actions/setup-node@53b8394...48b55a0)
---
updated-dependencies:
- dependency-name: dependabot/fetch-metadata
dependency-version: 3.1.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: actions-major
- dependency-name: t1m0thyj/unlock-keyring
dependency-version: 1.2.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: actions-major
- dependency-name: goreleaser/goreleaser-action
dependency-version: 7.1.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: actions-major
- dependency-name: actions/setup-node
dependency-version: 6.4.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: actions-major
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Andrew Valleteau <avallete@users.noreply.github.com>
* fix(docker): bump the docker-minor group across 1 directory with 6 updates (#5079)
* fix(docker): bump the docker-minor group across 1 directory with 6 updates
Bumps the docker-minor group with 6 updates in the /pkg/config/templates directory:
| Package | From | To |
| --- | --- | --- |
| postgrest/postgrest | `v14.8` | `v14.9` |
| supabase/studio | `2026.04.08-sha-205cbe7` | `2026.04.13-sha-e95f1cc` |
| supabase/edge-runtime | `v1.73.3` | `v1.73.5` |
| supabase/realtime | `v2.82.0` | `v2.83.1` |
| supabase/storage-api | `v1.48.28` | `v1.51.0` |
| supabase/logflare | `1.37.1` | `1.38.2` |
Updates `postgrest/postgrest` from v14.8 to v14.9
Updates `supabase/studio` from 2026.04.08-sha-205cbe7 to 2026.04.13-sha-e95f1cc
Updates `supabase/edge-runtime` from v1.73.3 to v1.73.5
Updates `supabase/realtime` from v2.82.0 to v2.83.1
Updates `supabase/storage-api` from v1.48.28 to v1.51.0
Updates `supabase/logflare` from 1.37.1 to 1.38.2
---
updated-dependencies:
- dependency-name: postgrest/postgrest
dependency-version: v14.9
dependency-type: direct:production
dependency-group: docker-minor
- dependency-name: supabase/studio
dependency-version: 2026.04.13-sha-e95f1cc
dependency-type: direct:production
dependency-group: docker-minor
- dependency-name: supabase/edge-runtime
dependency-version: v1.73.5
dependency-type: direct:production
dependency-group: docker-minor
- dependency-name: supabase/realtime
dependency-version: v2.83.1
dependency-type: direct:production
dependency-group: docker-minor
- dependency-name: supabase/storage-api
dependency-version: v1.51.0
dependency-type: direct:production
dependency-group: docker-minor
- dependency-name: supabase/logflare
dependency-version: 1.38.2
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: docker-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
* Downgrade postgrest version from 14.9 to 14.8
---------
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Andrew Valleteau <avallete@users.noreply.github.com>
* chore(workflows): enable install scripts for supabase package in Yarn (#5111)
chore(workflows): enable install scripts for supabase package in Yarn Berry setup
This change sets the YARN_ENABLE_SCRIPTS environment variable to true during the installation of the supabase package, allowing its postinstall script to run as required by Yarn Berry 4.14+. This adjustment ensures the necessary binary is fetched correctly.
* feat: --diff-engine flag on db pull
* fix(docker): bump the docker-minor group in /pkg/config/templates with 6 updates (#5113)
fix(docker): bump the docker-minor group
Bumps the docker-minor group in /pkg/config/templates with 6 updates:
| Package | From | To |
| --- | --- | --- |
| postgrest/postgrest | `v14.8` | `v14.10` |
| supabase/studio | `2026.04.13-sha-e95f1cc` | `2026.04.20-sha-b721a2d` |
| supabase/edge-runtime | `v1.73.5` | `v1.73.13` |
| supabase/realtime | `v2.83.1` | `v2.86.3` |
| supabase/storage-api | `v1.51.0` | `v1.54.1` |
| supabase/logflare | `1.38.2` | `1.39.1` |
Updates `postgrest/postgrest` from v14.8 to v14.10
Updates `supabase/studio` from 2026.04.13-sha-e95f1cc to 2026.04.20-sha-b721a2d
Updates `supabase/edge-runtime` from v1.73.5 to v1.73.13
Updates `supabase/realtime` from v2.83.1 to v2.86.3
Updates `supabase/storage-api` from v1.51.0 to v1.54.1
Updates `supabase/logflare` from 1.38.2 to 1.39.1
---
updated-dependencies:
- dependency-name: postgrest/postgrest
dependency-version: v14.10
dependency-type: direct:production
dependency-group: docker-minor
- dependency-name: supabase/studio
dependency-version: 2026.04.20-sha-b721a2d
dependency-type: direct:production
dependency-group: docker-minor
- dependency-name: supabase/edge-runtime
dependency-version: v1.73.13
dependency-type: direct:production
dependency-group: docker-minor
- dependency-name: supabase/realtime
dependency-version: v2.86.3
dependency-type: direct:production
dependency-group: docker-minor
- dependency-name: supabase/storage-api
dependency-version: v1.54.1
dependency-type: direct:production
dependency-group: docker-minor
- dependency-name: supabase/logflare
dependency-version: 1.39.1
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: docker-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Andrew Valleteau <avallete@users.noreply.github.com>
* feat: exposing new api keys to functions (#4946)
Co-authored-by: Andrew Valleteau <avallete@users.noreply.github.com>
* chore: upgrade pg-delta to alpha.20 in multiple templates
* fix: remove version comparison check for storage image updates (#5118)
fix: honor pinned storage version offline
Remove the version comparison that only pinned storage when the local
version was newer than the default. This prevented `supabase start` from
using an already-downloaded image offline, since Docker would still try
to pull the default newer image.
Fixes CLI-1393.
Co-authored-by: Claude <noreply@anthropic.com>
* fix: improve error handling and output formatting in pg-delta apply process (#5120)
- Updated the `runDeclarativeSync` function to avoid wrapping SQL output with `utils.Bold`, preventing excessive whitespace in multi-line SQL.
- Changed the result accumulation in `migra.ts` from string concatenation to an array for better performance and clarity.
- Enhanced the `ApplyResult` struct to include `ValidationErrors` and `Diagnostics`, allowing for more detailed error reporting.
- Modified the `formatApplyFailure` function to include validation errors and diagnostics in the output, improving user feedback on apply failures.
- Added tests for validation error handling in `apply_test.go` to ensure robustness against various error scenarios.
---------
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Andrew Valleteau <avallete@users.noreply.github.com>
Co-authored-by: fadymak <dev@fadymak.com>
Co-authored-by: Vaibhav <117663341+7ttp@users.noreply.github.com>
Co-authored-by: Sean Oliver <882952+seanoliver@users.noreply.github.com>
Co-authored-by: Han Qiao <sweatybridge@gmail.com>
Co-authored-by: Julien Goux <hi@jgoux.dev>
Co-authored-by: supabase-cli-releaser[bot] <246109035+supabase-cli-releaser[bot]@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Mert YEREKAPAN <mertyerekapan@gmail.com>
Co-authored-by: Mert YEREKAPAN <33198490+myerekapan@users.noreply.github.com>
Co-authored-by: Kalleby Santos <105971119+kallebysantos@users.noreply.github.com>
Co-authored-by: avallete <andrew.valleteau@supabase.io>
Co-authored-by: Claude <noreply@anthropic.com>
avallete added a commit that referenced this pull request Apr 27, 2026
Prod deploy (#5109)
* fix(pg-delta): declarative-sync-no-declarative-dir-set (#5078)
* feat(declarative): add tests for skipping config updates when PgDelta is enabled
- These tests verify that the configuration remains unchanged when PgDelta is enabled, ensuring the declarative directory is the source of truth.
- Updated the WriteDeclarativeSchemas function to reflect the new behavior regarding PgDelta configuration.
* fix(declarative): DSL change due to upgrade
* feat(auth): add support for configuring passkeys and webauthn (#5077)
* fix: atomic parser (#5064)
* fix
* test
---------
* fix(pg-delta): declarative apply error results (#5082)
* fix(pg-delta): declarative apply error results
Improve readability report for decalrative appy errors wrapping
* chore: upgrade pg-delta to alpha 13
* feat(telemetry): attach org/project groups to all CLI events
Only ~19% of CLI events had PostHog group properties ($group_0, $group_1)
because groups were only set during `supabase link`. Commands using
--project-ref without linking sent events invisible to group analytics.
Add EnsureProjectGroupsCached which resolves and caches project metadata
(including org ID) in linked-project.json when a project ref is available.
The cache is checked before every cli_command_executed event, so the API
call only happens once per unique project ref.
Closes GROWTH-761
* fix: address code review feedback
- Guard against log.Fatalln crash: check auth token before calling
GetSupabase(), and move the API call to cmd/root.go where it belongs
- Don't overwrite existing linked-project.json cache — supabase link
is the authoritative source, we only fill the gap when no cache exists
- Fire GroupIdentify for org and project after caching, matching the
link flow so PostHog has group metadata
- Restructure so telemetry package has no API dependencies (pure
caching + PostHog calls), making tests reliable without gock/mocks
* fix: adds etl to managed schema (#5090)
* chore: sync API types from infrastructure (#5093)
* chore(deps): bump the actions-major group across 1 directory with 5 updates (#5088)
Bumps the actions-major group with 5 updates in the / directory:
| Package | From | To |
| --- | --- | --- |
| [actions/create-github-app-token](https://github.com/actions/create-github-app-token) | `3.0.0` | `3.1.1` |
| [peter-evans/create-pull-request](https://github.com/peter-evans/create-pull-request) | `8.1.0` | `8.1.1` |
| [actions/upload-artifact](https://github.com/actions/upload-artifact) | `7.0.0` | `7.0.1` |
| [github/codeql-action](https://github.com/github/codeql-action) | `4.35.1` | `4.35.2` |
| [docker/build-push-action](https://github.com/docker/build-push-action) | `7.0.0` | `7.1.0` |
Updates `actions/create-github-app-token` from 3.0.0 to 3.1.1
- [Release notes](https://github.com/actions/create-github-app-token/releases)
- [Commits](actions/create-github-app-token@f8d387b...1b10c78)
Updates `peter-evans/create-pull-request` from 8.1.0 to 8.1.1
- [Release notes](https://github.com/peter-evans/create-pull-request/releases)
- [Commits](peter-evans/create-pull-request@c0f553f...5f6978f)
Updates `actions/upload-artifact` from 7.0.0 to 7.0.1
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](actions/upload-artifact@bbbca2d...043fb46)
Updates `github/codeql-action` from 4.35.1 to 4.35.2
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](github/codeql-action@c10b806...95e58e9)
Updates `docker/build-push-action` from 7.0.0 to 7.1.0
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](docker/build-push-action@d08e5c3...bcafcac)
---
updated-dependencies:
- dependency-name: actions/create-github-app-token
dependency-version: 3.1.1
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: actions-major
- dependency-name: peter-evans/create-pull-request
dependency-version: 8.1.1
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: actions-major
- dependency-name: actions/upload-artifact
dependency-version: 7.0.1
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: actions-major
- dependency-name: github/codeql-action
dependency-version: 4.35.2
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: actions-major
- dependency-name: docker/build-push-action
dependency-version: 7.1.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: actions-major
...
* fix: functions download (#5096)
* fix
* test
---------
* feat(db): strengthen RLS advisory message for stronger agent compliance
* chore(deps): upgrade pg-delta to alpha.17 (#5110)
Closes: #5094
* chore(deps): bump the actions-major group across 1 directory with 4 updates (#5108)
Bumps the actions-major group with 4 updates in the / directory: [dependabot/fetch-metadata](https://github.com/dependabot/fetch-metadata), [t1m0thyj/unlock-keyring](https://github.com/t1m0thyj/unlock-keyring), [goreleaser/goreleaser-action](https://github.com/goreleaser/goreleaser-action) and [actions/setup-node](https://github.com/actions/setup-node).
Updates `dependabot/fetch-metadata` from 3.0.0 to 3.1.0
- [Release notes](https://github.com/dependabot/fetch-metadata/releases)
- [Commits](dependabot/fetch-metadata@ffa630c...25dd0e3)
Updates `t1m0thyj/unlock-keyring` from 1.1.0 to 1.2.0
- [Release notes](https://github.com/t1m0thyj/unlock-keyring/releases)
- [Commits](t1m0thyj/unlock-keyring@728cc71...cbcf205)
Updates `goreleaser/goreleaser-action` from 7.0.0 to 7.1.0
- [Release notes](https://github.com/goreleaser/goreleaser-action/releases)
- [Commits](goreleaser/goreleaser-action@ec59f47...e24998b)
Updates `actions/setup-node` from 6.3.0 to 6.4.0
- [Release notes](https://github.com/actions/setup-node/releases)
- [Commits](actions/setup-node@53b8394...48b55a0)
---
updated-dependencies:
- dependency-name: dependabot/fetch-metadata
dependency-version: 3.1.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: actions-major
- dependency-name: t1m0thyj/unlock-keyring
dependency-version: 1.2.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: actions-major
- dependency-name: goreleaser/goreleaser-action
dependency-version: 7.1.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: actions-major
- dependency-name: actions/setup-node
dependency-version: 6.4.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: actions-major
...
* fix(docker): bump the docker-minor group across 1 directory with 6 updates (#5079)
* fix(docker): bump the docker-minor group across 1 directory with 6 updates
Bumps the docker-minor group with 6 updates in the /pkg/config/templates directory:
| Package | From | To |
| --- | --- | --- |
| postgrest/postgrest | `v14.8` | `v14.9` |
| supabase/studio | `2026.04.08-sha-205cbe7` | `2026.04.13-sha-e95f1cc` |
| supabase/edge-runtime | `v1.73.3` | `v1.73.5` |
| supabase/realtime | `v2.82.0` | `v2.83.1` |
| supabase/storage-api | `v1.48.28` | `v1.51.0` |
| supabase/logflare | `1.37.1` | `1.38.2` |
Updates `postgrest/postgrest` from v14.8 to v14.9
Updates `supabase/studio` from 2026.04.08-sha-205cbe7 to 2026.04.13-sha-e95f1cc
Updates `supabase/edge-runtime` from v1.73.3 to v1.73.5
Updates `supabase/realtime` from v2.82.0 to v2.83.1
Updates `supabase/storage-api` from v1.48.28 to v1.51.0
Updates `supabase/logflare` from 1.37.1 to 1.38.2
---
updated-dependencies:
- dependency-name: postgrest/postgrest
dependency-version: v14.9
dependency-type: direct:production
dependency-group: docker-minor
- dependency-name: supabase/studio
dependency-version: 2026.04.13-sha-e95f1cc
dependency-type: direct:production
dependency-group: docker-minor
- dependency-name: supabase/edge-runtime
dependency-version: v1.73.5
dependency-type: direct:production
dependency-group: docker-minor
- dependency-name: supabase/realtime
dependency-version: v2.83.1
dependency-type: direct:production
dependency-group: docker-minor
- dependency-name: supabase/storage-api
dependency-version: v1.51.0
dependency-type: direct:production
dependency-group: docker-minor
- dependency-name: supabase/logflare
dependency-version: 1.38.2
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: docker-minor
...
* Downgrade postgrest version from 14.9 to 14.8
---------
* chore(workflows): enable install scripts for supabase package in Yarn (#5111)
chore(workflows): enable install scripts for supabase package in Yarn Berry setup
This change sets the YARN_ENABLE_SCRIPTS environment variable to true during the installation of the supabase package, allowing its postinstall script to run as required by Yarn Berry 4.14+. This adjustment ensures the necessary binary is fetched correctly.
* feat: --diff-engine flag on db pull
* fix(docker): bump the docker-minor group in /pkg/config/templates with 6 updates (#5113)
fix(docker): bump the docker-minor group
Bumps the docker-minor group in /pkg/config/templates with 6 updates:
| Package | From | To |
| --- | --- | --- |
| postgrest/postgrest | `v14.8` | `v14.10` |
| supabase/studio | `2026.04.13-sha-e95f1cc` | `2026.04.20-sha-b721a2d` |
| supabase/edge-runtime | `v1.73.5` | `v1.73.13` |
| supabase/realtime | `v2.83.1` | `v2.86.3` |
| supabase/storage-api | `v1.51.0` | `v1.54.1` |
| supabase/logflare | `1.38.2` | `1.39.1` |
Updates `postgrest/postgrest` from v14.8 to v14.10
Updates `supabase/studio` from 2026.04.13-sha-e95f1cc to 2026.04.20-sha-b721a2d
Updates `supabase/edge-runtime` from v1.73.5 to v1.73.13
Updates `supabase/realtime` from v2.83.1 to v2.86.3
Updates `supabase/storage-api` from v1.51.0 to v1.54.1
Updates `supabase/logflare` from 1.38.2 to 1.39.1
---
updated-dependencies:
- dependency-name: postgrest/postgrest
dependency-version: v14.10
dependency-type: direct:production
dependency-group: docker-minor
- dependency-name: supabase/studio
dependency-version: 2026.04.20-sha-b721a2d
dependency-type: direct:production
dependency-group: docker-minor
- dependency-name: supabase/edge-runtime
dependency-version: v1.73.13
dependency-type: direct:production
dependency-group: docker-minor
- dependency-name: supabase/realtime
dependency-version: v2.86.3
dependency-type: direct:production
dependency-group: docker-minor
- dependency-name: supabase/storage-api
dependency-version: v1.54.1
dependency-type: direct:production
dependency-group: docker-minor
- dependency-name: supabase/logflare
dependency-version: 1.39.1
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: docker-minor
...
* feat: exposing new api keys to functions (#4946)
* chore: upgrade pg-delta to alpha.20 in multiple templates
* fix: remove version comparison check for storage image updates (#5118)
fix: honor pinned storage version offline
Remove the version comparison that only pinned storage when the local
version was newer than the default. This prevented `supabase start` from
using an already-downloaded image offline, since Docker would still try
to pull the default newer image.
Fixes CLI-1393.
* fix: improve error handling and output formatting in pg-delta apply process (#5120)
- Updated the `runDeclarativeSync` function to avoid wrapping SQL output with `utils.Bold`, preventing excessive whitespace in multi-line SQL.
- Changed the result accumulation in `migra.ts` from string concatenation to an array for better performance and clarity.
- Enhanced the `ApplyResult` struct to include `ValidationErrors` and `Diagnostics`, allowing for more detailed error reporting.
- Modified the `formatApplyFailure` function to include validation errors and diagnostics in the output, improving user feedback on apply failures.
- Added tests for validation error handling in `apply_test.go` to ensure robustness against various error scenarios.
---------
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: supabase-cli-releaser[bot] <246109035+supabase-cli-releaser[bot]@users.noreply.github.com>
Co-authored-by: fadymak <dev@fadymak.com>
Co-authored-by: Vaibhav <117663341+7ttp@users.noreply.github.com>
Co-authored-by: Sean Oliver <882952+seanoliver@users.noreply.github.com>
Co-authored-by: Han Qiao <sweatybridge@gmail.com>
Co-authored-by: Julien Goux <hi@jgoux.dev>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Mert YEREKAPAN <mertyerekapan@gmail.com>
Co-authored-by: Mert YEREKAPAN <33198490+myerekapan@users.noreply.github.com>
Co-authored-by: Kalleby Santos <105971119+kallebysantos@users.noreply.github.com>
Co-authored-by: Claude <noreply@anthropic.com>
This was referenced Apr 27, 2026
avallete added a commit that referenced this pull request Apr 28, 2026
Prod deploy (#5109)
* fix(pg-delta): declarative-sync-no-declarative-dir-set (#5078)
* feat(declarative): add tests for skipping config updates when PgDelta is enabled
- These tests verify that the configuration remains unchanged when PgDelta is enabled, ensuring the declarative directory is the source of truth.
- Updated the WriteDeclarativeSchemas function to reflect the new behavior regarding PgDelta configuration.
* fix(declarative): DSL change due to upgrade
* feat(auth): add support for configuring passkeys and webauthn (#5077)
* fix: atomic parser (#5064)
* fix
* test
---------
* fix(pg-delta): declarative apply error results (#5082)
* fix(pg-delta): declarative apply error results
Improve readability report for decalrative appy errors wrapping
* chore: upgrade pg-delta to alpha 13
* feat(telemetry): attach org/project groups to all CLI events
Only ~19% of CLI events had PostHog group properties ($group_0, $group_1)
because groups were only set during `supabase link`. Commands using
--project-ref without linking sent events invisible to group analytics.
Add EnsureProjectGroupsCached which resolves and caches project metadata
(including org ID) in linked-project.json when a project ref is available.
The cache is checked before every cli_command_executed event, so the API
call only happens once per unique project ref.
Closes GROWTH-761
* fix: address code review feedback
- Guard against log.Fatalln crash: check auth token before calling
GetSupabase(), and move the API call to cmd/root.go where it belongs
- Don't overwrite existing linked-project.json cache — supabase link
is the authoritative source, we only fill the gap when no cache exists
- Fire GroupIdentify for org and project after caching, matching the
link flow so PostHog has group metadata
- Restructure so telemetry package has no API dependencies (pure
caching + PostHog calls), making tests reliable without gock/mocks
* fix: adds etl to managed schema (#5090)
* chore: sync API types from infrastructure (#5093)
* chore(deps): bump the actions-major group across 1 directory with 5 updates (#5088)
Bumps the actions-major group with 5 updates in the / directory:
| Package | From | To |
| --- | --- | --- |
| [actions/create-github-app-token](https://github.com/actions/create-github-app-token) | `3.0.0` | `3.1.1` |
| [peter-evans/create-pull-request](https://github.com/peter-evans/create-pull-request) | `8.1.0` | `8.1.1` |
| [actions/upload-artifact](https://github.com/actions/upload-artifact) | `7.0.0` | `7.0.1` |
| [github/codeql-action](https://github.com/github/codeql-action) | `4.35.1` | `4.35.2` |
| [docker/build-push-action](https://github.com/docker/build-push-action) | `7.0.0` | `7.1.0` |
Updates `actions/create-github-app-token` from 3.0.0 to 3.1.1
- [Release notes](https://github.com/actions/create-github-app-token/releases)
- [Commits](actions/create-github-app-token@f8d387b...1b10c78)
Updates `peter-evans/create-pull-request` from 8.1.0 to 8.1.1
- [Release notes](https://github.com/peter-evans/create-pull-request/releases)
- [Commits](peter-evans/create-pull-request@c0f553f...5f6978f)
Updates `actions/upload-artifact` from 7.0.0 to 7.0.1
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](actions/upload-artifact@bbbca2d...043fb46)
Updates `github/codeql-action` from 4.35.1 to 4.35.2
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](github/codeql-action@c10b806...95e58e9)
Updates `docker/build-push-action` from 7.0.0 to 7.1.0
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](docker/build-push-action@d08e5c3...bcafcac)
---
updated-dependencies:
- dependency-name: actions/create-github-app-token
dependency-version: 3.1.1
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: actions-major
- dependency-name: peter-evans/create-pull-request
dependency-version: 8.1.1
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: actions-major
- dependency-name: actions/upload-artifact
dependency-version: 7.0.1
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: actions-major
- dependency-name: github/codeql-action
dependency-version: 4.35.2
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: actions-major
- dependency-name: docker/build-push-action
dependency-version: 7.1.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: actions-major
...
* fix: functions download (#5096)
* fix
* test
---------
* feat(db): strengthen RLS advisory message for stronger agent compliance
* chore(deps): upgrade pg-delta to alpha.17 (#5110)
Closes: #5094
* chore(deps): bump the actions-major group across 1 directory with 4 updates (#5108)
Bumps the actions-major group with 4 updates in the / directory: [dependabot/fetch-metadata](https://github.com/dependabot/fetch-metadata), [t1m0thyj/unlock-keyring](https://github.com/t1m0thyj/unlock-keyring), [goreleaser/goreleaser-action](https://github.com/goreleaser/goreleaser-action) and [actions/setup-node](https://github.com/actions/setup-node).
Updates `dependabot/fetch-metadata` from 3.0.0 to 3.1.0
- [Release notes](https://github.com/dependabot/fetch-metadata/releases)
- [Commits](dependabot/fetch-metadata@ffa630c...25dd0e3)
Updates `t1m0thyj/unlock-keyring` from 1.1.0 to 1.2.0
- [Release notes](https://github.com/t1m0thyj/unlock-keyring/releases)
- [Commits](t1m0thyj/unlock-keyring@728cc71...cbcf205)
Updates `goreleaser/goreleaser-action` from 7.0.0 to 7.1.0
- [Release notes](https://github.com/goreleaser/goreleaser-action/releases)
- [Commits](goreleaser/goreleaser-action@ec59f47...e24998b)
Updates `actions/setup-node` from 6.3.0 to 6.4.0
- [Release notes](https://github.com/actions/setup-node/releases)
- [Commits](actions/setup-node@53b8394...48b55a0)
---
updated-dependencies:
- dependency-name: dependabot/fetch-metadata
dependency-version: 3.1.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: actions-major
- dependency-name: t1m0thyj/unlock-keyring
dependency-version: 1.2.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: actions-major
- dependency-name: goreleaser/goreleaser-action
dependency-version: 7.1.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: actions-major
- dependency-name: actions/setup-node
dependency-version: 6.4.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: actions-major
...
* fix(docker): bump the docker-minor group across 1 directory with 6 updates (#5079)
* fix(docker): bump the docker-minor group across 1 directory with 6 updates
Bumps the docker-minor group with 6 updates in the /pkg/config/templates directory:
| Package | From | To |
| --- | --- | --- |
| postgrest/postgrest | `v14.8` | `v14.9` |
| supabase/studio | `2026.04.08-sha-205cbe7` | `2026.04.13-sha-e95f1cc` |
| supabase/edge-runtime | `v1.73.3` | `v1.73.5` |
| supabase/realtime | `v2.82.0` | `v2.83.1` |
| supabase/storage-api | `v1.48.28` | `v1.51.0` |
| supabase/logflare | `1.37.1` | `1.38.2` |
Updates `postgrest/postgrest` from v14.8 to v14.9
Updates `supabase/studio` from 2026.04.08-sha-205cbe7 to 2026.04.13-sha-e95f1cc
Updates `supabase/edge-runtime` from v1.73.3 to v1.73.5
Updates `supabase/realtime` from v2.82.0 to v2.83.1
Updates `supabase/storage-api` from v1.48.28 to v1.51.0
Updates `supabase/logflare` from 1.37.1 to 1.38.2
---
updated-dependencies:
- dependency-name: postgrest/postgrest
dependency-version: v14.9
dependency-type: direct:production
dependency-group: docker-minor
- dependency-name: supabase/studio
dependency-version: 2026.04.13-sha-e95f1cc
dependency-type: direct:production
dependency-group: docker-minor
- dependency-name: supabase/edge-runtime
dependency-version: v1.73.5
dependency-type: direct:production
dependency-group: docker-minor
- dependency-name: supabase/realtime
dependency-version: v2.83.1
dependency-type: direct:production
dependency-group: docker-minor
- dependency-name: supabase/storage-api
dependency-version: v1.51.0
dependency-type: direct:production
dependency-group: docker-minor
- dependency-name: supabase/logflare
dependency-version: 1.38.2
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: docker-minor
...
* Downgrade postgrest version from 14.9 to 14.8
---------
* chore(workflows): enable install scripts for supabase package in Yarn (#5111)
chore(workflows): enable install scripts for supabase package in Yarn Berry setup
This change sets the YARN_ENABLE_SCRIPTS environment variable to true during the installation of the supabase package, allowing its postinstall script to run as required by Yarn Berry 4.14+. This adjustment ensures the necessary binary is fetched correctly.
* feat: --diff-engine flag on db pull
* fix(docker): bump the docker-minor group in /pkg/config/templates with 6 updates (#5113)
fix(docker): bump the docker-minor group
Bumps the docker-minor group in /pkg/config/templates with 6 updates:
| Package | From | To |
| --- | --- | --- |
| postgrest/postgrest | `v14.8` | `v14.10` |
| supabase/studio | `2026.04.13-sha-e95f1cc` | `2026.04.20-sha-b721a2d` |
| supabase/edge-runtime | `v1.73.5` | `v1.73.13` |
| supabase/realtime | `v2.83.1` | `v2.86.3` |
| supabase/storage-api | `v1.51.0` | `v1.54.1` |
| supabase/logflare | `1.38.2` | `1.39.1` |
Updates `postgrest/postgrest` from v14.8 to v14.10
Updates `supabase/studio` from 2026.04.13-sha-e95f1cc to 2026.04.20-sha-b721a2d
Updates `supabase/edge-runtime` from v1.73.5 to v1.73.13
Updates `supabase/realtime` from v2.83.1 to v2.86.3
Updates `supabase/storage-api` from v1.51.0 to v1.54.1
Updates `supabase/logflare` from 1.38.2 to 1.39.1
---
updated-dependencies:
- dependency-name: postgrest/postgrest
dependency-version: v14.10
dependency-type: direct:production
dependency-group: docker-minor
- dependency-name: supabase/studio
dependency-version: 2026.04.20-sha-b721a2d
dependency-type: direct:production
dependency-group: docker-minor
- dependency-name: supabase/edge-runtime
dependency-version: v1.73.13
dependency-type: direct:production
dependency-group: docker-minor
- dependency-name: supabase/realtime
dependency-version: v2.86.3
dependency-type: direct:production
dependency-group: docker-minor
- dependency-name: supabase/storage-api
dependency-version: v1.54.1
dependency-type: direct:production
dependency-group: docker-minor
- dependency-name: supabase/logflare
dependency-version: 1.39.1
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: docker-minor
...
* feat: exposing new api keys to functions (#4946)
* chore: upgrade pg-delta to alpha.20 in multiple templates
* fix: remove version comparison check for storage image updates (#5118)
fix: honor pinned storage version offline
Remove the version comparison that only pinned storage when the local
version was newer than the default. This prevented `supabase start` from
using an already-downloaded image offline, since Docker would still try
to pull the default newer image.
Fixes CLI-1393.
* fix: improve error handling and output formatting in pg-delta apply process (#5120)
- Updated the `runDeclarativeSync` function to avoid wrapping SQL output with `utils.Bold`, preventing excessive whitespace in multi-line SQL.
- Changed the result accumulation in `migra.ts` from string concatenation to an array for better performance and clarity.
- Enhanced the `ApplyResult` struct to include `ValidationErrors` and `Diagnostics`, allowing for more detailed error reporting.
- Modified the `formatApplyFailure` function to include validation errors and diagnostics in the output, improving user feedback on apply failures.
- Added tests for validation error handling in `apply_test.go` to ensure robustness against various error scenarios.
---------
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: supabase-cli-releaser[bot] <246109035+supabase-cli-releaser[bot]@users.noreply.github.com>
Co-authored-by: fadymak <dev@fadymak.com>
Co-authored-by: Vaibhav <117663341+7ttp@users.noreply.github.com>
Co-authored-by: Sean Oliver <882952+seanoliver@users.noreply.github.com>
Co-authored-by: Han Qiao <sweatybridge@gmail.com>
Co-authored-by: Julien Goux <hi@jgoux.dev>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Mert YEREKAPAN <mertyerekapan@gmail.com>
Co-authored-by: Mert YEREKAPAN <33198490+myerekapan@users.noreply.github.com>
Co-authored-by: Kalleby Santos <105971119+kallebysantos@users.noreply.github.com>
Co-authored-by: Claude <noreply@anthropic.com>
avallete added a commit that referenced this pull request Apr 28, 2026
* refactor: encode auth external url explicitly
* chore(deps): upgrade pg-delta to alpha.17 (#5110)
Closes: #5094
* chore(deps): bump the actions-major group across 1 directory with 4 updates (#5108)
Bumps the actions-major group with 4 updates in the / directory: [dependabot/fetch-metadata](https://github.com/dependabot/fetch-metadata), [t1m0thyj/unlock-keyring](https://github.com/t1m0thyj/unlock-keyring), [goreleaser/goreleaser-action](https://github.com/goreleaser/goreleaser-action) and [actions/setup-node](https://github.com/actions/setup-node).
Updates `dependabot/fetch-metadata` from 3.0.0 to 3.1.0
- [Release notes](https://github.com/dependabot/fetch-metadata/releases)
- [Commits](dependabot/fetch-metadata@ffa630c...25dd0e3)
Updates `t1m0thyj/unlock-keyring` from 1.1.0 to 1.2.0
- [Release notes](https://github.com/t1m0thyj/unlock-keyring/releases)
- [Commits](t1m0thyj/unlock-keyring@728cc71...cbcf205)
Updates `goreleaser/goreleaser-action` from 7.0.0 to 7.1.0
- [Release notes](https://github.com/goreleaser/goreleaser-action/releases)
- [Commits](goreleaser/goreleaser-action@ec59f47...e24998b)
Updates `actions/setup-node` from 6.3.0 to 6.4.0
- [Release notes](https://github.com/actions/setup-node/releases)
- [Commits](actions/setup-node@53b8394...48b55a0)
---
updated-dependencies:
- dependency-name: dependabot/fetch-metadata
dependency-version: 3.1.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: actions-major
- dependency-name: t1m0thyj/unlock-keyring
dependency-version: 1.2.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: actions-major
- dependency-name: goreleaser/goreleaser-action
dependency-version: 7.1.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: actions-major
- dependency-name: actions/setup-node
dependency-version: 6.4.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: actions-major
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Andrew Valleteau <avallete@users.noreply.github.com>
* fix(docker): bump the docker-minor group across 1 directory with 6 updates (#5079)
* fix(docker): bump the docker-minor group across 1 directory with 6 updates
Bumps the docker-minor group with 6 updates in the /pkg/config/templates directory:
| Package | From | To |
| --- | --- | --- |
| postgrest/postgrest | `v14.8` | `v14.9` |
| supabase/studio | `2026.04.08-sha-205cbe7` | `2026.04.13-sha-e95f1cc` |
| supabase/edge-runtime | `v1.73.3` | `v1.73.5` |
| supabase/realtime | `v2.82.0` | `v2.83.1` |
| supabase/storage-api | `v1.48.28` | `v1.51.0` |
| supabase/logflare | `1.37.1` | `1.38.2` |
Updates `postgrest/postgrest` from v14.8 to v14.9
Updates `supabase/studio` from 2026.04.08-sha-205cbe7 to 2026.04.13-sha-e95f1cc
Updates `supabase/edge-runtime` from v1.73.3 to v1.73.5
Updates `supabase/realtime` from v2.82.0 to v2.83.1
Updates `supabase/storage-api` from v1.48.28 to v1.51.0
Updates `supabase/logflare` from 1.37.1 to 1.38.2
---
updated-dependencies:
- dependency-name: postgrest/postgrest
dependency-version: v14.9
dependency-type: direct:production
dependency-group: docker-minor
- dependency-name: supabase/studio
dependency-version: 2026.04.13-sha-e95f1cc
dependency-type: direct:production
dependency-group: docker-minor
- dependency-name: supabase/edge-runtime
dependency-version: v1.73.5
dependency-type: direct:production
dependency-group: docker-minor
- dependency-name: supabase/realtime
dependency-version: v2.83.1
dependency-type: direct:production
dependency-group: docker-minor
- dependency-name: supabase/storage-api
dependency-version: v1.51.0
dependency-type: direct:production
dependency-group: docker-minor
- dependency-name: supabase/logflare
dependency-version: 1.38.2
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: docker-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
* Downgrade postgrest version from 14.9 to 14.8
---------
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Andrew Valleteau <avallete@users.noreply.github.com>
* chore(workflows): enable install scripts for supabase package in Yarn (#5111)
chore(workflows): enable install scripts for supabase package in Yarn Berry setup
This change sets the YARN_ENABLE_SCRIPTS environment variable to true during the installation of the supabase package, allowing its postinstall script to run as required by Yarn Berry 4.14+. This adjustment ensures the necessary binary is fetched correctly.
* feat: --diff-engine flag on db pull
* fix(docker): bump the docker-minor group in /pkg/config/templates with 6 updates (#5113)
fix(docker): bump the docker-minor group
Bumps the docker-minor group in /pkg/config/templates with 6 updates:
| Package | From | To |
| --- | --- | --- |
| postgrest/postgrest | `v14.8` | `v14.10` |
| supabase/studio | `2026.04.13-sha-e95f1cc` | `2026.04.20-sha-b721a2d` |
| supabase/edge-runtime | `v1.73.5` | `v1.73.13` |
| supabase/realtime | `v2.83.1` | `v2.86.3` |
| supabase/storage-api | `v1.51.0` | `v1.54.1` |
| supabase/logflare | `1.38.2` | `1.39.1` |
Updates `postgrest/postgrest` from v14.8 to v14.10
Updates `supabase/studio` from 2026.04.13-sha-e95f1cc to 2026.04.20-sha-b721a2d
Updates `supabase/edge-runtime` from v1.73.5 to v1.73.13
Updates `supabase/realtime` from v2.83.1 to v2.86.3
Updates `supabase/storage-api` from v1.51.0 to v1.54.1
Updates `supabase/logflare` from 1.38.2 to 1.39.1
---
updated-dependencies:
- dependency-name: postgrest/postgrest
dependency-version: v14.10
dependency-type: direct:production
dependency-group: docker-minor
- dependency-name: supabase/studio
dependency-version: 2026.04.20-sha-b721a2d
dependency-type: direct:production
dependency-group: docker-minor
- dependency-name: supabase/edge-runtime
dependency-version: v1.73.13
dependency-type: direct:production
dependency-group: docker-minor
- dependency-name: supabase/realtime
dependency-version: v2.86.3
dependency-type: direct:production
dependency-group: docker-minor
- dependency-name: supabase/storage-api
dependency-version: v1.54.1
dependency-type: direct:production
dependency-group: docker-minor
- dependency-name: supabase/logflare
dependency-version: 1.39.1
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: docker-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Andrew Valleteau <avallete@users.noreply.github.com>
* feat: exposing new api keys to functions (#4946)
Co-authored-by: Andrew Valleteau <avallete@users.noreply.github.com>
* chore: upgrade pg-delta to alpha.20 in multiple templates
* fix: remove version comparison check for storage image updates (#5118)
fix: honor pinned storage version offline
Remove the version comparison that only pinned storage when the local
version was newer than the default. This prevented `supabase start` from
using an already-downloaded image offline, since Docker would still try
to pull the default newer image.
Fixes CLI-1393.
Co-authored-by: Claude <noreply@anthropic.com>
* fix: improve error handling and output formatting in pg-delta apply process (#5120)
- Updated the `runDeclarativeSync` function to avoid wrapping SQL output with `utils.Bold`, preventing excessive whitespace in multi-line SQL.
- Changed the result accumulation in `migra.ts` from string concatenation to an array for better performance and clarity.
- Enhanced the `ApplyResult` struct to include `ValidationErrors` and `Diagnostics`, allowing for more detailed error reporting.
- Modified the `formatApplyFailure` function to include validation errors and diagnostics in the output, improving user feedback on apply failures.
- Added tests for validation error handling in `apply_test.go` to ensure robustness against various error scenarios.
* fix(start): guard db_logs vector transform against null regex capture (#5126)
The `db_logs` transform aborts with `expected string, got null` in
`upcase!()` when `parse_regex` matches an event message but the
`level` named group resolves to null. The fallback branch only
covers regex failure (`err != null || parsed == null`), leaving a
third path where the match succeeds but the capture is null. That
path overwrites the would-be fallback with null and crashes on
upcase.
Observed under routine local dev load (Next.js dev server issuing
service-role Postgres queries): 3,000+ aborted transforms in two
minutes, cascading into Vector retry storms and Logflare
`ErlSysMon` message-queue backpressure.
Extend the fallback condition to also fire when `parsed.level` is
null, and guard the assignment in the match branch, so
`error_severity` always has a non-null string before `upcase!`.
Co-authored-by: rebasecase <rebasecase@localhost>
* Update Dockerfile for Studio image 2026-04-27
* chore: resync develop with main (#5123)
Prod deploy (#5109)
* fix(pg-delta): declarative-sync-no-declarative-dir-set (#5078)
* feat(declarative): add tests for skipping config updates when PgDelta is enabled
- These tests verify that the configuration remains unchanged when PgDelta is enabled, ensuring the declarative directory is the source of truth.
- Updated the WriteDeclarativeSchemas function to reflect the new behavior regarding PgDelta configuration.
* fix(declarative): DSL change due to upgrade
* feat(auth): add support for configuring passkeys and webauthn (#5077)
* fix: atomic parser (#5064)
* fix
* test
---------
* fix(pg-delta): declarative apply error results (#5082)
* fix(pg-delta): declarative apply error results
Improve readability report for decalrative appy errors wrapping
* chore: upgrade pg-delta to alpha 13
* feat(telemetry): attach org/project groups to all CLI events
Only ~19% of CLI events had PostHog group properties ($group_0, $group_1)
because groups were only set during `supabase link`. Commands using
--project-ref without linking sent events invisible to group analytics.
Add EnsureProjectGroupsCached which resolves and caches project metadata
(including org ID) in linked-project.json when a project ref is available.
The cache is checked before every cli_command_executed event, so the API
call only happens once per unique project ref.
Closes GROWTH-761
* fix: address code review feedback
- Guard against log.Fatalln crash: check auth token before calling
GetSupabase(), and move the API call to cmd/root.go where it belongs
- Don't overwrite existing linked-project.json cache — supabase link
is the authoritative source, we only fill the gap when no cache exists
- Fire GroupIdentify for org and project after caching, matching the
link flow so PostHog has group metadata
- Restructure so telemetry package has no API dependencies (pure
caching + PostHog calls), making tests reliable without gock/mocks
* fix: adds etl to managed schema (#5090)
* chore: sync API types from infrastructure (#5093)
* chore(deps): bump the actions-major group across 1 directory with 5 updates (#5088)
Bumps the actions-major group with 5 updates in the / directory:
| Package | From | To |
| --- | --- | --- |
| [actions/create-github-app-token](https://github.com/actions/create-github-app-token) | `3.0.0` | `3.1.1` |
| [peter-evans/create-pull-request](https://github.com/peter-evans/create-pull-request) | `8.1.0` | `8.1.1` |
| [actions/upload-artifact](https://github.com/actions/upload-artifact) | `7.0.0` | `7.0.1` |
| [github/codeql-action](https://github.com/github/codeql-action) | `4.35.1` | `4.35.2` |
| [docker/build-push-action](https://github.com/docker/build-push-action) | `7.0.0` | `7.1.0` |
Updates `actions/create-github-app-token` from 3.0.0 to 3.1.1
- [Release notes](https://github.com/actions/create-github-app-token/releases)
- [Commits](actions/create-github-app-token@f8d387b...1b10c78)
Updates `peter-evans/create-pull-request` from 8.1.0 to 8.1.1
- [Release notes](https://github.com/peter-evans/create-pull-request/releases)
- [Commits](peter-evans/create-pull-request@c0f553f...5f6978f)
Updates `actions/upload-artifact` from 7.0.0 to 7.0.1
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](actions/upload-artifact@bbbca2d...043fb46)
Updates `github/codeql-action` from 4.35.1 to 4.35.2
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](github/codeql-action@c10b806...95e58e9)
Updates `docker/build-push-action` from 7.0.0 to 7.1.0
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](docker/build-push-action@d08e5c3...bcafcac)
---
updated-dependencies:
- dependency-name: actions/create-github-app-token
dependency-version: 3.1.1
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: actions-major
- dependency-name: peter-evans/create-pull-request
dependency-version: 8.1.1
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: actions-major
- dependency-name: actions/upload-artifact
dependency-version: 7.0.1
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: actions-major
- dependency-name: github/codeql-action
dependency-version: 4.35.2
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: actions-major
- dependency-name: docker/build-push-action
dependency-version: 7.1.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: actions-major
...
* fix: functions download (#5096)
* fix
* test
---------
* feat(db): strengthen RLS advisory message for stronger agent compliance
* chore(deps): upgrade pg-delta to alpha.17 (#5110)
Closes: #5094
* chore(deps): bump the actions-major group across 1 directory with 4 updates (#5108)
Bumps the actions-major group with 4 updates in the / directory: [dependabot/fetch-metadata](https://github.com/dependabot/fetch-metadata), [t1m0thyj/unlock-keyring](https://github.com/t1m0thyj/unlock-keyring), [goreleaser/goreleaser-action](https://github.com/goreleaser/goreleaser-action) and [actions/setup-node](https://github.com/actions/setup-node).
Updates `dependabot/fetch-metadata` from 3.0.0 to 3.1.0
- [Release notes](https://github.com/dependabot/fetch-metadata/releases)
- [Commits](dependabot/fetch-metadata@ffa630c...25dd0e3)
Updates `t1m0thyj/unlock-keyring` from 1.1.0 to 1.2.0
- [Release notes](https://github.com/t1m0thyj/unlock-keyring/releases)
- [Commits](t1m0thyj/unlock-keyring@728cc71...cbcf205)
Updates `goreleaser/goreleaser-action` from 7.0.0 to 7.1.0
- [Release notes](https://github.com/goreleaser/goreleaser-action/releases)
- [Commits](goreleaser/goreleaser-action@ec59f47...e24998b)
Updates `actions/setup-node` from 6.3.0 to 6.4.0
- [Release notes](https://github.com/actions/setup-node/releases)
- [Commits](actions/setup-node@53b8394...48b55a0)
---
updated-dependencies:
- dependency-name: dependabot/fetch-metadata
dependency-version: 3.1.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: actions-major
- dependency-name: t1m0thyj/unlock-keyring
dependency-version: 1.2.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: actions-major
- dependency-name: goreleaser/goreleaser-action
dependency-version: 7.1.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: actions-major
- dependency-name: actions/setup-node
dependency-version: 6.4.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: actions-major
...
* fix(docker): bump the docker-minor group across 1 directory with 6 updates (#5079)
* fix(docker): bump the docker-minor group across 1 directory with 6 updates
Bumps the docker-minor group with 6 updates in the /pkg/config/templates directory:
| Package | From | To |
| --- | --- | --- |
| postgrest/postgrest | `v14.8` | `v14.9` |
| supabase/studio | `2026.04.08-sha-205cbe7` | `2026.04.13-sha-e95f1cc` |
| supabase/edge-runtime | `v1.73.3` | `v1.73.5` |
| supabase/realtime | `v2.82.0` | `v2.83.1` |
| supabase/storage-api | `v1.48.28` | `v1.51.0` |
| supabase/logflare | `1.37.1` | `1.38.2` |
Updates `postgrest/postgrest` from v14.8 to v14.9
Updates `supabase/studio` from 2026.04.08-sha-205cbe7 to 2026.04.13-sha-e95f1cc
Updates `supabase/edge-runtime` from v1.73.3 to v1.73.5
Updates `supabase/realtime` from v2.82.0 to v2.83.1
Updates `supabase/storage-api` from v1.48.28 to v1.51.0
Updates `supabase/logflare` from 1.37.1 to 1.38.2
---
updated-dependencies:
- dependency-name: postgrest/postgrest
dependency-version: v14.9
dependency-type: direct:production
dependency-group: docker-minor
- dependency-name: supabase/studio
dependency-version: 2026.04.13-sha-e95f1cc
dependency-type: direct:production
dependency-group: docker-minor
- dependency-name: supabase/edge-runtime
dependency-version: v1.73.5
dependency-type: direct:production
dependency-group: docker-minor
- dependency-name: supabase/realtime
dependency-version: v2.83.1
dependency-type: direct:production
dependency-group: docker-minor
- dependency-name: supabase/storage-api
dependency-version: v1.51.0
dependency-type: direct:production
dependency-group: docker-minor
- dependency-name: supabase/logflare
dependency-version: 1.38.2
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: docker-minor
...
* Downgrade postgrest version from 14.9 to 14.8
---------
* chore(workflows): enable install scripts for supabase package in Yarn (#5111)
chore(workflows): enable install scripts for supabase package in Yarn Berry setup
This change sets the YARN_ENABLE_SCRIPTS environment variable to true during the installation of the supabase package, allowing its postinstall script to run as required by Yarn Berry 4.14+. This adjustment ensures the necessary binary is fetched correctly.
* feat: --diff-engine flag on db pull
* fix(docker): bump the docker-minor group in /pkg/config/templates with 6 updates (#5113)
fix(docker): bump the docker-minor group
Bumps the docker-minor group in /pkg/config/templates with 6 updates:
| Package | From | To |
| --- | --- | --- |
| postgrest/postgrest | `v14.8` | `v14.10` |
| supabase/studio | `2026.04.13-sha-e95f1cc` | `2026.04.20-sha-b721a2d` |
| supabase/edge-runtime | `v1.73.5` | `v1.73.13` |
| supabase/realtime | `v2.83.1` | `v2.86.3` |
| supabase/storage-api | `v1.51.0` | `v1.54.1` |
| supabase/logflare | `1.38.2` | `1.39.1` |
Updates `postgrest/postgrest` from v14.8 to v14.10
Updates `supabase/studio` from 2026.04.13-sha-e95f1cc to 2026.04.20-sha-b721a2d
Updates `supabase/edge-runtime` from v1.73.5 to v1.73.13
Updates `supabase/realtime` from v2.83.1 to v2.86.3
Updates `supabase/storage-api` from v1.51.0 to v1.54.1
Updates `supabase/logflare` from 1.38.2 to 1.39.1
---
updated-dependencies:
- dependency-name: postgrest/postgrest
dependency-version: v14.10
dependency-type: direct:production
dependency-group: docker-minor
- dependency-name: supabase/studio
dependency-version: 2026.04.20-sha-b721a2d
dependency-type: direct:production
dependency-group: docker-minor
- dependency-name: supabase/edge-runtime
dependency-version: v1.73.13
dependency-type: direct:production
dependency-group: docker-minor
- dependency-name: supabase/realtime
dependency-version: v2.86.3
dependency-type: direct:production
dependency-group: docker-minor
- dependency-name: supabase/storage-api
dependency-version: v1.54.1
dependency-type: direct:production
dependency-group: docker-minor
- dependency-name: supabase/logflare
dependency-version: 1.39.1
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: docker-minor
...
* feat: exposing new api keys to functions (#4946)
* chore: upgrade pg-delta to alpha.20 in multiple templates
* fix: remove version comparison check for storage image updates (#5118)
fix: honor pinned storage version offline
Remove the version comparison that only pinned storage when the local
version was newer than the default. This prevented `supabase start` from
using an already-downloaded image offline, since Docker would still try
to pull the default newer image.
Fixes CLI-1393.
* fix: improve error handling and output formatting in pg-delta apply process (#5120)
- Updated the `runDeclarativeSync` function to avoid wrapping SQL output with `utils.Bold`, preventing excessive whitespace in multi-line SQL.
- Changed the result accumulation in `migra.ts` from string concatenation to an array for better performance and clarity.
- Enhanced the `ApplyResult` struct to include `ValidationErrors` and `Diagnostics`, allowing for more detailed error reporting.
- Modified the `formatApplyFailure` function to include validation errors and diagnostics in the output, improving user feedback on apply failures.
- Added tests for validation error handling in `apply_test.go` to ensure robustness against various error scenarios.
---------
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: supabase-cli-releaser[bot] <246109035+supabase-cli-releaser[bot]@users.noreply.github.com>
Co-authored-by: fadymak <dev@fadymak.com>
Co-authored-by: Vaibhav <117663341+7ttp@users.noreply.github.com>
Co-authored-by: Sean Oliver <882952+seanoliver@users.noreply.github.com>
Co-authored-by: Han Qiao <sweatybridge@gmail.com>
Co-authored-by: Julien Goux <hi@jgoux.dev>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Mert YEREKAPAN <mertyerekapan@gmail.com>
Co-authored-by: Mert YEREKAPAN <33198490+myerekapan@users.noreply.github.com>
Co-authored-by: Kalleby Santos <105971119+kallebysantos@users.noreply.github.com>
Co-authored-by: Claude <noreply@anthropic.com>
* Revert "Update Dockerfile for Studio image 2026-04-27" (#5132)
* Revert "Revert "Update Dockerfile for Studio image 2026-04-27"" (#5134)
Revert "Revert "Update Dockerfile for Studio image 2026-04-27" (#5132)"
This reverts commit 9251eaf.
* fix(windows): json unmarshal errors in telemetry and pg-delta declarative sync (#5128)
* fix(windows): json unmarshal errors in telemetry and pg-delta declarative sync
Three Windows-only failures, all surfacing as JSON parse errors:
1. telemetry: any field-level unmarshal error (e.g. session_last_active
stored as a number) now recreates state instead of propagating, since
identity fields aren't worth surfacing an error for.
2. pg-delta declarative sync: containerRef now normalises Windows path
separators with filepath.ToSlash so paths like
supabase\.temp\pgdelta\catalog-baseline.json resolve correctly inside
the Linux edge-runtime container.
3. pg-delta export/diff: parse callers (DeclarativeExportPgDeltaRef,
ExportCatalogPgDelta, pgcache.exportCatalog) now surface stderr when
stdout is empty, instead of failing later with "unexpected end of
JSON input". DiffPgDeltaRef intentionally still accepts empty stdout
as a legitimate "no schema changes" result.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
* chore: only run test on windows and fix lint
---------
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
---------
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Andrew Valleteau <avallete@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Kalleby Santos <105971119+kallebysantos@users.noreply.github.com>
Co-authored-by: avallete <andrew.valleteau@supabase.io>
Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: It's Me! <192345912+rebasecase@users.noreply.github.com>
Co-authored-by: rebasecase <rebasecase@localhost>
Co-authored-by: Joshen Lim <joshenlimek@gmail.com>
Co-authored-by: supabase-cli-releaser[bot] <246109035+supabase-cli-releaser[bot]@users.noreply.github.com>
Co-authored-by: fadymak <dev@fadymak.com>
Co-authored-by: Vaibhav <117663341+7ttp@users.noreply.github.com>
Co-authored-by: Sean Oliver <882952+seanoliver@users.noreply.github.com>
Co-authored-by: Han Qiao <sweatybridge@gmail.com>
Co-authored-by: Mert YEREKAPAN <mertyerekapan@gmail.com>
Co-authored-by: Mert YEREKAPAN <33198490+myerekapan@users.noreply.github.com>
encima pushed a commit that referenced this pull request May 15, 2026
Prod deploy (#5109)
* fix(pg-delta): declarative-sync-no-declarative-dir-set (#5078)
* feat(declarative): add tests for skipping config updates when PgDelta is enabled
- These tests verify that the configuration remains unchanged when PgDelta is enabled, ensuring the declarative directory is the source of truth.
- Updated the WriteDeclarativeSchemas function to reflect the new behavior regarding PgDelta configuration.
* fix(declarative): DSL change due to upgrade
* feat(auth): add support for configuring passkeys and webauthn (#5077)
* fix: atomic parser (#5064)
* fix
* test
---------
* fix(pg-delta): declarative apply error results (#5082)
* fix(pg-delta): declarative apply error results
Improve readability report for decalrative appy errors wrapping
* chore: upgrade pg-delta to alpha 13
* feat(telemetry): attach org/project groups to all CLI events
Only ~19% of CLI events had PostHog group properties ($group_0, $group_1)
because groups were only set during `supabase link`. Commands using
--project-ref without linking sent events invisible to group analytics.
Add EnsureProjectGroupsCached which resolves and caches project metadata
(including org ID) in linked-project.json when a project ref is available.
The cache is checked before every cli_command_executed event, so the API
call only happens once per unique project ref.
Closes GROWTH-761
* fix: address code review feedback
- Guard against log.Fatalln crash: check auth token before calling
GetSupabase(), and move the API call to cmd/root.go where it belongs
- Don't overwrite existing linked-project.json cache — supabase link
is the authoritative source, we only fill the gap when no cache exists
- Fire GroupIdentify for org and project after caching, matching the
link flow so PostHog has group metadata
- Restructure so telemetry package has no API dependencies (pure
caching + PostHog calls), making tests reliable without gock/mocks
* fix: adds etl to managed schema (#5090)
* chore: sync API types from infrastructure (#5093)
* chore(deps): bump the actions-major group across 1 directory with 5 updates (#5088)
Bumps the actions-major group with 5 updates in the / directory:
| Package | From | To |
| --- | --- | --- |
| [actions/create-github-app-token](https://github.com/actions/create-github-app-token) | `3.0.0` | `3.1.1` |
| [peter-evans/create-pull-request](https://github.com/peter-evans/create-pull-request) | `8.1.0` | `8.1.1` |
| [actions/upload-artifact](https://github.com/actions/upload-artifact) | `7.0.0` | `7.0.1` |
| [github/codeql-action](https://github.com/github/codeql-action) | `4.35.1` | `4.35.2` |
| [docker/build-push-action](https://github.com/docker/build-push-action) | `7.0.0` | `7.1.0` |
Updates `actions/create-github-app-token` from 3.0.0 to 3.1.1
- [Release notes](https://github.com/actions/create-github-app-token/releases)
- [Commits](actions/create-github-app-token@f8d387b...1b10c78)
Updates `peter-evans/create-pull-request` from 8.1.0 to 8.1.1
- [Release notes](https://github.com/peter-evans/create-pull-request/releases)
- [Commits](peter-evans/create-pull-request@c0f553f...5f6978f)
Updates `actions/upload-artifact` from 7.0.0 to 7.0.1
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](actions/upload-artifact@bbbca2d...043fb46)
Updates `github/codeql-action` from 4.35.1 to 4.35.2
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](github/codeql-action@c10b806...95e58e9)
Updates `docker/build-push-action` from 7.0.0 to 7.1.0
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](docker/build-push-action@d08e5c3...bcafcac)
---
updated-dependencies:
- dependency-name: actions/create-github-app-token
dependency-version: 3.1.1
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: actions-major
- dependency-name: peter-evans/create-pull-request
dependency-version: 8.1.1
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: actions-major
- dependency-name: actions/upload-artifact
dependency-version: 7.0.1
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: actions-major
- dependency-name: github/codeql-action
dependency-version: 4.35.2
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: actions-major
- dependency-name: docker/build-push-action
dependency-version: 7.1.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: actions-major
...
* fix: functions download (#5096)
* fix
* test
---------
* feat(db): strengthen RLS advisory message for stronger agent compliance
* chore(deps): upgrade pg-delta to alpha.17 (#5110)
Closes: #5094
* chore(deps): bump the actions-major group across 1 directory with 4 updates (#5108)
Bumps the actions-major group with 4 updates in the / directory: [dependabot/fetch-metadata](https://github.com/dependabot/fetch-metadata), [t1m0thyj/unlock-keyring](https://github.com/t1m0thyj/unlock-keyring), [goreleaser/goreleaser-action](https://github.com/goreleaser/goreleaser-action) and [actions/setup-node](https://github.com/actions/setup-node).
Updates `dependabot/fetch-metadata` from 3.0.0 to 3.1.0
- [Release notes](https://github.com/dependabot/fetch-metadata/releases)
- [Commits](dependabot/fetch-metadata@ffa630c...25dd0e3)
Updates `t1m0thyj/unlock-keyring` from 1.1.0 to 1.2.0
- [Release notes](https://github.com/t1m0thyj/unlock-keyring/releases)
- [Commits](t1m0thyj/unlock-keyring@728cc71...cbcf205)
Updates `goreleaser/goreleaser-action` from 7.0.0 to 7.1.0
- [Release notes](https://github.com/goreleaser/goreleaser-action/releases)
- [Commits](goreleaser/goreleaser-action@ec59f47...e24998b)
Updates `actions/setup-node` from 6.3.0 to 6.4.0
- [Release notes](https://github.com/actions/setup-node/releases)
- [Commits](actions/setup-node@53b8394...48b55a0)
---
updated-dependencies:
- dependency-name: dependabot/fetch-metadata
dependency-version: 3.1.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: actions-major
- dependency-name: t1m0thyj/unlock-keyring
dependency-version: 1.2.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: actions-major
- dependency-name: goreleaser/goreleaser-action
dependency-version: 7.1.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: actions-major
- dependency-name: actions/setup-node
dependency-version: 6.4.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: actions-major
...
* fix(docker): bump the docker-minor group across 1 directory with 6 updates (#5079)
* fix(docker): bump the docker-minor group across 1 directory with 6 updates
Bumps the docker-minor group with 6 updates in the /pkg/config/templates directory:
| Package | From | To |
| --- | --- | --- |
| postgrest/postgrest | `v14.8` | `v14.9` |
| supabase/studio | `2026.04.08-sha-205cbe7` | `2026.04.13-sha-e95f1cc` |
| supabase/edge-runtime | `v1.73.3` | `v1.73.5` |
| supabase/realtime | `v2.82.0` | `v2.83.1` |
| supabase/storage-api | `v1.48.28` | `v1.51.0` |
| supabase/logflare | `1.37.1` | `1.38.2` |
Updates `postgrest/postgrest` from v14.8 to v14.9
Updates `supabase/studio` from 2026.04.08-sha-205cbe7 to 2026.04.13-sha-e95f1cc
Updates `supabase/edge-runtime` from v1.73.3 to v1.73.5
Updates `supabase/realtime` from v2.82.0 to v2.83.1
Updates `supabase/storage-api` from v1.48.28 to v1.51.0
Updates `supabase/logflare` from 1.37.1 to 1.38.2
---
updated-dependencies:
- dependency-name: postgrest/postgrest
dependency-version: v14.9
dependency-type: direct:production
dependency-group: docker-minor
- dependency-name: supabase/studio
dependency-version: 2026.04.13-sha-e95f1cc
dependency-type: direct:production
dependency-group: docker-minor
- dependency-name: supabase/edge-runtime
dependency-version: v1.73.5
dependency-type: direct:production
dependency-group: docker-minor
- dependency-name: supabase/realtime
dependency-version: v2.83.1
dependency-type: direct:production
dependency-group: docker-minor
- dependency-name: supabase/storage-api
dependency-version: v1.51.0
dependency-type: direct:production
dependency-group: docker-minor
- dependency-name: supabase/logflare
dependency-version: 1.38.2
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: docker-minor
...
* Downgrade postgrest version from 14.9 to 14.8
---------
* chore(workflows): enable install scripts for supabase package in Yarn (#5111)
chore(workflows): enable install scripts for supabase package in Yarn Berry setup
This change sets the YARN_ENABLE_SCRIPTS environment variable to true during the installation of the supabase package, allowing its postinstall script to run as required by Yarn Berry 4.14+. This adjustment ensures the necessary binary is fetched correctly.
* feat: --diff-engine flag on db pull
* fix(docker): bump the docker-minor group in /pkg/config/templates with 6 updates (#5113)
fix(docker): bump the docker-minor group
Bumps the docker-minor group in /pkg/config/templates with 6 updates:
| Package | From | To |
| --- | --- | --- |
| postgrest/postgrest | `v14.8` | `v14.10` |
| supabase/studio | `2026.04.13-sha-e95f1cc` | `2026.04.20-sha-b721a2d` |
| supabase/edge-runtime | `v1.73.5` | `v1.73.13` |
| supabase/realtime | `v2.83.1` | `v2.86.3` |
| supabase/storage-api | `v1.51.0` | `v1.54.1` |
| supabase/logflare | `1.38.2` | `1.39.1` |
Updates `postgrest/postgrest` from v14.8 to v14.10
Updates `supabase/studio` from 2026.04.13-sha-e95f1cc to 2026.04.20-sha-b721a2d
Updates `supabase/edge-runtime` from v1.73.5 to v1.73.13
Updates `supabase/realtime` from v2.83.1 to v2.86.3
Updates `supabase/storage-api` from v1.51.0 to v1.54.1
Updates `supabase/logflare` from 1.38.2 to 1.39.1
---
updated-dependencies:
- dependency-name: postgrest/postgrest
dependency-version: v14.10
dependency-type: direct:production
dependency-group: docker-minor
- dependency-name: supabase/studio
dependency-version: 2026.04.20-sha-b721a2d
dependency-type: direct:production
dependency-group: docker-minor
- dependency-name: supabase/edge-runtime
dependency-version: v1.73.13
dependency-type: direct:production
dependency-group: docker-minor
- dependency-name: supabase/realtime
dependency-version: v2.86.3
dependency-type: direct:production
dependency-group: docker-minor
- dependency-name: supabase/storage-api
dependency-version: v1.54.1
dependency-type: direct:production
dependency-group: docker-minor
- dependency-name: supabase/logflare
dependency-version: 1.39.1
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: docker-minor
...
* feat: exposing new api keys to functions (#4946)
* chore: upgrade pg-delta to alpha.20 in multiple templates
* fix: remove version comparison check for storage image updates (#5118)
fix: honor pinned storage version offline
Remove the version comparison that only pinned storage when the local
version was newer than the default. This prevented `supabase start` from
using an already-downloaded image offline, since Docker would still try
to pull the default newer image.
Fixes CLI-1393.
* fix: improve error handling and output formatting in pg-delta apply process (#5120)
- Updated the `runDeclarativeSync` function to avoid wrapping SQL output with `utils.Bold`, preventing excessive whitespace in multi-line SQL.
- Changed the result accumulation in `migra.ts` from string concatenation to an array for better performance and clarity.
- Enhanced the `ApplyResult` struct to include `ValidationErrors` and `Diagnostics`, allowing for more detailed error reporting.
- Modified the `formatApplyFailure` function to include validation errors and diagnostics in the output, improving user feedback on apply failures.
- Added tests for validation error handling in `apply_test.go` to ensure robustness against various error scenarios.
---------
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: supabase-cli-releaser[bot] <246109035+supabase-cli-releaser[bot]@users.noreply.github.com>
Co-authored-by: fadymak <dev@fadymak.com>
Co-authored-by: Vaibhav <117663341+7ttp@users.noreply.github.com>
Co-authored-by: Sean Oliver <882952+seanoliver@users.noreply.github.com>
Co-authored-by: Han Qiao <sweatybridge@gmail.com>
Co-authored-by: Julien Goux <hi@jgoux.dev>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Mert YEREKAPAN <mertyerekapan@gmail.com>
Co-authored-by: Mert YEREKAPAN <33198490+myerekapan@users.noreply.github.com>
Co-authored-by: Kalleby Santos <105971119+kallebysantos@users.noreply.github.com>
Co-authored-by: Claude <noreply@anthropic.com>
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

declarative: When pgmq is enabled, the declarative schema generate and sync commands fail.

3 participants

@avallete@coveralls@Coly010