Webpack 5: devtool ValidationError, invalid configuration object

16,555

Answer to own question! Spoiler: false.

module.exports = {
    devtool: isProd ? false : 'source-map',
}

In Webpack 4 it was possible to value this with an empty string. webpack 5 is more strict. Webpacks devtool configuration.

Share:
16,555
ztom
Author by

ztom

Updated on June 20, 2022

Comments

  • ztom
    ztom about 2 years

    While migrating from Webpack 4 to Webpack 5 I got an error when using devtool with empty value (only in production mode).

    module.exports = {
        devtool: isProd ? '' : 'source-map',
        // entry: ...
        // output: ...
        // module: ...
    }
    

    The message in the console:

    ValidationError: Invalid configuration object. Webpack has been initialized using a configuration object that does not match the API schema.
     - configuration.devtool should match pattern "^(inline-|hidden-|eval-)?(nosources-)?(cheap-(module-)?)?source-map$".
       BREAKING CHANGE since webpack 5: The devtool option is more strict.
       Please strictly follow the order of the keywords in the pattern.
    

    Any ideas how to avoid source maps in production mode? What to type in there?

  • Ndrslmpk
    Ndrslmpk about 2 years
    What is isProd referencing to?
  • ztom
    ztom about 2 years
    It's just a boolean whether the app is in production mode.