Select returns null
return returns hello world
(so this example has always been broken)
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
* **Documentation**
* Updated the database functions guide with refined code examples.
Documentation now demonstrates improved Postgres function syntax and
streamlined return mechanisms, providing developers with clearer
guidance for implementing database functions following current best
practices.
<sub>✏️ Tip: You can customize this high-level summary in your review
settings.</sub>
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Summary
Clarifies that installing the Supabase CLI globally via npm is not
supported.
## Details
The CLI already throws a clear error when attempting a global npm
install, but the documentation did not mention this.
This update adds a clear note to the Node.js installation section and
points users to supported alternatives.
## Related issue
Closes#4496
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
* **Documentation**
* Added a clear admonition in the getting started guide clarifying that
the Supabase CLI should not be installed globally via npm. Recommends
Homebrew, Scoop, or the standalone binary, and suggests using npx or a
local/dev dependency as alternatives. The guidance appears both after
the Node.js note and within the npm install tab.
<sub>✏️ Tip: You can customize this high-level summary in your review
settings.</sub>
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
---------
Co-authored-by: Chris Chinchilla <chris@chrischinchilla.com>
Co-authored-by: Chris Chinchilla <chris.ward@supabase.io>
## I have read the
[CONTRIBUTING.md](https://github.com/supabase/supabase/blob/master/CONTRIBUTING.md)
file.
YES
## What kind of change does this PR introduce?
Docs update — Rewrite the Agent Skills documentation as a single flat
page with a skills table.
## What is the current behavior?
The Agent Skills docs have a nested structure with an index page and
individual dynamic pages for each skill (fetched from the
`supabase/agent-skills` repo). Skills also inject sub-items into the
sidebar navigation.
## What is the new behavior?
This PR replaces the nested skill pages with a single, flat Agent Skills
page that:
- Lists all skills in a **table** with name, description, and a
**copy-to-install button** (fetched dynamically from the
[supabase/agent-skills](https://github.com/supabase/agent-skills) repo)
- Includes **installation commands** for both the skills CLI (`npx
skills add`) and Claude Code plugins
- Links skill names directly to their source on GitHub instead of
rendering full skill content inline
- Removes the dynamic `[slug]` route, sidebar nav injection, and local
skill example files
### Navigation Structure
```
Start
> AI Tools
> Agent Skills (new)
> Prompts (existing)
> Supabase MCP server (existing)
```
Closes
[AI-361](https://linear.app/supabase/issue/AI-361/create-skills-documentation-page-in-ai-tooling-docs)
---------
Co-authored-by: Claude Sonnet 4.5 <noreply@anthropic.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
## Summary
Customers were upgrading to Pro to clear service restrictions, unaware
that restrictions aren't lifted immediately when the billing cycle
resets — there's a delay. This adds a clarifying note to both the docs
FAQ and the Studio restricted alert so users know what to expect.
Note: upgrading your plan or disabling spend cap *does* lift
restrictions immediately (unchanged). The delay only applies to the
billing-cycle-reset path for usage-limit violations.
## Changes
- `billing-faq.mdx`: Removes the implication that restrictions clear the
moment the billing period resets; adds "Note that there may be a short
delay after your billing period resets before restrictions are fully
lifted"
- `Restriction.tsx`: Updates the restricted alert to make clear that
upgrading lifts restrictions immediately, while the billing-reset path
may have a delay
## Testing
To test the Studio banner, find or create an org with
`restriction_status === 'restricted'`, or temporarily hardcode
`shownAlert = 'restricted'` in `Restriction.tsx` to preview:
- [x] Restricted alert reads clearly and distinguishes immediate
(upgrade) vs delayed (billing reset) paths
- [x] Docs FAQ answer under "How can I remove restrictions" reads
correctly with the new caveat
## Linear
- fixes GROWTH-704
## I have read the
[CONTRIBUTING.md](https://github.com/supabase/supabase/blob/master/CONTRIBUTING.md)
file.
YES
## What kind of change does this PR introduce?
docs update
## What is the current behavior?
There is a 401 guide
## What is the new behavior?
This is an improved version of the same guide
---------
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Chris Chinchilla <chris.ward@supabase.io>
## I have read the
[CONTRIBUTING.md](https://github.com/supabase/supabase/blob/master/CONTRIBUTING.md)
file.
YES
## What kind of change does this PR introduce?
Docs update to `humans.txt` to add `Colum Ferry`
## What is the current behavior?
`Colum Ferry` does not exist in `humans.txt`
## What is the new behavior?
`Colum Ferry` exists in `humans.txt`
"Linking.useURL()" has been deprecated in Expo. This updates the example
to use the recommended "useLinkingURL()" hook, which provides the same
functionality for handling initial and subsequent deep links.
## I have read the
[CONTRIBUTING.md](https://github.com/supabase/supabase/blob/master/CONTRIBUTING.md)
file.
YES
## What kind of change does this PR introduce?
docs update
## What is the current behavior?
The Expo example code uses "Linking.useURL()", which is now marked as
deprecated in Expo SDK 50+ and produces a TypeScript warning.
## What is the new behavior?
The example now uses the recommended "useLinkingURL()" hook from
"expo-linking". This prevents deprecation warnings for developers
adopting this example. The functionality (handling initial and
subsequent deep links) remains exactly the same.
## Additional context
Expo Linking documentation:
https://docs.expo.dev/versions/latest/sdk/linking/
Co-authored-by: Chris Chinchilla <chris.ward@supabase.io>
## I have read the
[CONTRIBUTING.md](https://github.com/supabase/supabase/blob/master/CONTRIBUTING.md)
file.
YES
## What kind of change does this PR introduce?
Add docs for the custom OAuth & OIDC providers
## Notes
- Pricing to be clarified. Until now, we allow 3 providers per project.
- Dashboard instructions will be updated after dashboard is finalized.
---------
Co-authored-by: Chris Chinchilla <chris.ward@supabase.io>
## Problem
1. Users attempting to install the Supabase CLI globally via `npm
install -g supabase`
2. The Send Email Hook documentation incorrectly references
`user.email_new` instead of the correct field name `user.new_email`
## Solution
1. Added a clear note in the CLI getting started guide warning users
that npm global installation is not supported, directing them to use the
recommended installation methods instead
2. Corrected all three instances of `user.email_new` to `user.new_email`
in the Send Email Hook documentation to match the actual User interface
definition from `@supabase/auth-js`
## Related
- closes#43157
- closes https://github.com/supabase/cli/issues/4496
## I have read the
[CONTRIBUTING.md](https://github.com/supabase/supabase/blob/master/CONTRIBUTING.md)
file.
YES
## What kind of change does this PR introduce?
docs update
## What is the current behavior?
Issues described in this [Slack
thread](https://supabase.slack.com/archives/C02BJ2239GA/p1740408115511769)
## What is the new behavior?
- Full Storage Migration: Transfers all buckets and their contents.
- Bucket Configuration & Metadata Retention: Maintains settings like
public access, file size limits, MIME types, and file metadata.
- Conflict Resolution Options: Skip, merge (overwrite), or rename
buckets in the target project.
- Safety Measures: Requires user confirmation before destructive
actions.
- Efficient Processing: Batches files (10 per batch) and supports nested
directories.
- Progress & Reporting: Real-time updates, detailed migration summaries,
and error tracking for failed files.
---------
Co-authored-by: Illia Basalaiev <illiab@IMB3.local>
## I have read the
[CONTRIBUTING.md](https://github.com/supabase/supabase/blob/master/CONTRIBUTING.md)
file.
YES/NO
## What kind of change does this PR introduce?
Docs update
## What is the current behavior?
Many troubleshooting guides referencing Postgres functions were placed
in the edge function category
## What is the new behavior?
Removed the "function" topic filter for guides that are unrelated to
edge functions
This PR fixes some prettier issues:
- Bump and unify all prettier versions to 3.7.3 across teh whole repo
- Bump the SQL prettier plugin
- When running `test:prettier`, check `mdx` files also
- Run the new prettier format on all files
---------
Co-authored-by: Joshen Lim <joshenlimek@gmail.com>
## What kind of change does this PR introduce?
Chore
## What is the current behavior?
- We use the MCP client connect dialog in two places: Studio and Docs
- We duplicate image assets for each client in each of those two places
## What is the new behavior?
- Centralised assets
- Consolidation and simplification as a result of it all being a single
source-of-truth now
## To test
- [ ] Everything works as it did before across both Studio and
[Docs](https://supabase.com/docs/guides/getting-started/mcp)
- [ ] All MCP client images load as expected
## I have read the
[CONTRIBUTING.md](https://github.com/supabase/supabase/blob/master/CONTRIBUTING.md)
file.
YES
## What kind of change does this PR introduce?
A content/data fix: correcting stale feature metadata on the marketing
features page and docs feature status table.
## What is the current behavior?
Several features in features.tsx (supabase.com/features) have incorrect
stage or self-hosted availability values that are out of sync with docs.
## What is the new behavior?
branching
- stage updated to Beta
vault
- stage updated to Public Alpha
jwt-signing-keys
- availableOnSelfHosted set to true
persistent-storage
- docs URL corrected to /guides/functions/ephemeral-storage
- env var names corrected to S3FS_ACCESS_KEY_ID, S3FS_SECRET_ACCESS_KEY,
S3FS_REGION, S3FS_ENDPOINT_URL
features.mdx
- PrivateLink row added to the Platform section (beta, N/A for
self-hosted)
mcp-server
- removed "upcoming" from OAuth benefit (OAuth is now live), updated PAT
FAQ (OAuth is now default, PAT only needed for CI/CD), updated
self-hosted FAQ (self-hosted is supported via
/guides/self-hosting/enable-mcp)
## Additional context
N/A
---------
Co-authored-by: Ana Mogul <ana1337x@users.noreply.github.com>
## I have read the
[CONTRIBUTING.md](https://github.com/supabase/supabase/blob/master/CONTRIBUTING.md)
file.
YES
## What kind of change does this PR introduce?
This introduces Query Insights. It's the first edition of possible
future updates. This takes our old prototype and builds upon it for a
more action driven insights view.
---------
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: Ali Waseem <waseema393@gmail.com>