Describe the bug
webpack-cli v4-beta.8 ignoring loader's error.
Reproduction code: https://github.com/mstssk/webpack-cli-v4-beta8-ignore-loader-error
I wrote reproduction code of ts-loader, but this problem occurs with other loaders. e.g. file-loader.
What is the current behavior?
webpack-cli v3.3.11 fails and returns exit code 2 when an error occurs in loaders.
But webpack-cli v4.0.0-beta.8 does not fail and return exit code 0.
To Reproduce
Steps to reproduce the behavior:
Expected behavior
webpack fails and returns non-zero exit code when an error occurs in loaders.
Screenshots
Please paste the results of webpack-cli info here, and mention other relevant information
webpack-cli info fails in my env.
webpack-cli info Log
$ npx webpack-cli info
[webpack-cli] Promise rejection: TypeError: Cannot convert undefined or null to object
[webpack-cli] TypeError: Cannot convert undefined or null to object
at Function.entries (<anonymous>)
at Object.<anonymous> (/private/tmp/webpack-cli-v4-beta8-ignore-loader-error/node_modules/@webpack-cli/info/index.js:45:41)
at Generator.next (<anonymous>)
at /private/tmp/webpack-cli-v4-beta8-ignore-loader-error/node_modules/@webpack-cli/info/index.js:8:71
at new Promise (<anonymous>)
at __awaiter (/private/tmp/webpack-cli-v4-beta8-ignore-loader-error/node_modules/@webpack-cli/info/index.js:4:12)
at Object.info [as default] (/private/tmp/webpack-cli-v4-beta8-ignore-loader-error/node_modules/@webpack-cli/info/index.js:44:12)
at Function.run (/private/tmp/webpack-cli-v4-beta8-ignore-loader-error/node_modules/webpack-cli/lib/commands/ExternalCommand.js:34:51)
at WebpackCLI.runCommand (/private/tmp/webpack-cli-v4-beta8-ignore-loader-error/node_modules/webpack-cli/lib/webpack-cli.js:286:60)
at runCLI (/private/tmp/webpack-cli-v4-beta8-ignore-loader-error/node_modules/webpack-cli/lib/bootstrap.js:61:26)
Additional context
https://github.com/webpack/webpack-cli/issues/1222#issuecomment-633485026
✖ 「atl」: Checking finished with 2 errors
and exits with 0.
/cc @webpack/cli-team need fix and tests
I will debug it.
@mstssk I have the following observations
webpack-4 and webpack-cli@3 - (As expected)
webpack-4 and [email protected] - (Not as expected)
webpack@next and webpack-cli next branch (As expected)
Expected behavior
webpack fails and returns exit code 0 when an error occurs in loaders.
Exit code 0 means the code was executed successfully without any failures. So if webpack fails it should exit with a non-zero exit code. Please correct me if I'm wrong.
@snitin315 Thank you for your help.
Expected behavior
webpack fails and returns exit code 0 when an error occurs in loaders.
Oops! I typoed it.
non-zero exit code is correct.
I edit this issue's description.
Thank you.
I think then it's working as expected against the webpack-cli next branch I will add tests for the same.
@snitin315 Can you add test on this?
Yes. Work in progress.
Most helpful comment
Yes. Work in progress.