svg-chunk-webpack-plugin
svg-chunk-webpack-plugin copied to clipboard
Support rspack
If the feature solves a problem you have, specify it here.
I'm trying to migrate our webpack project to rspack, everything is working except the svg-sprites, as this project is in active development, I hope you will consider support for rspack as well.
Describe the proposed feature.
Getting error - /node_modules/svg-chunk-webpack-plugin/lib/loader.js:20 this._module.factoryMeta = this._module.factoryMeta || {}; ^
TypeError: Cannot read properties of undefined (reading 'factoryMeta') at Object.SvgChunkWebpackLoader
Describe alternatives you've considered
svg-sprite-loader
Additional context
Minimal example repo - https://github.com/singh-jay/svg-chunk-plugin-test
Importance
Nice to have
Hello @singh-jay, thanks for your feedback.
I'm not opposed to compatibility with rspack, but it seems complicated to me because there are differences in the API.
On investigating, I can already see 2 points that pose a problem:
- From the loader,
this._module
is not available with rspack and this is used to mark SVGs for the plugin (see https://github.com/webpack/webpack/issues/12202#issuecomment-745537821) - From the plugin,
entry.chunks
doesn't return anything. ThegetSvgsDependenciesByEntrypoint
function allows you to search for SVG dependencies associated with an entrypoint.
@alexander-akait (Hi) What do you think?
We can add check if (this._module) {}
, it prevent from crash, but I am not sure it will work correctly, need to test, also maybe we need to more API... will be great to dicussion about it with rspack team
We can add check
if (this._module) {}
, it prevent from crash, but I am not sure it will work correctly, need to test, also maybe we need to more API... will be great to dicussion about it with rspack team
Sorry for the delay, this line is important because it marks the svgs for the plugin. If it's not marked, the plugin will ignore the svg and won't work properly.
@alexander-akait Do you have contact with the rspack team? Or do you know how we could solve this problem? Thanks
/cc @hardfist
thanks,we will see whether we can be compatible with this plugin