-
Notifications
You must be signed in to change notification settings - Fork 27.7k
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
Ignore-list stack frames in node_modules even if not explicitly ignore-listed by their sourcemaps #73689
Conversation
This stack of pull requests is managed by Graphite. Learn more about stacking. |
Failing test suitesCommit: 39ca37e
Expand output● AMP Validation on Export › production mode › should have shown errors during build
Read more about building and testing Next.js in contributing.md.
Expand output● Error Overlay for server components compiler errors in pages › importing 'server-only' in pages
● Error Overlay for server components compiler errors in pages › importing after from 'next/server' in pages
Read more about building and testing Next.js in contributing.md.
Expand output● app-dir-hmr › filesystem changes › should update server components after navigating to a page with a different runtime
Read more about building and testing Next.js in contributing.md.
Expand output● clientTraceMetadata › app router › should inject propagation data for a dynamically server-side-rendered page
● clientTraceMetadata › app router › hard loading a dynamic page twice should yield different dynamic trace data
● clientTraceMetadata › app router › should only insert the client trace metadata once
● clientTraceMetadata › app router › next dev only › should inject propagation data for a statically server-side-rendered page
● clientTraceMetadata › app router › next dev only › soft navigating to a dynamic page should not transform previous propagation data
● clientTraceMetadata › app router › next dev only › soft navigating to a static page should not transform previous propagation data
● clientTraceMetadata › pages router › should inject propagation data for a dynamically server-side-rendered page
● clientTraceMetadata › pages router › hard loading a dynamic page twice should yield different dynamic trace data
● clientTraceMetadata › pages router › next dev only › should inject propagation data for a statically server-side-rendered page
● clientTraceMetadata › pages router › next dev only › soft navigating to a dynamic page should not transform previous propagation data
● clientTraceMetadata › pages router › next dev only › soft navigating to a static page should not transform previous propagation data
Read more about building and testing Next.js in contributing.md.
Expand output● use-cache-unknown-cache-kind › should fail the build with an error
Read more about building and testing Next.js in contributing.md.
Expand output● middleware - development errors › when middleware throws synchronously › renders the error correctly and recovers
● middleware - development errors › when running invalid dynamic code with eval › renders the error correctly and recovers
● middleware - development errors › when throwing while loading the module › renders the error correctly and recovers
Read more about building and testing Next.js in contributing.md. |
Stats from current PRDefault Build (Increase detected
|
vercel/next.js canary | vercel/next.js sebbie/12-08-ignore-list_externals | Change | |
---|---|---|---|
buildDuration | 36.8s | 33.3s | N/A |
buildDurationCached | 33.4s | 28.8s | N/A |
nodeModulesSize | 409 MB | 409 MB | |
nextStartRea..uration (ms) | 845ms | 853ms | N/A |
Client Bundles (main, webpack)
vercel/next.js canary | vercel/next.js sebbie/12-08-ignore-list_externals | Change | |
---|---|---|---|
1187-HASH.js gzip | 50.2 kB | 50.2 kB | N/A |
8276.HASH.js gzip | 169 B | 168 B | N/A |
8377-HASH.js gzip | 5.3 kB | 5.3 kB | N/A |
bccd1874-HASH.js gzip | 53 kB | 53 kB | N/A |
framework-HASH.js gzip | 57.5 kB | 57.5 kB | N/A |
main-app-HASH.js gzip | 232 B | 235 B | N/A |
main-HASH.js gzip | 33.8 kB | 33.7 kB | N/A |
webpack-HASH.js gzip | 1.71 kB | 1.71 kB | N/A |
Overall change | 0 B | 0 B | ✓ |
Legacy Client Bundles (polyfills)
vercel/next.js canary | vercel/next.js sebbie/12-08-ignore-list_externals | Change | |
---|---|---|---|
polyfills-HASH.js gzip | 39.4 kB | 39.4 kB | ✓ |
Overall change | 39.4 kB | 39.4 kB | ✓ |
Client Pages
vercel/next.js canary | vercel/next.js sebbie/12-08-ignore-list_externals | Change | |
---|---|---|---|
_app-HASH.js gzip | 193 B | 193 B | ✓ |
_error-HASH.js gzip | 193 B | 193 B | ✓ |
amp-HASH.js gzip | 512 B | 510 B | N/A |
css-HASH.js gzip | 343 B | 342 B | N/A |
dynamic-HASH.js gzip | 1.84 kB | 1.84 kB | ✓ |
edge-ssr-HASH.js gzip | 265 B | 265 B | ✓ |
head-HASH.js gzip | 363 B | 362 B | N/A |
hooks-HASH.js gzip | 393 B | 392 B | N/A |
image-HASH.js gzip | 4.44 kB | 4.43 kB | N/A |
index-HASH.js gzip | 268 B | 268 B | ✓ |
link-HASH.js gzip | 2.35 kB | 2.34 kB | N/A |
routerDirect..HASH.js gzip | 328 B | 328 B | ✓ |
script-HASH.js gzip | 397 B | 397 B | ✓ |
withRouter-HASH.js gzip | 323 B | 326 B | N/A |
1afbb74e6ecf..834.css gzip | 106 B | 106 B | ✓ |
Overall change | 3.59 kB | 3.59 kB | ✓ |
Client Build Manifests
vercel/next.js canary | vercel/next.js sebbie/12-08-ignore-list_externals | Change | |
---|---|---|---|
_buildManifest.js gzip | 747 B | 745 B | N/A |
Overall change | 0 B | 0 B | ✓ |
Rendered Page Sizes
vercel/next.js canary | vercel/next.js sebbie/12-08-ignore-list_externals | Change | |
---|---|---|---|
index.html gzip | 524 B | 524 B | ✓ |
link.html gzip | 539 B | 539 B | ✓ |
withRouter.html gzip | 520 B | 521 B | N/A |
Overall change | 1.06 kB | 1.06 kB | ✓ |
Edge SSR bundle Size
vercel/next.js canary | vercel/next.js sebbie/12-08-ignore-list_externals | Change | |
---|---|---|---|
edge-ssr.js gzip | 128 kB | 128 kB | N/A |
page.js gzip | 203 kB | 203 kB | N/A |
Overall change | 0 B | 0 B | ✓ |
Middleware size
vercel/next.js canary | vercel/next.js sebbie/12-08-ignore-list_externals | Change | |
---|---|---|---|
middleware-b..fest.js gzip | 670 B | 669 B | N/A |
middleware-r..fest.js gzip | 155 B | 156 B | N/A |
middleware.js gzip | 31 kB | 31 kB | N/A |
edge-runtime..pack.js gzip | 844 B | 844 B | ✓ |
Overall change | 844 B | 844 B | ✓ |
Next Runtimes
vercel/next.js canary | vercel/next.js sebbie/12-08-ignore-list_externals | Change | |
---|---|---|---|
523-experime...dev.js gzip | 322 B | 322 B | ✓ |
523.runtime.dev.js gzip | 314 B | 314 B | ✓ |
app-page-exp...dev.js gzip | 322 kB | 322 kB | ✓ |
app-page-exp..prod.js gzip | 127 kB | 127 kB | ✓ |
app-page-tur..prod.js gzip | 140 kB | 140 kB | ✓ |
app-page-tur..prod.js gzip | 135 kB | 135 kB | ✓ |
app-page.run...dev.js gzip | 312 kB | 312 kB | ✓ |
app-page.run..prod.js gzip | 122 kB | 122 kB | ✓ |
app-route-ex...dev.js gzip | 37.1 kB | 37.1 kB | ✓ |
app-route-ex..prod.js gzip | 25.1 kB | 25.1 kB | ✓ |
app-route-tu..prod.js gzip | 25.1 kB | 25.1 kB | ✓ |
app-route-tu..prod.js gzip | 24.9 kB | 24.9 kB | ✓ |
app-route.ru...dev.js gzip | 38.7 kB | 38.7 kB | ✓ |
app-route.ru..prod.js gzip | 24.9 kB | 24.9 kB | ✓ |
pages-api-tu..prod.js gzip | 9.56 kB | 9.56 kB | ✓ |
pages-api.ru...dev.js gzip | 11.4 kB | 11.4 kB | ✓ |
pages-api.ru..prod.js gzip | 9.56 kB | 9.56 kB | ✓ |
pages-turbo...prod.js gzip | 21.3 kB | 21.3 kB | ✓ |
pages.runtim...dev.js gzip | 27 kB | 27 kB | ✓ |
pages.runtim..prod.js gzip | 21.3 kB | 21.3 kB | ✓ |
server.runti..prod.js gzip | 916 kB | 916 kB | N/A |
Overall change | 1.43 MB | 1.43 MB | ✓ |
build cache Overall increase ⚠️
vercel/next.js canary | vercel/next.js sebbie/12-08-ignore-list_externals | Change | |
---|---|---|---|
0.pack gzip | 2.04 MB | 2.04 MB | |
index.pack gzip | 146 kB | 147 kB | |
Overall change | 2.18 MB | 2.18 MB |
Diff details
Diff for main-HASH.js
Diff too large to display
Diff for server.runtime.prod.js
Diff too large to display
38fc56b
to
122f209
Compare
…e-listed by their sourcemaps
122f209
to
39ca37e
Compare
CI failures are unrelated. |
Narrator: They were related. |
We now ignore-list frames in
node_modules
when we can't sourcemap them (e.g. missing sourcemaps) and even if we can sourcemap but they're not ignore-listed.Ignore-listing sourcemapped frames in
node_modules
may be controversial since it removes control from libraries. But right now it's more likely thatignoreList
wasn't even filled since bundlers and transpilers don't enforce that configuration. In the future, we could start using an emptyignoreList
as a signal that the frame really shouldn't be ignore-listed.PR is split into current behavior and fix to make it easier to spot what actually changed.