Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Only apply metadata manifest credentials for preview deployment #64940

Merged
merged 9 commits into from Apr 30, 2024

Conversation

huozhi
Copy link
Member

@huozhi huozhi commented Apr 23, 2024

What

Follow up for #62873
Only apply credentials in metadata manifest tag for preview deployment

Why

When the CORS header is "*" and if you're including credentials in request it will block by browser. For manifest's case, if it's fetching from a publich CDN with responsing the CORS header "*" and mismatching with the current website domain it will get blocked. Previously we introduced that change mostly for vercel deployment auth protection, now we're going to check if it's preview deployment and also the same origin, if yes then we'll include credentails for manifest request

Closes NEXT-3208

@ijjk
Copy link
Member

ijjk commented Apr 23, 2024

Failing test suites

Commit: 9b8a8e3

pnpm test-start test/e2e/app-dir/asset-prefix/asset-prefix.test.ts

Expand output

● Test suite failed to run

FetchError: request to http://localhost:40485/custom-asset-prefix/_next/static/chunks/webpack-4e34d70589080e15.js failed, reason: read ECONNRESET

  at ClientRequest.<anonymous> (../node_modules/.pnpm/node-fetch@2.6.7/node_modules/node-fetch/lib/index.js:1491:11)

● Test suite failed to run

FetchError: request to http://localhost:40485/custom-asset-prefix/_next/static/chunks/polyfills-78c92fac7aa8fdd8.js failed, reason: socket hang up

  at ClientRequest.<anonymous> (../node_modules/.pnpm/node-fetch@2.6.7/node_modules/node-fetch/lib/index.js:1491:11)

● Test suite failed to run

FetchError: request to http://localhost:40485/custom-asset-prefix/_next/static/chunks/app/page-8597e17b48d385f0.js failed, reason: socket hang up

  at ClientRequest.<anonymous> (../node_modules/.pnpm/node-fetch@2.6.7/node_modules/node-fetch/lib/index.js:1491:11)

● Test suite failed to run

FetchError: request to http://localhost:40485/custom-asset-prefix/_next/static/chunks/787-cb6cedb120962a27.js failed, reason: socket hang up

  at ClientRequest.<anonymous> (../node_modules/.pnpm/node-fetch@2.6.7/node_modules/node-fetch/lib/index.js:1491:11)

● Test suite failed to run

FetchError: request to http://localhost:40485/custom-asset-prefix/_next/static/chunks/main-app-2a0d27b0115188bb.js failed, reason: socket hang up

  at ClientRequest.<anonymous> (../node_modules/.pnpm/node-fetch@2.6.7/node_modules/node-fetch/lib/index.js:1491:11)

● Test suite failed to run

FetchError: request to http://localhost:40485/custom-asset-prefix/_next/static/chunks/48-a7e09f9c2c0e653c.js failed, reason: socket hang up

  at ClientRequest.<anonymous> (../node_modules/.pnpm/node-fetch@2.6.7/node_modules/node-fetch/lib/index.js:1491:11)

● Test suite failed to run

FetchError: request to http://localhost:40485/custom-asset-prefix/_next/static/chunks/b3544282-b69afc4f50d52f34.js failed, reason: socket hang up

  at ClientRequest.<anonymous> (../node_modules/.pnpm/node-fetch@2.6.7/node_modules/node-fetch/lib/index.js:1491:11)

Read more about building and testing Next.js in contributing.md.

@huozhi huozhi marked this pull request as ready for review April 24, 2024 08:34
@ijjk
Copy link
Member

ijjk commented Apr 24, 2024

Stats from current PR

Default Build (Increase detected ⚠️)
General Overall increase ⚠️
vercel/next.js canary vercel/next.js fix/manifest-credentials Change
buildDuration 17.1s 14.3s N/A
buildDurationCached 8.1s 6.8s N/A
nodeModulesSize 360 MB 360 MB ⚠️ +20.2 kB
nextStartRea..uration (ms) 393ms 392ms N/A
Client Bundles (main, webpack)
vercel/next.js canary vercel/next.js fix/manifest-credentials 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 228 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 fix/manifest-credentials Change
polyfills-HASH.js gzip 31 kB 31 kB
Overall change 31 kB 31 kB
Client Pages
vercel/next.js canary vercel/next.js fix/manifest-credentials 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 fix/manifest-credentials 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 fix/manifest-credentials Change
index.html gzip 526 B 526 B
link.html gzip 540 B 541 B N/A
withRouter.html gzip 523 B 525 B N/A
Overall change 526 B 526 B
Edge SSR bundle Size
vercel/next.js canary vercel/next.js fix/manifest-credentials 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 fix/manifest-credentials Change
middleware-b..fest.js gzip 623 B 625 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 fix/manifest-credentials 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.4 kB N/A
app-page.run...dev.js gzip 157 kB 157 kB N/A
app-page.run..prod.js gzip 93.1 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 fix/manifest-credentials Change
0.pack gzip 1.62 MB 1.62 MB ⚠️ +378 B
index.pack gzip 113 kB 113 kB ⚠️ +302 B
Overall change 1.73 MB 1.73 MB ⚠️ +680 B
Diff details
Diff for edge-ssr.js

Diff too large to display

Diff for app-page-exp..ntime.dev.js

Diff too large to display

Diff 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

Commit: 9b8a8e3

@huozhi huozhi enabled auto-merge (squash) April 30, 2024 19:22
@huozhi huozhi merged commit ecbf537 into canary Apr 30, 2024
80 checks passed
@huozhi huozhi deleted the fix/manifest-credentials branch April 30, 2024 20:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants