Skip to content

feat(cli): upgrade @supabase/typegen to 0.3.1 - #7202

Merged
avallete merged 2 commits into
developfrom
lukasklingsbo/typegen-0.3.1
Oct 19, 2026
Merged

avallete merged 2 commits into
developfrom
lukasklingsbo/typegen-0.3.1

Conversation

@spydon

@spydon spydon commented Oct 16, 2026

Copy link
Copy Markdown
Contributor

Summary

TL;DR: gen types bundles @supabase/typegen@0.3.1, which pins @supabase/postgrest-typegen@0.6.0. --lang swift now runs supabase-swift's supabase-typegen binary instead of an in-process generator, view columns that select a NOT NULL source column are typed non-nullable, and the introspected document gains the resolved rpcFunctions collection.

What changed

  • Bump @supabase/typegen from 0.2.2 to 0.3.1 in apps/cli/package.json. The lockfile moves @supabase/postgrest-typegen from 0.4.0 to 0.6.0 and arktype from 2.2.5 to 2.2.8 (with @ark/schema, @ark/util and arkregex).
  • pnpm-workspace.yaml: the minimumReleaseAgeExclude entries for the two typegen packages move to the new versions, both published on 2026-10-16. The arktype entries are removed, since 2.2.8 was published on 2026-10-07 and is already past the 7-day window.
  • SIDE_EFFECTS.md for gen types: Swift is listed as an external tool, and --swift-access-control accepts only internal and public.

Output changes

  • Swift (supabase/sdk#264): output comes from supabase-swift's supabase-typegen, emitting @Table structs for the PostgREST v3 typed API. The binary is resolved from SUPABASE_TYPEGEN, PATH, or the supabase-swift release the project depends on. --swift-access-control private and package now fail validation before anything runs.
  • TypeScript, Go, Python (supabase/sdk#284): a view column that selects a NOT NULL source column is typed non-nullable instead of nullable.
  • TypeScript (supabase/sdk#272, supabase/sdk#277): a function whose only parameter is an unnamed row is no longer typed as callable through /rpc, and the computed-field fallback is narrowed.
  • Dart: the document piped to dart run supabase_typegen --output - now carries rpcFunctions (supabase/sdk#271), which supabase_typegen reads to generate typed RPC methods.

Linked issue

No GitHub issue.

  • The linked issue is open and carries the open-for-contribution label (or I'm a Supabase maintainer).

Checklist

  • The PR title follows Conventional Commits (e.g. fix(cli): …).
  • Tests added or updated for the change. No test in this repository asserts on generated output; the generators' own tests cover it in supabase/sdk.
  • types:check, lint:check, fmt:check, knip:check and lint:effect:check pass across the workspace. lint:actions:check and the Go lint were not run locally, and this PR touches no workflow or Go code. gen tests on bun 1.4.2: 114 unit tests pass (1 skipped), 196 integration tests pass.

@spydon
spydon requested review from a team and supabase-oss as code owners October 16, 2026 12:31

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🤖 AI Review

Reviewed all three Claude findings and the completed Codex review, which reported none. Confirmed the Swift subprocess documentation omission and wrapping nit. The reported Swift breaking change remains uncertain because the dependency implementation is unavailable. Claims about SUPABASE_TYPEGEN and automatic binary discovery also remain unverified.

Findings

Severity Location Category Sources Claim
🟠 MAJOR apps/cli/package.json:64 breaking-change claude The dependency upgrade reportedly breaks existing Swift generation by requiring an external tool, changing generated types, and rejecting previously accepted access-control values, requiring breaking-release handling.
🟡 MINOR apps/cli/src/commands/gen/types/SIDE_EFFECTS.md:9 documentation claude The introduction explicitly adds the Swift supabase-typegen subprocess, but the subprocess inventory still names only Dart as a generator.
⚪ NIT apps/cli/src/commands/gen/types/SIDE_EFFECTS.md:9 documentation claude The edited prose at lines 9 and 195 exceeds the surrounding paragraphs' wrapping width.

Stats

Claude findings: 3 · Codex findings: 0 · Confirmed: 2 · Refuted: 0 · Uncertain: 1


Models: claude-opus-5-5 + gpt-6.1-sol · Trigger: auto · Workflow run

This review runs once per PR. A maintainer can request another with a /ai-review comment.

Comment thread apps/cli/package.json
Comment thread apps/cli/src/commands/gen/types/SIDE_EFFECTS.md Outdated
Comment thread apps/cli/src/commands/gen/types/SIDE_EFFECTS.md Outdated
@avallete
avallete enabled auto-merge October 19, 2026 09:16
@avallete
avallete added this pull request to the merge queue Oct 19, 2026
Merged via the queue into develop with commit 2036fb8 Oct 19, 2026
55 checks passed
@avallete
avallete deleted the lukasklingsbo/typegen-0.3.1 branch October 19, 2026 09:23
Sign up for free to 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.

2 participants