Move @electron/rebuild into optionalDependencies
Nobody has claimed this yet.
Assessment
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Newbie friendliness
- 78/100
- Issue type
- Refactor
- Clarity
- Clearly specified
- Activity status
- Quiet
- Tech stack
- node.js
- Domain
- build-system
Research direction
Start by inspecting the package manifest and the dependency declarations for @electron/rebuild and node-gyp. Move @electron/rebuild to optionalDependencies, then verify that installation no longer requires node-gyp while projects that need native module building retain the dependency.
Written by the indexing model from the issue text.
Description
Pre-flight checklist
- I have read the contribution documentation for this project.
- I agree to follow the code of conduct that this project uses.
- I have searched the issue tracker for a feature request that matches the one I want to file, without success.
Problem description
Many firms disallow installation of node-gyp. This module is dragged in through @electron/rebuild, thus preventing @electron/forge from being installed without hacky workarounds.
I believe this problem can be solved by moving @electron/rebuild into optionalDependencies. Only a small percentage of electron projects require native module building, and those projects almost by definition won't have restrictions on node-gyp. Anyone else will be able to install the library without getting stuck at this point.
Proposed solution
Move @electron/rebuild into optionalDependencies.
Alternatives considered
To get around this problem, we've been using a resolution that points node-gyp to a fake library. But this requires some manual hand-holding with our customers.
Additional information
No response
- Dominant language
- TypeScript
- Stars
- 7.1k
- Forks
- 642
- Avg merge
- 2d 8h
- Merged PRs (30d)
- 35
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from electron/forge
-
Difficulty 1/5 Under an hour Newbie friendliness 90/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
-
Difficulty 4/5 3-5 days Newbie friendliness 45/100
-
Difficulty 3/5 1-2 days Newbie friendliness 55/100
Similar issues
-
calcite-components needs triage refactor
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
Esri/calcite-design-system#15203 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 91/100
-
community first-timers-only good first issue hacktoberfest help wanted low hanging fruit up-for-grabs
Difficulty 1/5 Under an hour Newbie friendliness 95/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
Automattic/studio#4908 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 90/100