refactor: use @electron-internal/extract-zip in the npm package#51886
Merged
Conversation
7 tasks
Member
|
Closes #51619 (would be good to include in PR body, don't have perms for that) |
VerteDinde
approved these changes
Jun 5, 2026
Member
|
@erickzhao I got you 🫡 |
jkleinsc
approved these changes
Jun 5, 2026
|
No Release Notes |
Contributor
|
I was unable to backport this PR to "41-x-y" cleanly; |
Contributor
|
I was unable to backport this PR to "40-x-y" cleanly; |
Contributor
|
I have automatically backported this PR to "43-x-y", please check out #51894 |
Contributor
|
I have automatically backported this PR to "42-x-y", please check out #51895 |
jan-molak
added a commit
to serenity-js/serenity-js
that referenced
this pull request
Jun 5, 2026
yauzl@2.x uses fd-slicer@1.x which has a broken stream lifecycle on Node.js >= 24.16.0 causing extract-zip to silently fail when extracting large files (like the Electron binary). yauzl@3.x bundles its own fixed fd-slicer that doesn't have this issue. This replaces the ensure-electron.ts workaround script with a proper pnpm override that fixes the root cause for all packages using extract-zip. Can be removed once electron releases with @electron-internal/extract-zip (see electron/electron#51886). Related tickets: electron/electron#51619
Contributor
jkleinsc
pushed a commit
that referenced
this pull request
Jun 8, 2026
* build: update @electron/get to v5 (#51234) (cherry picked from commit 44e4839) Co-authored-by: Samuel Attard <sam@electronjs.org> * refactor: use @electron-internal/extract-zip in the npm package (#51886) (cherry picked from commit ad2df5c) Co-authored-by: Samuel Attard <sam@electronjs.org> --------- Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com> Co-authored-by: Samuel Attard <sam@electronjs.org>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description of Change
Closes #51619
Switches the published
electronnpm package fromextract-zipto@electron-internal/extract-zip, a drop-in replacement maintained at electron/extract-zip that uses prebuilt native bindings for extraction.The package is ESM-only, so the
require()ininstall.jsnow destructures the namedextractexport — supported on the Node versions the package already requires (engines: >= 22.12.0).Verified locally on macOS arm64 by stamping the
npm/folder aselectron@42.3.3and running the full install flow: the zip downloads and extracts,cli.js --versionlaunches the app, and the extracted output (file list, content hashes, symlinks, permissions) is byte-identical to whatextract-zip@2.0.1produces.Checklist
Release Notes
Notes: none