Skip to content

docs(release): notes for v2.116.0 - #6346

Closed
supabase-cli-releaser[bot] wants to merge 1 commit into
developfrom
release-notes/v2.116.0
Closed

docs(release): notes for v2.116.0#6346
supabase-cli-releaser[bot] wants to merge 1 commit into
developfrom
release-notes/v2.116.0

Conversation

@supabase-cli-releaser

Copy link
Copy Markdown
Contributor

Proposed user-facing release notes for v2.116.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.116.0.md directly on this branch — use the GitHub web editor or push commits to release-notes/v2.116.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.116.0 with the contents of release-notes/v2.116.0.md.
  2. Comment the release URL on this PR.
  3. Close this PR and delete the release-notes/v2.116.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.116.0 stays in place.

Re-generation

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

@supabase-cli-releasersupabase-cli-releaserBot added the do not merge Approve to apply; do not merge. label Aug 26, 2026
@supabase-cli-releaser
supabase-cli-releaserBot requested a review from a team as a code ownerAugust 26, 2026 20:13
@supabase-cli-releasersupabase-cli-releaserBot added the do not merge Approve to apply; do not merge. label Aug 26, 2026

@chatgpt-codex-connectorchatgpt-codex-connectorBot 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:7ade228ec0

ℹ️ 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".


### Highlights

- **`supabase start` and `stop` are 10 seconds faster** — Docker shutdown no longer waits; saves time on every restart. (#6203)

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 Limit the speedup claim to supabase stop

PR #6203 explicitly reports that start time is unchanged and that stop --no-backup improved from an average of 12.64s to 5.14s. Claiming both start and stop are 10 seconds faster therefore gives users an incorrect performance expectation; describe the measured roughly 7.5-second stop-only improvement instead.

Useful? React with 👍 / 👎.

### Highlights

- **`supabase start` and `stop` are 10 seconds faster** — Docker shutdown no longer waits; saves time on every restart. (#6203)
- **Migration testing is faster with shadow database baseline caching** — Your baseline is cached as a PGDATA snapshot, speeding up repeated diffs and migrations. (#6184)

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 Disclose that shadow baseline caching is opt-in

The cache added by PR #6184 is disabled unless SUPABASE_SHADOW_CACHE=1 or true is set, so users following these notes receive no caching or repeated-run speedup by default. The highlight should either document the opt-in and the affected commands or be moved to the internal tail until the cache becomes default-on.

Useful? React with 👍 / 👎.


- **`supabase start` and `stop` are 10 seconds faster** — Docker shutdown no longer waits; saves time on every restart. (#6203)
- **Migration testing is faster with shadow database baseline caching** — Your baseline is cached as a PGDATA snapshot, speeding up repeated diffs and migrations. (#6184)
- **Edge runtime bootstrap streams output in real time** — See progress instead of waiting for full completion. (#6273)

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 Describe the remote-Docker bootstrap fix instead

PR #6273 does not stream progress output to the terminal: it streams the bundled index.ts template into the created container with docker cp. The user-visible fix is that supabase start and functions serve now work with remote Docker or Podman daemons that cannot access client-side bind mounts, so the current promise of real-time output is unsupported.

Useful? React with 👍 / 👎.

- **`supabase start` and `stop` are 10 seconds faster** — Docker shutdown no longer waits; saves time on every restart. (#6203)
- **Migration testing is faster with shadow database baseline caching** — Your baseline is cached as a PGDATA snapshot, speeding up repeated diffs and migrations. (#6184)
- **Edge runtime bootstrap streams output in real time** — See progress instead of waiting for full completion. (#6273)
- **New `[workers]` configuration section** — Configure workers in `supabase/config.toml`. (#6260)

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 unusable workers configuration highlight

PR #6260 states that no CLI surface consumes [workers] yet and that the worker commands arrive in later changes. Although this release can parse the section, adding it to supabase/config.toml cannot configure or deploy a worker, so advertising it as an available workflow will lead users to expect behavior that is not present in v2.116.0.

Useful? React with 👍 / 👎.


- **Piped stdin is no longer buffered endlessly** — Fixed memory overflow when piping data to the CLI. (#6290)
- **Stale database connections are detected and dropped** — Operations no longer hang on dead connections. (#6277)
- **Edge runtime respects system file descriptor limits** — Prevents "too many open files" crashes. (#6284)

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 Describe the edge-runtime ulimit startup failure accurately

PR #6284 addresses Linux hosts whose hard nofile limit is below 65536, where Docker rejects the requested container ulimit and Edge Runtime fails to start; it clamps the request to the host limit. It does not prevent runtime exhaustion or a subsequent "too many open files" crash, so this wording describes a different failure mode from the one fixed.

Useful? React with 👍 / 👎.

- **Postgres role management is more stable** — Roles are restored correctly after changes. (#6246)
- **Loopback network proxying is bypassed** — Local requests route directly, improving reliability. (#6283)
- **Kong local DNS cache is optimized** — DNS resolution is more responsive and consistent. (#6324)
- **Service startup is more reliable** — Fixed edge cases during start and stop. (#6245)

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 Move the private stack fix to the internal tail

PR #6245 changes only the private @supabase/stack managed-runtime implementation, while the production legacy supabase start and stop paths explicitly do not use that orchestration model. CLI users therefore do not receive the advertised service-startup improvement from this PR; it should be counted as an internal change rather than presented as a CLI bug fix.

Useful? React with 👍 / 👎.


### Improvements

- **`auto_expose_new_tables` defaults to `true`** — Matches your Supabase project behavior by default. (#6337)

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 Document the reset required for existing local volumes

PR #6337 only changes database setup for fresh volumes; a volume initialized while an unset auto_expose_new_tables meant false keeps its revoked grants after upgrading. Users with those existing projects will not observe the advertised platform-matching behavior until they run db reset or recreate the volume, so the release note needs that migration caveat.

Useful? React with 👍 / 👎.


---

Plus 14 internal improvements and dependency updates.

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 Include the external import-map scope fix

PR #6309 is a user-facing fix for monorepos: functions serve, start, and local functions deploy previously omitted import-map scopes targets outside the Supabase project, causing functions to fail with unresolved relative imports. Treating this as part of the internal tail leaves affected users with no indication that upgrading fixes their broken function workflow.

Useful? React with 👍 / 👎.


---

Plus 14 internal improvements and dependency updates.

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 Include the user-visible pg-delta changes

PR #6300 modifies the production legacy commands db diff, db pull, and db schema declarative generate, including new default SQL formatting and fixes for ownership, extension, ACL, vault, and stalled-load handling. Despite the PR title containing “next,” these paths are user-facing in this release, so burying the change in the internal tail omits relevant output changes and database-workflow fixes.

Useful? React with 👍 / 👎.


### Bug fixes

- **Piped stdin is no longer buffered endlessly** — Fixed memory overflow when piping data to the CLI. (#6290)

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 Qualify the stdin buffering fix to newline-delimited input

When a producer continuously writes a single line without a newline, Stream.splitLines still accumulates that unterminated line before data reaches the new 1,024-line bounded queue, so the CLI can still grow without bound and be OOM-killed. PR #6290 explicitly identifies this residual case, making the unconditional claim that piped stdin is no longer buffered endlessly inaccurate.

Useful? React with 👍 / 👎.

@supabase-cli-releaser

Copy link
Copy Markdown
ContributorAuthor

Applied to v2.116.0 after approval by @jgoux.

@supabase-cli-releaser
supabase-cli-releaserBot deleted the release-notes/v2.116.0 branch August 27, 2026 10:01
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

do not mergeApprove to apply; do not merge.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant

@jgoux