• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

supabase / cli / 28708834585
65%
develop: 65%

Build:
Build:
LAST BUILD BRANCH: gh-readonly-queue/develop/pr-5934-96c682eb2fc0e54238c770f10e0d0d3d69641d92
DEFAULT BRANCH: develop
Ran 04 Jul 2026 02:14PM UTC
Jobs 1
Files 229
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

04 Jul 2026 02:11PM UTC coverage: 65.166%. Remained the same
28708834585

push

github

web-flow
fix(cli): generate non-TypeScript types from project refs (#5622)

## What changed

- Lets legacy `supabase gen types --project-id` generate Go, Swift, and
Python types by resolving a temporary database connection and running
pg-meta.
- Keeps TypeScript project-ref generation on the Management API typegen
endpoint, while non-TypeScript project-ref flows use the project
database host plus a temporary login role.
- Updates side-effect docs and integration coverage for project-ref type
generation across TypeScript, Go, Swift, and Python.
- Adds e2e coverage for tokenless local typegen and an env-gated live
remote project matrix across all supported typegen languages.

## Why

Python type generation with `--project-id` failed before it could reach
pg-meta, and the first fix used the preview-branch config endpoint.
Production project refs return `404 Preview branch not found` from that
endpoint because `/v1/branches/{ref}` is branch-only.

Non-TypeScript type generation is still pg-meta-based, so project-ref
flows need to construct a live database connection instead of calling
the TypeScript-only typegen endpoint or asking the user to provide
`--db-url`.

## Reviewer context

Non-TypeScript project-ref generation still requires Docker because it
continues to use pg-meta. The change is limited to how the CLI resolves
the database connection for project refs: it fetches the project
database host and creates a temporary login role rather than reading or
storing the project's database password.

The live remote e2e matrix is skipped unless
`SUPABASE_TYPEGEN_E2E_REMOTE=1`, `SUPABASE_TEST_PROJECT_REF`, and
`SUPABASE_ACCESS_TOKEN` are set. The local e2e matrix runs without a
token and points the API profile at an unreachable local URL to catch
accidental Management API usage on the `--local` path.

Closes CLI-1812

---------

Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: Julien Goux <hi@jgoux.dev>

11041 of 16943 relevant lines covered (65.17%)

10.47 hits per line

Jobs
ID Job ID Ran Files Coverage
1 28708834585.1 04 Jul 2026 02:14PM UTC 229
65.17
GitHub Action Run
Source Files on build 28708834585
  • Tree
  • List 229
  • Changed 0
  • Source Changed 0
  • Coverage Changed 0
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #28708834585
  • 31d6fb97 on github
  • Prev Build on gh-readonly-queue/develop/pr-5782-3f2b9a63e67f29bb5a36da2dd5b0d90f7f2be8c9 (#28688860071)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc