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

Track errors where frames are not sourcemapped properly in the Redbox #73006

Conversation

eps1lon
Copy link
Member

@eps1lon eps1lon commented Nov 20, 2024

We now check that every assertHasRedbox is not accompanied by any 500 errors in the console. While the error message is generic, all of them are caused by a failure to sourcemap in the dev middleware.

The assertion still passes when the fixmeStackFramesHaveBrokenSourcemaps option is passed e.g. assertHasRedbox(browser, { fixmeStackFramesHaveBrokenSourcemaps: true }). This helps us track these bugs since they may have different causes.

TODO:

  • go through remaining failures
  • double check each fixmeStackFramesHaveBrokenSourcemaps: true if it can be replaced with pageResponseCode: 500

@ijjk
Copy link
Member

ijjk commented Nov 20, 2024

Failing test suites

Commit: f11c84f

pnpm test-dev-turbo test/development/acceptance/ReactRefreshRequire.test.ts (turbopack)

  • ReactRefreshRequire > propagates a module that stops accepting in next version
Expand output

● ReactRefreshRequire › propagates a module that stops accepting in next version

expect(received).toEqual(expected) // deep equality

- Expected  - 1
+ Received  + 1

  Array [
-   "init BarV2",
+   "init FooV1",
    "init BarV2",
    "init FooV1",
  ]

  421 |     // it didn't export a component, so we go higher.
  422 |     // We stop at Foo which currently _does_ export a component.
> 423 |     expect(await session.evaluate(() => (window as any).log)).toEqual([
      |                                                               ^
  424 |       // Bar evaluates twice:
  425 |       // 1. To invalidate itself once it realizes it's no longer acceptable.
  426 |       // 2. As a child of Foo re-evaluating.

  at Object.toEqual (development/acceptance/ReactRefreshRequire.test.ts:423:63)

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

pnpm test-dev test/development/acceptance-app/rsc-build-errors.test.ts

  • Error overlay - RSC build errors > should throw an error when error file is a server component with empty error file
Expand output

● Error overlay - RSC build errors › should throw an error when error file is a server component with empty error file

Expected the page to return a 500 (Internal Server Error) but found no message indicating this error occured: ./app/server-with-errors/error-file/error.js
Error:   x /tmp/next-install-6bad41a017fc3d7d55f3318d73d71f6d76309ae6cf79d0a9ea6beaf3396d1be1/app/server-with-errors/error-file/error.js must be a Client Component. Add the "use client" directive the top
  | of the file to resolve this issue.
  | Learn more: https://nextjs.org/docs/app/api-reference/directives/use-client
  | 
  | 
   ,----
 1 |  
   : ^
   `----

Import trace for requested module:
./app/server-with-errors/error-file/error.js

  356 |     await session.patch('app/server-with-errors/error-file/error.js', '')
  357 |
> 358 |     await session.assertHasRedbox({
      |     ^
  359 |       pageResponseCode: isTurbopack ? undefined : 500,
  360 |     })
  361 |     await expect(session.getRedboxSource()).resolves.toMatch(

  at Object.<anonymous> (development/acceptance-app/rsc-build-errors.test.ts:358:5)

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

pnpm test-dev test/development/acceptance-app/ReactRefreshLogBox.test.ts

  • ReactRefreshLogBox app default > server component can recover from error thrown in the module
Expand output

● ReactRefreshLogBox app default › server component can recover from error thrown in the module

Expected Redbox but found none

  1065 |
  1066 |       await next.patchFile('index.js', "throw new Error('module error')")
> 1067 |       await session.assertHasRedbox({
       |       ^
  1068 |         fixmeStackFramesHaveBrokenSourcemaps: true,
  1069 |       })
  1070 |       await next.patchFile(

  at Object.<anonymous> (development/acceptance-app/ReactRefreshLogBox.test.ts:1067:7)

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

pnpm test-dev-turbo test/development/basic/hmr.test.ts (turbopack)

  • basic HMR, nextConfig: { basePath: '', assetPrefix: '' } > Error Recovery > should detect runtime errors on the module scope
  • basic HMR, nextConfig: { basePath: '', assetPrefix: '' } > Error Recovery > should recover after exporting an invalid page
  • basic HMR, nextConfig: { basePath: '', assetPrefix: '' } > Error Recovery > should recover after a bad return from the render function
  • basic HMR, nextConfig: { basePath: '', assetPrefix: '' } > Error Recovery > should recover after undefined exported as default
  • basic HMR, nextConfig: { basePath: '', assetPrefix: '' } > Error Recovery > should recover after an error reported via SSR
  • basic HMR, nextConfig: { basePath: '', assetPrefix: '/asset-prefix' } > Error Recovery > should detect runtime errors on the module scope
  • basic HMR, nextConfig: { basePath: '', assetPrefix: '/asset-prefix' } > Error Recovery > should recover after exporting an invalid page
  • basic HMR, nextConfig: { basePath: '', assetPrefix: '/asset-prefix' } > Error Recovery > should recover after a bad return from the render function
  • basic HMR, nextConfig: { basePath: '', assetPrefix: '/asset-prefix' } > Error Recovery > should recover after undefined exported as default
  • basic HMR, nextConfig: { basePath: '', assetPrefix: '/asset-prefix' } > Error Recovery > should recover from errors in getInitialProps in client
  • basic HMR, nextConfig: { basePath: '', assetPrefix: '/asset-prefix' } > Error Recovery > should recover after an error reported via SSR
  • basic HMR, nextConfig: { basePath: '/docs', assetPrefix: '' } > Error Recovery > should detect runtime errors on the module scope
  • basic HMR, nextConfig: { basePath: '/docs', assetPrefix: '' } > Error Recovery > should recover after exporting an invalid page
  • basic HMR, nextConfig: { basePath: '/docs', assetPrefix: '' } > Error Recovery > should recover after a bad return from the render function
  • basic HMR, nextConfig: { basePath: '/docs', assetPrefix: '' } > Error Recovery > should recover after undefined exported as default
  • basic HMR, nextConfig: { basePath: '/docs', assetPrefix: '' } > Error Recovery > should recover after an error reported via SSR
  • basic HMR, nextConfig: { basePath: '/docs', assetPrefix: '/asset-prefix' } > Error Recovery > should detect runtime errors on the module scope
  • basic HMR, nextConfig: { basePath: '/docs', assetPrefix: '/asset-prefix' } > Error Recovery > should recover after exporting an invalid page
  • basic HMR, nextConfig: { basePath: '/docs', assetPrefix: '/asset-prefix' } > Error Recovery > should recover after a bad return from the render function
  • basic HMR, nextConfig: { basePath: '/docs', assetPrefix: '/asset-prefix' } > Error Recovery > should recover after undefined exported as default
  • basic HMR, nextConfig: { basePath: '/docs', assetPrefix: '/asset-prefix' } > Error Recovery > should recover from errors in getInitialProps in client
  • basic HMR, nextConfig: { basePath: '/docs', assetPrefix: '/asset-prefix' } > Error Recovery > should recover after an error reported via SSR
Expand output

● basic HMR, nextConfig: { basePath: '', assetPrefix: '' } › Error Recovery › should detect runtime errors on the module scope

Expected no 500 but found one. This is likely due to the page returning a 500. Pass the `pageResponseCode: 500` if this is expected.

  677 |         )
  678 |
> 679 |         await assertHasRedbox(browser, {
      |         ^
  680 |           pageResponseCode: isTurbopack ? undefined : 500,
  681 |         })
  682 |         expect(await getRedboxHeader(browser)).toMatch(/aa is not defined/)

  at Object.<anonymous> (development/basic/hmr.test.ts:679:9)

● basic HMR, nextConfig: { basePath: '', assetPrefix: '' } › Error Recovery › should recover after exporting an invalid page

Expected no 500 but found one. This is likely due to the page returning a 500. Pass the `pageResponseCode: 500` if this is expected.

  767 |         )
  768 |
> 769 |         await assertHasRedbox(browser, {
      |         ^
  770 |           pageResponseCode: isTurbopack ? undefined : 500,
  771 |         })
  772 |         expect(await getRedboxDescription(browser)).toMatchInlineSnapshot(

  at Object.<anonymous> (development/basic/hmr.test.ts:769:9)

● basic HMR, nextConfig: { basePath: '', assetPrefix: '' } › Error Recovery › should recover after a bad return from the render function

Expected no 500 but found one. This is likely due to the page returning a 500. Pass the `pageResponseCode: 500` if this is expected.

  820 |         )
  821 |
> 822 |         await assertHasRedbox(browser, {
      |         ^
  823 |           pageResponseCode: isTurbopack ? undefined : 500,
  824 |         })
  825 |         // TODO: Replace this when webpack 5 is the default

  at Object.<anonymous> (development/basic/hmr.test.ts:822:9)

● basic HMR, nextConfig: { basePath: '', assetPrefix: '' } › Error Recovery › should recover after undefined exported as default

Expected no 500 but found one. This is likely due to the page returning a 500. Pass the `pageResponseCode: 500` if this is expected.

  875 |         )
  876 |
> 877 |         await assertHasRedbox(browser, {
      |         ^
  878 |           pageResponseCode: isTurbopack ? undefined : 500,
  879 |         })
  880 |         expect(await getRedboxDescription(browser)).toMatchInlineSnapshot(

  at Object.<anonymous> (development/basic/hmr.test.ts:877:9)

● basic HMR, nextConfig: { basePath: '', assetPrefix: '' } › Error Recovery › should recover after an error reported via SSR

Expected no 500 but found one. This is likely due to the page returning a 500. Pass the `pageResponseCode: 500` if this is expected.

  1129 |         browser = await webdriver(next.url, basePath + '/hmr/error-in-gip')
  1130 |
> 1131 |         await assertHasRedbox(browser, {
       |         ^
  1132 |           pageResponseCode: isTurbopack ? undefined : 500,
  1133 |         })
  1134 |         expect(await getRedboxDescription(browser)).toMatchInlineSnapshot(

  at Object.<anonymous> (development/basic/hmr.test.ts:1131:9)

● basic HMR, nextConfig: { basePath: '', assetPrefix: '/asset-prefix' } › Error Recovery › should detect runtime errors on the module scope

Expected no 500 but found one. This is likely due to the page returning a 500. Pass the `pageResponseCode: 500` if this is expected.

  677 |         )
  678 |
> 679 |         await assertHasRedbox(browser, {
      |         ^
  680 |           pageResponseCode: isTurbopack ? undefined : 500,
  681 |         })
  682 |         expect(await getRedboxHeader(browser)).toMatch(/aa is not defined/)

  at Object.<anonymous> (development/basic/hmr.test.ts:679:9)

● basic HMR, nextConfig: { basePath: '', assetPrefix: '/asset-prefix' } › Error Recovery › should recover after exporting an invalid page

Expected no 500 but found one. This is likely due to the page returning a 500. Pass the `pageResponseCode: 500` if this is expected.

  767 |         )
  768 |
> 769 |         await assertHasRedbox(browser, {
      |         ^
  770 |           pageResponseCode: isTurbopack ? undefined : 500,
  771 |         })
  772 |         expect(await getRedboxDescription(browser)).toMatchInlineSnapshot(

  at Object.<anonymous> (development/basic/hmr.test.ts:769:9)

● basic HMR, nextConfig: { basePath: '', assetPrefix: '/asset-prefix' } › Error Recovery › should recover after a bad return from the render function

Expected no 500 but found one. This is likely due to the page returning a 500. Pass the `pageResponseCode: 500` if this is expected.

  820 |         )
  821 |
> 822 |         await assertHasRedbox(browser, {
      |         ^
  823 |           pageResponseCode: isTurbopack ? undefined : 500,
  824 |         })
  825 |         // TODO: Replace this when webpack 5 is the default

  at Object.<anonymous> (development/basic/hmr.test.ts:822:9)

● basic HMR, nextConfig: { basePath: '', assetPrefix: '/asset-prefix' } › Error Recovery › should recover after undefined exported as default

Expected no 500 but found one. This is likely due to the page returning a 500. Pass the `pageResponseCode: 500` if this is expected.

  875 |         )
  876 |
> 877 |         await assertHasRedbox(browser, {
      |         ^
  878 |           pageResponseCode: isTurbopack ? undefined : 500,
  879 |         })
  880 |         expect(await getRedboxDescription(browser)).toMatchInlineSnapshot(

  at Object.<anonymous> (development/basic/hmr.test.ts:877:9)

● basic HMR, nextConfig: { basePath: '', assetPrefix: '/asset-prefix' } › Error Recovery › should recover from errors in getInitialProps in client

Expected no 500 but found one. This is likely due to the page returning a 500. Pass the `pageResponseCode: 500` if this is expected.

  1082 |         await browser.elementByCss('#error-in-gip-link').click()
  1083 |
> 1084 |         await assertHasRedbox(browser, {
       |         ^
  1085 |           pageResponseCode: isTurbopack ? undefined : 500,
  1086 |         })
  1087 |         expect(await getRedboxDescription(browser)).toMatchInlineSnapshot(

  at Object.<anonymous> (development/basic/hmr.test.ts:1084:9)

● basic HMR, nextConfig: { basePath: '', assetPrefix: '/asset-prefix' } › Error Recovery › should recover after an error reported via SSR

Expected no 500 but found one. This is likely due to the page returning a 500. Pass the `pageResponseCode: 500` if this is expected.

  1129 |         browser = await webdriver(next.url, basePath + '/hmr/error-in-gip')
  1130 |
> 1131 |         await assertHasRedbox(browser, {
       |         ^
  1132 |           pageResponseCode: isTurbopack ? undefined : 500,
  1133 |         })
  1134 |         expect(await getRedboxDescription(browser)).toMatchInlineSnapshot(

  at Object.<anonymous> (development/basic/hmr.test.ts:1131:9)

● basic HMR, nextConfig: { basePath: '/docs', assetPrefix: '' } › Error Recovery › should detect runtime errors on the module scope

Expected no 500 but found one. This is likely due to the page returning a 500. Pass the `pageResponseCode: 500` if this is expected.

  677 |         )
  678 |
> 679 |         await assertHasRedbox(browser, {
      |         ^
  680 |           pageResponseCode: isTurbopack ? undefined : 500,
  681 |         })
  682 |         expect(await getRedboxHeader(browser)).toMatch(/aa is not defined/)

  at Object.<anonymous> (development/basic/hmr.test.ts:679:9)

● basic HMR, nextConfig: { basePath: '/docs', assetPrefix: '' } › Error Recovery › should recover after exporting an invalid page

Expected no 500 but found one. This is likely due to the page returning a 500. Pass the `pageResponseCode: 500` if this is expected.

  767 |         )
  768 |
> 769 |         await assertHasRedbox(browser, {
      |         ^
  770 |           pageResponseCode: isTurbopack ? undefined : 500,
  771 |         })
  772 |         expect(await getRedboxDescription(browser)).toMatchInlineSnapshot(

  at Object.<anonymous> (development/basic/hmr.test.ts:769:9)

● basic HMR, nextConfig: { basePath: '/docs', assetPrefix: '' } › Error Recovery › should recover after a bad return from the render function

Expected no 500 but found one. This is likely due to the page returning a 500. Pass the `pageResponseCode: 500` if this is expected.

  820 |         )
  821 |
> 822 |         await assertHasRedbox(browser, {
      |         ^
  823 |           pageResponseCode: isTurbopack ? undefined : 500,
  824 |         })
  825 |         // TODO: Replace this when webpack 5 is the default

  at Object.<anonymous> (development/basic/hmr.test.ts:822:9)

● basic HMR, nextConfig: { basePath: '/docs', assetPrefix: '' } › Error Recovery › should recover after undefined exported as default

Expected no 500 but found one. This is likely due to the page returning a 500. Pass the `pageResponseCode: 500` if this is expected.

  875 |         )
  876 |
> 877 |         await assertHasRedbox(browser, {
      |         ^
  878 |           pageResponseCode: isTurbopack ? undefined : 500,
  879 |         })
  880 |         expect(await getRedboxDescription(browser)).toMatchInlineSnapshot(

  at Object.<anonymous> (development/basic/hmr.test.ts:877:9)

● basic HMR, nextConfig: { basePath: '/docs', assetPrefix: '' } › Error Recovery › should recover after an error reported via SSR

Expected no 500 but found one. This is likely due to the page returning a 500. Pass the `pageResponseCode: 500` if this is expected.

  1129 |         browser = await webdriver(next.url, basePath + '/hmr/error-in-gip')
  1130 |
> 1131 |         await assertHasRedbox(browser, {
       |         ^
  1132 |           pageResponseCode: isTurbopack ? undefined : 500,
  1133 |         })
  1134 |         expect(await getRedboxDescription(browser)).toMatchInlineSnapshot(

  at Object.<anonymous> (development/basic/hmr.test.ts:1131:9)

● basic HMR, nextConfig: { basePath: '/docs', assetPrefix: '/asset-prefix' } › Error Recovery › should detect runtime errors on the module scope

Expected no 500 but found one. This is likely due to the page returning a 500. Pass the `pageResponseCode: 500` if this is expected.

  677 |         )
  678 |
> 679 |         await assertHasRedbox(browser, {
      |         ^
  680 |           pageResponseCode: isTurbopack ? undefined : 500,
  681 |         })
  682 |         expect(await getRedboxHeader(browser)).toMatch(/aa is not defined/)

  at Object.<anonymous> (development/basic/hmr.test.ts:679:9)

● basic HMR, nextConfig: { basePath: '/docs', assetPrefix: '/asset-prefix' } › Error Recovery › should recover after exporting an invalid page

Expected no 500 but found one. This is likely due to the page returning a 500. Pass the `pageResponseCode: 500` if this is expected.

  767 |         )
  768 |
> 769 |         await assertHasRedbox(browser, {
      |         ^
  770 |           pageResponseCode: isTurbopack ? undefined : 500,
  771 |         })
  772 |         expect(await getRedboxDescription(browser)).toMatchInlineSnapshot(

  at Object.<anonymous> (development/basic/hmr.test.ts:769:9)

● basic HMR, nextConfig: { basePath: '/docs', assetPrefix: '/asset-prefix' } › Error Recovery › should recover after a bad return from the render function

Expected no 500 but found one. This is likely due to the page returning a 500. Pass the `pageResponseCode: 500` if this is expected.

  820 |         )
  821 |
> 822 |         await assertHasRedbox(browser, {
      |         ^
  823 |           pageResponseCode: isTurbopack ? undefined : 500,
  824 |         })
  825 |         // TODO: Replace this when webpack 5 is the default

  at Object.<anonymous> (development/basic/hmr.test.ts:822:9)

● basic HMR, nextConfig: { basePath: '/docs', assetPrefix: '/asset-prefix' } › Error Recovery › should recover after undefined exported as default

Expected no 500 but found one. This is likely due to the page returning a 500. Pass the `pageResponseCode: 500` if this is expected.

  875 |         )
  876 |
> 877 |         await assertHasRedbox(browser, {
      |         ^
  878 |           pageResponseCode: isTurbopack ? undefined : 500,
  879 |         })
  880 |         expect(await getRedboxDescription(browser)).toMatchInlineSnapshot(

  at Object.<anonymous> (development/basic/hmr.test.ts:877:9)

● basic HMR, nextConfig: { basePath: '/docs', assetPrefix: '/asset-prefix' } › Error Recovery › should recover from errors in getInitialProps in client

Expected no 500 but found one. This is likely due to the page returning a 500. Pass the `pageResponseCode: 500` if this is expected.

  1082 |         await browser.elementByCss('#error-in-gip-link').click()
  1083 |
> 1084 |         await assertHasRedbox(browser, {
       |         ^
  1085 |           pageResponseCode: isTurbopack ? undefined : 500,
  1086 |         })
  1087 |         expect(await getRedboxDescription(browser)).toMatchInlineSnapshot(

  at Object.<anonymous> (development/basic/hmr.test.ts:1084:9)

● basic HMR, nextConfig: { basePath: '/docs', assetPrefix: '/asset-prefix' } › Error Recovery › should recover after an error reported via SSR

Expected no 500 but found one. This is likely due to the page returning a 500. Pass the `pageResponseCode: 500` if this is expected.

  1129 |         browser = await webdriver(next.url, basePath + '/hmr/error-in-gip')
  1130 |
> 1131 |         await assertHasRedbox(browser, {
       |         ^
  1132 |           pageResponseCode: isTurbopack ? undefined : 500,
  1133 |         })
  1134 |         expect(await getRedboxDescription(browser)).toMatchInlineSnapshot(

  at Object.<anonymous> (development/basic/hmr.test.ts:1131:9)

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

@ijjk
Copy link
Member

ijjk commented Nov 20, 2024

Stats from current PR

Default Build (Increase detected ⚠️)
General
vercel/next.js canary vercel/next.js sebbie/11-20-track_errors_where_frames_are_not_sourcemapped_properly_in_the_redbox Change
buildDuration 27s 27.4s ⚠️ +423ms
buildDurationCached 23.7s 21s N/A
nodeModulesSize 409 MB 409 MB N/A
nextStartRea..uration (ms) 583ms 591ms N/A
Client Bundles (main, webpack)
vercel/next.js canary vercel/next.js sebbie/11-20-track_errors_where_frames_are_not_sourcemapped_properly_in_the_redbox Change
1187-HASH.js gzip 50.2 kB 49.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/11-20-track_errors_where_frames_are_not_sourcemapped_properly_in_the_redbox 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/11-20-track_errors_where_frames_are_not_sourcemapped_properly_in_the_redbox Change
_app-HASH.js gzip 193 B 193 B
_error-HASH.js gzip 193 B 193 B
amp-HASH.js gzip 513 B 511 B N/A
css-HASH.js gzip 343 B 342 B N/A
dynamic-HASH.js gzip 1.84 kB 1.84 kB N/A
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 1.75 kB 1.75 kB
Client Build Manifests
vercel/next.js canary vercel/next.js sebbie/11-20-track_errors_where_frames_are_not_sourcemapped_properly_in_the_redbox Change
_buildManifest.js gzip 746 B 747 B N/A
Overall change 0 B 0 B
Rendered Page Sizes
vercel/next.js canary vercel/next.js sebbie/11-20-track_errors_where_frames_are_not_sourcemapped_properly_in_the_redbox Change
index.html gzip 524 B 524 B
link.html gzip 537 B 537 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/11-20-track_errors_where_frames_are_not_sourcemapped_properly_in_the_redbox Change
edge-ssr.js gzip 128 kB 128 kB N/A
page.js gzip 203 kB 200 kB N/A
Overall change 0 B 0 B
Middleware size
vercel/next.js canary vercel/next.js sebbie/11-20-track_errors_where_frames_are_not_sourcemapped_properly_in_the_redbox Change
middleware-b..fest.js gzip 668 B 663 B N/A
middleware-r..fest.js gzip 155 B 156 B N/A
middleware.js gzip 31 kB 31.1 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/11-20-track_errors_where_frames_are_not_sourcemapped_properly_in_the_redbox Change
797-experime...dev.js gzip 322 B 322 B
797.runtime.dev.js gzip 314 B 314 B
app-page-exp...dev.js gzip 322 kB 321 kB N/A
app-page-exp..prod.js gzip 127 kB 126 kB N/A
app-page-tur..prod.js gzip 140 kB 139 kB N/A
app-page-tur..prod.js gzip 135 kB 134 kB N/A
app-page.run...dev.js gzip 312 kB 311 kB N/A
app-page.run..prod.js gzip 122 kB 122 kB N/A
app-route-ex...dev.js gzip 37.1 kB 36.8 kB N/A
app-route-ex..prod.js gzip 25.1 kB 25 kB N/A
app-route-tu..prod.js gzip 25.1 kB 25 kB N/A
app-route-tu..prod.js gzip 24.9 kB 24.8 kB N/A
app-route.ru...dev.js gzip 38.7 kB 38.5 kB N/A
app-route.ru..prod.js gzip 24.9 kB 24.8 kB N/A
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 101 kB 101 kB
build cache Overall increase ⚠️
vercel/next.js canary vercel/next.js sebbie/11-20-track_errors_where_frames_are_not_sourcemapped_properly_in_the_redbox Change
0.pack gzip 2.04 MB 2.04 MB ⚠️ +1.54 kB
index.pack gzip 146 kB 146 kB N/A
Overall change 2.04 MB 2.04 MB ⚠️ +1.54 kB
Diff details
Diff for page.js

Diff too large to display

Diff for middleware.js

Diff too large to display

Diff for edge-ssr.js

Diff too large to display

Diff for 1187-HASH.js

Diff too large to display

Diff for main-HASH.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

Diff for app-route-ex..ntime.dev.js

Diff too large to display

Diff for app-route-ex..time.prod.js

Diff too large to display

Diff for app-route-tu..time.prod.js

Diff too large to display

Diff for app-route-tu..time.prod.js

Diff too large to display

Diff for app-route.runtime.dev.js

Diff too large to display

Diff for app-route.ru..time.prod.js

Diff too large to display

Diff for server.runtime.prod.js

Diff too large to display

Commit: f11c84f

@eps1lon eps1lon force-pushed the sebbie/11-20-rename_waitforandopenruntimeerror_to_openredbox_ branch from 4114257 to d39afc7 Compare November 20, 2024 17:41
@eps1lon eps1lon force-pushed the sebbie/11-20-track_errors_where_frames_are_not_sourcemapped_properly_in_the_redbox branch 2 times, most recently from 061f55a to 5e4ae87 Compare November 21, 2024 00:09
@eps1lon eps1lon force-pushed the sebbie/11-20-rename_waitforandopenruntimeerror_to_openredbox_ branch from d39afc7 to 7da9f3c Compare November 21, 2024 13:45
@eps1lon eps1lon force-pushed the sebbie/11-20-track_errors_where_frames_are_not_sourcemapped_properly_in_the_redbox branch from 5e4ae87 to 98fdca8 Compare November 21, 2024 13:45
Base automatically changed from sebbie/11-20-rename_waitforandopenruntimeerror_to_openredbox_ to canary November 21, 2024 17:02
An error occurred while trying to automatically change base from sebbie/11-20-rename_waitforandopenruntimeerror_to_openredbox_ to canary November 21, 2024 17:02
@eps1lon eps1lon force-pushed the sebbie/11-20-track_errors_where_frames_are_not_sourcemapped_properly_in_the_redbox branch 5 times, most recently from 652fc2c to f8ee886 Compare November 24, 2024 22:25
@ijjk ijjk added the Font (next/font) Related to Next.js Font Optimization. label Nov 24, 2024
@eps1lon eps1lon force-pushed the sebbie/11-20-track_errors_where_frames_are_not_sourcemapped_properly_in_the_redbox branch 2 times, most recently from 501b107 to 1c69ecd Compare November 25, 2024 16:16
@eps1lon eps1lon force-pushed the sebbie/11-20-track_errors_where_frames_are_not_sourcemapped_properly_in_the_redbox branch 2 times, most recently from 4b21ffe to 991d29c Compare November 25, 2024 20:57
@devjiwonchoi devjiwonchoi force-pushed the sebbie/11-20-track_errors_where_frames_are_not_sourcemapped_properly_in_the_redbox branch 4 times, most recently from 0bb2e1b to f031649 Compare December 4, 2024 08:45
@devjiwonchoi devjiwonchoi force-pushed the sebbie/11-20-track_errors_where_frames_are_not_sourcemapped_properly_in_the_redbox branch 5 times, most recently from 18c98bc to 9e6d906 Compare December 4, 2024 14:41
@eps1lon eps1lon force-pushed the sebbie/11-20-track_errors_where_frames_are_not_sourcemapped_properly_in_the_redbox branch from 9e6d906 to 367992f Compare December 6, 2024 15:35
@eps1lon eps1lon force-pushed the sebbie/11-20-track_errors_where_frames_are_not_sourcemapped_properly_in_the_redbox branch from 367992f to f11c84f Compare December 8, 2024 15:33
@eps1lon
Copy link
Member Author

eps1lon commented Dec 9, 2024

This approach is way too flaky due to how flaky our response codes are (due to HMR?) in dev.

We're switching assertRedbox to a matcher that always includes the stack. In that matcher we'll surface stacks that are incorrect.

@eps1lon eps1lon closed this Dec 9, 2024
@github-actions github-actions bot locked as resolved and limited conversation to collaborators Dec 24, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
created-by: Next.js team PRs by the Next.js team. Font (next/font) Related to Next.js Font Optimization. locked tests
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants