mirror of
https://github.com/supabase/supabase.git
synced 2026-10-05 09:25:06 +03:00
**Stack 1/6** of the TanStack Start migration (#46424), split into reviewable, independently-mergeable PRs. > [!IMPORTANT] > **Next stays the default and only active framework after this PR.** This wires up the Vite/TanStack-Start build pipeline behind the `STUDIO_FRAMEWORK` flag, but there are no TanStack routes yet — so the TanStack build isn't functional or tested until later PRs in the stack. Nothing about the Next build, dev, or deploy changes behaviourally here. ## What's in this PR - **Dispatch:** `dev`/`build`/`start` now go through `scripts/dispatch.js`, which runs the Next variant unless `STUDIO_FRAMEWORK=tanstack`. The original commands are preserved as `dev:next`/`build:next`/`start:next`. - **Build pipeline:** `vite.config.ts`, `serve.js`, `smoke-server.mjs`, vite/tanstack deps, `turbo.jsonc`. - **`tsconfig.json`:** `jsx: react-jsx`, `moduleResolution: Bundler`, `target: ES2022`. Because `include` is `**/*.ts(x)`, this re-typechecks the whole app, so the companion adaptations below land with it. - **Shared adaptations (companions to the tsconfig change):** `BufferSource` casts, `packages/ui` unused-`React` import removals, etc. - **Routing/middleware plumbing:** `next.config.ts` + `redirects.shared.ts` (redirect rules now shared with `vercel.ts`), `proxy.ts`/`start.ts` middleware + `hosted-api-allowlist.ts`. ## Verification Run locally off `master`: frozen install ✓, `studio` typecheck ✓, **Next build ✓** (compiles + generates all routes), lint ratchet ✓ ("some rules improved"), prettier ✓. <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **New Features** * Added a hosted API endpoint allowlist to return 404 for non-supported `/api/*` routes. * Introduced a TanStack route-migration checklist and expanded TanStack Start routing support. * **Improvements** * Enhanced deployment refresh/detection by tightening cookie handling for “latest deployment” updates. * Centralized redirect/maintenance-mode rules for consistent platform vs self-hosted behavior. * Improved production serving with a dedicated static + proxy server and a post-build smoke test. * **Dependencies** * Updated TanStack-related packages and React Table/query tooling versions. * **Documentation / Chores** * Updated formatting and tooling config; added shared build environment parsing utilities. <!-- end of auto-generated comment: release notes by coderabbit.ai --> --------- Co-authored-by: Alaister Young <10985857+alaister@users.noreply.github.com> Co-authored-by: Ivan Vasilov <vasilov.ivan@gmail.com>
97 lines
2.1 KiB
YAML
97 lines
2.1 KiB
YAML
packages:
|
|
- apps/*
|
|
- packages/*
|
|
- blocks/*
|
|
- e2e/*
|
|
|
|
blockExoticSubdeps: true
|
|
|
|
catalog:
|
|
'@sentry/nextjs': ^10.26.0
|
|
'@supabase/auth-js': 2.108.2
|
|
'@supabase/postgrest-js': 2.108.2
|
|
'@supabase/realtime-js': 2.108.2
|
|
'@supabase/ssr': 0.10.2
|
|
'@supabase/supabase-js': 2.108.2
|
|
'@tanstack/react-router': ^1.169.2
|
|
'@tanstack/react-start': ^1.167.65
|
|
'@tanstack/react-table': ^8.21.3
|
|
'@types/node': ^22.0.0
|
|
'@types/react': ^19.2.14
|
|
'@types/react-dom': ^19.2.3
|
|
'@vitejs/plugin-react': ^6.0.1
|
|
'@vitest/coverage-v8': ^4.1.4
|
|
'@vitest/ui': ^4.1.4
|
|
lodash: ^4.18.1
|
|
lodash-es: ^4.18.1
|
|
next: 16.2.6
|
|
next-themes: ^0.4.6
|
|
postcss: ^8.5.10
|
|
radix-ui: ^1.4.3
|
|
react: ^19.2.6
|
|
react-dom: ^19.2.6
|
|
recharts: ^2.15.4
|
|
tailwindcss: ^4.2.4
|
|
tsx: ^4.22.0
|
|
typescript: ~6.0.0
|
|
valtio: ^1.12.0
|
|
vite: ^8.0.16
|
|
vite-tsconfig-paths: ^6.1.1
|
|
vitest: ^4.1.4
|
|
zod: 3.25.76
|
|
|
|
ignoredBuiltDependencies:
|
|
- '@parcel/watcher'
|
|
- '@sentry/cli'
|
|
- contentlayer2
|
|
- core-js
|
|
- es5-ext
|
|
- esbuild
|
|
- libpg-query
|
|
- msw
|
|
- protobufjs
|
|
- sharp
|
|
|
|
minimumReleaseAge: 4320
|
|
|
|
minimumReleaseAgeExclude:
|
|
- '@ai-sdk/*'
|
|
- '@supabase/*'
|
|
- '@supabase-labs/*'
|
|
# The following are excluded to fix vulnerablities.
|
|
- react-use
|
|
|
|
onlyBuiltDependencies:
|
|
- node-pty
|
|
- supabase
|
|
|
|
overrides:
|
|
'@ardatan/relay-compiler>immutable': ^3.8.3
|
|
'@mapbox/node-pre-gyp>tar': ^7.5.11
|
|
'@sentry/webpack-plugin>uuid': ^11.1.1
|
|
'@usercentrics/cmp-browser-sdk>uuid': ^11.1.1
|
|
'braintrust>uuid': ^11.1.1
|
|
'mdx-bundler>uuid': ^11.1.1
|
|
braintrust>esbuild: ^0.28.1
|
|
cacache>tar: ^7.5.11
|
|
dompurify: ^3.3.2
|
|
express-rate-limit>ip-address: ^10.1.1
|
|
# Pin h3 v1 to a single version so the Nuxt registry example (vue-blocks)
|
|
# doesn't end up with two copies (1.15.10 + 1.15.11) and hit nominal
|
|
# H3Event type mismatches. v2 (h3@2) is intentionally left untouched.
|
|
'h3@1': 1.15.11
|
|
lodash: 'catalog:'
|
|
lodash-es: 'catalog:'
|
|
node-gyp>tar: ^7.5.11
|
|
nodemailer: ^7.0.11
|
|
postcss: 'catalog:'
|
|
qs: ^6.15.2
|
|
refractor>prismjs: ^1.30.0
|
|
supabase>tar: ^7.5.11
|
|
tmp: ^0.2.7
|
|
vite>esbuild: ^0.28.1
|
|
webpack: ^5.104.1
|
|
|
|
patchedDependencies:
|
|
react-data-grid: patches/react-data-grid.patch
|