-
-
Notifications
You must be signed in to change notification settings - Fork 781
Description
What problem does this feature solve?
Background
Shakapacker is a popular library for handling JS bundling in Rails apps. It's the successor to rails/webpacker and uses webpack-assets-manifest as a core component. There's ongoing discussion about adding Rspack as a bundler option for Shakapacker (see issue #476), but the lack of support for webpack-assets-manifest in Rspack is a significant roadblock.
Current Progress
I've forked the original webpack-assets-manifest plugin and started adapting it for Rspack. Most of the test coverage is passing, but there are still some issues. You can see the current state of the refactor here: rspack-assets-manifest test results.
To complete the port, Rspack needs to support or provide alternatives for the following webpack features:
codeGenerationResults: Used in the original plugin to gather asset information.assetsInfo: Used to store and retrieve additional information about assets.
We could either:
- Add similar properties or methods to Rspack's compilation object.
- Provide alternative APIs that serve the same purpose but fit better with Rspack's architecture.
- Think about workarounds or patterns to achieve the same results without these specific properties.
Benefits
- Enable easier migration from webpack to Rspack for projects using Shakapacker.
- Increase Rspack's compatibility with existing webpack ecosystems. (as the lib itself has >600k downloads/week)
- Potentially benefit other projects that rely on
webpack-assets-manifest.
I'm willing to contribute to this feature's implementation, but I would need some direction on Rspack's internal architecture and best practices for adding these or equivalent features.
What does the proposed API of configuration look like?
.