Skip to content

fix: cap electron-builder pnpm collector depth to unblock CI release builds#42

Merged
julia-kafarska merged 9 commits into
mainfrom
fix/desktop-bundle
Jul 24, 2026
Merged

fix: cap electron-builder pnpm collector depth to unblock CI release builds#42
julia-kafarska merged 9 commits into
mainfrom
fix/desktop-bundle

Conversation

@julia-kafarska

Copy link
Copy Markdown
Member

Summary

Fixes the multi-platform desktop release build in CI. electron-builder's pnpm
node-module collector runs pnpm list --prod --json --depth Infinity, and on
this workspace the cloud-SDK dependency graph makes that dump so large the
collector exhausts memory on the release runners. Cap the list depth via a
pnpm patch and give the parse enough heap.

Closes #

What changed

  • Added patches/app-builder-lib@26.8.1.patch, registered under
    pnpm.patchedDependencies: the pnpm node-module collector now calls
    pnpm list with --depth 6 instead of --depth Infinity.
  • .github/workflows/release.yml: set NODE_OPTIONS=--max-old-space-size=8192
    on the electron-builder step so parsing the (still large) list output has
    headroom on the hosted runners.
  • pnpm-lock.yaml: records the patched dependency.

How I tested

  • Local packaged build: compared the collected module set at depth 6
    against depth Infinity — identical app contents (no missing prod deps).
  • Iterated on the release workflow against real CI runners via a
    temporary debug workflow (since removed); the release build completes
    with this patch where it previously OOM'd.

Notes for reviewers

  • Depth 6 is not arbitrary: the desktop app's deepest production dependency
    chain resolves within it — verified by diffing the collector's output
    against the full-depth run locally.

@julia-kafarska
julia-kafarska merged commit cbf1355 into main Jul 24, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant