Skip to content

chore(deps): update electron-menubar to v10.1.7 - #3115

Merged
afonsojramos merged 3 commits into
mainfrom
chore/bump-electron-menubar-10.1.5
Jul 29, 2026
Merged

chore(deps): update electron-menubar to v10.1.7#3115
afonsojramos merged 3 commits into
mainfrom
chore/bump-electron-menubar-10.1.5

Conversation

@afonsojramos

@afonsojramos afonsojramos commented Jul 29, 2026

Copy link
Copy Markdown
Member

Summary

Bumps electron-menubar to 10.1.7, which carries the fix for the Windows tray hang: gitify-app/electron-menubar#124.

What it fixes

On Windows, positionWindow and the window's resize listener recursed into each other: setPosition makes Windows emit resize synchronously, which re-enters positionWindow, which calls setPosition again. The recursion never unwinds, so the main process wedges with its event loop blocked — the popup never appears and all subsequent tray clicks (left and right) stop responding until the app is restarted.

Confirmed from a reporter's instrumented-build log in #3064: the diagnostic heartbeat stops immediately after the menubar show event and never resumes, pinning the hang inside showWindow between emit('show') and emit('after-show'). It matches the two other symptoms reported there — sustained CPU use after the left-click, and a window that grows "somewhat larger than a maximized window" as each recursion pass nudges it.

10.1.7 guards against re-entrant positionWindow calls; a genuine later resize still repositions as before.

Why 10.1.7 and not 10.1.5

The fix first shipped in 10.1.5. 10.1.6 then widened the electron peer dependency from an exact pin to >=35.0.0 (it was uninstallable for anyone not on the exact version), but that release tagged on GitHub without reaching npm, so it was re-cut as 10.1.7. This bump therefore picks up both the tray fix and the peer-range fix.

Notes

  • pnpm-workspace.yaml excludes electron-menubar (all versions) from pnpm's minimumReleaseAge gate rather than pinning one version. It's a first-party package, so the supply-chain delay buys nothing, and this avoids re-editing the exclude on every bump — the gate verifies the existing lockfile before resolving, so a version-pinned entry has to list both old and new version mid-transition.
  • Verified locally: the re-entrancy guard is present in the installed lib/index.cjs, pnpm install --frozen-lockfile passes the supply-chain check, and the full suite (1198 tests), pnpm check, tsc --noEmit and pnpm build are all clean.

Fixes #3064

@afonsojramos
afonsojramos requested a review from setchy as a code owner July 29, 2026 14:29
@github-actions github-actions Bot added the dependency Dependency updates label Jul 29, 2026
@afonsojramos afonsojramos mentioned this pull request Jul 29, 2026
1 task
@afonsojramos afonsojramos changed the title chore(deps): update electron-menubar to v10.1.5 chore(deps): update electron-menubar to v10.1.7 Jul 29, 2026
@afonsojramos
afonsojramos merged commit 25a0c7f into main Jul 29, 2026
12 checks passed
@afonsojramos
afonsojramos deleted the chore/bump-electron-menubar-10.1.5 branch July 29, 2026 15:38
@github-actions github-actions Bot added this to the Release 7.x.x milestone Jul 29, 2026
@sonarqubecloud

Copy link
Copy Markdown

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependency Dependency updates

Development

Successfully merging this pull request may close these issues.

Unable to open window

2 participants