Skip to content

Node.js streams: First pass#90500

Draft
timneutkens wants to merge 2 commits intofeedthejim/node-stream-05-cifrom
02-24-node.js_streams_first_pass
Draft

Node.js streams: First pass#90500
timneutkens wants to merge 2 commits intofeedthejim/node-stream-05-cifrom
02-24-node.js_streams_first_pass

Conversation

@timneutkens
Copy link
Member

No description provided.

Copy link
Member Author

Warning

This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
Learn more

This stack of pull requests is managed by Graphite. Learn more about stacking.

@nextjs-bot
Copy link
Collaborator

nextjs-bot commented Feb 25, 2026

Failing test suites

Commit: 83a60e0 | About building and testing Next.js

pnpm test-start test/e2e/streaming-ssr/index.test.ts (job)

  • streaming SSR with custom next configs > should match more specific route along with dynamic routes (DD)
  • streaming SSR with custom next configs > should render styled-jsx styles in streaming (DD)
  • streaming SSR with custom next configs > should redirect paths without trailing-slash and render when slash is appended (DD)
  • streaming SSR with custom next configs > should render next/router correctly in edge runtime (DD)
  • streaming SSR with custom next configs > should render multi-byte characters correctly in streaming (DD)
Expand output

● streaming SSR with custom next configs › should match more specific route along with dynamic routes

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● streaming SSR with custom next configs › should render styled-jsx styles in streaming

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● streaming SSR with custom next configs › should redirect paths without trailing-slash and render when slash is appended

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● streaming SSR with custom next configs › should render next/router correctly in edge runtime

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● streaming SSR with custom next configs › should render multi-byte characters correctly in streaming

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

pnpm test test/integration/edge-runtime-response-error/test/index.test.ts (job)

  • Edge runtime code with imports > test error if response is not Response type > Edge API dev test Response (DD)
  • Edge runtime code with imports > test error if response is not Response type > Middleware dev test Response (DD)
  • Edge runtime code with imports > test error if response is not Response type > production mode > Edge API build test Response (DD)
  • Edge runtime code with imports > test error if response is not Response type > production mode > Middleware build test Response (DD)
Expand output

● Edge runtime code with imports › test error if response is not Response type › Edge API dev test Response

expect(received).toContain(expected) // indexOf

Expected substring: "Expected an instance of Response to be returned"
Received string:    "⚠ The \"middleware\" file convention is deprecated. Please use \"proxy\" instead. Learn more: https://nextjs.org/docs/messages/middleware-to-proxy
⨯ node:stream
Module build failed: UnhandledSchemeError: Reading from \"node:stream\" is not handled by plugins (Unhandled scheme).
Webpack supports \"data:\" and \"file:\" URIs by default.
You may need an additional plugin to handle \"node:\" URIs.
Import trace for requested module:
node:stream
../../../packages/next/dist/esm/server/render-result.js
../../../packages/next/dist/esm/server/response-cache/utils.js
../../../packages/next/dist/esm/server/response-cache/index.js
"

  66 |       context.app = await launchApp(context.appDir, context.appPort, appOption)
  67 |       const res = await fetchViaHTTP(context.appPort, url)
> 68 |       expect(context.logs.stderr).toContain(
     |                                   ^
  69 |         'Expected an instance of Response to be returned'
  70 |       )
  71 |       expect(res.status).toBe(500)

  at Object.toContain (integration/edge-runtime-response-error/test/index.test.ts:68:35)

● Edge runtime code with imports › test error if response is not Response type › production mode › Edge API build test Response

FetchError: request to http://localhost:34573/api/route failed, reason: socket hang up

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

● Edge runtime code with imports › test error if response is not Response type › Middleware dev test Response

expect(received).toContain(expected) // indexOf

Expected substring: "Expected an instance of Response to be returned"
Received string:    "⚠ The \"middleware\" file convention is deprecated. Please use \"proxy\" instead. Learn more: https://nextjs.org/docs/messages/middleware-to-proxy
⨯ node:stream
Module build failed: UnhandledSchemeError: Reading from \"node:stream\" is not handled by plugins (Unhandled scheme).
Webpack supports \"data:\" and \"file:\" URIs by default.
You may need an additional plugin to handle \"node:\" URIs.
Import trace for requested module:
node:stream
../../../packages/next/dist/esm/server/render-result.js
../../../packages/next/dist/esm/server/response-cache/utils.js
../../../packages/next/dist/esm/server/response-cache/index.js
"

  66 |       context.app = await launchApp(context.appDir, context.appPort, appOption)
  67 |       const res = await fetchViaHTTP(context.appPort, url)
> 68 |       expect(context.logs.stderr).toContain(
     |                                   ^
  69 |         'Expected an instance of Response to be returned'
  70 |       )
  71 |       expect(res.status).toBe(500)

  at Object.toContain (integration/edge-runtime-response-error/test/index.test.ts:68:35)

● Edge runtime code with imports › test error if response is not Response type › production mode › Middleware build test Response

FetchError: request to http://localhost:38715/ failed, reason: socket hang up

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

pnpm test test/integration/edge-runtime-streaming-error/test/index.test.ts (job)

  • production mode > Concurrent mode in the experimental-edge runtime prod > flushes styled-jsx styles as the page renders (DD)
  • production mode > Concurrent mode in the experimental-edge runtime prod > should not have invalid config warning (DD)
  • production mode > Concurrent mode in the experimental-edge runtime prod > > should not have the initial route announced (DD)
Expand output

● production mode › Concurrent mode in the experimental-edge runtime prod › flushes styled-jsx styles as the page renders

FetchError: request to http://localhost:37173/use-flush-effect/styled-jsx failed, reason: read ECONNRESET

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

● production mode › Concurrent mode in the experimental-edge runtime prod › › should not have the initial route announced

page.goto: net::ERR_CONNECTION_REFUSED at http://localhost:37173/
Call log:
  - navigating to "http://localhost:37173/", waiting until "load"

  343 |     await opts?.beforePageLoad?.(page)
  344 |
> 345 |     await page.goto(url, { waitUntil: opts?.waitUntil ?? 'load' })
      |                ^
  346 |   }
  347 |
  348 |   back(options?: Parameters<Page['goBack']>[0]) {

  at Playwright.goto (lib/browsers/playwright.ts:345:16)
  at webdriver (lib/next-webdriver.ts:156:3)
  at Object.<anonymous> (integration/react-current-version/test/index.test.ts:128:27)

● production mode › Concurrent mode in the experimental-edge runtime prod › should not have invalid config warning

FetchError: request to http://localhost:37173/ failed, reason: connect ECONNREFUSED 127.0.0.1:37173

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

pnpm test-start test/e2e/app-dir/middleware-sitemap/matcher-exclude-sitemap/index.test.ts (job)

  • Vary Header Tests > should preserve custom vary header in API routes (DD)
  • Vary Header Tests > should preserve custom vary header and append RSC headers in app route handlers (DD)
  • Vary Header Tests > should preserve middleware vary header in combination with route handlers (DD)
Expand output

● Vary Header Tests › should preserve custom vary header in API routes

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Vary Header Tests › should preserve custom vary header and append RSC headers in app route handlers

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Vary Header Tests › should preserve middleware vary header in combination with route handlers

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

pnpm test test/integration/middleware-overrides-node.js-api/test/index.test.ts (job)

  • Middleware overriding a Node.js API > development mode > does not show a warning and allows overriding (DD)
Expand output

● Middleware overriding a Node.js API › development mode › does not show a warning and allows overriding

expect(received).toBe(expected) // Object.is equality

Expected: 200
Received: 500

  38 |         const res = await fetchViaHTTP(context.appPort, '/')
  39 |         await waitFor(500)
> 40 |         expect(res.status).toBe(200)
     |                            ^
  41 |         expect(output).toContain('fixed-value')
  42 |         expect(output).not.toContain('TypeError')
  43 |         expect(output).not.toContain('A Node.js API is used (process.env')

  at Object.toBe (integration/middleware-overrides-node.js-api/test/index.test.ts:40:28)

pnpm test-start test/e2e/app-dir/draft-mode-middleware/draft-mode-middleware.test.ts (job)

  • Middleware Runtime > with i18n > should handle 404 on fallback: false route correctly (DD)
  • Middleware Runtime > with i18n > should work with notFound: true correctly (DD)
  • Middleware Runtime > with i18n > should be able to rewrite on _next/static/chunks/pages/ 404 (DD)
  • Middleware Runtime > with i18n > should have valid middleware field in manifest (DD)
  • Middleware Runtime > with i18n > should have the custom config in the manifest (DD)
  • Middleware Runtime > with i18n > should have correct files in manifest (DD)
  • Middleware Runtime > with i18n > should not run middleware for on-demand revalidate (DD)
  • Middleware Runtime > with i18n > passes search params with rewrites (DD)
  • Middleware Runtime > with i18n > should have init header for NextResponse.redirect (DD)
  • Middleware Runtime > with i18n > should have correct query values for rewrite to ssg page (DD)
  • Middleware Runtime > with i18n > should have correct dynamic route params on client-transition to dynamic route (DD)
  • Middleware Runtime > with i18n > should have correct dynamic route params for middleware rewrite to dynamic route (DD)
  • Middleware Runtime > with i18n > should have correct route params for chained rewrite from middleware to config rewrite (DD)
  • Middleware Runtime > with i18n > should have correct route params for rewrite from config dynamic route (DD)
  • Middleware Runtime > with i18n > should have correct route params for rewrite from config non-dynamic route (DD)
  • Middleware Runtime > with i18n > should redirect the same for direct visit and client-transition (DD)
  • Middleware Runtime > with i18n > should rewrite the same for direct visit and client-transition (DD)
  • Middleware Runtime > with i18n > should rewrite correctly for non-SSG/SSP page (DD)
  • Middleware Runtime > with i18n > should respond with 400 on decode failure (DD)
  • Middleware Runtime > with i18n > should set fetch user agent correctly (DD)
  • Middleware Runtime > with i18n > allows to access env variables (DD)
  • Middleware Runtime > with i18n > should contain globalThis (DD)
  • Middleware Runtime > with i18n > should contain crypto APIs (DD)
  • Middleware Runtime > with i18n > should accept a URL instance for fetch (DD)
  • Middleware Runtime > with i18n > should allow to abort a fetch request (DD)
  • Middleware Runtime > with i18n > should validate & parse request url from any route (DD)
  • Middleware Runtime > with i18n > should validate & parse request url from a dynamic route with params (DD)
  • Middleware Runtime > with i18n > should validate & parse request url from a dynamic route with params and no query (DD)
  • Middleware Runtime > with i18n > should validate & parse request url from a dynamic route with params and query (DD)
  • Middleware Runtime > with i18n > should throw when using URL with a relative URL (DD)
  • Middleware Runtime > with i18n > should throw when using NextRequest with a relative URL (DD)
  • Middleware Runtime > with i18n > should throw when using Request with a relative URL (DD)
  • Middleware Runtime > with i18n > should warn when using Response.redirect with a relative URL (DD)
  • Middleware Runtime > with i18n > should warn when using NextResponse.redirect with a relative URL (DD)
  • Middleware Runtime > with i18n > should throw when using NextResponse.rewrite with a relative URL (DD)
  • Middleware Runtime > with i18n > should trigger middleware for data requests (DD)
  • Middleware Runtime > with i18n > should normalize data requests into page requests (DD)
  • Middleware Runtime > with i18n > should keep non data requests in their original shape (DD)
  • Middleware Runtime > with i18n > should add a rewrite header on data requests for rewrites (DD)
  • Middleware Runtime > with i18n > hard-navigates when the data request failed (DD)
  • Middleware Runtime > with i18n > allows shallow linking with middleware (DD)
  • Middleware Runtime > without i18n > should handle 404 on fallback: false route correctly (DD)
  • Middleware Runtime > without i18n > should work with notFound: true correctly (DD)
  • Middleware Runtime > without i18n > should be able to rewrite on _next/static/chunks/pages/ 404 (DD)
  • Middleware Runtime > without i18n > should have valid middleware field in manifest (DD)
  • Middleware Runtime > without i18n > should have the custom config in the manifest (DD)
  • Middleware Runtime > without i18n > should have correct files in manifest (DD)
  • Middleware Runtime > without i18n > should not run middleware for on-demand revalidate (DD)
  • Middleware Runtime > without i18n > passes search params with rewrites (DD)
  • Middleware Runtime > without i18n > should have init header for NextResponse.redirect (DD)
  • Middleware Runtime > without i18n > should have correct query values for rewrite to ssg page (DD)
  • Middleware Runtime > without i18n > should have correct dynamic route params on client-transition to dynamic route (DD)
  • Middleware Runtime > without i18n > should have correct dynamic route params for middleware rewrite to dynamic route (DD)
  • Middleware Runtime > without i18n > should have correct route params for chained rewrite from middleware to config rewrite (DD)
  • Middleware Runtime > without i18n > should have correct route params for rewrite from config dynamic route (DD)
  • Middleware Runtime > without i18n > should have correct route params for rewrite from config non-dynamic route (DD)
  • Middleware Runtime > without i18n > should redirect the same for direct visit and client-transition (DD)
  • Middleware Runtime > without i18n > should rewrite the same for direct visit and client-transition (DD)
  • Middleware Runtime > without i18n > should rewrite correctly for non-SSG/SSP page (DD)
  • Middleware Runtime > without i18n > should respond with 400 on decode failure (DD)
  • Middleware Runtime > without i18n > should set fetch user agent correctly (DD)
  • Middleware Runtime > without i18n > allows to access env variables (DD)
  • Middleware Runtime > without i18n > should contain globalThis (DD)
  • Middleware Runtime > without i18n > should contain crypto APIs (DD)
  • Middleware Runtime > without i18n > should accept a URL instance for fetch (DD)
  • Middleware Runtime > without i18n > should allow to abort a fetch request (DD)
  • Middleware Runtime > without i18n > should validate & parse request url from any route (DD)
  • Middleware Runtime > without i18n > should validate & parse request url from a dynamic route with params and query (DD)
  • Middleware Runtime > without i18n > should throw when using URL with a relative URL (DD)
  • Middleware Runtime > without i18n > should throw when using NextRequest with a relative URL (DD)
  • Middleware Runtime > without i18n > should throw when using Request with a relative URL (DD)
  • Middleware Runtime > without i18n > should warn when using Response.redirect with a relative URL (DD)
  • Middleware Runtime > without i18n > should warn when using NextResponse.redirect with a relative URL (DD)
  • Middleware Runtime > without i18n > should throw when using NextResponse.rewrite with a relative URL (DD)
  • Middleware Runtime > without i18n > should trigger middleware for data requests (DD)
  • Middleware Runtime > without i18n > should normalize data requests into page requests (DD)
  • Middleware Runtime > without i18n > should keep non data requests in their original shape (DD)
  • Middleware Runtime > without i18n > should add a rewrite header on data requests for rewrites (DD)
  • Middleware Runtime > without i18n > hard-navigates when the data request failed (DD)
  • Middleware Runtime > without i18n > allows shallow linking with middleware (DD)
Expand output

● Middleware Runtime › with i18n › should handle 404 on fallback: false route correctly

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › with i18n › should work with notFound: true correctly

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › with i18n › should be able to rewrite on _next/static/chunks/pages/ 404

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › with i18n › should have valid middleware field in manifest

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › with i18n › should have the custom config in the manifest

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › with i18n › should have correct files in manifest

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › with i18n › should not run middleware for on-demand revalidate

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › with i18n › passes search params with rewrites

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › with i18n › should have init header for NextResponse.redirect

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › with i18n › should have correct query values for rewrite to ssg page

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › with i18n › should have correct dynamic route params on client-transition to dynamic route

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › with i18n › should have correct dynamic route params for middleware rewrite to dynamic route

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › with i18n › should have correct route params for chained rewrite from middleware to config rewrite

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › with i18n › should have correct route params for rewrite from config dynamic route

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › with i18n › should have correct route params for rewrite from config non-dynamic route

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › with i18n › should redirect the same for direct visit and client-transition

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › with i18n › should rewrite the same for direct visit and client-transition

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › with i18n › should rewrite correctly for non-SSG/SSP page

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › with i18n › should respond with 400 on decode failure

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › with i18n › should set fetch user agent correctly

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › with i18n › allows to access env variables

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › with i18n › should contain globalThis

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › with i18n › should contain crypto APIs

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › with i18n › should accept a URL instance for fetch

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › with i18n › should allow to abort a fetch request

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › with i18n › should validate & parse request url from any route

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › with i18n › should validate & parse request url from a dynamic route with params

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › with i18n › should validate & parse request url from a dynamic route with params and no query

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › with i18n › should validate & parse request url from a dynamic route with params and query

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › with i18n › should throw when using URL with a relative URL

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › with i18n › should throw when using NextRequest with a relative URL

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › with i18n › should throw when using Request with a relative URL

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › with i18n › should warn when using Response.redirect with a relative URL

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › with i18n › should warn when using NextResponse.redirect with a relative URL

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › with i18n › should throw when using NextResponse.rewrite with a relative URL

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › with i18n › should trigger middleware for data requests

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › with i18n › should normalize data requests into page requests

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › with i18n › should keep non data requests in their original shape

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › with i18n › should add a rewrite header on data requests for rewrites

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › with i18n › hard-navigates when the data request failed

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › with i18n › allows shallow linking with middleware

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › without i18n › should handle 404 on fallback: false route correctly

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › without i18n › should work with notFound: true correctly

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › without i18n › should be able to rewrite on _next/static/chunks/pages/ 404

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › without i18n › should have valid middleware field in manifest

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › without i18n › should have the custom config in the manifest

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › without i18n › should have correct files in manifest

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › without i18n › should not run middleware for on-demand revalidate

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › without i18n › passes search params with rewrites

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › without i18n › should have init header for NextResponse.redirect

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › without i18n › should have correct query values for rewrite to ssg page

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › without i18n › should have correct dynamic route params on client-transition to dynamic route

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › without i18n › should have correct dynamic route params for middleware rewrite to dynamic route

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › without i18n › should have correct route params for chained rewrite from middleware to config rewrite

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › without i18n › should have correct route params for rewrite from config dynamic route

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › without i18n › should have correct route params for rewrite from config non-dynamic route

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › without i18n › should redirect the same for direct visit and client-transition

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › without i18n › should rewrite the same for direct visit and client-transition

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › without i18n › should rewrite correctly for non-SSG/SSP page

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › without i18n › should respond with 400 on decode failure

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › without i18n › should set fetch user agent correctly

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › without i18n › allows to access env variables

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › without i18n › should contain globalThis

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › without i18n › should contain crypto APIs

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › without i18n › should accept a URL instance for fetch

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › without i18n › should allow to abort a fetch request

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › without i18n › should validate & parse request url from any route

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › without i18n › should validate & parse request url from a dynamic route with params and query

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › without i18n › should throw when using URL with a relative URL

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › without i18n › should throw when using NextRequest with a relative URL

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › without i18n › should throw when using Request with a relative URL

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › without i18n › should warn when using Response.redirect with a relative URL

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › without i18n › should warn when using NextResponse.redirect with a relative URL

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › without i18n › should throw when using NextResponse.rewrite with a relative URL

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › without i18n › should trigger middleware for data requests

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › without i18n › should normalize data requests into page requests

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › without i18n › should keep non data requests in their original shape

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › without i18n › should add a rewrite header on data requests for rewrites

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › without i18n › hard-navigates when the data request failed

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware Runtime › without i18n › allows shallow linking with middleware

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Test suite failed to run

TypeError: Cannot read properties of undefined (reading 'destroy')

  21 |   const setup = ({ i18n }: { i18n: boolean }) => {
  22 |     afterAll(async () => {
> 23 |       await next.destroy()
     |                  ^
  24 |     })
  25 |     beforeAll(async () => {
  26 |       next = await createNext({

  at Object.destroy (e2e/middleware-general/test/index.test.ts:23:18)

● Test suite failed to run

TypeError: Cannot read properties of undefined (reading 'destroy')

  21 |   const setup = ({ i18n }: { i18n: boolean }) => {
  22 |     afterAll(async () => {
> 23 |       await next.destroy()
     |                  ^
  24 |     })
  25 |     beforeAll(async () => {
  26 |       next = await createNext({

  at Object.destroy (e2e/middleware-general/test/index.test.ts:23:18)

pnpm test-start test/e2e/app-dir/middleware-rewrite-catchall-priority-with-parallel-route/middleware-rewrite-catchall-priority-with-parallel-route.test.ts (job)

  • streaming SSR with custom next configs > should match more specific route along with dynamic routes (DD)
  • streaming SSR with custom next configs > should render styled-jsx styles in streaming (DD)
  • streaming SSR with custom next configs > should redirect paths without trailing-slash and render when slash is appended (DD)
  • streaming SSR with custom next configs > should render next/router correctly in edge runtime (DD)
  • streaming SSR with custom next configs > should render multi-byte characters correctly in streaming (DD)
Expand output

● streaming SSR with custom next configs › should match more specific route along with dynamic routes

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● streaming SSR with custom next configs › should render styled-jsx styles in streaming

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● streaming SSR with custom next configs › should redirect paths without trailing-slash and render when slash is appended

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● streaming SSR with custom next configs › should render next/router correctly in edge runtime

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● streaming SSR with custom next configs › should render multi-byte characters correctly in streaming

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

pnpm test-start test/e2e/app-dir/app-routes/app-custom-route-base-path.test.ts (job)

  • Custom TypeScript Config > app router: allows a user-specific tsconfig via the next config (DD)
  • Custom TypeScript Config > pages router: allows a user-specific tsconfig via the next config (DD)
  • Custom TypeScript Config > middleware: allows a user-specific tsconfig via the next config (DD)
Expand output

● Custom TypeScript Config › app router: allows a user-specific tsconfig via the next config

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Custom TypeScript Config › pages router: allows a user-specific tsconfig via the next config

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Custom TypeScript Config › middleware: allows a user-specific tsconfig via the next config

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

pnpm test-start test/e2e/app-dir/metadata-font/metadata-font.test.ts (job)

  • skip-trailing-slash-redirect > should parse locale info for data request correctly (DD)
  • skip-trailing-slash-redirect > should be able to redirect locale casing $1 (DD)
  • skip-trailing-slash-redirect > should be able to redirect locale casing $1 (DD)
  • skip-trailing-slash-redirect > should handle external rewrite correctly /chained-rewrite-ssg (DD)
  • skip-trailing-slash-redirect > should handle external rewrite correctly /chained-rewrite-static (DD)
  • skip-trailing-slash-redirect > should handle external rewrite correctly /chained-rewrite-ssr (DD)
  • skip-trailing-slash-redirect > should handle external rewrite correctly /docs/first (DD)
  • skip-trailing-slash-redirect > should handle external rewrite correctly /docs-auto-static/first (DD)
  • skip-trailing-slash-redirect > should handle external rewrite correctly /docs-ssr/first (DD)
  • skip-trailing-slash-redirect > should allow rewriting invalid buildId correctly (DD)
  • skip-trailing-slash-redirect > should provide original _next/data URL with skipProxyUrlNormalize (DD)
  • skip-trailing-slash-redirect > should allow response body from middleware with flag (DD)
  • skip-trailing-slash-redirect > should merge cookies from middleware and API routes correctly (DD)
  • skip-trailing-slash-redirect > should merge cookies from middleware and edge API routes correctly (DD)
  • skip-trailing-slash-redirect > should not have trailing slash redirects in manifest (DD)
  • skip-trailing-slash-redirect > should correct skip URL normalizing in middleware (DD)
  • skip-trailing-slash-redirect > should apply config redirect correctly (DD)
  • skip-trailing-slash-redirect > should apply config rewrites correctly (DD)
  • skip-trailing-slash-redirect > should not apply trailing slash on load on client (DD)
  • skip-trailing-slash-redirect > app dir - skip trailing slash redirect > should not apply trailing slash redirect (with slash) (DD)
  • skip-trailing-slash-redirect > app dir - skip trailing slash redirect > should not apply trailing slash redirect (without slash) (DD)
  • skip-trailing-slash-redirect > app dir - skip trailing slash redirect > should preserve original trailing slashes to links on client (DD)
  • skip-trailing-slash-redirect > app dir - skip trailing slash redirect > should respond to index correctly (DD)
  • skip-trailing-slash-redirect > app dir - skip trailing slash redirect > should respond to dynamic route correctly (DD)
  • skip-trailing-slash-redirect > app dir - skip trailing slash redirect > should navigate client side correctly (DD)
  • skip-trailing-slash-redirect > pages dir > should not apply trailing slash redirect (with slash) (DD)
  • skip-trailing-slash-redirect > pages dir > should not apply trailing slash redirect (without slash) (DD)
  • skip-trailing-slash-redirect > pages dir > should preserve original trailing slashes to links on client (DD)
  • skip-trailing-slash-redirect > pages dir > should respond to index correctly (DD)
  • skip-trailing-slash-redirect > pages dir > should respond to dynamic route correctly (DD)
  • skip-trailing-slash-redirect > pages dir > should navigate client side correctly (DD)
Expand output

● skip-trailing-slash-redirect › should parse locale info for data request correctly

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● skip-trailing-slash-redirect › should be able to redirect locale casing $1

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● skip-trailing-slash-redirect › should be able to redirect locale casing $1

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● skip-trailing-slash-redirect › should handle external rewrite correctly /chained-rewrite-ssg

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● skip-trailing-slash-redirect › should handle external rewrite correctly /chained-rewrite-static

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● skip-trailing-slash-redirect › should handle external rewrite correctly /chained-rewrite-ssr

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● skip-trailing-slash-redirect › should handle external rewrite correctly /docs/first

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● skip-trailing-slash-redirect › should handle external rewrite correctly /docs-auto-static/first

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● skip-trailing-slash-redirect › should handle external rewrite correctly /docs-ssr/first

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● skip-trailing-slash-redirect › should allow rewriting invalid buildId correctly

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● skip-trailing-slash-redirect › should provide original _next/data URL with skipProxyUrlNormalize

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● skip-trailing-slash-redirect › should allow response body from middleware with flag

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● skip-trailing-slash-redirect › should merge cookies from middleware and API routes correctly

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● skip-trailing-slash-redirect › should merge cookies from middleware and edge API routes correctly

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● skip-trailing-slash-redirect › should not have trailing slash redirects in manifest

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● skip-trailing-slash-redirect › should correct skip URL normalizing in middleware

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● skip-trailing-slash-redirect › should apply config redirect correctly

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● skip-trailing-slash-redirect › should apply config rewrites correctly

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● skip-trailing-slash-redirect › should not apply trailing slash on load on client

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● skip-trailing-slash-redirect › pages dir › should not apply trailing slash redirect (with slash)

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● skip-trailing-slash-redirect › pages dir › should not apply trailing slash redirect (without slash)

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● skip-trailing-slash-redirect › pages dir › should preserve original trailing slashes to links on client

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● skip-trailing-slash-redirect › pages dir › should respond to index correctly

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● skip-trailing-slash-redirect › pages dir › should respond to dynamic route correctly

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● skip-trailing-slash-redirect › pages dir › should navigate client side correctly

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● skip-trailing-slash-redirect › app dir - skip trailing slash redirect › should not apply trailing slash redirect (with slash)

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● skip-trailing-slash-redirect › app dir - skip trailing slash redirect › should not apply trailing slash redirect (without slash)

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● skip-trailing-slash-redirect › app dir - skip trailing slash redirect › should preserve original trailing slashes to links on client

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● skip-trailing-slash-redirect › app dir - skip trailing slash redirect › should respond to index correctly

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● skip-trailing-slash-redirect › app dir - skip trailing slash redirect › should respond to dynamic route correctly

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● skip-trailing-slash-redirect › app dir - skip trailing slash redirect › should navigate client side correctly

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Test suite failed to run

TypeError: Cannot read properties of undefined (reading 'destroy')

  15 |     })
  16 |   })
> 17 |   afterAll(() => next.destroy())
     |                       ^
  18 |
  19 |   // the tests below are run in both pages and app dir to ensure the behavior is the same
  20 |   // the other cases aren't added to this block since they are either testing pages-specific behavior

  at Object.destroy (e2e/skip-trailing-slash-redirect/index.test.ts:17:23)

pnpm test-dev test/development/app-dir/turbopack-import-assertions-use/turbopack-import-assertions-use.test.ts (job)

  • esm-externals > app dir url /client > should return the correct SSR HTML (DD)
  • esm-externals > app dir url /server > should return the correct SSR HTML (DD)
Expand output

● esm-externals › app dir url /server › should return the correct SSR HTML

TypeError: Cannot read properties of null (reading 'replace')

  2 |
  3 | function normalize(str: string) {
> 4 |   return str.replace(/<!-- -->/g, '')
    |              ^
  5 | }
  6 |
  7 | describe('esm-externals', () => {

  at replace (e2e/esm-externals/esm-externals.test.ts:4:14)
  at Object.normalize (e2e/esm-externals/esm-externals.test.ts:56:14)

● esm-externals › app dir url /client › should return the correct SSR HTML

TypeError: Cannot read properties of null (reading 'replace')

  2 |
  3 | function normalize(str: string) {
> 4 |   return str.replace(/<!-- -->/g, '')
    |              ^
  5 | }
  6 |
  7 | describe('esm-externals', () => {

  at replace (e2e/esm-externals/esm-externals.test.ts:4:14)
  at Object.normalize (e2e/esm-externals/esm-externals.test.ts:56:14)

pnpm test-start test/e2e/app-dir/cache-components/cache-components.web-crypto.test.ts (job)

  • Middleware can set the matcher in its config > does add the header for root request (DD)
  • Middleware can set the matcher in its config > adds the header for a matched path (DD)
  • Middleware can set the matcher in its config > adds the header for a matched data path (with header) (DD)
  • Middleware can set the matcher in its config > adds the header for a matched data path (without header) (DD)
  • Middleware can set the matcher in its config > adds the header for another matched path (DD)
  • Middleware can set the matcher in its config > adds the header for another matched data path (DD)
  • Middleware can set the matcher in its config > does add the header for root data request (DD)
  • Middleware can set the matcher in its config > should load matches in client matchers correctly (DD)
  • Middleware can set the matcher in its config > should navigate correctly with matchers (DD)
  • using a single matcher > does not add the header for root request (DD)
  • using a single matcher > does not add the header for root data request (DD)
  • using a single matcher > adds the header for a matched path (DD)
  • using a single matcher > adds the headers for a matched data path (with header) (DD)
  • using a single matcher > adds the header for a matched data path (without header) (DD)
  • using a single matcher > does not add the header for an unmatched path (DD)
  • using a single matcher with i18n > adds the header for a matched path (DD)
  • using a single matcher with i18n > adds the header for a mathed root path with /index (DD)
  • using a single matcher with i18n > adds the headers for a matched data path (DD)
  • using a single matcher with i18n > does not add the header for an unmatched path (DD)
  • using a single matcher with i18n and basePath > adds the header for a matched path (DD)
  • using a single matcher with i18n and basePath > adds the header for a mathed root path with /index (DD)
  • using a single matcher with i18n and basePath > adds the headers for a matched data path (DD)
  • using a single matcher with i18n and basePath > does not add the header for an unmatched path (DD)
  • using a single matcher with i18n and basePath and trailingSlash > adds the header for a matched path (DD)
  • using a single matcher with i18n and basePath and trailingSlash > adds the header for a mathed root path with /index (DD)
  • using a single matcher with i18n and basePath and trailingSlash > adds the headers for a matched data path (DD)
  • using a single matcher with i18n and basePath and trailingSlash > does not add the header for an unmatched path (DD)
  • using a single matcher with i18n and trailingSlash > adds the header for a matched path (DD)
  • using a single matcher with i18n and trailingSlash > adds the header for a mathed root path with /index (DD)
  • using a single matcher with i18n and trailingSlash > adds the headers for a matched data path (DD)
  • using a single matcher with i18n and trailingSlash > does not add the header for an unmatched path (DD)
  • using root matcher > adds the header to the / (DD)
  • using root matcher > adds the header to the /index (DD)
  • using root matcher > adds the header for a matched data path (with header) (DD)
  • using root matcher > adds the header for a matched data path (without header) (DD)
Expand output

● Middleware can set the matcher in its config › does add the header for root request

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware can set the matcher in its config › adds the header for a matched path

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware can set the matcher in its config › adds the header for a matched data path (with header)

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware can set the matcher in its config › adds the header for a matched data path (without header)

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware can set the matcher in its config › adds the header for another matched path

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware can set the matcher in its config › adds the header for another matched data path

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware can set the matcher in its config › does add the header for root data request

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware can set the matcher in its config › should load matches in client matchers correctly

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Middleware can set the matcher in its config › should navigate correctly with matchers

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● using a single matcher › does not add the header for root request

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● using a single matcher › does not add the header for root data request

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● using a single matcher › adds the header for a matched path

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● using a single matcher › adds the headers for a matched data path (with header)

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● using a single matcher › adds the header for a matched data path (without header)

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● using a single matcher › does not add the header for an unmatched path

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● using root matcher › adds the header to the /

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● using root matcher › adds the header to the /index

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● using root matcher › adds the header for a matched data path (with header)

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● using root matcher › adds the header for a matched data path (without header)

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● using a single matcher with i18n › adds the header for a matched path

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● using a single matcher with i18n › adds the header for a mathed root path with /index

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● using a single matcher with i18n › adds the headers for a matched data path

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● using a single matcher with i18n › does not add the header for an unmatched path

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● using a single matcher with i18n and trailingSlash › adds the header for a matched path

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● using a single matcher with i18n and trailingSlash › adds the header for a mathed root path with /index

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● using a single matcher with i18n and trailingSlash › adds the headers for a matched data path

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● using a single matcher with i18n and trailingSlash › does not add the header for an unmatched path

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● using a single matcher with i18n and basePath › adds the header for a matched path

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● using a single matcher with i18n and basePath › adds the header for a mathed root path with /index

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● using a single matcher with i18n and basePath › adds the headers for a matched data path

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● using a single matcher with i18n and basePath › does not add the header for an unmatched path

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● using a single matcher with i18n and basePath and trailingSlash › adds the header for a matched path

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● using a single matcher with i18n and basePath and trailingSlash › adds the header for a mathed root path with /index

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● using a single matcher with i18n and basePath and trailingSlash › adds the headers for a matched data path

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● using a single matcher with i18n and basePath and trailingSlash › does not add the header for an unmatched path

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Test suite failed to run

TypeError: Cannot read properties of undefined (reading 'destroy')

  14 |     })
  15 |   })
> 16 |   afterAll(() => next.destroy())
     |                       ^
  17 |
  18 |   it('does add the header for root request', async () => {
  19 |     const response = await fetchViaHTTP(next.url, '/')

  at Object.destroy (e2e/middleware-matcher/index.test.ts:16:23)

● Test suite failed to run

TypeError: Cannot read properties of undefined (reading 'destroy')

  185 |     })
  186 |   })
> 187 |   afterAll(() => next.destroy())
      |                       ^
  188 |
  189 |   it('does not add the header for root request', async () => {
  190 |     const response = await fetchViaHTTP(next.url, '/')

  at Object.destroy (e2e/middleware-matcher/index.test.ts:187:23)

● Test suite failed to run

TypeError: Cannot read properties of undefined (reading 'destroy')

  275 |     })
  276 |   })
> 277 |   afterAll(() => next.destroy())
      |                       ^
  278 |
  279 |   it('adds the header to the /', async () => {
  280 |     const response = await fetchViaHTTP(next.url, '/')

  at Object.destroy (e2e/middleware-matcher/index.test.ts:277:23)

● Test suite failed to run

TypeError: Cannot read properties of undefined (reading 'destroy')

  373 |     })
  374 |   })
> 375 |   afterAll(() => next.destroy())
      |                       ^
  376 |
  377 |   it(`adds the header for a matched path`, async () => {
  378 |     const res1 = await fetchViaHTTP(next.url, `/`)

  at Object.destroy (e2e/middleware-matcher/index.test.ts:375:23)

● Test suite failed to run

TypeError: Cannot read properties of undefined (reading 'destroy')

  373 |     })
  374 |   })
> 375 |   afterAll(() => next.destroy())
      |                       ^
  376 |
  377 |   it(`adds the header for a matched path`, async () => {
  378 |     const res1 = await fetchViaHTTP(next.url, `/`)

  at Object.destroy (e2e/middleware-matcher/index.test.ts:375:23)

● Test suite failed to run

TypeError: Cannot read properties of undefined (reading 'destroy')

  478 |       })
  479 |     })
> 480 |     afterAll(() => next.destroy())
      |                         ^
  481 |
  482 |     it(`adds the header for a matched path`, async () => {
  483 |       const res1 = await fetchViaHTTP(next.url, `/root`)

  at Object.destroy (e2e/middleware-matcher/index.test.ts:480:25)

● Test suite failed to run

TypeError: Cannot read properties of undefined (reading 'destroy')

  478 |       })
  479 |     })
> 480 |     afterAll(() => next.destroy())
      |                         ^
  481 |
  482 |     it(`adds the header for a matched path`, async () => {
  483 |       const res1 = await fetchViaHTTP(next.url, `/root`)

  at Object.destroy (e2e/middleware-matcher/index.test.ts:480:25)

pnpm test-start test/e2e/app-dir/rewrite-headers/rewrite-headers.test.ts (job)

  • Instrumentation Hook > with-async-edge-page > with-async-edge-page should run the instrumentation hook (DD)
  • Instrumentation Hook > with-edge-api > with-edge-api should run the instrumentation hook (DD)
  • Instrumentation Hook > with-edge-page > with-edge-page should run the instrumentation hook (DD)
  • Instrumentation Hook > with-middleware > with-middleware should run the instrumentation hook (DD)
Expand output

● Instrumentation Hook › with-middleware › with-middleware should run the instrumentation hook

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Instrumentation Hook › with-edge-api › with-edge-api should run the instrumentation hook

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Instrumentation Hook › with-edge-page › with-edge-page should run the instrumentation hook

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Instrumentation Hook › with-async-edge-page › with-async-edge-page should run the instrumentation hook

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

pnpm test-start test/e2e/app-dir/app/standalone.test.ts (job)

  • dynamic-css-client-navigation next/dynamic edge > should not remove style when navigating from static imported component to next/dynamic at runtime edge (DD)
  • dynamic-css-client-navigation next/dynamic edge > should not remove style when navigating from static imported component to next/dynamic with ssr: false at runtime edge (DD)
  • dynamic-css-client-navigation next/dynamic nodejs > should not remove style when navigating from static imported component to next/dynamic at runtime nodejs (DD)
  • dynamic-css-client-navigation next/dynamic nodejs > should not remove style when navigating from static imported component to next/dynamic with ssr: false at runtime nodejs (DD)
Expand output

● dynamic-css-client-navigation next/dynamic edge › should not remove style when navigating from static imported component to next/dynamic at runtime edge

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● dynamic-css-client-navigation next/dynamic edge › should not remove style when navigating from static imported component to next/dynamic with ssr: false at runtime edge

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● dynamic-css-client-navigation next/dynamic nodejs › should not remove style when navigating from static imported component to next/dynamic at runtime nodejs

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● dynamic-css-client-navigation next/dynamic nodejs › should not remove style when navigating from static imported component to next/dynamic with ssr: false at runtime nodejs

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

pnpm test-start test/e2e/app-dir/actions-navigation/index.test.ts (job)

  • instrumentation app > should start and serve correctly (DD)
  • instrumentation app src/ > should start and serve correctly (DD)
  • instrumentation pages > should start and serve correctly (DD)
  • instrumentation pages src/ > should start and serve correctly (DD)
Expand output

● instrumentation pages › should start and serve correctly

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● instrumentation pages src/ › should start and serve correctly

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● instrumentation app › should start and serve correctly

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● instrumentation app src/ › should start and serve correctly

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

pnpm test-start test/e2e/app-dir/app/index.test.ts (job)

  • app-dir edge SSR > should handle edge only routes (DD)
  • app-dir edge SSR > should retrieve cookies in a server component in the edge runtime (DD)
  • app-dir edge SSR > should treat process as object without polyfill in edge runtime (DD)
  • app-dir edge SSR > should handle /index routes correctly (DD)
  • app-dir edge SSR > should generate matchers correctly in middleware manifest (DD)
Expand output

● app-dir edge SSR › should handle edge only routes

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)
  at ChildProcess.cp.emit (../node_modules/.pnpm/cross-spawn@6.0.5/node_modules/cross-spawn/lib/enoent.js:34:29)

● app-dir edge SSR › should retrieve cookies in a server component in the edge runtime

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)
  at ChildProcess.cp.emit (../node_modules/.pnpm/cross-spawn@6.0.5/node_modules/cross-spawn/lib/enoent.js:34:29)

● app-dir edge SSR › should treat process as object without polyfill in edge runtime

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)
  at ChildProcess.cp.emit (../node_modules/.pnpm/cross-spawn@6.0.5/node_modules/cross-spawn/lib/enoent.js:34:29)

● app-dir edge SSR › should handle /index routes correctly

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)
  at ChildProcess.cp.emit (../node_modules/.pnpm/cross-spawn@6.0.5/node_modules/cross-spawn/lib/enoent.js:34:29)

● app-dir edge SSR › should generate matchers correctly in middleware manifest

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)
  at ChildProcess.cp.emit (../node_modules/.pnpm/cross-spawn@6.0.5/node_modules/cross-spawn/lib/enoent.js:34:29)

pnpm test-start test/e2e/app-dir/middleware-matching/index.test.ts (job)

  • client-max-body-size > custom limit with number format > should accept request body over custom 2MB limit but only buffer up to limit (DD)
  • client-max-body-size > custom limit with number format > should accept request body under custom 2MB limit (DD)
  • client-max-body-size > custom limit with string format > should accept request body over custom 5MB limit but only buffer up to limit (DD)
  • client-max-body-size > custom limit with string format > should accept request body under custom 5MB limit (DD)
  • client-max-body-size > default 10MB limit > should accept request body over 10MB but only buffer up to limit (DD)
  • client-max-body-size > default 10MB limit > should accept request body at exactly 10MB (DD)
  • client-max-body-size > default 10MB limit > should accept request body under 10MB (DD)
  • client-max-body-size > large custom limit > should accept request body up to 50MB with custom limit (DD)
  • client-max-body-size > large custom limit > should accept request body over custom 50MB limit but only buffer up to limit (DD)
Expand output

● client-max-body-size › default 10MB limit › should accept request body over 10MB but only buffer up to limit

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● client-max-body-size › default 10MB limit › should accept request body at exactly 10MB

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● client-max-body-size › default 10MB limit › should accept request body under 10MB

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● client-max-body-size › custom limit with string format › should accept request body over custom 5MB limit but only buffer up to limit

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● client-max-body-size › custom limit with string format › should accept request body under custom 5MB limit

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● client-max-body-size › custom limit with number format › should accept request body over custom 2MB limit but only buffer up to limit

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● client-max-body-size › custom limit with number format › should accept request body under custom 2MB limit

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● client-max-body-size › large custom limit › should accept request body up to 50MB with custom limit

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● client-max-body-size › large custom limit › should accept request body over custom 50MB limit but only buffer up to limit

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

pnpm test-start test/e2e/app-dir/app-external/app-external.test.ts (job)

  • required server files app router > should send the right cache headers for an app route (DD)
  • required server files app router > should handle optional catchall (DD)
  • required server files app router > should send the right cache headers for an app page (DD)
  • required server files app router > should not fail caching (DD)
  • required server files app router > should properly handle prerender for bot request (DD)
  • required server files app router > should properly handle fallback for bot request (DD)
  • required server files app router > should send cache tags in minimal mode for ISR (DD)
  • required server files app router > should not send cache tags in minimal mode for SSR (DD)
  • required server files app router > should not send invalid soft tags to cache handler (DD)
  • required server files app router > should not override params with query params (DD)
  • required server files app router > should de-dupe HTML/RSC requests for ISR pages (DD)
  • required server files app router > should isolate cache between different ISR request groups (DD)
Expand output

● required server files app router › should send the right cache headers for an app route

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● required server files app router › should handle optional catchall

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● required server files app router › should send the right cache headers for an app page

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● required server files app router › should not fail caching

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● required server files app router › should properly handle prerender for bot request

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● required server files app router › should properly handle fallback for bot request

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● required server files app router › should send cache tags in minimal mode for ISR

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● required server files app router › should not send cache tags in minimal mode for SSR

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● required server files app router › should not send invalid soft tags to cache handler

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● required server files app router › should not override params with query params

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● required server files app router › should de-dupe HTML/RSC requests for ISR pages

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● required server files app router › should isolate cache between different ISR request groups

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Test suite failed to run

TypeError: Cannot read properties of undefined (reading 'destroy')

  100 |     delete process.env.NOW_BUILDER
  101 |     delete process.env.NEXT_PRIVATE_TEST_HEADERS
> 102 |     await next.destroy()
      |                ^
  103 |     if (server) await killApp(server)
  104 |   })
  105 |

  at Object.destroy (production/standalone-mode/required-server-files/required-server-files-app.test.ts:102:16)

pnpm test-start test/e2e/app-dir/actions-unrecognized/actions-unrecognized.test.ts (job)

  • Instrumentation Hook > with-async-edge-page > with-async-edge-page should run the instrumentation hook (DD)
  • Instrumentation Hook > with-edge-api > with-edge-api should run the instrumentation hook (DD)
  • Instrumentation Hook > with-edge-page > with-edge-page should run the instrumentation hook (DD)
  • Instrumentation Hook > with-middleware > with-middleware should run the instrumentation hook (DD)
Expand output

● Instrumentation Hook › with-middleware › with-middleware should run the instrumentation hook

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Instrumentation Hook › with-edge-api › with-edge-api should run the instrumentation hook

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Instrumentation Hook › with-edge-page › with-edge-page should run the instrumentation hook

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Instrumentation Hook › with-async-edge-page › with-async-edge-page should run the instrumentation hook

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

pnpm test-start test/e2e/app-dir/app-simple-routes/app-simple-routes.test.ts (job)

  • Subresource Integrity > with edge runtime > does not include nonce when not enabled (DD)
  • Subresource Integrity > with edge runtime > includes a nonce value with inline scripts when Content-Security-Policy header is defined (DD)
  • Subresource Integrity > with edge runtime > includes a nonce value with inline scripts when Content-Security-Policy-Report-Only header is defined (DD)
  • Subresource Integrity > with edge runtime > includes a nonce value with bootstrap scripts when Content-Security-Policy header is defined (DD)
  • Subresource Integrity > with edge runtime > includes an integrity attribute on scripts (DD)
  • Subresource Integrity > with edge runtime > throws when escape characters are included in nonce (DD)
  • Subresource Integrity > with node runtime > does not include nonce when not enabled (DD)
  • Subresource Integrity > with node runtime > includes a nonce value with inline scripts when Content-Security-Policy header is defined (DD)
  • Subresource Integrity > with node runtime > includes a nonce value with inline scripts when Content-Security-Policy-Report-Only header is defined (DD)
  • Subresource Integrity > with node runtime > includes a nonce value with bootstrap scripts when Content-Security-Policy header is defined (DD)
  • Subresource Integrity > with node runtime > includes an integrity attribute on scripts (DD)
  • Subresource Integrity > with node runtime > throws when escape characters are included in nonce (DD)
  • Subresource Integrity > with pages runtime > does not include nonce when not enabled (DD)
  • Subresource Integrity > with pages runtime > includes a nonce value with inline scripts when Content-Security-Policy header is defined (DD)
  • Subresource Integrity > with pages runtime > includes a nonce value with inline scripts when Content-Security-Policy-Report-Only header is defined (DD)
  • Subresource Integrity > with pages runtime > includes a nonce value with bootstrap scripts when Content-Security-Policy header is defined (DD)
  • Subresource Integrity > with pages runtime > includes an integrity attribute on scripts (DD)
  • Subresource Integrity > with pages runtime > throws when escape characters are included in nonce (DD)
Expand output

● Subresource Integrity › with node runtime › does not include nonce when not enabled

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Subresource Integrity › with node runtime › includes a nonce value with inline scripts when Content-Security-Policy header is defined

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Subresource Integrity › with node runtime › includes a nonce value with inline scripts when Content-Security-Policy-Report-Only header is defined

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Subresource Integrity › with node runtime › includes a nonce value with bootstrap scripts when Content-Security-Policy header is defined

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Subresource Integrity › with node runtime › includes an integrity attribute on scripts

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Subresource Integrity › with node runtime › throws when escape characters are included in nonce

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Subresource Integrity › with edge runtime › does not include nonce when not enabled

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Subresource Integrity › with edge runtime › includes a nonce value with inline scripts when Content-Security-Policy header is defined

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Subresource Integrity › with edge runtime › includes a nonce value with inline scripts when Content-Security-Policy-Report-Only header is defined

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Subresource Integrity › with edge runtime › includes a nonce value with bootstrap scripts when Content-Security-Policy header is defined

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Subresource Integrity › with edge runtime › includes an integrity attribute on scripts

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Subresource Integrity › with edge runtime › throws when escape characters are included in nonce

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Subresource Integrity › with pages runtime › does not include nonce when not enabled

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Subresource Integrity › with pages runtime › includes a nonce value with inline scripts when Content-Security-Policy header is defined

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Subresource Integrity › with pages runtime › includes a nonce value with inline scripts when Content-Security-Policy-Report-Only header is defined

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Subresource Integrity › with pages runtime › includes a nonce value with bootstrap scripts when Content-Security-Policy header is defined

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Subresource Integrity › with pages runtime › includes an integrity attribute on scripts

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

● Subresource Integrity › with pages runtime › throws when escape characters are included in nonce

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

pnpm test test/integration/edge-runtime-dynamic-code/test/index.test.ts (job)

  • Middleware development errors > when matcher is added > sends response correctly (DD)
  • Middleware development errors > when middleware is added > sends response correctly (DD)
  • Middleware development errors > when middleware is removed > sends response correctly (DD)
  • Middleware development errors > when middleware is removed and re-added > sends response correctly (DD)
Expand output

● Middleware development errors › when middleware is removed › sends response correctly

TIMED OUT: success

undefined

Error: expect(received).toBe(expected) // Object.is equality

Expected: 200
Received: 500

  758 |   }
  759 |   console.error('TIMED OUT CHECK: ', { regex, content, lastErr })
> 760 |   throw new Error('TIMED OUT: ' + regex + '\n\n' + content + '\n\n' + lastErr)
      |         ^
  761 | }
  762 |
  763 | export class File {

  at check (lib/next-test-utils.ts:760:9)
  at assertMiddlewareFetch (integration/middleware-dev-update/test/index.test.ts:45:5)
  at Object.<anonymous> (integration/middleware-dev-update/test/index.test.ts:63:7)

● Middleware development errors › when middleware is removed and re-added › sends response correctly

TIMED OUT: success

undefined

Error: expect(received).toBe(expected) // Object.is equality

Expected: 200
Received: 500

  758 |   }
  759 |   console.error('TIMED OUT CHECK: ', { regex, content, lastErr })
> 760 |   throw new Error('TIMED OUT: ' + regex + '\n\n' + content + '\n\n' + lastErr)
      |         ^
  761 | }
  762 |
  763 | export class File {

  at check (lib/next-test-utils.ts:760:9)
  at assertMiddlewareFetch (integration/middleware-dev-update/test/index.test.ts:45:5)
  at Object.<anonymous> (integration/middleware-dev-update/test/index.test.ts:78:7)

● Middleware development errors › when middleware is added › sends response correctly

thrown: "Exceeded timeout of 60000 ms for a test.
Add a timeout value to this test to increase the timeout, if this is a long-running test. See https://jestjs.io/docs/api#testname-fn-timeout."

   95 |     })
   96 |
>  97 |     it('sends response correctly', async () => {
      |     ^
   98 |       await retry(() => assertMiddlewareFetch(true))
   99 |       await assertMiddlewareRender(true)
  100 |     })

  at it (integration/middleware-dev-update/test/index.test.ts:97:5)
  at describe (integration/middleware-dev-update/test/index.test.ts:90:3)
  at Object.describe (integration/middleware-dev-update/test/index.test.ts:21:1)

● Middleware development errors › when matcher is added › sends response correctly

TIMED OUT: success

undefined

Error: expect(received).toBe(expected) // Object.is equality

Expected: 200
Received: 500

  758 |   }
  759 |   console.error('TIMED OUT CHECK: ', { regex, content, lastErr })
> 760 |   throw new Error('TIMED OUT: ' + regex + '\n\n' + content + '\n\n' + lastErr)
      |         ^
  761 | }
  762 |
  763 | export class File {

  at check (lib/next-test-utils.ts:760:9)
  at assertMiddlewareFetch (integration/middleware-dev-update/test/index.test.ts:45:5)
  at Object.<anonymous> (integration/middleware-dev-update/test/index.test.ts:114:7)

pnpm test-dev test/development/app-dir/server-navigation-error/server-navigation-error.test.ts (job)

  • Middleware custom matchers basePath > should match query path (DD)
Expand output

● Middleware custom matchers basePath › should match query path

thrown: "Exceeded timeout of 120000 ms for a test.
Add a timeout value to this test to increase the timeout, if this is a long-running test. See https://jestjs.io/docs/api#testname-fn-timeout."

  45 |   // FIXME:
  46 |   // See https://linear.app/vercel/issue/EC-160/header-value-set-on-middleware-is-not-propagated-on-client-request-of
> 47 |   itif(!isModeDeploy)('should match query path', async () => {
     |         ^
  48 |     const browser = await webdriver(next.url, '/base/random')
  49 |     await check(() => browser.elementById('router-path').text(), 'random')
  50 |     await browser.elementById('linkelement').click()

  at isModeDeploy (e2e/middleware-dynamic-basepath-matcher/test/index.test.ts:47:9)
  at Object.describe (e2e/middleware-dynamic-basepath-matcher/test/index.test.ts:14:1)

pnpm test-start test/e2e/app-dir/app-middleware/app-middleware-in-src-dir.test.ts (job)

  • og-routes-custom-font > should render og with custom font for app routes (DD)
Expand output

● og-routes-custom-font › should render og with custom font for app routes

next build failed with code/signal 1

  82 |             if (code || signal)
  83 |               reject(
> 84 |                 new Error(
     |                 ^
  85 |                   `next build failed with code/signal ${code || signal}`
  86 |                 )
  87 |               )

  at ChildProcess.<anonymous> (lib/next-modes/next-start.ts:84:17)

pnpm test-dev test/e2e/app-dir/css-server-chunks/css-server-chunks.test.ts (job)

  • use-cache > should not use stale caches in server actions that have revalidated (DD)
  • use-cache > can serialize parent metadata as generateMetadata argument (DD)
  • use-cache > makes a cached generateMetadata function that implicitly depends on params dynamic during prerendering (DD)
  • use-cache > should allow nested short-lived caches after connection() (DD)
  • use-cache > should not read nor write cached data when draft mode is enabled > js disabled, with cookies (DD)
  • use-cache > should not read nor write cached data when draft mode is enabled > js enabled, without cookies (DD)
  • use-cache > should not read nor write cached data when draft mode is enabled > js disabled, without cookies (DD)
Expand output

● use-cache › should not use stale caches in server actions that have revalidated

page.goto: Timeout 60000ms exceeded.
Call log:
  - navigating to "http://localhost:46485/revalidate-and-use", waiting until "load"

  343 |     await opts?.beforePageLoad?.(page)
  344 |
> 345 |     await page.goto(url, { waitUntil: opts?.waitUntil ?? 'load' })
      |                ^
  346 |   }
  347 |
  348 |   back(options?: Parameters<Page['goBack']>[0]) {

  at Playwright.goto (lib/browsers/playwright.ts:345:16)
  at webdriver (lib/next-webdriver.ts:156:3)
  at Object.<anonymous> (e2e/app-dir/use-cache/use-cache.test.ts:401:21)

● use-cache › should not read nor write cached data when draft mode is enabled › js disabled, with cookies

page.waitForSelector: Timeout 5000ms exceeded.
Call log:
  - waiting for locator('button#toggle') to be visible

  519 |
  520 |     return this.startChain(async () => {
> 521 |       const el = await page.waitForSelector(selector, {
      |                             ^
  522 |         timeout,
  523 |         state,
  524 |       })

  at waitForSelector (lib/browsers/playwright.ts:521:29)
  at Playwright._chain (lib/browsers/playwright.ts:651:23)
  at Playwright._chain [as startChain] (lib/browsers/playwright.ts:632:17)
  at Playwright.startChain [as waitForElementByCss] (lib/browsers/playwright.ts:520:17)
  at Playwright.waitForElementByCss [as elementByCss] (lib/browsers/playwright.ts:405:17)
  at elementByCss (e2e/app-dir/use-cache/use-cache.test.ts:903:28)
  at Proxy._chain (lib/browsers/playwright.ts:651:23)
  at Proxy._chain (lib/browsers/playwright.ts:627:17)
  at Proxy.continueChain (lib/browsers/playwright.ts:433:17)
  at text (e2e/app-dir/use-cache/use-cache.test.ts:903:58)

● use-cache › should not read nor write cached data when draft mode is enabled › js enabled, without cookies

page.reload: Timeout 60000ms exceeded.
Call log:
  - waiting for navigation until "load"
  -   navigated to "http://localhost:46485/draft-mode/without-cookies"

  361 |     // do not preserve the previous chained value, it's likely to be invalid after a reload.
  362 |     return this.startChain(async () => {
> 363 |       await page.reload()
      |                  ^
  364 |     })
  365 |   }
  366 |   setDimensions({ width, height }: { height: number; width: number }) {

  at reload (lib/browsers/playwright.ts:363:18)
  at Playwright._chain (lib/browsers/playwright.ts:651:23)
  at Playwright._chain [as startChain] (lib/browsers/playwright.ts:632:17)
  at Playwright.startChain [as refresh] (lib/browsers/playwright.ts:362:17)
  at refresh (e2e/app-dir/use-cache/use-cache.test.ts:899:25)
  at refreshAfterServerAction (e2e/app-dir/use-cache/use-cache.test.ts:960:13)

● use-cache › should not read nor write cached data when draft mode is enabled › js disabled, without cookies

page.waitForSelector: Timeout 5000ms exceeded.
Call log:
  - waiting for locator('button#toggle') to be visible

  519 |
  520 |     return this.startChain(async () => {
> 521 |       const el = await page.waitForSelector(selector, {
      |                             ^
  522 |         timeout,
  523 |         state,
  524 |       })

  at waitForSelector (lib/browsers/playwright.ts:521:29)
  at Playwright._chain (lib/browsers/playwright.ts:651:23)
  at Playwright._chain [as startChain] (lib/browsers/playwright.ts:632:17)
  at Playwright.startChain [as waitForElementByCss] (lib/browsers/playwright.ts:520:17)
  at Playwright.waitForElementByCss [as elementByCss] (lib/browsers/playwright.ts:405:17)
  at elementByCss (e2e/app-dir/use-cache/use-cache.test.ts:903:28)
  at Proxy._chain (lib/browsers/playwright.ts:651:23)
  at Proxy._chain (lib/browsers/playwright.ts:627:17)
  at Proxy.continueChain (lib/browsers/playwright.ts:433:17)
  at text (e2e/app-dir/use-cache/use-cache.test.ts:903:58)

● use-cache › can serialize parent metadata as generateMetadata argument

Expected no visible Redbox but found one
header: Runtime Error
Invariant: Expected debug stream to be a Readable. This is a bug in Next.js.
description: Invariant: Expected debug stream to be a Readable. This is a bug in Next.js.
source: null

  913 |     // If a redbox was opened unexpectedly, we use the `waitForNoRedbox` helper
  914 |     // to print a useful error message containing the redbox contents.
> 915 |     await waitForNoRedbox(browser, {
      |     ^
  916 |       // We already know the redbox is open, so we can skip waiting for it.
  917 |       waitInMs: 0,
  918 |     })

  at waitForNoErrorToast (lib/next-test-utils.ts:915:5)
  at Object.<anonymous> (e2e/app-dir/use-cache/use-cache.test.ts:1230:7)

● use-cache › makes a cached generateMetadata function that implicitly depends on params dynamic during prerendering

Expected no visible Redbox but found one
header: Runtime Error
Invariant: Expected debug stream to be a Readable. This is a bug in Next.js.
description: Invariant: Expected debug stream to be a Readable. This is a bug in Next.js.
source: null

  913 |     // If a redbox was opened unexpectedly, we use the `waitForNoRedbox` helper
  914 |     // to print a useful error message containing the redbox contents.
> 915 |     await waitForNoRedbox(browser, {
      |     ^
  916 |       // We already know the redbox is open, so we can skip waiting for it.
  917 |       waitInMs: 0,
  918 |     })

  at waitForNoErrorToast (lib/next-test-utils.ts:915:5)
  at Object.<anonymous> (e2e/app-dir/use-cache/use-cache.test.ts:1259:7)

● use-cache › should allow nested short-lived caches after connection()

page.waitForSelector: Timeout 5000ms exceeded.
Call log:
  - waiting for locator('#static') to be visible

  519 |
  520 |     return this.startChain(async () => {
> 521 |       const el = await page.waitForSelector(selector, {
      |                             ^
  522 |         timeout,
  523 |         state,
  524 |       })

  at waitForSelector (lib/browsers/playwright.ts:521:29)
  at Playwright._chain (lib/browsers/playwright.ts:651:23)
  at Playwright._chain [as startChain] (lib/browsers/playwright.ts:632:17)
  at Playwright.startChain [as waitForElementByCss] (lib/browsers/playwright.ts:520:17)
  at Playwright.waitForElementByCss [as elementByCss] (lib/browsers/playwright.ts:405:17)
  at Playwright.elementByCss [as elementById] (lib/browsers/playwright.ts:425:17)
  at Object.elementById (e2e/app-dir/use-cache/use-cache.test.ts:1453:26)
  at Proxy._chain (lib/browsers/playwright.ts:651:23)
  at Proxy._chain (lib/browsers/playwright.ts:627:17)
  at Proxy.continueChain (lib/browsers/playwright.ts:433:17)
  at Object.text (e2e/app-dir/use-cache/use-cache.test.ts:1453:48)

pnpm test-dev test/e2e/app-dir/app-middleware/app-middleware-without-pages-dir.test.ts (job)

  • edge api can use async local storage > cans use a single instance per request (DD)
  • edge api can use async local storage > cans use multiple instances per request (DD)
Expand output

● edge api can use async local storage › cans use a single instance per request

expect(received).toMatchObject(expected)

- Expected  - 4
+ Received  + 2

  Object {
-   "json": Object {
-     "id": "req-0",
-   },
-   "status": 200,
+   "json": null,
+   "status": 500,
  }

  31 |       `,
  32 |       expectResponse: (response, id) =>
> 33 |         expect(response).toMatchObject({ status: 200, json: { id } }),
     |                          ^
  34 |     },
  35 |     {
  36 |       title: 'multiple instances',

  at toMatchObject (e2e/edge-async-local-storage/index.test.ts:33:26)
  at expectResponse (e2e/edge-async-local-storage/index.test.ts:111:11)

● edge api can use async local storage › cans use multiple instances per request

expect(received).toMatchObject(expected)

- Expected  - 5
+ Received  + 2

  Object {
-   "json": Object {
-     "id": "req-0",
-     "nestedId": "nested-req-0",
-   },
-   "status": 200,
+   "json": null,
+   "status": 500,
  }

  60 |       `,
  61 |       expectResponse: (response, id) =>
> 62 |         expect(response).toMatchObject({
     |                          ^
  63 |           status: 200,
  64 |           json: { id: id, nestedId: `nested-${id}` },
  65 |         }),

  at toMatchObject (e2e/edge-async-local-storage/index.test.ts:62:26)
  at expectResponse (e2e/edge-async-local-storage/index.test.ts:111:11)

pnpm test-start test/e2e/app-dir/next-condition/next-condition.test.ts (job)

  • segment cache - vary params > does not reuse prefetched segment when page accesses searchParams (DD)
Expand output

● segment cache - vary params › does not reuse prefetched segment when page accesses searchParams

thrown: "Exceeded timeout of 60000 ms for a test.
Add a timeout value to this test to increase the timeout, if this is a long-running test. See https://jestjs.io/docs/api#testname-fn-timeout."

  50 |       }
  51 |
> 52 |       const result = Reflect.apply(target, thisArg, args)
     |                              ^
  53 |       return typeof result === 'function' ? wrapJestTestFn(result) : result
  54 |     },
  55 |     get(target, prop, receiver) {

  at Object.apply (lib/e2e-utils/index.ts:52:30)
  at it (e2e/app-dir/segment-cache/vary-params/vary-params.test.ts:153:3)
  at Object.describe (e2e/app-dir/segment-cache/vary-params/vary-params.test.ts:21:1)

pnpm test test/unit/image-optimizer/lru-disk-eviction.test.ts (job)

  • LRU disk eviction > should promote entries on get() to prevent eviction (DD)
Expand output

● LRU disk eviction › should promote entries on get() to prevent eviction

EPERM: operation not permitted, rmdir 'C:\Users\ADMINI~1\AppData\Local\Temp\next-lru-test-C5ZBPA\y'

pnpm test-start-turbo test/production/deterministic-build/deployment-id.test.ts (turbopack) (job)

  • deterministic build - changing deployment id > build output API - builder > should produce identical build outputs even when changing deployment id (DD)
Expand output

● deterministic build - changing deployment id › build output API - builder › should produce identical build outputs even when changing deployment id

thrown: "Exceeded timeout of 60000 ms for a test.
Add a timeout value to this test to increase the timeout, if this is a long-running test. See https://jestjs.io/docs/api#testname-fn-timeout."

  50 |       }
  51 |
> 52 |       const result = Reflect.apply(target, thisArg, args)
     |                              ^
  53 |       return typeof result === 'function' ? wrapJestTestFn(result) : result
  54 |     },
  55 |     get(target, prop, receiver) {

  at Object.apply (lib/e2e-utils/index.ts:52:30)
  at it (production/deterministic-build/deployment-id.test.ts:245:7)
      at Array.forEach (<anonymous>)
  at production/deterministic-build/deployment-id.test.ts:217:41
  at Object.<anonymous> (production/deterministic-build/deployment-id.test.ts:197:58)

pnpm test-start test/e2e/app-dir/actions-unused-args/actions-unused-args.test.ts (job)

  • favicon-short-circuit > should not short circuit the favicon in production (DD)
Expand output

● favicon-short-circuit › should not short circuit the favicon in production

thrown: "Exceeded timeout of 120000 ms for a hook.
Add a timeout value to this test to increase the timeout, if this is a long-running test. See https://jestjs.io/docs/api#testname-fn-timeout."

  324 |   let next: NextInstance | undefined
  325 |   if (!skipped) {
> 326 |     beforeAll(async () => {
      |     ^
  327 |       next = await createNext(options)
  328 |     })
  329 |     afterAll(async () => {

  at beforeAll (lib/e2e-utils/index.ts:326:5)
  at e2e/favicon-short-circuit/favicon-short-circuit.test.ts:4:44
  at Object.describe (e2e/favicon-short-circuit/favicon-short-circuit.test.ts:3:1)

● Test suite failed to run

next instance not destroyed before exiting, make sure to call .destroy() after the tests after finished

  205 |     if (nextInstance) {
  206 |       await nextInstance.destroy()
> 207 |       throw new Error(
      |             ^
  208 |         `next instance not destroyed before exiting, make sure to call .destroy() after the tests after finished`
  209 |       )
  210 |     }

  at Object.<anonymous> (lib/e2e-utils/index.ts:207:13)

pnpm test-start test/e2e/app-dir/app-root-params-getters/multiple-roots.test.ts (job)

  • tsconfig-no-relative-resolve > should fail to build (DD)
Expand output

● tsconfig-no-relative-resolve › should fail to build

can not run export while server is running, use next.stop() first

  233 |   ) {
  234 |     if (this.childProcess) {
> 235 |       throw new Error(
      |             ^
  236 |         `can not run export while server is running, use next.stop() first`
  237 |       )
  238 |     }

  at NextStartInstance.build (lib/next-modes/next-start.ts:235:13)
  at Object.build (production/app-dir/tsconfig-no-relative-resolve/tsconfig-no-relative-resolve.test.ts:11:48)

@nextjs-bot
Copy link
Collaborator

Stats from current PR

🔴 1 regression

Metric Canary PR Change Trend
node_modules Size 474 MB 476 MB 🔴 +1.45 MB (+0%) █████
📊 All Metrics
📖 Metrics Glossary

Dev Server Metrics:

  • Listen = TCP port starts accepting connections
  • First Request = HTTP server returns successful response
  • Cold = Fresh build (no cache)
  • Warm = With cached build artifacts

Build Metrics:

  • Fresh = Clean build (no .next directory)
  • Cached = With existing .next directory

Change Thresholds:

  • Time: Changes < 50ms AND < 10%, OR < 2% are insignificant
  • Size: Changes < 1KB AND < 1% are insignificant
  • All other changes are flagged to catch regressions

⚡ Dev Server

Metric Canary PR Change Trend
Cold (Listen) 558ms 559ms ▁▁▁▁▁
Cold (Ready in log) 517ms 519ms ▂▂▁▁▂
Cold (First Request) 1.110s 1.115s ▃▃▁▃▄
Warm (Listen) 558ms 559ms ▁▁▁▁▁
Warm (Ready in log) 519ms 519ms ▁▁▁▁▁
Warm (First Request) 397ms 402ms ▁▁▂▁▁

⚡ Production Builds

Metric Canary PR Change Trend
Fresh Build 5.068s 5.061s ▁▁▁▁▁
Cached Build 5.013s 5.040s ▁▁▁▁▁
📦 Production Builds (Webpack) (Legacy)

📦 Production Builds (Webpack)

Metric Canary PR Change Trend
node_modules Size 474 MB 476 MB 🔴 +1.45 MB (+0%) █████
📦 Bundle Sizes

Bundle Sizes

⚡ Turbopack

Client

Main Bundles: **399 kB** → **399 kB** ✅ -139 B

80 files with content-based hashes (individual files not comparable between builds)

Server

Middleware
Canary PR Change
middleware-b..fest.js gzip 762 B 763 B
Total 762 B 763 B ⚠️ +1 B
Build Details
Build Manifests
Canary PR Change
_buildManifest.js gzip 452 B 450 B
Total 452 B 450 B ✅ -2 B

🔄 Shared (bundler-independent)

Runtimes
Canary PR Change
app-page-exp...dev.js gzip 318 kB 323 kB 🔴 +4.89 kB (+2%)
app-page-exp..prod.js gzip 169 kB 172 kB 🔴 +3.23 kB (+2%)
app-page-tur...dev.js gzip 318 kB 323 kB 🔴 +4.88 kB (+2%)
app-page-tur..prod.js gzip 168 kB 172 kB 🔴 +3.24 kB (+2%)
app-page-tur...dev.js gzip 314 kB 319 kB 🔴 +4.82 kB (+2%)
app-page-tur..prod.js gzip 166 kB 170 kB 🔴 +3.25 kB (+2%)
app-page.run...dev.js gzip 315 kB 320 kB 🔴 +4.84 kB (+2%)
app-page.run..prod.js gzip 167 kB 170 kB 🔴 +3.25 kB (+2%)
app-route-ex...dev.js gzip 70.7 kB 70.9 kB
app-route-ex..prod.js gzip 49.1 kB 49.4 kB
app-route-tu...dev.js gzip 70.7 kB 71 kB
app-route-tu..prod.js gzip 49.2 kB 49.4 kB
app-route-tu...dev.js gzip 70.3 kB 70.5 kB
app-route-tu..prod.js gzip 48.9 kB 49.2 kB
app-route.ru...dev.js gzip 70.2 kB 70.5 kB
app-route.ru..prod.js gzip 48.9 kB 49.2 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.2 kB 43.5 kB
pages-api-tu..prod.js gzip 32.9 kB 33.1 kB
pages-api.ru...dev.js gzip 43.2 kB 43.4 kB
pages-api.ru..prod.js gzip 32.8 kB 33.1 kB
pages-turbo....dev.js gzip 52.5 kB 52.8 kB
pages-turbo...prod.js gzip 38.5 kB 38.7 kB
pages.runtim...dev.js gzip 52.5 kB 52.8 kB
pages.runtim..prod.js gzip 38.4 kB 38.7 kB
server.runti..prod.js gzip 62 kB 62.3 kB
Total 2.81 MB 2.85 MB ⚠️ +36.9 kB
📝 Changed Files (25 files)

Files with changes:

  • app-page-exp..ntime.dev.js
  • app-page-exp..time.prod.js
  • app-page-tur..ntime.dev.js
  • app-page-tur..time.prod.js
  • app-page-tur..ntime.dev.js
  • app-page-tur..time.prod.js
  • app-page.runtime.dev.js
  • app-page.runtime.prod.js
  • app-route-ex..ntime.dev.js
  • app-route-ex..time.prod.js
  • app-route-tu..ntime.dev.js
  • app-route-tu..time.prod.js
  • app-route-tu..ntime.dev.js
  • app-route-tu..time.prod.js
  • app-route.runtime.dev.js
  • app-route.ru..time.prod.js
  • pages-api-tu..ntime.dev.js
  • pages-api-tu..time.prod.js
  • pages-api.runtime.dev.js
  • pages-api.ru..time.prod.js
  • ... and 5 more
View diffs
app-page-exp..ntime.dev.js
failed to diff
app-page-exp..time.prod.js
failed to diff
app-page-tur..ntime.dev.js
failed to diff
app-page-tur..time.prod.js
failed to diff
app-page-tur..ntime.dev.js
failed to diff
app-page-tur..time.prod.js
failed to diff
app-page.runtime.dev.js
failed to diff
app-page.runtime.prod.js
failed to diff
app-route-ex..ntime.dev.js

Diff too large to display

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

Diff too large to display

app-route-tu..ntime.dev.js

Diff too large to display

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

Diff too large to display

app-route-tu..ntime.dev.js

Diff too large to display

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

Diff too large to display

app-route.runtime.dev.js

Diff too large to display

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

Diff too large to display

pages-api-tu..ntime.dev.js

Diff too large to display

pages-api-tu..time.prod.js

Diff too large to display

pages-api.runtime.dev.js

Diff too large to display

pages-api.ru..time.prod.js

Diff too large to display

pages-turbo...ntime.dev.js

Diff too large to display

pages-turbo...time.prod.js

Diff too large to display

pages.runtime.dev.js

Diff too large to display

pages.runtime.prod.js

Diff too large to display

server.runtime.prod.js

Diff too large to display

📎 Tarball URL
next@https://vercel-packages.vercel.app/next/prs/90500/next

? readableToWeb(opts.inlinedDataStream)
: undefined,
}
const webResult = await webContinueFizzStream(
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In the Node.js streams path, continueFizzStream converts a Node Readable to a web ReadableStream that lacks the .allReady property, causing await renderStream.allReady to resolve immediately (as await undefined) during static generation, potentially producing incomplete HTML with unresolved Suspense fallbacks.

Fix on Vercel

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants