webpack-contrib / image-minimizer-webpack-plugin

Webpack loader and plugin to compress images using imagemin
MIT License
236 stars 38 forks source link

Plugin fails to overwrite images emitted by favicons-webpack-plugin. #124

Closed le0nik closed 4 years ago

le0nik commented 4 years ago

Icon emitted by favicons-plugin without imagemin-webpack:

/favicons-3d677750/apple-touch-startup-image-1536x2008.png    122 KiB          [emitted]

Same icon with imagemin-webpack and name set to [path][name].[ext](Not compressed)

/favicons-3d677750/apple-touch-startup-image-1536x2008.png    122 KiB          [emitted]

Same icon but this time name is set to [name].[ext]. (Compressed)

apple-touch-startup-image-1536x2008.png   30.5 KiB          [emitted]

Looks like imagemin-webpack can't overwrite already emitted images by favicons-webpack-plugin

"webpack": "4.41.4" "imagemin-webpack": "5.1.1" "imagemin-pngquant": "8.0.0" "favicons-webpack-plugin": "1.0.2"

le0nik commented 4 years ago

Got it. It emits files correctly, but doesn't replace stats for those files, so i get both in output stats(only leading slash is absent in compressed file path):

/favicons-3d677750/apple-touch-startup-image-1536x2008.png    122 KiB          [emitted] // original
favicons-3d677750/apple-touch-startup-image-1536x2008.png   30.5 KiB          [emitted] // compressed

but only 1 file(compressed) in the filesystem.

This plugin was used with name: '[path][name].[ext]'

favicons-webpack-plugin was used with prefix: '/favicons-[hash:8]'