vercel/ncc

Regression: dynamic runtime `require` works in 0.38.1 but breaks in 0.38.2

Closed

#1,312 opened on Mar 16, 2026

 (2 comments) (0 reactions) (0 assignees)JavaScript (273 forks)batch import
help wanted

Repository metrics

Stars
 (8,841 stars)
PR merge metrics
 (Avg merge 31d 15h) (7 merged PRs in 30d)

Description

0.38.1

I have the following source code:

https://github.com/CatChen/eslint-suggestion-action/blob/930479a34a06bfa384291cc877f9d1ce21533ae1/src/getESLint.ts#L16-L19

The dynamic require is compiled into the following code:

https://github.com/CatChen/eslint-suggestion-action/blob/930479a34a06bfa384291cc877f9d1ce21533ae1/bundle/index.js#L37587

0.38.2

The same code is compiled into the following code since 0.38.2:

https://github.com/CatChen/eslint-suggestion-action/blob/bc0de7fa625de9daf56cca84b6084f4d6bcbaca4/bundle/index.js#L37702

Workaround

My current workaround is to use dynamic import inside a new Function() (because dynamic import isn't supported either). I have to change to code into this:

https://github.com/CatChen/eslint-suggestion-action/blob/927208b2e684b1a7c721f4a0e70d4f4e8c11c228/src/getESLint.ts#L15-L26

Contributor guide