vite-plugin-compress
vite-plugin-compress copied to clipboard
Failed to compress svg's
I got this error while trying this plugin. Any idea how to exclude svg's ? I tried : compress({ exclude: ["*.svg"] })
✓ 560 modules transformed. [vite:compress] setAssetSource cannot be called in transform for caching reasons. Use emitFile with a source, or call setAssetSource in another hook. file: F:/GitHub/senf/apps/senf-client/src/images/svgIcons/plus.svg error during build: Error: setAssetSource cannot be called in transform for caching reasons. Use emitFile with a source, or call setAssetSource in another hook. at error (F:\GitHub\senf\apps\senf-client\node_modules\rollup\dist\shared\rollup.js:198:30) at throwPluginError (F:\GitHub\senf\apps\senf-client\node_modules\rollup\dist\shared\rollup.js:21847:12) at Object.error (F:\GitHub\senf\apps\senf-client\node_modules\rollup\dist\shared\rollup.js:22570:20) at Object.error (F:\GitHub\senf\apps\senf-client\node_modules\rollup\dist\shared\rollup.js:22024:42) at Object.setAssetSource (F:\GitHub\senf\apps\senf-client\node_modules\rollup\dist\shared\rollup.js:22043:33) at Object.transform (F:\GitHub\senf\apps\senf-client\node_modules\vite-plugin-compress\dist\plugin.js:107:34) at async transform (F:\GitHub\senf\apps\senf-client\node_modules\rollup\dist\shared\rollup.js:21994:16) at async ModuleLoader.addModuleSource (F:\GitHub\senf\apps\senf-client\node_modules\rollup\dist\shared\rollup.js:22220:30)
source code looks like this:
import Plus from "../../../images/svgIcons/plus.svg";
<img src={Plus} width="25" alt="AddIcon" />
Fixed in v2.1.1
Well, the exclude option should work as intended, at least.
I haven't investigated the setAssetSource error yet.
Well, the
excludeoption should work as intended, at least.I haven't investigated the
setAssetSourceerror yet.
I am not even sure if I used glob pattern correctly for exclude option, but after failed tries, I just moved to another vite plugin which does not compress png's and svg's and that one seems to be working. But let me know if you find any fixes
Well, the
excludeoption should work as intended, at least. I haven't investigated thesetAssetSourceerror yet.I am not even sure if I used glob pattern correctly for
excludeoption, but after failed tries, I just moved to another vite plugin which does not compress png's and svg's and that one seems to be working. But let me know if you find any fixes
compress({ exclude: ["**.svg"] }), works for me.
*.svg only match foo.svg not foo/bar.svg. **.svg do that. globs special-character--double-star
Same setAssetSource error for [email protected] and [email protected]:
[vite:compress] setAssetSource cannot be called in transform for caching reasons. Use emitFile with a source, or call setAssetSource in another hook.
thanks for explanation !
hi :)
I also have the same error when running a build. However, I do want svg compression.
here's the error:
vite v2.9.8 building for production...
transforming (1) index.html Running elm make /Users/gacallea/Projects and Ideas/Sites/anerandros.info/src/elm/Main.elm --output /var/folders/f2/zz4hj6h97sq264l9fpxrgh7h0000gn/T/2022414-35553-m4886d.vgfmi.js --optimize
Success!
Main ───> /var/folders/f2/zz4hj6h97sq264l9fpxrgh7h0000gn/T/2022414-35553-m4886d.vgfmi.js
✓ 5 modules transformed.
[vite:compress] setAssetSource cannot be called in transform for caching reasons. Use emitFile with a source, or call setAssetSource in another hook.
file: /Users/gacallea/Projects and Ideas/Sites/anerandros.info/src/img/covers/eos1.svg
error during build:
Error: setAssetSource cannot be called in transform for caching reasons. Use emitFile with a source, or call setAssetSource in another hook.
at error (/Users/gacallea/Projects and Ideas/Sites/anerandros.info/node_modules/rollup/dist/shared/rollup.js:198:30)
at throwPluginError (/Users/gacallea/Projects and Ideas/Sites/anerandros.info/node_modules/rollup/dist/shared/rollup.js:21902:12)
at Object.error (/Users/gacallea/Projects and Ideas/Sites/anerandros.info/node_modules/rollup/dist/shared/rollup.js:22625:20)
at Object.error (/Users/gacallea/Projects and Ideas/Sites/anerandros.info/node_modules/rollup/dist/shared/rollup.js:22079:42)
at Object.setAssetSource (/Users/gacallea/Projects and Ideas/Sites/anerandros.info/node_modules/rollup/dist/shared/rollup.js:22098:33)
at Object.transform (/Users/gacallea/Projects and Ideas/Sites/anerandros.info/node_modules/vite-plugin-compress/dist/plugin.js:107:34)
at async transform (/Users/gacallea/Projects and Ideas/Sites/anerandros.info/node_modules/rollup/dist/shared/rollup.js:22049:16)
at async ModuleLoader.addModuleSource (/Users/gacallea/Projects and Ideas/Sites/anerandros.info/node_modules/rollup/dist/shared/rollup.js:22275:30)
the repo is public: https://github.com/gacallea/anerandros.info/
happy to provide more info and setup if needed :)