Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
50 changes: 50 additions & 0 deletions .github/workflows/www-tests.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
name: Marketing site tests

on:
pull_request:
branches: ['master']
paths:
- 'apps/www/**/*.ts*'
- 'apps/www/next.config.mjs'
- 'apps/www/next.config.js'

# Cancel old builds on new commit for same workflow + branch/PR
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true

permissions:
contents: read

env:
CI: true

jobs:
build:
runs-on: blacksmith-4vcpu-ubuntu-2404

steps:
- uses: actions/checkout@08eba0b27e820071cde6df949e0beb9ba4906955 # v4.3.0
with:
sparse-checkout: |
apps/www
packages
supabase

- uses: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061 # v4.2.0
name: Install pnpm
with:
run_install: false

- name: Use Node.js
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
with:
node-version-file: '.nvmrc'
cache: 'pnpm'

- name: Install deps
run: pnpm install --frozen-lockfile

- name: Run tests
run: pnpm run test
working-directory: ./apps/www
Original file line number Diff line number Diff line change
Expand Up @@ -2827,10 +2827,12 @@ export const self_hosting: NavMenuConstant = {
items: [
{ name: 'Overview', url: '/guides/self-hosting' },
{ name: 'Self-Hosting with Docker', url: '/guides/self-hosting/docker' },
{ name: 'Restore from Platform', url: '/guides/self-hosting/restore-from-platform' },
{
name: 'Configuration',
items: [{ name: 'Enabling MCP server', url: '/guides/self-hosting/enable-mcp' }],
name: 'How-to Guides',
items: [
{ name: 'Enabling MCP server', url: '/guides/self-hosting/enable-mcp' },
{ name: 'Restore from Platform', url: '/guides/self-hosting/restore-from-platform' },
],
},
{
name: 'Auth Server',
Expand Down
9 changes: 9 additions & 0 deletions apps/docs/content/guides/auth/phone-login.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -77,6 +77,15 @@ supabase.auth.signInWith(OTP) {
}
```

To send the OTP via WhatsApp instead of SMS (requires Twilio or Twilio Verify provider):

```kotlin
supabase.auth.signInWith(OTP) {
phone = "+13334445555"
channel = Phone.Channel.WHATSAPP
}
```

</TabPanel>
</$Show>
<$Show if="sdk:python">
Expand Down
6 changes: 5 additions & 1 deletion apps/docs/content/guides/database/custom-postgres-config.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -51,19 +51,23 @@ Some settings can only be modified by a superuser. Supabase pre-enables the [`su
| Setting | Description |
| ---------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `auto_explain.*` | Configures the [auto_explain module](https://www.postgresql.org/docs/current/auto-explain.html). Can be configured to log execution plans for queries expected to exceed x seconds, including function queries. |
| `deadlock_timeout` | Sets the time to wait on a lock before checking for deadlock. |
| `log_lock_waits` | Controls whether a log message is produced when a session waits longer than [deadlock_timeout](https://www.postgresql.org/docs/current/runtime-config-locks.html#GUC-DEADLOCK-TIMEOUT) to acquire a lock. |
| `log_min_duration_statement` | Causes the duration of each completed statement to be logged if the statement ran for at least the specified amount of time. |
| `log_min_messages` | Minimum severity level of messages to log. |
| `log_parameter_max_length` | Sets the maximum length in bytes of data logged for bind parameter values when logging statements. |
| `log_replication_commands` | Logs all replication commands |
| `log_statement` | Controls which SQL statements are logged. Valid values are `none` (off), `ddl`, `mod`, and `all` (all statements). |
| `log_temp_files` | Controls logging of temporary file names and sizes. |
| `pg_net.ttl` | Sets how long the [pg_net extension](/docs/guides/database/extensions/pg_net) saves responses |
| `pg_net.batch_size` | Sets how many requests the [pg_net extension](/docs/guides/database/extensions/pg_net) can make per second |
| `pg_net.ttl` | Sets how long the [pg_net extension](/docs/guides/database/extensions/pg_net) saves responses |
| `pg_stat_statements.*` | Configures the [pg_stat_statements extension](https://www.postgresql.org/docs/current/pgstatstatements.html). |
| `pgaudit.*` | Configures the [PGAudit extension](/docs/guides/database/extensions/pgaudit). The `log_parameter` is still restricted to protect secrets |
| `pgrst.*` | [`PostgREST` settings](https://docs.postgrest.org/en/stable/references/configuration.html#db-aggregates-enabled) |
| `plan_filter.*` | Configures the [pg_plan_filter extension](/docs/guides/database/extensions/pg_plan_filter) |
| `safeupdate.enabled` | Enables the [safeupdate extension](https://github.com/eradman/pg-safeupdate), which requires a `WHERE` clause on `UPDATE` and `DELETE` statements. |
| `session_replication_role` | Sets the session's behavior for triggers and rewrite rules. |
| `track_functions` | Controls whether function call counts and timing are tracked. Valid values are `none`, `pl` (only procedural-language functions), and `all`. |
| `track_io_timing` | Collects timing statistics for database I/O activity. |
| `wal_compression` | This parameter enables compression of WAL using the specified compression method. |

Expand Down
2 changes: 1 addition & 1 deletion apps/docs/content/guides/platform/privatelink.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -163,7 +163,7 @@ For maximum security, you can disable public internet access for your database:

During the beta phase:

- **Read Replicas**: PrivateLink does not currently support read replicas
- **Read Replicas**: To establish PrivateLink with a Read Replica, reach out to your account rep.
- **Feature Evolution**: The setup process and capabilities may evolve as we refine the offering

## Compatibility
Expand Down
2 changes: 1 addition & 1 deletion apps/docs/content/guides/security/platform-security.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,6 @@ For configuration information, see [PrivateLink](/docs/guides/platform/privateli

<Admonition type="note">

PrivateLink is currently in alpha and available exclusively to Enterprise customers.
PrivateLink is currently in beta. To establish PrivateLink with a Read Replica, reach out to your account rep.

</Admonition>
Original file line number Diff line number Diff line change
Expand Up @@ -96,7 +96,7 @@ SELECT count(*) FROM auth.users;
SELECT * FROM pg_extension;
```

## What's included and what's not
## What's included in the restore and what's not

The database dump includes your schema, data, roles, RLS policies, database functions, triggers, and `auth.users`. However, several things require separate configuration on your self-hosted instance:

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@ Since the wraparound prevention autovacuum cannot be stopped, the best approach
2. **Increase Disk Throughput/IOPS:**
- **Action:** If disk I/O utilization is also consistently high (e.g., near 100%), consider temporarily increasing your disk's provisioned IOPS and throughput.
- **Why it helps:** Autovacuum is an I/O-intensive operation, involving a lot of reading and writing. Higher disk performance can significantly speed up the process.
- **Considerations:** Cloud providers often have limitations, such as a cooldown period (e.g., 6 hours) between disk modification operations.
- **Considerations:** Cloud providers often have limitations, such as a cooldown period (e.g., 4 hours) between disk modification operations.

### **Monitoring progress and future prevention**

Expand Down
Loading
Loading