webpack-манифест-плагин не включает все записи в манифест при сборке с использованием webpack 4.44 (но отлично работает в режиме просмотра)

#webpack #angular11 #manifest.json

Вопрос:

Мы пытаемся перейти с angular 8 на angular 11, и теперь мы сталкиваемся с проблемами с плагином webpack-манифеста.

Вот что генерируется в манифесте с помощью ng11 при построении без режима наблюдения :
[веб-пакет 4.39, веб-пакет-манифест-плагин 2.2.0]

 {  "main.js": "hybrid/main.js",  "main.js.map": "hybrid/main.js.map",  "polyfills.js": "hybrid/polyfills.js",  "polyfills.js.map": "hybrid/polyfills.js.map",  "polyfills-es5.js": "hybrid/polyfills-es5.js",  "polyfills-es5.js.map": "hybrid/polyfills-es5.js.map",  "runtime.js": "hybrid/runtime.js",  "runtime.js.map": "hybrid/runtime.js.map",  "styles.css": "hybrid/styles.css",  "styles.css.map": "hybrid/styles.css.map",  "vendor.js": "hybrid/vendor.js",  "vendor.js.map": "hybrid/vendor.js.map" }  

Вот выдержка из результата, который мы должны получить (это результат, который мы получаем в режиме ng11/watch и в режиме ng8 с режимом просмотра или без него)
[ webpack 4.44, webpack-манифест-плагин 2.2.0 или v3 или v4 ]

 {  "main.js": "hybrid/main.js",  "main.js.map": "hybrid/main.js.map",  "polyfills.js": "hybrid/polyfills.js",  "polyfills.js.map": "hybrid/polyfills.js.map",  "polyfills-es5.js": "hybrid/polyfills-es5.js",  "polyfills-es5.js.map": "hybrid/polyfills-es5.js.map",  "runtime.js": "hybrid/runtime.js",  "runtime.js.map": "hybrid/runtime.js.map",  "styles.css": "hybrid/styles.css",  "styles.css.map": "hybrid/styles.css.map",  "vendor.js": "hybrid/vendor.js",  "vendor.js.map": "hybrid/vendor.js.map"  "assets/css/buttons.scss": "hybrid/assets/css/buttons.scss",  "assets/css/formio.scss": "hybrid/assets/css/formio.scss",  "assets/css/loader.scss": "hybrid/assets/css/loader.scss",  "assets/css/status.scss": "hybrid/assets/css/status.scss",  "assets/css/tooltip.scss": "hybrid/assets/css/tooltip.scss",  "assets/fonts/Bariol-Bold.otf": "hybrid/assets/fonts/Bariol-Bold.otf",  "assets/fonts/Bariol.otf": "hybrid/assets/fonts/Bariol.otf" }  

Все наши активы исключаются из манифеста, когда мы не используем режим наблюдения, но мы не можем использовать этот режим для производства, поэтому сейчас мы немного застряли.

Мы попытались использовать более новые версии плагина webpack-manifest-plugin. (Наша конфигурация плагина манифеста не изменилась при переносе и очень проста, используя только имя файла и параметры общедоступного пути.)

Мы также пытались заставить другие версии веб-пакетов использовать «npx npm-принудительные разрешения», но безуспешно.

Он работает, как и ожидалось, с конфигурацией «ng10 @angular-devkit/сборка-angular v0.1000.0 webpack 4.43 webpack-манифест-плагин 3.0», но проблема возникает, как только webpack 4.44 появляется в следующей младшей версии @angular-devkit.

Мы не можем перейти на ng12 , чтобы проверить, исправлена ли проблема, так как мы используем angular-hybrid, который поддерживает только ng11.

Любая идея будет очень приветствоваться, так как мы перепробовали все возможные комбинации версий.