Skip to content

docs(release): notes for v2.112.0 - #6114

Closed
supabase-cli-releaser[bot] wants to merge 2 commits into
developfrom
release-notes/v2.112.0
Closed

docs(release): notes for v2.112.0#6114
supabase-cli-releaser[bot] wants to merge 2 commits into
developfrom
release-notes/v2.112.0

Conversation

@supabase-cli-releaser

Copy link
Copy Markdown
Contributor

Proposed user-facing release notes for v2.112.0, generated by apps/cli/scripts/propose-release-notes.ts against tools/release/release-notes-prompt.md.

How to update the notes

Edit release-notes/v2.112.0.md directly on this branch — use the GitHub web editor or push commits to release-notes/v2.112.0 — before approving. The applied notes will reflect the file at the approved commit.

How to publish

Approve this PR as a supabase/cli team member. The .github/workflows/apply-release-notes.yml workflow will then:

  1. Overwrite the GitHub Release body for v2.112.0 with the contents of release-notes/v2.112.0.md.
  2. Comment the release URL on this PR.
  3. Close this PR and delete the release-notes/v2.112.0 branch.

This PR is not merged — the do not merge label is a reminder. It targets develop so that even an accidental merge never rewrites main. Nothing is meant to land on any branch.

Approvals from anyone outside the supabase/cli team are ignored; the workflow will post a comment explaining that and leave the release untouched.

How to abandon

Close the PR without approving. The auto-generated semantic-release body for v2.112.0 stays in place.

Re-generation

After this PR is closed, rerun the Propose release notes workflow from the Actions tab against v2.112.0 to get a fresh proposal.

@supabase-cli-releaser supabase-cli-releaser Bot added the do not merge Approve to apply; do not merge. label Aug 7, 2026
@supabase-cli-releaser
supabase-cli-releaser Bot requested a review from a team as a code owner August 7, 2026 10:18
@supabase-cli-releaser supabase-cli-releaser Bot added the do not merge Approve to apply; do not merge. label Aug 7, 2026

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 47944e1936

ℹ️ About Codex in GitHub

Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".

Comment thread release-notes/v2.112.0.md Outdated
This release improves local development stability with enhanced service lifecycle management, fixes migration and deployment edge cases, and continues the TypeScript migration.

### Highlights
- **Service lifecycle improved** — Lazy startup and better health detection reduce startup issues. (#6072)

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Remove next-only lifecycle feature from stable notes

For the stable v2 release, this overstates a user-facing change: .github/workflows/release.yml builds stable/beta releases with the legacy shell, while #6072's production changes are in apps/cli/src/next/** and internal stack/process-compose packages (the only legacy path touched is a test). Users installing v2.112.0 therefore won't get lazy startup/service-lifecycle behavior from this PR, so this highlight (and the duplicate New features bullet) should be removed or kept out of the public CLI notes.

Useful? React with 👍 / 👎.

Comment thread release-notes/v2.112.0.md Outdated
### Highlights
- **Service lifecycle improved** — Lazy startup and better health detection reduce startup issues. (#6072)
- **Migrations run in version order** — Fixes unpredictable behavior when multiple migrations exist. (#6038)
- **`supabase start` is more stable** — Migration failures no longer cause container hangs. (#6093)

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Call out the required stop/start for existing stacks

For users who already hit the analytics migration crashloop, #6093 is not applied by merely upgrading: the PR notes say broken stacks need one supabase stop && supabase start because the fixed entrypoint only takes effect when the container is recreated. As written, this bullet implies the hang is fixed for existing local stacks without that extra action, so affected users may keep retrying against the stale container and see the same failure.

Useful? React with 👍 / 👎.

Comment thread release-notes/v2.112.0.md Outdated
### Bug fixes
- **Profile loading fails fast with clear errors** — Malformed `--profile` config is reported immediately. (#6095)
- **Machine-readable output format is fixed** — `-o toml/yaml/json` now matches Go CLI output. (#6002)
- **Binary download cache is concurrent-safe** — Parallel CLI instances no longer corrupt the cache. (#6003)

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Drop stack-only cache fixes from stable CLI notes

#6003 only changes packages/stack/src/BinaryResolver.ts, and a repo-wide search of apps/cli/src/legacy shows the stable legacy CLI does not use that resolver for supabase start or other production commands. This bullet therefore promises a fix for parallel CLI invocations in the v2 stable release that those users cannot observe; it should be tailed as internal/alpha stack work instead of a public bug fix.

Useful? React with 👍 / 👎.

Comment thread release-notes/v2.112.0.md Outdated
- **Profile loading fails fast with clear errors** — Malformed `--profile` config is reported immediately. (#6095)
- **Machine-readable output format is fixed** — `-o toml/yaml/json` now matches Go CLI output. (#6002)
- **Binary download cache is concurrent-safe** — Parallel CLI instances no longer corrupt the cache. (#6003)
- **Path resolution is bounded to your project** — Symlinks can't escape your project directory. (#5956)

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Avoid claiming symlink escape protection for #5956

#5956 bounds extraction lexically with path.resolve/path.relative against utils.FunctionsDir; it does not resolve real paths or reject existing symlinks, and the bound is the functions directory rather than the whole project. Saying “Symlinks can't escape your project directory” overstates the security property users received, so this should be phrased as preventing downloaded function files from being written outside supabase/functions via path traversal.

Useful? React with 👍 / 👎.

Comment thread release-notes/v2.112.0.md Outdated
- **Kong reloads after `supabase db reset`** — Auth configuration stays synchronized. (#6017)
- **Auth email templates are preserved** — Kong templates survive CLI updates. (#6065)
- **SSO provider schemas are synchronized** — OIDC and SAML definitions match API expectations. (#6058)
- **Edge Functions deployment is unblocked** — Rollup integration issues are resolved. (#6057)

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Remove the Rollup bundler deployment claim

#6057's “rollup” is the develop→main rollup PR, not the Rollup bundler, and the commit only touches SSO test URL assertions plus packages/stack binary-cache fallback. There is no Edge Functions deployment or bundler change in that PR, so this release-note bullet advertises a user-facing deploy fix that was not actually shipped here.

Useful? React with 👍 / 👎.

Comment thread release-notes/v2.112.0.md Outdated

### Deprecations
- **`db diff --use-pg-schema` is deprecated** — Plan to remove from your workflows. (#6060)
- **`db pull --experimental` is deprecated** — Use standard `db pull` instead. (#6028)

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Point db pull --experimental users to --declarative

The implemented deprecation warning for #6028 explicitly tells users to use --declarative for per-object schema files, because plain db pull remains the migration-diff path and does not replace the deprecated structured-dump workflow. This guidance sends users to the wrong command form, so anyone migrating off db pull --experimental may lose the per-object output they were relying on.

Useful? React with 👍 / 👎.

Comment thread release-notes/v2.112.0.md Outdated

This release improves local development stability with enhanced service lifecycle management, fixes migration and deployment edge cases, and continues the TypeScript migration.

### Highlights

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Add missing private-registry breaking note

There is no Breaking changes section before the highlights, but #6005 intentionally stops forwarding NPM_AUTH_TOKEN into Docker/legacy-bundle functions deploy; the PR calls out that private-registry users whose .npmrc expands ${NPM_AUTH_TOKEN} will fail auth again and need to inline the token or use --use-api. Without this release-note gotcha, CI users can upgrade into failed deployments with no migration step.

Useful? React with 👍 / 👎.

Verified every bullet against the actual v2.111.0..v2.112.0 tree diff
(the range came from a rebased develop rollup, so commit subjects alone
were misleading) and applied the Codex review feedback:

- Drop #6072 and #6080: packages/next-only, not in the stable shell
- Drop #6003 and #6057: the stable CLI does not exercise the stack
  binary cache; #6057's "rollup" was the develop->main rollup PR,
  not the Rollup bundler
- Add breaking-change section for NPM_AUTH_TOKEN no longer being
  forwarded by functions deploy (#6005, ships in this tag)
- Note the one-time stop/start needed for already-stuck stacks (#6093)
- Scope #5956 to functions download path traversal
- Point db pull --experimental users at --declarative (#6028)
- Fix #6065 and #6066 descriptions to match the shipped changes
- Recount the internal tail (33 uncited commits in the compare range)

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018h8krKpNet85649nqtj95b

avallete commented Aug 7, 2026

Copy link
Copy Markdown
Member

Reviewed the proposed notes and verified every bullet against the actual v2.111.0...v2.112.0 tree diff (the range comes from a rebased develop rollup, so commit subjects alone are misleading — e.g. #6037/#6017/#6000/#5978/#6005 ship in this tag even though their PR numbers don't appear as commit subjects). Pushed a corrected version in 1267c35.

All 7 Codex review comments checked out and were applied:

Additional corrections beyond Codex:


Generated by Claude Code

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 1267c3596a

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread release-notes/v2.112.0.md

### Improvements
- `supabase start` works on SELinux-enforcing hosts (for example Fedora with rootless Podman) — CLI-generated secret files are relabeled so containers can read them. (#6000)
- `functions serve` and Docker-based deploys continue when the working directory can't be mounted. (#6048)

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Remove Docker deploys from the #6048 note

For Podman projects with no enabled functions, #6048 fixes supabase start by omitting the Edge Runtime container's --workdir when no bind materializes that directory; startEdgeRuntimeContainer is used by start/serve, not by the Docker bundling path in functions deploy. The only deploy-side change in that commit extends bind-string parsing for :ro,Z, so this note incorrectly promises that Docker-based deployments recover from an unmountable working directory; describe the zero-function Podman start/serve scenario instead.

Useful? React with 👍 / 👎.

Comment thread release-notes/v2.112.0.md
@@ -0,0 +1,39 @@
## Supabase CLI v2.112.0 — 2026-08-07

This release fixes migration ordering, stops `supabase start` from hanging when analytics migrations fail, and unblocks Edge Functions deploys on Windows. There is one breaking change for private npm registry users.

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P1 Badge Document the second functions-deploy breaking change

For monorepos where the Supabase workdir is below the Git root and a function imports a shared file outside that workdir, #6005 now makes the default API deploy fail: writeSourceDeployForm computes the upload name relative to the workdir and rejects the resulting ../… path with failed to read file: open …: invalid argument. Before #6005 these uploads were anchored at the Git root and supported, so the assertion that there is only one breaking change omits a distinct deployment break that affected users need called out.

Useful? React with 👍 / 👎.

Comment thread release-notes/v2.112.0.md

### Bug fixes
- Malformed `--profile` config fails fast with a clear error instead of being silently ignored. (#6095)
- `-o toml/yaml/json` machine-readable output matches the Go CLI again. (#6002)

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Remove the unsupported OIDC claim

#6058 only resynchronizes the SAML-provider response schemas by removing the obsolete nested saml.id and domains[].id requirements; its diff contains no OIDC schema change. Saying that OIDC definitions were synchronized therefore promises an OIDC fix that was not shipped; describe the restored sso list/show/update/remove handling for current SAML responses instead.

Useful? React with 👍 / 👎.

Comment thread release-notes/v2.112.0.md
- Small parity fixes from the July audit — `db dump`, `db query` formatting, credentials handling, and other edge cases now match the Go CLI. (#5978)

### Deprecations
- **`db diff --use-pg-schema` is deprecated** — plan to remove it from your workflows. (#6060)

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Name the replacement for --use-pg-schema

Users relying on this deprecated diff engine cannot act on “plan to remove it” because no replacement is given. #6060's implemented warning provides the concrete migration paths—use the pg-delta engine via [experimental.pgdelta] enabled = true or --use-pg-delta, or return to the default migra engine—so the release note should include that guidance rather than leaving workflows without an alternative.

Useful? React with 👍 / 👎.

@supabase-cli-releaser

Copy link
Copy Markdown
Contributor Author

Applied to v2.112.0 after approval by @avallete.

@supabase-cli-releaser
supabase-cli-releaser Bot deleted the release-notes/v2.112.0 branch August 7, 2026 15:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

do not merge Approve to apply; do not merge.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants