Skip to content

Vercel build will fail if there's a [...catchAll] route that does not await the params #73289

@steve-marmalade

Description

@steve-marmalade

Link to the code that reproduces this issue

https://github.com/marmalade-labs/dynamic-io-catchall

To Reproduce

  1. Comment out these lines in app/catch-all/[...catchAll]/page.tsx
  2. Push to Vercel
  3. See that the build fails at the very last step before "Deploying outputs..."

Current vs. Expected behavior

Expect the build to succeed, similar to when dynamicIO: false, or at least for an error to be raised during next build and not while the build is being deployed

Provide environment information

Operating System:
  Platform: linux
  Arch: x64
  Version: #1 SMP PREEMPT_DYNAMIC Sun, 17 Nov 2024 16:06:17 +0000
  Available memory (MB): 62092
  Available CPU cores: 16
Binaries:
  Node: 20.18.0
  npm: 10.9.0
  Yarn: 1.22.22
  pnpm: 9.12.1
Relevant Packages:
  next: 15.0.4-canary.29 // Latest available version is detected (15.0.4-canary.29).
  eslint-config-next: N/A
  react: 19.0.0-rc-b01722d5-20241114
  react-dom: 19.0.0-rc-b01722d5-20241114
  typescript: 5.3.3
Next.js Config:
  output: N/A

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

dynamicIO, Partial Prerendering (PPR)

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

Vercel (Deployed)

Additional context

It's common, especially with parallel routes, to use a [...catchAll] route that simply returns null. My expectation is that we should not have to await the params in cases where we don't need them.

Full build log

[17:23:07.525] Running build in Washington, D.C., USA (East) – iad1
[17:23:07.643] Cloning github.com/marmalade-labs/dynamic-io-catchall (Branch: main, Commit: f2db2ab)
[17:23:07.892] Cloning completed: 248.804ms
[17:23:11.827] Restored build cache from previous deployment (3KCpymmSms1nQM3QTxVVxBjCykP8)
[17:23:11.908] Running "vercel build"
[17:23:12.326] Vercel CLI 39.1.1
[17:23:12.750] Installing dependencies...
[17:23:13.764] 
[17:23:13.765] up to date in 818ms
[17:23:13.765] 
[17:23:13.765] 8 packages are looking for funding
[17:23:13.765]   run `npm fund` for details
[17:23:13.772] Detected Next.js version: 15.0.4-canary.29
[17:23:13.775] Running "npm run build"
[17:23:13.914] 
[17:23:13.914] > build
[17:23:13.914] > next build
[17:23:13.914] 
[17:23:14.649]    ▲ Next.js 15.0.4-canary.29
[17:23:14.650]    - Experiments (use with caution):
[17:23:14.650]      · ppr
[17:23:14.650]      · dynamicIO
[17:23:14.650] 
[17:23:14.726]    Creating an optimized production build ...
[17:23:19.837]  ✓ Compiled successfully
[17:23:19.841]    Linting and checking validity of types ...
[17:23:21.432]    Collecting page data ...
[17:23:23.793]    Generating static pages (0/7) ...
[17:23:24.630]    Generating static pages (1/7) 
[17:23:24.631]    Generating static pages (3/7) 
[17:23:24.631]    Generating static pages (5/7) 
[17:23:24.631]  ✓ Generating static pages (7/7)
[17:23:24.873]    Finalizing page optimization ...
[17:23:24.873]    Collecting build traces ...
[17:23:30.974] 
[17:23:30.987] Route (app)                              Size     First Load JS
[17:23:30.987] ┌ ○ /                                    147 B           105 kB
[17:23:30.987] ├ ○ /_not-found                          977 B           105 kB
[17:23:30.987] ├ ◐ /catch-all/[...catchAll]             147 B           105 kB
[17:23:30.987] ├   └ /catch-all/[...catchAll]
[17:23:30.987] └ ○ /catch-all/test                      147 B           105 kB
[17:23:30.987] + First Load JS shared by all            104 kB
[17:23:30.988]   ├ chunks/308-337090f15117e973.js       49.4 kB
[17:23:30.988]   ├ chunks/f5e865f6-0ce1d4a1778a51bc.js  53.2 kB
[17:23:30.988]   └ other shared chunks (total)          1.86 kB
[17:23:30.988] 
[17:23:30.988] 
[17:23:30.988] ○  (Static)             prerendered as static content
[17:23:30.988] ◐  (Partial Prerender)  prerendered as static HTML with dynamic server-streamed content
[17:23:30.988] 
[17:23:31.176] Traced Next.js server files in: 113.83ms
[17:23:31.285] Created all serverless functions in: 108.445ms
[17:23:31.299] Collected static files (public/, static/, .next/static): 3.331ms
[17:23:31.317] Error: EISDIR: illegal operation on a directory, read
[17:23:31.478] 

Metadata

Metadata

Assignees

Labels

Cache ComponentsRelated to the `cacheComponents`, `useCache`, or `ppr` experimental flags.bugIssue was opened via the bug report template.locked

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions