Skip to content
New issue

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

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

Already on GitHub? Sign in to your account

Skip build_and_deploy on docs-only changes #73659

Merged

Conversation

eps1lon
Copy link
Member

@eps1lon eps1lon commented Dec 8, 2024

Test plan

  • build_and_deploy still runs on branch
if [[ $(node ./scripts/check-is-release.js 2> /dev/null || :) = v* ]];
then
  echo "value=production"
elif [ '${{ github.ref }}' == 'refs/heads/canary' ]
then
  echo "value=staging"
elif [ '${{ github.event_name }}' == 'workflow_dispatch' ]
then
  echo "value=force-preview"
elif [[ $(node scripts/run-for-change.js --not --type docs --exec echo 'false') != 'false' ]];
then
  echo "value=skipped"
else
  echo "value=automated-preview"
fi

on #73658 printed value=skipped

@ijjk ijjk added the created-by: Next.js team PRs by the Next.js team. label Dec 8, 2024
Copy link
Member Author

eps1lon commented Dec 8, 2024

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

Comment on lines +58 to +60
if: ${{ needs.deploy-target.outputs.value != 'skipped' }}
needs:
- deploy-target
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Increases wall-time of publishing the tarballs. <15s should be fine. Deploy tests might fail though since they rely on current timing

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we ensure we don't break deploy-tests as those could be quite noisy when failing

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not really because they rely implicitly on timing. If 10s increased wall time is an issue, we're already close to breakage. The spread of the wall time ranges from 2-6mins so an added 10s should not make a difference.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ah yea 10s should be fine hopefully

@eps1lon eps1lon marked this pull request as ready for review December 8, 2024 17:09
@eps1lon eps1lon requested review from ijjk and ztanner December 8, 2024 17:09
@ijjk
Copy link
Member

ijjk commented Dec 8, 2024

Failing test suites

Commit: 5a68a1b

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

  • ReactRefresh app > cyclic dependencies
Expand output

● ReactRefresh app › cyclic dependencies

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

Expected: false
Received: true

  215 |       await session.evaluate(() => document.querySelector('p').textContent)
  216 |     ).toBe('Hello: 300')
> 217 |     expect(didFullRefresh).toBe(false)
      |                            ^
  218 |   })
  219 | })
  220 |

  at Object.toBe (development/acceptance-app/ReactRefresh.test.ts:217:28)

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

pnpm test test/integration/export-default-map/test/index.test.js

  • Export with default map > production mode > should export with folder that has dot in name
  • Export with default map > production mode > should export an amp only page to clean path
  • Export with default map > production mode > should export hybrid amp page correctly
  • Export with default map > production mode > should export nested hybrid amp page correctly
  • Export with default map > production mode > should export nested hybrid amp page correctly with folder
  • Export with default map > production mode > should export hybrid index amp page correctly
Expand output

● Export with default map › production mode › should export with folder that has dot in name

command failed with code 1 signal null
 ⚠ Linting is disabled.
   Loading config from /root/actions-runner/_work/next.js/next.js/test/integration/export-default-map/next.config.js
   Loading config from /root/actions-runner/_work/next.js/next.js/test/integration/export-default-map/next.config.js
   ▲ Next.js 15.0.4-canary.49

   Checking validity of types ...
   Creating an optimized production build ...
   Loading config from /root/actions-runner/_work/next.js/next.js/test/integration/export-default-map/next.config.js
   Loading config from /root/actions-runner/_work/next.js/next.js/test/integration/export-default-map/next.config.js
   Loading config from /root/actions-runner/_work/next.js/next.js/test/integration/export-default-map/next.config.js
 ✓ Compiled successfully
   Collecting page data ...
   Generating static pages (0/9) ...
   Generating static pages (2/9) 
   Generating static pages (4/9) 
Error occurred prerendering page "/". Read more: https://nextjs.org/docs/messages/prerender-error
AssertionError: Assertion failed: WebAssembly is uninitialized

  at new module$contents$goog$asserts_AssertionError (../evalmachine.<anonymous>:102:1441)
  at module$contents$goog$asserts_doAssertFailure (../evalmachine.<anonymous>:103:354)
  at goog.asserts.assertExists (../evalmachine.<anonymous>:104:374)
  at Object.module$contents$amp$validator_validateString [as validateString] (../evalmachine.<anonymous>:2238:108)
  at Validator.validateString (../packages/next/dist/compiled/amphtml-validator/index.js:1:20650)
  at validateAmp (../packages/next/dist/export/routes/pages.js:100:34)
  at async exportPagesPage (../packages/next/dist/export/routes/pages.js:134:17)
  at async Span.traceAsyncFn (../packages/next/dist/trace/trace.js:153:20)
  at async exportPage (../packages/next/dist/export/worker.js:334:18)
  Export encountered an error on /, exiting the build.
   ⨯ Static worker exited with code: 1 and signal: null
  at ChildProcess.<anonymous> (lib/next-test-utils.ts:310:11)

● Export with default map › production mode › should export an amp only page to clean path

command failed with code 1 signal null
 ⚠ Linting is disabled.
   Loading config from /root/actions-runner/_work/next.js/next.js/test/integration/export-default-map/next.config.js
   Loading config from /root/actions-runner/_work/next.js/next.js/test/integration/export-default-map/next.config.js
   ▲ Next.js 15.0.4-canary.49

   Checking validity of types ...
   Creating an optimized production build ...
   Loading config from /root/actions-runner/_work/next.js/next.js/test/integration/export-default-map/next.config.js
   Loading config from /root/actions-runner/_work/next.js/next.js/test/integration/export-default-map/next.config.js
   Loading config from /root/actions-runner/_work/next.js/next.js/test/integration/export-default-map/next.config.js
 ✓ Compiled successfully
   Collecting page data ...
   Generating static pages (0/9) ...
   Generating static pages (2/9) 
   Generating static pages (4/9) 
Error occurred prerendering page "/". Read more: https://nextjs.org/docs/messages/prerender-error
AssertionError: Assertion failed: WebAssembly is uninitialized

  at new module$contents$goog$asserts_AssertionError (../evalmachine.<anonymous>:102:1441)
  at module$contents$goog$asserts_doAssertFailure (../evalmachine.<anonymous>:103:354)
  at goog.asserts.assertExists (../evalmachine.<anonymous>:104:374)
  at Object.module$contents$amp$validator_validateString [as validateString] (../evalmachine.<anonymous>:2238:108)
  at Validator.validateString (../packages/next/dist/compiled/amphtml-validator/index.js:1:20650)
  at validateAmp (../packages/next/dist/export/routes/pages.js:100:34)
  at async exportPagesPage (../packages/next/dist/export/routes/pages.js:134:17)
  at async Span.traceAsyncFn (../packages/next/dist/trace/trace.js:153:20)
  at async exportPage (../packages/next/dist/export/worker.js:334:18)
  Export encountered an error on /, exiting the build.
   ⨯ Static worker exited with code: 1 and signal: null
  at ChildProcess.<anonymous> (lib/next-test-utils.ts:310:11)

● Export with default map › production mode › should export hybrid amp page correctly

command failed with code 1 signal null
 ⚠ Linting is disabled.
   Loading config from /root/actions-runner/_work/next.js/next.js/test/integration/export-default-map/next.config.js
   Loading config from /root/actions-runner/_work/next.js/next.js/test/integration/export-default-map/next.config.js
   ▲ Next.js 15.0.4-canary.49

   Checking validity of types ...
   Creating an optimized production build ...
   Loading config from /root/actions-runner/_work/next.js/next.js/test/integration/export-default-map/next.config.js
   Loading config from /root/actions-runner/_work/next.js/next.js/test/integration/export-default-map/next.config.js
   Loading config from /root/actions-runner/_work/next.js/next.js/test/integration/export-default-map/next.config.js
 ✓ Compiled successfully
   Collecting page data ...
   Generating static pages (0/9) ...
   Generating static pages (2/9) 
   Generating static pages (4/9) 
Error occurred prerendering page "/". Read more: https://nextjs.org/docs/messages/prerender-error
AssertionError: Assertion failed: WebAssembly is uninitialized

  at new module$contents$goog$asserts_AssertionError (../evalmachine.<anonymous>:102:1441)
  at module$contents$goog$asserts_doAssertFailure (../evalmachine.<anonymous>:103:354)
  at goog.asserts.assertExists (../evalmachine.<anonymous>:104:374)
  at Object.module$contents$amp$validator_validateString [as validateString] (../evalmachine.<anonymous>:2238:108)
  at Validator.validateString (../packages/next/dist/compiled/amphtml-validator/index.js:1:20650)
  at validateAmp (../packages/next/dist/export/routes/pages.js:100:34)
  at async exportPagesPage (../packages/next/dist/export/routes/pages.js:134:17)
  at async Span.traceAsyncFn (../packages/next/dist/trace/trace.js:153:20)
  at async exportPage (../packages/next/dist/export/worker.js:334:18)
  Export encountered an error on /, exiting the build.
   ⨯ Static worker exited with code: 1 and signal: null
  at ChildProcess.<anonymous> (lib/next-test-utils.ts:310:11)

● Export with default map › production mode › should export nested hybrid amp page correctly

command failed with code 1 signal null
 ⚠ Linting is disabled.
   Loading config from /root/actions-runner/_work/next.js/next.js/test/integration/export-default-map/next.config.js
   Loading config from /root/actions-runner/_work/next.js/next.js/test/integration/export-default-map/next.config.js
   ▲ Next.js 15.0.4-canary.49

   Checking validity of types ...
   Creating an optimized production build ...
   Loading config from /root/actions-runner/_work/next.js/next.js/test/integration/export-default-map/next.config.js
   Loading config from /root/actions-runner/_work/next.js/next.js/test/integration/export-default-map/next.config.js
   Loading config from /root/actions-runner/_work/next.js/next.js/test/integration/export-default-map/next.config.js
 ✓ Compiled successfully
   Collecting page data ...
   Generating static pages (0/9) ...
   Generating static pages (2/9) 
   Generating static pages (4/9) 
Error occurred prerendering page "/". Read more: https://nextjs.org/docs/messages/prerender-error
AssertionError: Assertion failed: WebAssembly is uninitialized

  at new module$contents$goog$asserts_AssertionError (../evalmachine.<anonymous>:102:1441)
  at module$contents$goog$asserts_doAssertFailure (../evalmachine.<anonymous>:103:354)
  at goog.asserts.assertExists (../evalmachine.<anonymous>:104:374)
  at Object.module$contents$amp$validator_validateString [as validateString] (../evalmachine.<anonymous>:2238:108)
  at Validator.validateString (../packages/next/dist/compiled/amphtml-validator/index.js:1:20650)
  at validateAmp (../packages/next/dist/export/routes/pages.js:100:34)
  at async exportPagesPage (../packages/next/dist/export/routes/pages.js:134:17)
  at async Span.traceAsyncFn (../packages/next/dist/trace/trace.js:153:20)
  at async exportPage (../packages/next/dist/export/worker.js:334:18)
  Export encountered an error on /, exiting the build.
   ⨯ Static worker exited with code: 1 and signal: null
  at ChildProcess.<anonymous> (lib/next-test-utils.ts:310:11)

● Export with default map › production mode › should export nested hybrid amp page correctly with folder

command failed with code 1 signal null
 ⚠ Linting is disabled.
   Loading config from /root/actions-runner/_work/next.js/next.js/test/integration/export-default-map/next.config.js
   Loading config from /root/actions-runner/_work/next.js/next.js/test/integration/export-default-map/next.config.js
   ▲ Next.js 15.0.4-canary.49

   Checking validity of types ...
   Creating an optimized production build ...
   Loading config from /root/actions-runner/_work/next.js/next.js/test/integration/export-default-map/next.config.js
   Loading config from /root/actions-runner/_work/next.js/next.js/test/integration/export-default-map/next.config.js
   Loading config from /root/actions-runner/_work/next.js/next.js/test/integration/export-default-map/next.config.js
 ✓ Compiled successfully
   Collecting page data ...
   Generating static pages (0/9) ...
   Generating static pages (2/9) 
   Generating static pages (4/9) 
Error occurred prerendering page "/". Read more: https://nextjs.org/docs/messages/prerender-error
AssertionError: Assertion failed: WebAssembly is uninitialized

  at new module$contents$goog$asserts_AssertionError (../evalmachine.<anonymous>:102:1441)
  at module$contents$goog$asserts_doAssertFailure (../evalmachine.<anonymous>:103:354)
  at goog.asserts.assertExists (../evalmachine.<anonymous>:104:374)
  at Object.module$contents$amp$validator_validateString [as validateString] (../evalmachine.<anonymous>:2238:108)
  at Validator.validateString (../packages/next/dist/compiled/amphtml-validator/index.js:1:20650)
  at validateAmp (../packages/next/dist/export/routes/pages.js:100:34)
  at async exportPagesPage (../packages/next/dist/export/routes/pages.js:134:17)
  at async Span.traceAsyncFn (../packages/next/dist/trace/trace.js:153:20)
  at async exportPage (../packages/next/dist/export/worker.js:334:18)
  Export encountered an error on /, exiting the build.
   ⨯ Static worker exited with code: 1 and signal: null
  at ChildProcess.<anonymous> (lib/next-test-utils.ts:310:11)

● Export with default map › production mode › should export hybrid index amp page correctly

command failed with code 1 signal null
 ⚠ Linting is disabled.
   Loading config from /root/actions-runner/_work/next.js/next.js/test/integration/export-default-map/next.config.js
   Loading config from /root/actions-runner/_work/next.js/next.js/test/integration/export-default-map/next.config.js
   ▲ Next.js 15.0.4-canary.49

   Checking validity of types ...
   Creating an optimized production build ...
   Loading config from /root/actions-runner/_work/next.js/next.js/test/integration/export-default-map/next.config.js
   Loading config from /root/actions-runner/_work/next.js/next.js/test/integration/export-default-map/next.config.js
   Loading config from /root/actions-runner/_work/next.js/next.js/test/integration/export-default-map/next.config.js
 ✓ Compiled successfully
   Collecting page data ...
   Generating static pages (0/9) ...
   Generating static pages (2/9) 
   Generating static pages (4/9) 
Error occurred prerendering page "/". Read more: https://nextjs.org/docs/messages/prerender-error
AssertionError: Assertion failed: WebAssembly is uninitialized

  at new module$contents$goog$asserts_AssertionError (../evalmachine.<anonymous>:102:1441)
  at module$contents$goog$asserts_doAssertFailure (../evalmachine.<anonymous>:103:354)
  at goog.asserts.assertExists (../evalmachine.<anonymous>:104:374)
  at Object.module$contents$amp$validator_validateString [as validateString] (../evalmachine.<anonymous>:2238:108)
  at Validator.validateString (../packages/next/dist/compiled/amphtml-validator/index.js:1:20650)
  at validateAmp (../packages/next/dist/export/routes/pages.js:100:34)
  at async exportPagesPage (../packages/next/dist/export/routes/pages.js:134:17)
  at async Span.traceAsyncFn (../packages/next/dist/trace/trace.js:153:20)
  at async exportPage (../packages/next/dist/export/worker.js:334:18)
  Export encountered an error on /, exiting the build.
   ⨯ Static worker exited with code: 1 and signal: null
  at ChildProcess.<anonymous> (lib/next-test-utils.ts:310:11)

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

pnpm test-start test/production/pages-dir/production/test/index.test.ts

  • Production Usage > should navigate through history after query update
  • Production Usage > should not show target deprecation warning
  • Production Usage > should respond with 405 for POST to static page
  • Production Usage > should contain generated page count in output
  • Production Usage > should output traces
  • Production Usage > should not contain currentScript usage for publicPath
  • Production Usage > should not contain amp, rsc APIs in main chunk
  • Production Usage > should navigate to external site and back
  • Production Usage > should navigate to page with CSS and back
  • Production Usage > should navigate to external site and back (with query)
  • Production Usage > should change query correctly
  • Production Usage > should not expose the compiled page file in development
  • Production Usage > should not put backslashes in pages-manifest.json
  • Production Usage > should handle failed param decoding
  • Production Usage > should replace static pages with HTML files
  • Production Usage > should not replace non-static pages with HTML files
  • Production Usage > should handle AMP correctly in IE
  • Production Usage > should warn when prefetch is true
  • Production Usage > should not emit stats
  • Production Usage > should contain the Next.js version in window export
  • Production Usage > should clear all core performance marks
  • Production Usage > should not clear custom performance marks
  • Production Usage > should have defer on all script tags
  • Production Usage > should only have one DOCTYPE
  • Production Usage > should preserve query when hard navigating from page 404
  • Production Usage > should remove placeholder for next/image correctly
  • Production Usage > API routes > should work with pages/api/index.js
  • Production Usage > API routes > should work with pages/api/hello.js
  • Production Usage > API routes > does not work with pages/api/readfile-dirname.js
  • Production Usage > API routes > should work with pages/api/readfile-processcwd.js
  • Production Usage > API routes > should work with dynamic params and search string
  • Production Usage > Dynamic import > custom loading > should render custom loading on the server side when ssr:false and loading is provided
  • Production Usage > Dynamic import > custom loading > should render the component on client side
  • Production Usage > Dynamic import > default behavior > should render dynamic import components
  • Production Usage > Dynamic import > default behavior > should render one dynamically imported component and load its css files
  • Production Usage > Dynamic import > default behavior > should render three dynamically imported components and load their css files
  • Production Usage > Dynamic import > default behavior > should bundle two css modules for one dynamically imported component into one css file
  • Production Usage > Dynamic import > default behavior > should bundle two css modules for nested components into one css file
  • Production Usage > Dynamic import > default behavior > should not remove css styles for same css file between page transitions
  • Production Usage > Dynamic import > default behavior > should output two css files even in case of three css module files while one is shared across files
  • Production Usage > Dynamic import > default behavior > should render one dynamically imported component without any css files
  • Production Usage > Dynamic import > default behavior > should render even there are no physical chunk exists
  • Production Usage > Dynamic import > ssr:false option > should not render loading on the server side
  • Production Usage > Dynamic import > ssr:false option > should render the component on client side
  • Production Usage > Dynamic import > ssr:true option > should render the component on the server side
  • Production Usage > Dynamic import > ssr:true option > should render the component on client side
  • Production Usage > Misc > should handle already finished responses
  • Production Usage > Misc > should allow to access /static/ and /_next/
  • Production Usage > Misc > Should allow access to public files
  • Production Usage > Misc > should reload the page on page script error
  • Production Usage > Misc > should have default runtime values when not defined
  • Production Usage > Misc > should not have runtimeConfig in NEXT_DATA
  • Production Usage > Misc > should add autoExport for auto pre-rendered pages
  • Production Usage > Misc > should not add autoExport for non pre-rendered pages
  • Production Usage > Misc > should add prefetch tags when Link prefetch prop is used
  • Production Usage > Misc > It does not add a timestamp to link tags with prefetch attribute
  • Production Usage > Runtime errors > should render a server side error on the client side
  • Production Usage > Runtime errors > should render a client side component error
  • Production Usage > Runtime errors > should call getInitialProps on _error page during a client side component error
  • Production Usage > With basic usage > should render the page
  • Production Usage > With basic usage > should polyfill Node.js modules
  • Production Usage > With basic usage > should allow etag header support
  • Production Usage > With basic usage > should allow etag header support with getStaticProps
  • Production Usage > With basic usage > should have X-Powered-By header support
  • Production Usage > With basic usage > should render 404 for routes that do not exist
  • Production Usage > With basic usage > should render 404 for /_next/static route
  • Production Usage > With basic usage > should render 200 for POST on page
  • Production Usage > With basic usage > should render 404 for POST on missing page
  • Production Usage > With basic usage > should render 404 for _next routes that do not exist
  • Production Usage > With basic usage > should render 404 even if the HTTP method is not GET or HEAD
  • Production Usage > With basic usage > should render 404 for dotfiles in /static
  • Production Usage > With basic usage > should return 405 method on static then GET and HEAD
  • Production Usage > With basic usage > should return 412 on static file when If-Unmodified-Since is provided and file is modified
  • Production Usage > With basic usage > should return 200 on static file if If-Unmodified-Since is invalid date
  • Production Usage > With basic usage > should set Content-Length header
  • Production Usage > With basic usage > should set Cache-Control header
  • Production Usage > With basic usage > should set correct Cache-Control header for static 404s
  • Production Usage > With basic usage > should block special pages
  • Production Usage > With basic usage > should not contain customServer in NEXT_DATA
  • Production Usage > With navigation > should navigate via client side
  • Production Usage > With navigation > should navigate to nested index via client side
  • Production Usage > With navigation > should reload page successfully (on bad link)
  • Production Usage > With navigation > should reload page successfully (on bad data fetch)
  • Production Usage > process.browser > should eliminate server only code on the client
  • Production Usage > process.browser > should eliminate client only code on the server
  • Production Usage > process.env > should set process.env.NODE_ENV in production
Expand output

● Production Usage › should navigate through history after query update

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › should not show target deprecation warning

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › should respond with 405 for POST to static page

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › should contain generated page count in output

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › should output traces

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › should not contain currentScript usage for publicPath

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › should not contain amp, rsc APIs in main chunk

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › With basic usage › should render the page

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › With basic usage › should polyfill Node.js modules

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › With basic usage › should allow etag header support

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › With basic usage › should allow etag header support with getStaticProps

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › With basic usage › should allow etag header support with getServerSideProps

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › With basic usage › should have X-Powered-By header support

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › With basic usage › should render 404 for routes that do not exist

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › With basic usage › should render 404 for /_next/static route

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › With basic usage › should render 200 for POST on page

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › With basic usage › should render 404 for POST on missing page

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › With basic usage › should render 404 for _next routes that do not exist

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › With basic usage › should render 404 even if the HTTP method is not GET or HEAD

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › With basic usage › should render 404 for dotfiles in /static

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › With basic usage › should return 405 method on static then GET and HEAD

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › With basic usage › should return 412 on static file when If-Unmodified-Since is provided and file is modified

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › With basic usage › should return 200 on static file if If-Unmodified-Since is invalid date

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › With basic usage › should set Content-Length header

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › With basic usage › should set Cache-Control header

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › With basic usage › should set correct Cache-Control header for static 404s

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › With basic usage › should block special pages

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › With basic usage › should not contain customServer in NEXT_DATA

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › API routes › should work with pages/api/index.js

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › API routes › should work with pages/api/hello.js

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › API routes › does not work with pages/api/readfile-dirname.js

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › API routes › should work with pages/api/readfile-processcwd.js

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › API routes › should work with dynamic params and search string

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › With navigation › should navigate via client side

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › With navigation › should navigate to nested index via client side

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › With navigation › should reload page successfully (on bad link)

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › With navigation › should reload page successfully (on bad data fetch)

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › should navigate to external site and back

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › should navigate to page with CSS and back

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › should navigate to external site and back (with query)

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › should change query correctly

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › Runtime errors › should render a server side error on the client side

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › Runtime errors › should render a client side component error

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › Runtime errors › should call getInitialProps on _error page during a client side component error

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › Misc › should handle already finished responses

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › Misc › should allow to access /static/ and /_next/

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › Misc › Should allow access to public files

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › Misc › should reload the page on page script error

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › Misc › should have default runtime values when not defined

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › Misc › should not have runtimeConfig in NEXT_DATA

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › Misc › should add autoExport for auto pre-rendered pages

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › Misc › should not add autoExport for non pre-rendered pages

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › Misc › should add prefetch tags when Link prefetch prop is used

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › Misc › It does not add a timestamp to link tags with prefetch attribute

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › should not expose the compiled page file in development

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › should not put backslashes in pages-manifest.json

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › should handle failed param decoding

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › should replace static pages with HTML files

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › should not replace non-static pages with HTML files

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › should handle AMP correctly in IE

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › should warn when prefetch is true

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › should not emit stats

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › should contain the Next.js version in window export

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › should clear all core performance marks

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › should not clear custom performance marks

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › should have defer on all script tags

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › should only have one DOCTYPE

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › should preserve query when hard navigating from page 404

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › should remove placeholder for next/image correctly

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › Dynamic import › default behavior › should render dynamic import components

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › Dynamic import › default behavior › should render one dynamically imported component and load its css files

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › Dynamic import › default behavior › should render three dynamically imported components and load their css files

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › Dynamic import › default behavior › should bundle two css modules for one dynamically imported component into one css file

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › Dynamic import › default behavior › should bundle two css modules for nested components into one css file

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › Dynamic import › default behavior › should not remove css styles for same css file between page transitions

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › Dynamic import › default behavior › should output two css files even in case of three css module files while one is shared across files

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › Dynamic import › default behavior › should render one dynamically imported component without any css files

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › Dynamic import › default behavior › should render even there are no physical chunk exists

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › Dynamic import › ssr:false option › should not render loading on the server side

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › Dynamic import › ssr:false option › should render the component on client side

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › Dynamic import › ssr:true option › should render the component on the server side

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › Dynamic import › ssr:true option › should render the component on client side

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › Dynamic import › custom loading › should render custom loading on the server side when ssr:false and loading is provided

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › Dynamic import › custom loading › should render the component on client side

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › process.env › should set process.env.NODE_ENV in production

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › process.browser › should eliminate server only code on the client

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

● Production Usage › process.browser › should eliminate client only code on the server

next build failed with code/signal 1

   98 |           if (code || signal)
   99 |             reject(
> 100 |               new Error(`next build failed with code/signal ${code || signal}`)
      |               ^
  101 |             )
  102 |           else resolve()
  103 |         })

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

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

pnpm test-dev test/development/app-hmr/hmr.test.ts

  • app-dir-hmr > filesystem changes > should update server components after navigating to a page with a different runtime
Expand output

● app-dir-hmr › filesystem changes › should update server components after navigating to a page with a different runtime

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

Expected: "ipad"
Received: "mac"

  69 |
  70 |         await retry(async () => {
> 71 |           expect(await browser.elementByCss('p').text()).toBe('ipad')
     |                                                          ^
  72 |         })
  73 |
  74 |         const logs = await browser.log()

  at toBe (development/app-hmr/hmr.test.ts:71:58)
  at retry (lib/next-test-utils.ts:806:14)
  at development/app-hmr/hmr.test.ts:70:9
  at NextDevInstance.patchFile (lib/next-modes/base.ts:531:9)
  at NextDevInstance.patchFile (lib/next-modes/next-dev.ts:195:16)
  at Object.<anonymous> (development/app-hmr/hmr.test.ts:67:7)

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

pnpm test test/integration/prerender-fallback-encoding/test/index.test.js (turbopack)

  • Fallback path encoding > development mode > should render correctly in the browser for prerender paths
Expand output

● Fallback path encoding › development mode › should render correctly in the browser for prerender paths

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."

  207 |   })
  208 |
> 209 |   it('should render correctly in the browser for prerender paths', async () => {
      |   ^
  210 |     for (let i = 0; i < urlPaths.length; i++) {
  211 |       const testSlug = urlPaths[i]
  212 |

  at it (integration/prerender-fallback-encoding/test/index.test.js:209:3)
  at runTests (integration/prerender-fallback-encoding/test/index.test.js:339:7)
  at integration/prerender-fallback-encoding/test/index.test.js:328:58
  at Object.describe (integration/prerender-fallback-encoding/test/index.test.js:327:1)

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

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

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

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

Expected Redbox but found none

  1060 |
  1061 |       await next.patchFile('index.js', "throw new Error('module error')")
> 1062 |       await session.assertHasRedbox()
       |       ^
  1063 |       await next.patchFile(
  1064 |         'index.js',
  1065 |         'export default function Page() {return <p>hello world</p>}'

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

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

@ijjk
Copy link
Member

ijjk commented Dec 8, 2024

Stats from current PR

Default Build (Increase detected ⚠️)
General
vercel/next.js canary vercel/next.js sebbie/12-08-skip_build_and_deploy_on_docs-only_changes Change
buildDuration 19.2s 17.5s N/A
buildDurationCached 16.7s 14.4s N/A
nodeModulesSize 409 MB 409 MB N/A
nextStartRea..uration (ms) 471ms 478ms N/A
Client Bundles (main, webpack)
vercel/next.js canary vercel/next.js sebbie/12-08-skip_build_and_deploy_on_docs-only_changes Change
1187-HASH.js gzip 50.2 kB 50.2 kB N/A
8276.HASH.js gzip 169 B 168 B N/A
8377-HASH.js gzip 5.3 kB 5.3 kB N/A
bccd1874-HASH.js gzip 53 kB 53 kB N/A
framework-HASH.js gzip 57.5 kB 57.5 kB N/A
main-app-HASH.js gzip 232 B 235 B N/A
main-HASH.js gzip 33.8 kB 33.7 kB N/A
webpack-HASH.js gzip 1.71 kB 1.71 kB N/A
Overall change 0 B 0 B
Legacy Client Bundles (polyfills)
vercel/next.js canary vercel/next.js sebbie/12-08-skip_build_and_deploy_on_docs-only_changes Change
polyfills-HASH.js gzip 39.4 kB 39.4 kB
Overall change 39.4 kB 39.4 kB
Client Pages
vercel/next.js canary vercel/next.js sebbie/12-08-skip_build_and_deploy_on_docs-only_changes Change
_app-HASH.js gzip 193 B 193 B
_error-HASH.js gzip 193 B 193 B
amp-HASH.js gzip 512 B 510 B N/A
css-HASH.js gzip 343 B 342 B N/A
dynamic-HASH.js gzip 1.84 kB 1.84 kB
edge-ssr-HASH.js gzip 265 B 265 B
head-HASH.js gzip 363 B 362 B N/A
hooks-HASH.js gzip 393 B 392 B N/A
image-HASH.js gzip 4.44 kB 4.43 kB N/A
index-HASH.js gzip 268 B 268 B
link-HASH.js gzip 2.35 kB 2.34 kB N/A
routerDirect..HASH.js gzip 328 B 328 B
script-HASH.js gzip 397 B 397 B
withRouter-HASH.js gzip 323 B 326 B N/A
1afbb74e6ecf..834.css gzip 106 B 106 B
Overall change 3.59 kB 3.59 kB
Client Build Manifests
vercel/next.js canary vercel/next.js sebbie/12-08-skip_build_and_deploy_on_docs-only_changes Change
_buildManifest.js gzip 747 B 745 B N/A
Overall change 0 B 0 B
Rendered Page Sizes
vercel/next.js canary vercel/next.js sebbie/12-08-skip_build_and_deploy_on_docs-only_changes Change
index.html gzip 524 B 524 B
link.html gzip 538 B 539 B N/A
withRouter.html gzip 519 B 520 B N/A
Overall change 524 B 524 B
Edge SSR bundle Size
vercel/next.js canary vercel/next.js sebbie/12-08-skip_build_and_deploy_on_docs-only_changes Change
edge-ssr.js gzip 128 kB 128 kB N/A
page.js gzip 203 kB 203 kB N/A
Overall change 0 B 0 B
Middleware size
vercel/next.js canary vercel/next.js sebbie/12-08-skip_build_and_deploy_on_docs-only_changes Change
middleware-b..fest.js gzip 669 B 668 B N/A
middleware-r..fest.js gzip 155 B 156 B N/A
middleware.js gzip 31 kB 31 kB N/A
edge-runtime..pack.js gzip 844 B 844 B
Overall change 844 B 844 B
Next Runtimes
vercel/next.js canary vercel/next.js sebbie/12-08-skip_build_and_deploy_on_docs-only_changes Change
523-experime...dev.js gzip 322 B 322 B
523.runtime.dev.js gzip 314 B 314 B
app-page-exp...dev.js gzip 322 kB 322 kB
app-page-exp..prod.js gzip 127 kB 127 kB
app-page-tur..prod.js gzip 140 kB 140 kB
app-page-tur..prod.js gzip 135 kB 135 kB
app-page.run...dev.js gzip 312 kB 312 kB
app-page.run..prod.js gzip 122 kB 122 kB
app-route-ex...dev.js gzip 37.1 kB 37.1 kB
app-route-ex..prod.js gzip 25.1 kB 25.1 kB
app-route-tu..prod.js gzip 25.1 kB 25.1 kB
app-route-tu..prod.js gzip 24.9 kB 24.9 kB
app-route.ru...dev.js gzip 38.7 kB 38.7 kB
app-route.ru..prod.js gzip 24.9 kB 24.9 kB
pages-api-tu..prod.js gzip 9.56 kB 9.56 kB
pages-api.ru...dev.js gzip 11.4 kB 11.4 kB
pages-api.ru..prod.js gzip 9.56 kB 9.56 kB
pages-turbo...prod.js gzip 21.3 kB 21.3 kB
pages.runtim...dev.js gzip 27 kB 27 kB
pages.runtim..prod.js gzip 21.3 kB 21.3 kB
server.runti..prod.js gzip 916 kB 916 kB
Overall change 2.35 MB 2.35 MB
build cache Overall increase ⚠️
vercel/next.js canary vercel/next.js sebbie/12-08-skip_build_and_deploy_on_docs-only_changes Change
0.pack gzip 2.04 MB 2.04 MB N/A
index.pack gzip 145 kB 146 kB ⚠️ +1.02 kB
Overall change 145 kB 146 kB ⚠️ +1.02 kB
Diff details
Diff for main-HASH.js

Diff too large to display

Commit: 5a68a1b

@eps1lon eps1lon force-pushed the sebbie/12-08-skip_build_and_deploy_on_docs-only_changes branch from 2830d7b to b63df41 Compare December 9, 2024 19:15
@eps1lon eps1lon enabled auto-merge (squash) December 9, 2024 19:46
@eps1lon eps1lon force-pushed the sebbie/12-08-skip_build_and_deploy_on_docs-only_changes branch from b63df41 to 5a68a1b Compare December 9, 2024 23:44
@eps1lon eps1lon merged commit 09aa303 into canary Dec 10, 2024
112 checks passed
@eps1lon eps1lon deleted the sebbie/12-08-skip_build_and_deploy_on_docs-only_changes branch December 10, 2024 11:28
@github-actions github-actions bot locked as resolved and limited conversation to collaborators Dec 24, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
created-by: Next.js team PRs by the Next.js team. locked
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants