webpack-obfuscator
webpack-obfuscator copied to clipboard
Test loader doesn't work : Critical dependency: the request of a dependency is an expression
With NodeJS v16.13.0 on Windows
$ npm run build && npx webpack --config test/config/javascript-obfuscator-loader.config.js --stats-error-details
> [email protected] build
> npx tsc
asset index.js 1.13 KiB [emitted] [minimized] (name: index) 1 related asset
asset index-excluded.js 1.02 KiB [emitted] [minimized] (name: index-excluded) 1 related asset
runtime modules 211 bytes 2 modules
cacheable modules 2.78 KiB
./test/input/index.js 1.41 KiB [built] [code generated]
./test/input/index-excluded.js 245 bytes [built] [code generated]
./test/input/nested.js 1.13 KiB [built] [code generated]
./test/input/ sync 160 bytes [built] [code generated]
WARNING in ./test/input/index.js 1:1127-1152
Critical dependency: the request of a dependency is an expression
at CommonJsRequireContextDependency.getWarnings (xxx\webpack-obfuscator\node_modules\webpack\lib\dependencies\ContextDependency.js:91:18)
at Compilation.reportDependencyErrorsAndWarnings (xxx\webpack-obfuscator\node_modules\webpack\lib\Compilation.js:3131:24)
at xxx\webpack-obfuscator\node_modules\webpack\lib\Compilation.js:2728:28
at _next2 (eval at create (xxx\webpack-obfuscator\node_modules\tapable\lib\HookCodeFactory.js:33:10), <anonymous>:25:1)
at eval (eval at create (xxx\webpack-obfuscator\node_modules\tapable\lib\HookCodeFactory.js:33:10), <anonymous>:52:1)
at xxx\webpack-obfuscator\node_modules\webpack\lib\FlagDependencyExportsPlugin.js:385:11
at xxx\webpack-obfuscator\node_modules\neo-async\async.js:2830:7
at Object.each (xxx\webpack-obfuscator\node_modules\neo-async\async.js:2850:39)
at xxx\webpack-obfuscator\node_modules\webpack\lib\FlagDependencyExportsPlugin.js:361:18
at xxx\webpack-obfuscator\node_modules\neo-async\async.js:2830:7
there was a property ignoreRequireImports but it was renamed to ignoreImports. The readme wasn't updated in every location. Try setting that to true, ignoreImports: true
https://github.com/javascript-obfuscator/javascript-obfuscator/commit/faaab45c6aeabf6d6c2ced6f9d53ec5a54871d7b
@rubixibuc you just made my day, thank you. Just for reference, I'm using:
"webpack": "^5.75.0",
"webpack-obfuscator": "3.3.2"
"javascript-obfuscator": "^4.0.0",
with Electron.
And if I don't set ignoreImports: true
I get random "cannot find module" errors when starting the app.