Replace flight navigation build id field with header#88855
Conversation
This stack of pull requests is managed by Graphite. Learn more about stacking. |
Failing test suitesCommit: b47ffc0 | About building and testing Next.js
Expand output● app dir client cache semantics (30s/5min) › prefetch={undefined} - default › should refetch the full page after 5 mins
Expand output● app-dir trailingSlash handling › should revalidate a page with generated static params (withSlash=false) |
Stats from current PR🔴 1 regression
📊 All Metrics📖 Metrics GlossaryDev Server Metrics:
Build Metrics:
Change Thresholds:
⚡ Dev Server
📦 Dev Server (Webpack) (Legacy)📦 Dev Server (Webpack)
⚡ Production Builds
📦 Production Builds (Webpack) (Legacy)📦 Production Builds (Webpack)
📦 Bundle SizesBundle Sizes⚡ TurbopackClient Main Bundles: **434 kB** → **437 kB**
|
| Canary | PR | Change | |
|---|---|---|---|
| middleware-b..fest.js gzip | 763 B | 760 B | ✓ |
| Total | 763 B | 760 B | ✅ -3 B |
Build Details
Build Manifests
| Canary | PR | Change | |
|---|---|---|---|
| _buildManifest.js gzip | 449 B | 452 B | ✓ |
| Total | 449 B | 452 B |
📦 Webpack
Client
Main Bundles
| Canary | PR | Change | |
|---|---|---|---|
| 5528-HASH.js gzip | 5.47 kB | N/A | - |
| 6280-HASH.js gzip | 54.5 kB | N/A | - |
| 6335.HASH.js gzip | 169 B | N/A | - |
| 912-HASH.js gzip | 4.53 kB | N/A | - |
| e8aec2e4-HASH.js gzip | 62.5 kB | N/A | - |
| framework-HASH.js gzip | 59.7 kB | 59.7 kB | ✓ |
| main-app-HASH.js gzip | 255 B | 253 B | ✓ |
| main-HASH.js gzip | 39 kB | 39 kB | ✓ |
| webpack-HASH.js gzip | 1.68 kB | 1.68 kB | ✓ |
| 262-HASH.js gzip | N/A | 4.52 kB | - |
| 2889.HASH.js gzip | N/A | 169 B | - |
| 5602-HASH.js gzip | N/A | 5.48 kB | - |
| 6948ada0-HASH.js gzip | N/A | 62.5 kB | - |
| 9544-HASH.js gzip | N/A | 57.4 kB | - |
| Total | 228 kB | 231 kB |
Polyfills
| Canary | PR | Change | |
|---|---|---|---|
| polyfills-HASH.js gzip | 39.4 kB | 39.4 kB | ✓ |
| Total | 39.4 kB | 39.4 kB | ✓ |
Pages
| Canary | PR | Change | |
|---|---|---|---|
| _app-HASH.js gzip | 194 B | 194 B | ✓ |
| _error-HASH.js gzip | 183 B | 180 B | 🟢 3 B (-2%) |
| css-HASH.js gzip | 331 B | 330 B | ✓ |
| dynamic-HASH.js gzip | 1.81 kB | 1.81 kB | ✓ |
| edge-ssr-HASH.js gzip | 256 B | 256 B | ✓ |
| head-HASH.js gzip | 351 B | 352 B | ✓ |
| hooks-HASH.js gzip | 384 B | 383 B | ✓ |
| image-HASH.js gzip | 580 B | 581 B | ✓ |
| index-HASH.js gzip | 260 B | 260 B | ✓ |
| link-HASH.js gzip | 2.49 kB | 2.49 kB | ✓ |
| routerDirect..HASH.js gzip | 320 B | 319 B | ✓ |
| script-HASH.js gzip | 386 B | 386 B | ✓ |
| withRouter-HASH.js gzip | 315 B | 315 B | ✓ |
| 1afbb74e6ecf..834.css gzip | 106 B | 106 B | ✓ |
| Total | 7.97 kB | 7.97 kB | ✅ -1 B |
Server
Edge SSR
| Canary | PR | Change | |
|---|---|---|---|
| edge-ssr.js gzip | 126 kB | 126 kB | ✓ |
| page.js gzip | 249 kB | 249 kB | ✓ |
| Total | 375 kB | 375 kB |
Middleware
| Canary | PR | Change | |
|---|---|---|---|
| middleware-b..fest.js gzip | 616 B | 614 B | ✓ |
| middleware-r..fest.js gzip | 156 B | 155 B | ✓ |
| middleware.js gzip | 33.3 kB | 33.1 kB | ✓ |
| edge-runtime..pack.js gzip | 842 B | 842 B | ✓ |
| Total | 34.9 kB | 34.8 kB | ✅ -159 B |
Build Details
Build Manifests
| Canary | PR | Change | |
|---|---|---|---|
| _buildManifest.js gzip | 732 B | 736 B | ✓ |
| Total | 732 B | 736 B |
Build Cache
| Canary | PR | Change | |
|---|---|---|---|
| 0.pack gzip | 3.8 MB | 3.82 MB | 🔴 +27.2 kB (+1%) |
| index.pack gzip | 103 kB | 103 kB | ✓ |
| index.pack.old gzip | 102 kB | 102 kB | ✓ |
| Total | 4 MB | 4.03 MB |
🔄 Shared (bundler-independent)
Runtimes
| Canary | PR | Change | |
|---|---|---|---|
| app-page-exp...dev.js gzip | 311 kB | 312 kB | ✓ |
| app-page-exp..prod.js gzip | 166 kB | 166 kB | ✓ |
| app-page-tur...dev.js gzip | 311 kB | 311 kB | ✓ |
| app-page-tur..prod.js gzip | 166 kB | 166 kB | ✓ |
| app-page-tur...dev.js gzip | 308 kB | 308 kB | ✓ |
| app-page-tur..prod.js gzip | 164 kB | 164 kB | ✓ |
| app-page.run...dev.js gzip | 308 kB | 308 kB | ✓ |
| app-page.run..prod.js gzip | 164 kB | 164 kB | ✓ |
| app-route-ex...dev.js gzip | 70.4 kB | 70.4 kB | ✓ |
| app-route-ex..prod.js gzip | 48.9 kB | 48.9 kB | ✓ |
| app-route-tu...dev.js gzip | 70.4 kB | 70.4 kB | ✓ |
| app-route-tu..prod.js gzip | 49 kB | 49 kB | ✓ |
| app-route-tu...dev.js gzip | 70 kB | 70 kB | ✓ |
| app-route-tu..prod.js gzip | 48.7 kB | 48.7 kB | ✓ |
| app-route.ru...dev.js gzip | 70 kB | 70 kB | ✓ |
| app-route.ru..prod.js gzip | 48.7 kB | 48.7 kB | ✓ |
| dist_client_...dev.js gzip | 324 B | 324 B | ✓ |
| dist_client_...dev.js gzip | 326 B | 326 B | ✓ |
| dist_client_...dev.js gzip | 318 B | 318 B | ✓ |
| dist_client_...dev.js gzip | 317 B | 317 B | ✓ |
| pages-api-tu...dev.js gzip | 43.1 kB | 43.2 kB | ✓ |
| pages-api-tu..prod.js gzip | 32.9 kB | 32.9 kB | ✓ |
| pages-api.ru...dev.js gzip | 43.1 kB | 43.1 kB | ✓ |
| pages-api.ru..prod.js gzip | 32.8 kB | 32.8 kB | ✓ |
| pages-turbo....dev.js gzip | 52.4 kB | 52.4 kB | ✓ |
| pages-turbo...prod.js gzip | 39.4 kB | 39.4 kB | ✓ |
| pages.runtim...dev.js gzip | 52.4 kB | 52.4 kB | ✓ |
| pages.runtim..prod.js gzip | 39.3 kB | 39.3 kB | ✓ |
| server.runti..prod.js gzip | 62.6 kB | 62.6 kB | ✓ |
| Total | 2.77 MB | 2.78 MB |
📝 Changed Files (16 files)
Files with changes:
app-page-exp..ntime.dev.jsapp-page-exp..time.prod.jsapp-page-tur..ntime.dev.jsapp-page-tur..time.prod.jsapp-page-tur..ntime.dev.jsapp-page-tur..time.prod.jsapp-page.runtime.dev.jsapp-page.runtime.prod.jsapp-route-ex..ntime.dev.jsapp-route-tu..ntime.dev.jsapp-route-tu..ntime.dev.jsapp-route.runtime.dev.jspages-api-tu..ntime.dev.jspages-api.runtime.dev.jspages-turbo...ntime.dev.jspages.runtime.dev.js
View diffs
app-page-exp..ntime.dev.js
failed to diffapp-page-exp..time.prod.js
failed to diffapp-page-tur..ntime.dev.js
failed to diffapp-page-tur..time.prod.js
failed to diffapp-page-tur..ntime.dev.js
failed to diffapp-page-tur..time.prod.js
failed to diffapp-page.runtime.dev.js
failed to diffapp-page.runtime.prod.js
failed to diffapp-route-ex..ntime.dev.js
Diff too large to display
app-route-tu..ntime.dev.js
Diff too large to display
app-route-tu..ntime.dev.js
Diff too large to display
app-route.runtime.dev.js
Diff too large to display
pages-api-tu..ntime.dev.js
Diff too large to display
pages-api.runtime.dev.js
Diff too large to display
pages-turbo...ntime.dev.js
Diff too large to display
pages.runtime.dev.js
Diff too large to display
51a1d88 to
59cd614
Compare
59cd614 to
cdd8a84
Compare
cdd8a84 to
b6db6a5
Compare
0fb4730 to
f2a1392
Compare
packages/next/src/client/components/router-reducer/fetch-server-response.ts
Outdated
Show resolved
Hide resolved
f2a1392 to
1cc781e
Compare
Merging this PR will improve performance by 6.41%
Performance Changes
Comparing Footnotes
|
19ad6a7 to
0a673e6
Compare
1cc781e to
5868f1f
Compare
5868f1f to
463e3ff
Compare
0a673e6 to
aea4100
Compare
bc8aee0 to
9e938e0
Compare
cad2c36 to
d5ca54e
Compare
52e5424 to
95784fd
Compare
685d815 to
e240cec
Compare
c9626ed to
9455b94
Compare
4aa0a2d to
df56610
Compare
9455b94 to
646bac7
Compare
df56610 to
06dcfd5
Compare
646bac7 to
ac6933c
Compare
06dcfd5 to
fed758a
Compare
ac6933c to
6766a27
Compare
fed758a to
a595e10
Compare
a595e10 to
e0e23b6
Compare

Closes PACK-6536
It's unfortunate that we have to keep the BUILD_ID response field approach as a fallback, but oh well.
This has the benefit that we won't need the build id anymore when the deployment id is available.
If you use
output:exportand setconfig.deploymentId(i.e. enable skew protection) you are still expected to set these headers.