vercel / next.js

The React Framework
https://nextjs.org
MIT License
123.04k stars 26.29k forks source link

trying experimental options in next.config.ts with App Router throwing error #64866

Open dhavalveera opened 2 months ago

dhavalveera commented 2 months ago

Link to the code that reproduces this issue

https://codesandbox.io/p/devbox/pensive-star-go8s7s?layout=%257B%2522sidebarPanel%2522%253A%2522EXPLORER%2522%252C%2522rootPanelGroup%2522%253A%257B%2522direction%2522%253A%2522horizontal%2522%252C%2522contentType%2522%253A%2522UNKNOWN%2522%252C%2522type%2522%253A%2522PANEL_GROUP%2522%252C%2522id%2522%253A%2522ROOT_LAYOUT%2522%252C%2522panels%2522%253A%255B%257B%2522type%2522%253A%2522PANEL_GROUP%2522%252C%2522contentType%2522%253A%2522UNKNOWN%2522%252C%2522direction%2522%253A%2522vertical%2522%252C%2522id%2522%253A%2522clvavx82w00072a696tprzx9b%2522%252C%2522sizes%2522%253A%255B70%252C30%255D%252C%2522panels%2522%253A%255B%257B%2522type%2522%253A%2522PANEL_GROUP%2522%252C%2522contentType%2522%253A%2522EDITOR%2522%252C%2522direction%2522%253A%2522horizontal%2522%252C%2522id%2522%253A%2522EDITOR%2522%252C%2522panels%2522%253A%255B%257B%2522type%2522%253A%2522PANEL%2522%252C%2522contentType%2522%253A%2522EDITOR%2522%252C%2522id%2522%253A%2522clvavx82w00022a69gz0swdd8%2522%257D%255D%257D%252C%257B%2522type%2522%253A%2522PANEL_GROUP%2522%252C%2522contentType%2522%253A%2522SHELLS%2522%252C%2522direction%2522%253A%2522horizontal%2522%252C%2522id%2522%253A%2522SHELLS%2522%252C%2522panels%2522%253A%255B%257B%2522type%2522%253A%2522PANEL%2522%252C%2522contentType%2522%253A%2522SHELLS%2522%252C%2522id%2522%253A%2522clvavx82w00042a69uvio4fs9%2522%257D%255D%252C%2522sizes%2522%253A%255B100%255D%257D%255D%257D%252C%257B%2522type%2522%253A%2522PANEL_GROUP%2522%252C%2522contentType%2522%253A%2522DEVTOOLS%2522%252C%2522direction%2522%253A%2522vertical%2522%252C%2522id%2522%253A%2522DEVTOOLS%2522%252C%2522panels%2522%253A%255B%257B%2522type%2522%253A%2522PANEL%2522%252C%2522contentType%2522%253A%2522DEVTOOLS%2522%252C%2522id%2522%253A%2522clvavx82w00062a69n2vlakwb%2522%257D%255D%252C%2522sizes%2522%253A%255B100%255D%257D%255D%252C%2522sizes%2522%253A%255B50%252C50%255D%257D%252C%2522tabbedPanels%2522%253A%257B%2522clvavx82w00022a69gz0swdd8%2522%253A%257B%2522id%2522%253A%2522clvavx82w00022a69gz0swdd8%2522%252C%2522activeTabId%2522%253A%2522clvavy5g3008t2a69muhnajuu%2522%252C%2522tabs%2522%253A%255B%257B%2522id%2522%253A%2522clvavx82w00012a69f9fh5zzy%2522%252C%2522mode%2522%253A%2522permanent%2522%252C%2522type%2522%253A%2522FILE%2522%252C%2522filepath%2522%253A%2522%252FREADME.md%2522%257D%252C%257B%2522type%2522%253A%2522FILE%2522%252C%2522filepath%2522%253A%2522%252F.codesandbox%252Ftasks.json%2522%252C%2522id%2522%253A%2522clvavy5g3008t2a69muhnajuu%2522%252C%2522mode%2522%253A%2522permanent%2522%257D%255D%257D%252C%2522clvavx82w00062a69n2vlakwb%2522%253A%257B%2522tabs%2522%253A%255B%257B%2522id%2522%253A%2522clvavx82w00052a6956vxlsj9%2522%252C%2522mode%2522%253A%2522permanent%2522%252C%2522type%2522%253A%2522TASK_PORT%2522%252C%2522taskId%2522%253A%2522dev%2522%252C%2522port%2522%253A3000%252C%2522path%2522%253A%2522%252F%2522%257D%255D%252C%2522id%2522%253A%2522clvavx82w00062a69n2vlakwb%2522%252C%2522activeTabId%2522%253A%2522clvavx82w00052a6956vxlsj9%2522%257D%252C%2522clvavx82w00042a69uvio4fs9%2522%253A%257B%2522tabs%2522%253A%255B%257B%2522id%2522%253A%2522clvavx82w00032a69l2m2phvj%2522%252C%2522mode%2522%253A%2522permanent%2522%252C%2522type%2522%253A%2522TASK_LOG%2522%252C%2522taskId%2522%253A%2522dev%2522%257D%255D%252C%2522id%2522%253A%2522clvavx82w00042a69uvio4fs9%2522%252C%2522activeTabId%2522%253A%2522clvavx82w00032a69l2m2phvj%2522%257D%257D%252C%2522showDevtools%2522%253Atrue%252C%2522showShells%2522%253Atrue%252C%2522showSidebar%2522%253Atrue%252C%2522sidebarPanelSize%2522%253A15%257D

To Reproduce

experimental: {
    optimizeCss: true,
    bundlePagesExternals: true,
    cssChunking: 'strict',
    gzipSize:true,
    optimisticClientCache: true,
    serverMinification:true,
    serverSourceMaps: true,
  },

and then running npm run build getting error

Current vs. Expected behavior

Done in 1329ms.
  ▲ Next.js 14.2.2
  - Experiments (use with caution):
    · optimizeCss

   Creating an optimized production build ...
 ✓ Compiled successfully
 ✓ Linting and checking validity of types
 ✓ Collecting page data
   Generating static pages (0/5)  [=== ]
Error occurred prerendering page "/500". Read more: https://nextjs.org/docs/messages/prerender-error

Error: Cannot find module 'critters'
Require stack:
- C:\Users\dhaval\Desktop\Coursera Learning\mediateck\node_modules\next\dist\compiled\next-server\pages.runtime.prod.js
- C:\Users\dhaval\Desktop\Coursera Learning\mediateck\.next\server\pages\_document.js
- C:\Users\dhaval\Desktop\Coursera Learning\mediateck\node_modules\next\dist\server\require.js
- C:\Users\dhaval\Desktop\Coursera Learning\mediateck\node_modules\next\dist\server\load-components.js
- C:\Users\dhaval\Desktop\Coursera Learning\mediateck\node_modules\next\dist\build\utils.js
- C:\Users\dhaval\Desktop\Coursera Learning\mediateck\node_modules\next\dist\build\worker.js
- C:\Users\dhaval\Desktop\Coursera Learning\mediateck\node_modules\next\dist\compiled\jest-worker\processChild.js
    at Module._resolveFilename (node:internal/modules/cjs/loader:1144:15)
    at C:\Users\dhaval\Desktop\Coursera Learning\mediateck\node_modules\next\dist\server\require-hook.js:55:36
    at Module._load (node:internal/modules/cjs/loader:985:27)
    at Module.require (node:internal/modules/cjs/loader:1235:19)
    at mod.require (C:\Users\dhaval\Desktop\Coursera Learning\mediateck\node_modules\next\dist\server\require-hook.js:65:28)
    at require (node:internal/modules/helpers:176:18)
    at Object.critters (C:\Users\dhaval\Desktop\Coursera Learning\mediateck\node_modules\next\dist\compiled\next-server\pages.runtime.prod.js:14:17944)
    at r (C:\Users\dhaval\Desktop\Coursera Learning\mediateck\node_modules\next\dist\compiled\next-server\pages.runtime.prod.js:14:18468)
    at C:\Users\dhaval\Desktop\Coursera Learning\mediateck\node_modules\next\dist\compiled\next-server\pages.runtime.prod.js:14:13128
    at u (C:\Users\dhaval\Desktop\Coursera Learning\mediateck\node_modules\next\dist\compiled\next-server\pages.runtime.prod.js:14:13375)

Error occurred prerendering page "/404". Read more: https://nextjs.org/docs/messages/prerender-error

Error: Cannot find module 'critters'
Require stack:
- C:\Users\dhaval\Desktop\Coursera Learning\mediateck\node_modules\next\dist\compiled\next-server\pages.runtime.prod.js
- C:\Users\dhaval\Desktop\Coursera Learning\mediateck\.next\server\pages\_document.js
- C:\Users\dhaval\Desktop\Coursera Learning\mediateck\node_modules\next\dist\server\require.js
- C:\Users\dhaval\Desktop\Coursera Learning\mediateck\node_modules\next\dist\server\load-components.js
- C:\Users\dhaval\Desktop\Coursera Learning\mediateck\node_modules\next\dist\build\utils.js
- C:\Users\dhaval\Desktop\Coursera Learning\mediateck\node_modules\next\dist\build\worker.js
- C:\Users\dhaval\Desktop\Coursera Learning\mediateck\node_modules\next\dist\compiled\jest-worker\processChild.js
    at Module._resolveFilename (node:internal/modules/cjs/loader:1144:15)
    at C:\Users\dhaval\Desktop\Coursera Learning\mediateck\node_modules\next\dist\server\require-hook.js:55:36
    at Module._load (node:internal/modules/cjs/loader:985:27)
    at Module.require (node:internal/modules/cjs/loader:1235:19)
    at mod.require (C:\Users\dhaval\Desktop\Coursera Learning\mediateck\node_modules\next\dist\server\require-hook.js:65:28)
    at require (node:internal/modules/helpers:176:18)
    at Object.critters (C:\Users\dhaval\Desktop\Coursera Learning\mediateck\node_modules\next\dist\compiled\next-server\pages.runtime.prod.js:14:17944)
    at r (C:\Users\dhaval\Desktop\Coursera Learning\mediateck\node_modules\next\dist\compiled\next-server\pages.runtime.prod.js:14:18468)
    at C:\Users\dhaval\Desktop\Coursera Learning\mediateck\node_modules\next\dist\compiled\next-server\pages.runtime.prod.js:14:13128
    at u (C:\Users\dhaval\Desktop\Coursera Learning\mediateck\node_modules\next\dist\compiled\next-server\pages.runtime.prod.js:14:13375)
 ✓ Generating static pages (5/5)

> Export encountered errors on following paths:
        /_error: /404
        /_error: /500

I am getting above error when running npm run build

Provide environment information

Operating System:
  Platform: win32
  Arch: x64
  Version: Windows 11 Home Single Language
  Available memory (MB): 16134
  Available CPU cores: 8
Binaries:
  Node: 20.10.0
  npm: N/A
  Yarn: N/A
  pnpm: N/A
Relevant Packages:
  next: 14.2.2 // Latest available version is detected (14.2.2).
  eslint-config-next: 14.2.2
  react: 18.2.0
  react-dom: 18.2.0
  typescript: 5.4.5
Next.js Config:
  output: N/A

Which area(s) are affected? (Select all that apply)

Not sure

Which stage(s) are affected? (Select all that apply)

next build (local)

Additional context

No response

jelling commented 2 months ago

Just ran into this as well after wiping my node modules. #34763 says we need to manually install critters.