Repository navigation
chore: use a UUID instead of Netlify's function token - #17044
Conversation
|
Install the latest version of pnpm add https://pkg.svelte.dev/@sveltejs/kit/c/00f30372342b6fff46a1d2b7470d7d4914587e86Open in |
🦋 Changeset detectedLatest commit: 00f3037 The changes in this PR will be included in the next version bump. This PR includes changesets to release 1 package
Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Repository YAML (base), Organization UI (inherited) Review profile: QUIET Plan: Advanced Run ID: 📒 Files selected for processing (1)
🔗 Linked repositories identifiedCodeRabbit considers these linked repositories for cross-repo context during reviews:
Included review availability: Your plan provides up to 10 included reviews per hour; 9 remain after this review. 📝 WalkthroughWalkthroughNetlify serverless-function generation now uses positional parameters and creates a per-build UUID for split deployments. Generated split and catch-all modules receive the UUID. Catch-all modules record the incoming request pathname in a UUID-derived header. Split modules restore the pathname from that header before responding. The previous token-based full-URL reconstruction path has been removed. Merge Risk: ⚪ Minimal · up to This release note documents UUID-based pathname restoration for Netlify split functions, including environments without the Netlify function token. No current merge-blocking risk is identified. 🚥 Pre-merge checks | ✅ 2✅ Passed checks (2 passed)
Comment |
This PR was opened by the [Changesets release](https://github.com/changesets/action) GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to version-3, this PR will be updated.⚠️ ⚠️ ⚠️ ⚠️ ⚠️ ⚠️ `version-3` is currently in **pre mode** so this branch has prereleases rather than normal releases. If you want to exit prereleases, run `changeset pre exit` on `version-3`.⚠️ ⚠️ ⚠️ ⚠️ ⚠️ ⚠️ # Releases ## @sveltejs/adapter-cloudflare@8.0.0-next.7 ### Major Changes - breaking: populate env vars before `instrumentation.server.js` is evaluated and update the adapter instrumentation API ([#16303](#16303)) - breaking: remove cloudflare `platform`, emulate the `cloudflare:workers` module instead ([#16754](#16754)) - breaking: replace the `builder.generateManifest` with `builder.generateServerInstance` and `builder.manifest` ([#16875](#16875)) ### Patch Changes - Updated dependencies [[`9a4b343`](9a4b343), [`ee2f55b`](ee2f55b), [`65673a4`](65673a4), [`1b79845`](1b79845), [`b12bb78`](b12bb78), [`03f1687`](03f1687), [`49f0808`](49f0808), [`e7c74bf`](e7c74bf), [`0876d63`](0876d63), [`9a2b9ba`](9a2b9ba), [`c9f54b5`](c9f54b5), [`22b8152`](22b8152), [`f6d44cf`](f6d44cf), [`3c3a27b`](3c3a27b), [`7f376b1`](7f376b1), [`8a587c7`](8a587c7), [`aa4f960`](aa4f960)]: - @sveltejs/kit@3.0.0-next.27 ## @sveltejs/adapter-netlify@7.0.0-next.11 ### Major Changes - breaking: populate env vars before `instrumentation.server.js` is evaluated and update the adapter instrumentation API ([#16303](#16303)) - breaking: replace the `builder.generateManifest` with `builder.generateServerInstance` and `builder.manifest` ([#16875](#16875)) ### Patch Changes - fix: route requests with omitted optional parameters to split serverless functions ([#17020](#17020)) - fix: copy `_redirects` when deploying edge function ([#17047](#17047)) - chore: replace `@iarna/toml` with `smol-toml` ([#16948](#16948)) - chore: identify serverless functions with a UUID instead of Netlify's function token ([#17044](#17044)) - fix: ensure serverless function files have unique names ([#17049](#17049)) - Updated dependencies [[`9a4b343`](9a4b343), [`ee2f55b`](ee2f55b), [`65673a4`](65673a4), [`1b79845`](1b79845), [`b12bb78`](b12bb78), [`03f1687`](03f1687), [`49f0808`](49f0808), [`e7c74bf`](e7c74bf), [`0876d63`](0876d63), [`9a2b9ba`](9a2b9ba), [`c9f54b5`](c9f54b5), [`22b8152`](22b8152), [`f6d44cf`](f6d44cf), [`3c3a27b`](3c3a27b), [`7f376b1`](7f376b1), [`8a587c7`](8a587c7), [`aa4f960`](aa4f960)]: - @sveltejs/kit@3.0.0-next.27 ## @sveltejs/adapter-node@6.0.0-next.12 ### Major Changes - breaking: populate env vars before `instrumentation.server.js` is evaluated and update the adapter instrumentation API ([#16303](#16303)) - breaking: replace the `builder.generateManifest` with `builder.generateServerInstance` and `builder.manifest` ([#16875](#16875)) ### Patch Changes - Updated dependencies [[`9a4b343`](9a4b343), [`ee2f55b`](ee2f55b), [`65673a4`](65673a4), [`1b79845`](1b79845), [`b12bb78`](b12bb78), [`03f1687`](03f1687), [`49f0808`](49f0808), [`e7c74bf`](e7c74bf), [`0876d63`](0876d63), [`9a2b9ba`](9a2b9ba), [`c9f54b5`](c9f54b5), [`22b8152`](22b8152), [`f6d44cf`](f6d44cf), [`3c3a27b`](3c3a27b), [`7f376b1`](7f376b1), [`8a587c7`](8a587c7), [`aa4f960`](aa4f960)]: - @sveltejs/kit@3.0.0-next.27 ## @sveltejs/adapter-vercel@7.0.0-next.9 ### Major Changes - breaking: populate env vars before `instrumentation.server.js` is evaluated and update the adapter instrumentation API ([#16303](#16303)) - breaking: replace the `builder.generateManifest` with `builder.generateServerInstance` and `builder.manifest` ([#16875](#16875)) ### Patch Changes - fix: pass the requested pathname, including any trailing slash, to ISR functions ([#16903](#16903)) - fix: trace `process.cwd()`-relative files from the project directory and never glob from the filesystem root ([#16972](#16972)) - Updated dependencies [[`9a4b343`](9a4b343), [`ee2f55b`](ee2f55b), [`65673a4`](65673a4), [`1b79845`](1b79845), [`b12bb78`](b12bb78), [`03f1687`](03f1687), [`49f0808`](49f0808), [`e7c74bf`](e7c74bf), [`0876d63`](0876d63), [`9a2b9ba`](9a2b9ba), [`c9f54b5`](c9f54b5), [`22b8152`](22b8152), [`f6d44cf`](f6d44cf), [`3c3a27b`](3c3a27b), [`7f376b1`](7f376b1), [`8a587c7`](8a587c7), [`aa4f960`](aa4f960)]: - @sveltejs/kit@3.0.0-next.27 ## @sveltejs/kit@3.0.0-next.27 ### Major Changes - major: error when a client-requested single-flight mutation isn't respected by the server, allow the server to explicitly ignore refreshes ([#16892](#16892)) - breaking: remove `Server` constructor and `SSRManifest` from public types ([#16876](#16876)) - breaking: replace the `builder.generateManifest` with `builder.generateServerInstance` and `builder.manifest` ([#16875](#16875)) ### Minor Changes - feat: allow adapters to receive the Svelte config as a function argument when adding Vite plugins ([#16986](#16986)) - feat: allow adapters to override `getRequest` and `setResponse` during `vite dev` and `vite preview` ([#16753](#16753)) ### Patch Changes - fix: respect `paths.relative` during development for client files ([#17053](#17053)) - fix: clarify circular imports from `src/env` ([#17014](#17014)) - breaking: populate env vars before `instrumentation.server.js` is evaluated and update the adapter instrumentation API ([#16303](#16303)) - fix: record a history traversal before resolving its route ([#16959](#16959)) - fix: support coordinate objects from image inputs in remote forms ([#16944](#16944)) - fix: walk and copy directories without a stat per file ([#16995](#16995)) - fix: widen remote form fields for union schemas and string enums ([#16937](#16937)) - fix: respond to `HEAD` requests without a body ([#17036](#17036)) - chore: replace deprecated Vite dev server APIs ([#16961](#16961)) - fix: settle a query's pending request in place when its value arrives through `set()` ([#16958](#16958)) - fix: prevent `await_reactivity_loss` warning and `state_unsafe_mutation` error when the new version detector runs after an `await` ([#16915](#16915)) - chore: parse page options and remote modules with Vite's `parseSync` instead of `acorn` ([#16947](#16947)) ## @sveltejs/adapter-auto@8.0.0-next.4 ### Minor Changes - feat: add zero-config deployment support for Render ([#16850](#16850)) ### Patch Changes - Updated dependencies [[`9a4b343`](9a4b343), [`ee2f55b`](ee2f55b), [`65673a4`](65673a4), [`1b79845`](1b79845), [`b12bb78`](b12bb78), [`03f1687`](03f1687), [`49f0808`](49f0808), [`e7c74bf`](e7c74bf), [`0876d63`](0876d63), [`9a2b9ba`](9a2b9ba), [`c9f54b5`](c9f54b5), [`22b8152`](22b8152), [`f6d44cf`](f6d44cf), [`3c3a27b`](3c3a27b), [`7f376b1`](7f376b1), [`8a587c7`](8a587c7), [`aa4f960`](aa4f960)]: - @sveltejs/kit@3.0.0-next.27 ## @sveltejs/package@3.0.0-next.8 ### Patch Changes - chore: read the Svelte config via `@sveltejs/load-config` ([#17039](#17039)) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Follow-up on #17022 (comment)
This PR opts to generating a unique ID that Netlify split serverless functions check before restoring the requested original URL pathname. This approach works with Netlify edge functions too that don't have the
process.env.NETLIFY_FUNCTIONS_TOKENenvironment variable.