Use vercel deployment url for metadataBase fallbacks#65089
Conversation
Stats from current PRDefault Build (Increase detected
|
| vercel/next.js canary | vercel/next.js metadata/use-vercel-env | Change | |
|---|---|---|---|
| buildDuration | 18.4s | 15.5s | N/A |
| buildDurationCached | 9.2s | 8.2s | N/A |
| nodeModulesSize | 360 MB | 360 MB | |
| nextStartRea..uration (ms) | 425ms | 432ms | N/A |
Client Bundles (main, webpack)
| vercel/next.js canary | vercel/next.js metadata/use-vercel-env | Change | |
|---|---|---|---|
| 1103-HASH.js gzip | 31.9 kB | 31.9 kB | N/A |
| 1a9f679d-HASH.js gzip | 53.5 kB | 53.5 kB | N/A |
| 335-HASH.js gzip | 5.09 kB | 5.09 kB | N/A |
| 7953.HASH.js gzip | 169 B | 169 B | ✓ |
| framework-HASH.js gzip | 45.2 kB | 45.2 kB | ✓ |
| main-app-HASH.js gzip | 230 B | 229 B | N/A |
| main-HASH.js gzip | 31.5 kB | 31.5 kB | N/A |
| webpack-HASH.js gzip | 1.65 kB | 1.65 kB | N/A |
| Overall change | 45.4 kB | 45.4 kB | ✓ |
Legacy Client Bundles (polyfills)
| vercel/next.js canary | vercel/next.js metadata/use-vercel-env | Change | |
|---|---|---|---|
| polyfills-HASH.js gzip | 31 kB | 31 kB | ✓ |
| Overall change | 31 kB | 31 kB | ✓ |
Client Pages
| vercel/next.js canary | vercel/next.js metadata/use-vercel-env | Change | |
|---|---|---|---|
| _app-HASH.js gzip | 192 B | 193 B | N/A |
| _error-HASH.js gzip | 192 B | 193 B | N/A |
| amp-HASH.js gzip | 507 B | 511 B | N/A |
| css-HASH.js gzip | 341 B | 343 B | N/A |
| dynamic-HASH.js gzip | 2.52 kB | 2.52 kB | ✓ |
| edge-ssr-HASH.js gzip | 266 B | 265 B | N/A |
| head-HASH.js gzip | 362 B | 365 B | N/A |
| hooks-HASH.js gzip | 392 B | 392 B | ✓ |
| image-HASH.js gzip | 4.32 kB | 4.32 kB | N/A |
| index-HASH.js gzip | 268 B | 268 B | ✓ |
| link-HASH.js gzip | 2.69 kB | 2.7 kB | N/A |
| routerDirect..HASH.js gzip | 329 B | 328 B | N/A |
| script-HASH.js gzip | 397 B | 397 B | ✓ |
| withRouter-HASH.js gzip | 324 B | 324 B | ✓ |
| 1afbb74e6ecf..834.css gzip | 106 B | 106 B | ✓ |
| Overall change | 4 kB | 4 kB | ✓ |
Client Build Manifests
| vercel/next.js canary | vercel/next.js metadata/use-vercel-env | Change | |
|---|---|---|---|
| _buildManifest.js gzip | 483 B | 484 B | N/A |
| Overall change | 0 B | 0 B | ✓ |
Rendered Page Sizes
| vercel/next.js canary | vercel/next.js metadata/use-vercel-env | Change | |
|---|---|---|---|
| index.html gzip | 528 B | 526 B | N/A |
| link.html gzip | 541 B | 539 B | N/A |
| withRouter.html gzip | 524 B | 521 B | N/A |
| Overall change | 0 B | 0 B | ✓ |
Edge SSR bundle Size
| vercel/next.js canary | vercel/next.js metadata/use-vercel-env | Change | |
|---|---|---|---|
| edge-ssr.js gzip | 94.7 kB | 94.7 kB | N/A |
| page.js gzip | 181 kB | 181 kB | N/A |
| Overall change | 0 B | 0 B | ✓ |
Middleware size
| vercel/next.js canary | vercel/next.js metadata/use-vercel-env | Change | |
|---|---|---|---|
| middleware-b..fest.js gzip | 622 B | 623 B | N/A |
| middleware-r..fest.js gzip | 156 B | 156 B | ✓ |
| middleware.js gzip | 25.7 kB | 25.7 kB | N/A |
| edge-runtime..pack.js gzip | 839 B | 839 B | ✓ |
| Overall change | 995 B | 995 B | ✓ |
Next Runtimes
| vercel/next.js canary | vercel/next.js metadata/use-vercel-env | Change | |
|---|---|---|---|
| app-page-exp...dev.js gzip | 171 kB | 171 kB | N/A |
| app-page-exp..prod.js gzip | 98.5 kB | 98.5 kB | N/A |
| app-page-tur..prod.js gzip | 100 kB | 100 kB | N/A |
| app-page-tur..prod.js gzip | 94.3 kB | 94.3 kB | N/A |
| app-page.run...dev.js gzip | 157 kB | 157 kB | N/A |
| app-page.run..prod.js gzip | 93 kB | 93.1 kB | N/A |
| app-route-ex...dev.js gzip | 21.5 kB | 21.5 kB | ✓ |
| app-route-ex..prod.js gzip | 15.2 kB | 15.2 kB | ✓ |
| app-route-tu..prod.js gzip | 15.2 kB | 15.2 kB | ✓ |
| app-route-tu..prod.js gzip | 15 kB | 15 kB | ✓ |
| app-route.ru...dev.js gzip | 21.3 kB | 21.3 kB | ✓ |
| app-route.ru..prod.js gzip | 15 kB | 15 kB | ✓ |
| pages-api-tu..prod.js gzip | 9.55 kB | 9.55 kB | ✓ |
| pages-api.ru...dev.js gzip | 9.82 kB | 9.82 kB | ✓ |
| pages-api.ru..prod.js gzip | 9.55 kB | 9.55 kB | ✓ |
| pages-turbo...prod.js gzip | 21.5 kB | 21.5 kB | ✓ |
| pages.runtim...dev.js gzip | 22.1 kB | 22.1 kB | ✓ |
| pages.runtim..prod.js gzip | 21.5 kB | 21.5 kB | ✓ |
| server.runti..prod.js gzip | 51.6 kB | 51.6 kB | ✓ |
| Overall change | 249 kB | 249 kB | ✓ |
build cache Overall increase ⚠️
| vercel/next.js canary | vercel/next.js metadata/use-vercel-env | Change | |
|---|---|---|---|
| 0.pack gzip | 1.62 MB | 1.62 MB | |
| index.pack gzip | 112 kB | 112 kB | N/A |
| Overall change | 1.62 MB | 1.62 MB |
Diff details
Diff for edge-ssr.js
Diff too large to display
Diff for app-page-exp..ntime.dev.js
failed to diffDiff for app-page-exp..time.prod.js
Diff too large to display
Diff for app-page-tur..time.prod.js
Diff too large to display
Diff for app-page-tur..time.prod.js
Diff too large to display
Diff for app-page.runtime.dev.js
Diff too large to display
Diff for app-page.runtime.prod.js
Diff too large to display
styfle
left a comment
There was a problem hiding this comment.
Can you add tests to make sure this behaves as expected?
6ecbd23 to
83ddc33
Compare
Failing test suitesCommit: e549ebf
Expand output● getSocialImageFallbackMetadataBase › fallbackMetadataBase when metadataBase is not present › should return project production url in production deployment Read more about building and testing Next.js in contributing.md.
Expand output● next.rs api › should have working HMR on client-side change on a app page 0 ● next.rs api › should have working HMR on client-side change on a app page 1 ● next.rs api › should have working HMR on client-side change on a app page 2 ● next.rs api › should have working HMR on server-side change on a app page 0 ● next.rs api › should have working HMR on server-side change on a app page 1 ● next.rs api › should have working HMR on server-side change on a app page 2 Read more about building and testing Next.js in contributing.md.
Expand output● Edge runtime code with imports › Edge API statically importing node.js module › throws unsupported module error in dev at runtime and highlights the faulty line Read more about building and testing Next.js in contributing.md. |
<!-- Thanks for opening a PR! Your contribution is much appreciated. To make sure your PR is handled as smoothly as possible we request that you follow the checklist sections below. Choose the right checklist for the change(s) that you're making: ## For Contributors ### Improving Documentation - Run `pnpm prettier-fix` to fix formatting issues before opening the PR. - Read the Docs Contribution Guide to ensure your contribution follows the docs guidelines: https://nextjs.org/docs/community/contribution-guide ### Adding or Updating Examples - The "examples guidelines" are followed from our contributing doc https://github.com/vercel/next.js/blob/canary/contributing/examples/adding-examples.md - Make sure the linting passes by running `pnpm build && pnpm lint`. See https://github.com/vercel/next.js/blob/canary/contributing/repository/linting.md ### Fixing a bug - Related issues linked using `fixes #number` - Tests added. See: https://github.com/vercel/next.js/blob/canary/contributing/core/testing.md#writing-tests-for-nextjs - Errors have a helpful link attached, see https://github.com/vercel/next.js/blob/canary/contributing.md ### Adding a feature - Implements an existing feature request or RFC. Make sure the feature request has been accepted for implementation before opening a PR. (A discussion must be opened, see https://github.com/vercel/next.js/discussions/new?category=ideas) - Related issues/discussions are linked using `fixes #number` - e2e tests added (https://github.com/vercel/next.js/blob/canary/contributing/core/testing.md#writing-tests-for-nextjs) - Documentation added - Telemetry added. In case of a feature if it's used or not. - Errors have a helpful link attached, see https://github.com/vercel/next.js/blob/canary/contributing.md ## For Maintainers - Minimal description (aim for explaining to someone not on the team to understand the PR) - When linking to a Slack thread, you might want to share details of the conclusion - Link both the Linear (Fixes NEXT-xxx) and the GitHub issues - Add review comments if necessary to explain to the reviewer the logic behind a change ### What? ### Why? ### How? Closes NEXT- Fixes # --> In #65089, `metadataBase` was changed to use `VERCEL_PROJECT_PRODUCTION_URL` by default. This pull request updates documentation to reflect that. --------- Co-authored-by: Sam Ko <sam@vercel.com>
Leveraging the system env vars for fallback logic
x-ref: https://vercel.com/docs/projects/environment-variables/system-environment-variables
For preview deployment: prefer using
VERCEL_BRANCH_URL, fallback toVERCEL_URLFor production deployment: prefer using
VERCEL_PROJECT_PRODUCTION_URLCloses NEXT-3237