forge
forge copied to clipboard
Optional dependencies excluded with plugin-vite
Pre-flight checklist
- [X] I have read the contribution documentation for this project.
- [X] I agree to follow the code of conduct that this project uses.
- [X] I have searched the issue tracker for a bug that matches the one I want to file, without success.
Electron Forge version
7.4.0
Electron version
29.2.0
Operating system
macOS 14.5
Last known working Electron Forge version
No response
Expected behavior
When building an app with optional dependencies and the Vite plugin, optional dependencies are included in the build output.
Actual behavior
Optional dependencies are excluded from the output.
Steps to reproduce
Build a project using https://github.com/lovell/sharp, which has optional dependencies. They will not be in the packaged node_modules, and so their native binaries can not be copied.
Additional information
Adding them as dependencies is a poor solution, since they are platform-specific.
I have had to fix this by using this hook in my Forge config:
async packageAfterCopy(_config, buildPath) {
await NodeFSExtra.copy(
"node_modules/@img",
NodePath.join(buildPath, "node_modules/@img"),
);
},