Update dependency electron to v45 [SECURITY] #8

Open
kompas-deps wants to merge 1 commit from renovate/npm-electron-vulnerability into main
Collaborator

ℹ️ Note

This PR body was truncated due to platform limits.

This PR contains the following updates:

Package Change Age Confidence
electron ^25.9.8 → ^45.0.0 age confidence

Electron vulnerable to Heap Buffer Overflow in NativeImage

CVE-2024-46993 / GHSA-6r2x-8pq8-9489

More information

Details

Impact

The nativeImage.createFromPath() and nativeImage.createFromBuffer() functions call a function downstream that is vulnerable to a heap buffer overflow. An Electron program that uses either of the affected functions is vulnerable to a buffer overflow if an attacker is in control of the image's height, width, and contents.

Workaround

There are no app-side workarounds for this issue. You must update your Electron version to be protected.

Patches
  • v28.3.2
  • v29.3.3
  • v30.0.3
For More Information

If you have any questions or comments about this advisory, email us at security@electronjs.org.

Severity

  • CVSS Score: 4.4 / 10 (Medium)
  • Vector String: CVSS:4.0/AV:L/AC:H/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/E:U

References

This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).


Electron has ASAR Integrity Bypass via resource modification

CVE-2025-55305 / GHSA-vmqv-hx8q-j7mg

More information

Details

Impact

This only impacts apps that have the embeddedAsarIntegrityValidation and onlyLoadAppFromAsar fuses enabled. Apps without these fuses enabled are not impacted.

Specifically this issue can only be exploited if your app is launched from a filesystem the attacker has write access too. i.e. the ability to edit files inside the resources folder in your app installation on Windows which these fuses are supposed to protect against.

Workarounds

There are no app side workarounds, you must update to a patched version of Electron.

Fixed Versions
  • 38.0.0-beta.6
  • 37.3.1
  • 36.8.1
  • 35.7.5
For more information

If you have any questions or comments about this advisory, email us at security@electronjs.org

Severity

  • CVSS Score: 6.1 / 10 (Medium)
  • Vector String: CVSS:3.1/AV:L/AC:L/PR:L/UI:R/S:U/C:L/I:H/A:L

References

This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).


Electron: Out-of-bounds read in second-instance IPC on macOS and Linux

CVE-2026-34776 / GHSA-3c8v-cfp5-9885

More information

Details

Impact

On macOS and Linux, apps that call app.requestSingleInstanceLock() were vulnerable to an out-of-bounds heap read when parsing a crafted second-instance message. Leaked memory could be delivered to the app's second-instance event handler.

This issue is limited to processes running as the same user as the Electron app.

Apps that do not call app.requestSingleInstanceLock() are not affected. Windows is not affected by this issue.

Workarounds

There are no app side workarounds, developers must update to a patched version of Electron.

Fixed Versions
  • 41.0.0
  • 40.8.1
  • 39.8.1
  • 38.8.6
For more information

If there are any questions or comments about this advisory, please email security@electronjs.org

Severity

  • CVSS Score: 5.3 / 10 (Medium)
  • Vector String: CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:N/A:L

References

This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).


Electron: HTTP Response Header Injection in custom protocol handlers and webRequest

CVE-2026-34767 / GHSA-4p4r-m79c-wq3v

More information

Details

Impact

Apps that register custom protocol handlers via protocol.handle() / protocol.registerSchemesAsPrivileged() or modify response headers via webRequest.onHeadersReceived may be vulnerable to HTTP response header injection if attacker-controlled input is reflected into a response header name or value.

An attacker who can influence a header value may be able to inject additional response headers, affecting cookies, content security policy, or cross-origin access controls.

Apps that do not reflect external input into response headers are not affected.

Workarounds

Validate or sanitize any untrusted input before including it in a response header name or value.

Fixed Versions
  • 41.0.3
  • 40.8.3
  • 39.8.3
  • 38.8.6
For more information

If there are any questions or comments about this advisory, send an email to security@electronjs.org

Severity

  • CVSS Score: 5.9 / 10 (Medium)
  • Vector String: CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:L/I:H/A:N

References

This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).


Electron: AppleScript injection in app.moveToApplicationsFolder on macOS

CVE-2026-34779 / GHSA-5rqw-r77c-jp79

More information

Details

Impact

On macOS, app.moveToApplicationsFolder() used an AppleScript fallback path that did not properly handle certain characters in the application bundle path. Under specific conditions, a crafted launch path could lead to arbitrary AppleScript execution when the user accepted the move-to-Applications prompt.

Apps are only affected if they call app.moveToApplicationsFolder(). Apps that do not use this API are not affected.

Workarounds

There are no app side workarounds, developers must update to a patched version of Electron.

Fixed Versions
  • 41.0.0-beta.8
  • 40.8.0
  • 39.8.1
  • 38.8.6
For more information

If there are any questions or comments about this advisory, please email security@electronjs.org

Severity

  • CVSS Score: 6.5 / 10 (Medium)
  • Vector String: CVSS:3.1/AV:L/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:L

References

This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).


Electron: Use-after-free in WebContents fullscreen, pointer-lock, and keyboard-lock permission callbacks

CVE-2026-34771 / GHSA-8337-3p73-46f4

More information

Details

Impact

Apps that register an asynchronous session.setPermissionRequestHandler() may be vulnerable to a use-after-free when handling fullscreen, pointer-lock, or keyboard-lock permission requests. If the requesting frame navigates or the window closes while the permission handler is pending, invoking the stored callback dereferences freed memory, which may lead to a crash or memory corruption.

Apps that do not set a permission request handler, or whose handler responds synchronously, are not affected.

Workarounds

Respond to permission requests synchronously, or deny fullscreen, pointer-lock, and keyboard-lock requests if an asynchronous flow is required.

Fixed Versions
  • 41.0.0-beta.8
  • 40.7.0
  • 39.8.0
  • 38.8.6
For more information

If there are any questions or comments about this advisory, please email security@electronjs.org

Severity

  • CVSS Score: 7.5 / 10 (High)
  • Vector String: CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:H

References

This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).


Electron: USB device selection not validated against filtered device list

CVE-2026-34766 / GHSA-9899-m83m-qhpj

More information

Details

Impact

The select-usb-device event callback did not validate the chosen device ID against the filtered list that was presented to the handler. An app whose handler could be influenced to select a device ID outside the filtered set would grant access to a device that did not match the renderer's requested filters or was listed in exclusionFilters.

The WebUSB security blocklist remained enforced regardless, so security-sensitive devices on the blocklist were not affected. The practical impact is limited to apps with unusual device-selection logic.

Workarounds

There are no app side workarounds, you must update to a patched version of Electron.

Fixed Versions
  • 41.0.0-beta.8
  • 40.7.0
  • 39.8.0
  • 38.8.6
For more information

If there are any questions or comments about this advisory, send an email to security@electronjs.org

Severity

  • CVSS Score: 3.3 / 10 (Low)
  • Vector String: CVSS:3.1/AV:L/AC:H/PR:L/UI:R/S:U/C:L/I:L/A:N

References

This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).


Electron: Use-after-free in download save dialog callback

CVE-2026-34772 / GHSA-9w97-2464-8783

More information

Details

Impact

Apps that allow downloads and programmatically destroy sessions may be vulnerable to a use-after-free. If a session is torn down while a native save-file dialog is open for a download, dismissing the dialog dereferences freed memory, which may lead to a crash or memory corruption.

Apps that do not destroy sessions at runtime, or that do not permit downloads, are not affected.

Workarounds

Avoid destroying sessions while a download save dialog may be open. Cancel pending downloads before session teardown.

Fixed Versions
  • 41.0.0-beta.7
  • 40.7.0
  • 39.8.0
  • 38.8.6
For more information

If there are any questions or comments about this advisory, please email security@electronjs.org

Severity

  • CVSS Score: 5.8 / 10 (Medium)
  • Vector String: CVSS:3.1/AV:L/AC:H/PR:N/UI:R/S:U/C:H/I:L/A:L

References

This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).


Electron: Renderer command-line switch injection via undocumented commandLineSwitches webPreference

CVE-2026-34769 / GHSA-9wfr-w7mm-pc7f

More information

Details

Impact

An undocumented commandLineSwitches webPreference allowed arbitrary switches to be appended to the renderer process command line. Apps that construct webPreferences by spreading untrusted configuration objects may inadvertently allow an attacker to inject switches that disable renderer sandboxing or web security controls.

Apps are only affected if they construct webPreferences from external or untrusted input without an allowlist. Apps that use a fixed, hardcoded webPreferences object are not affected.

Workarounds

Do not spread untrusted input into webPreferences. Use an explicit allowlist of permitted preference keys when constructing BrowserWindow or webContents options from external configuration.

Fixed Versions
  • 41.0.0-beta.8
  • 40.7.0
  • 39.8.0
  • 38.8.6
For more information

If there are any questions or comments about this advisory, send an email to security@electronjs.org

Severity

  • CVSS Score: 7.7 / 10 (High)
  • Vector String: CVSS:3.1/AV:L/AC:H/PR:N/UI:R/S:C/C:H/I:H/A:H

References

This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).


Electron: Unquoted executable path in app.setLoginItemSettings on Windows

CVE-2026-34768 / GHSA-jfqx-fxh3-c62j

More information

Details

Impact

On Windows, app.setLoginItemSettings({openAtLogin: true}) wrote the executable path to the Run registry key without quoting. If the app is installed to a path containing spaces, an attacker with write access to an ancestor directory may be able to cause a different executable to run at login instead of the intended app.

On a default Windows install, standard system directories are protected against writes by standard users, so exploitation typically requires a non-standard install location.

Workarounds

Install the application to a path without spaces, or to a location where all ancestor directories are protected against unauthorized writes.

Fixed Versions
  • 41.0.0-beta.8
  • 40.8.0
  • 39.8.1
  • 38.8.6
For more information

If there are any questions or comments about this advisory, send an email to security@electronjs.org

Severity

  • CVSS Score: 3.9 / 10 (Low)
  • Vector String: CVSS:3.1/AV:L/AC:H/PR:H/UI:N/S:U/C:L/I:L/A:L

References

This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).


Electron: Use-after-free in PowerMonitor on Windows and macOS

CVE-2026-34770 / GHSA-jjp3-mq3x-295m

More information

Details

Impact

Apps that use the powerMonitor module may be vulnerable to a use-after-free. After the native PowerMonitor object is garbage-collected, the associated OS-level resources (a message window on Windows, a shutdown handler on macOS) retain dangling references. A subsequent session-change event (Windows) or system shutdown (macOS) dereferences freed memory, which may lead to a crash or memory corruption.

All apps that access powerMonitor events (suspend, resume, lock-screen, etc.) are potentially affected. The issue is not directly renderer-controllable.

Workarounds

There are no app side workarounds, you must update to a patched version of Electron.

Fixed Versions
  • 41.0.0-beta.8
  • 40.8.0
  • 39.8.1
  • 38.8.6
For more information

If there are any questions or comments about this advisory, please email security@electronjs.org

Severity

  • CVSS Score: 7.0 / 10 (High)
  • Vector String: CVSS:3.1/AV:L/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:H

References

This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).


Electron: Registry key path injection in app.setAsDefaultProtocolClient on Windows

CVE-2026-34773 / GHSA-mwmh-mq4g-g6gr

More information

Details

Impact

On Windows, app.setAsDefaultProtocolClient(protocol) did not validate the protocol name before writing to the registry. Apps that pass untrusted input as the protocol name may allow an attacker to write to arbitrary subkeys under HKCU\Software\Classes\, potentially hijacking existing protocol handlers.

Apps are only affected if they call app.setAsDefaultProtocolClient() with a protocol name derived from external or untrusted input. Apps that use a hardcoded protocol name are not affected.

Workarounds

Validate the protocol name matches /^[a-zA-Z][a-zA-Z0-9+.-]*$/ before passing it to app.setAsDefaultProtocolClient().

Fixed Versions
  • 41.0.0
  • 40.8.1
  • 39.8.1
  • 38.8.6
For more information

If there are any questions or comments about this advisory, please email security@electronjs.org

Severity

  • CVSS Score: 4.7 / 10 (Medium)
  • Vector String: CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:H/A:N

References

This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).


Electron: Incorrect origin passed to permission request handler for iframe requests

CVE-2026-34777 / GHSA-r5p7-gp4j-qhrx

More information

Details

Impact

When an iframe requests fullscreen, pointerLock, keyboardLock, openExternal, or media permissions, the origin passed to session.setPermissionRequestHandler() was the top-level page's origin rather than the requesting iframe's origin. Apps that grant permissions based on the origin parameter or webContents.getURL() may inadvertently grant permissions to embedded third-party content.

The correct requesting URL remains available via details.requestingUrl. Apps that already check details.requestingUrl are not affected.

Workarounds

In your setPermissionRequestHandler, inspect details.requestingUrl rather than the origin parameter or webContents.getURL() when deciding whether to grant fullscreen, pointerLock, keyboardLock, openExternal, or media permissions.

Fixed Versions
  • 41.0.0
  • 40.8.1
  • 39.8.1
  • 38.8.6
For more information

If there are any questions or comments about this advisory, please email security@electronjs.org

Severity

  • CVSS Score: 5.4 / 10 (Medium)
  • Vector String: CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:L/A:N

References

This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).


Electron: Service worker can spoof executeJavaScript IPC replies

CVE-2026-34778 / GHSA-xj5x-m3f3-5x3h

More information

Details

Impact

A service worker running in a session could spoof reply messages on the internal IPC channel used by webContents.executeJavaScript() and related methods, causing the main-process promise to resolve with attacker-controlled data.

Apps are only affected if they have service workers registered and use the result of webContents.executeJavaScript() (or webFrameMain.executeJavaScript()) in security-sensitive decisions.

Workarounds

Do not trust the return value of webContents.executeJavaScript() for security decisions. Use dedicated, validated IPC channels for security-relevant communication with renderers.

Fixed Versions
  • 41.0.0
  • 40.8.1
  • 39.8.1
  • 38.8.6
For more information

If there are any questions or comments about this advisory, please email security@electronjs.org

Severity

  • CVSS Score: 5.9 / 10 (Medium)
  • Vector String: CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:L/I:H/A:N

References

This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).


Electron: nodeIntegrationInWorker not correctly scoped in shared renderer processes

CVE-2026-34775 / GHSA-xwr5-m59h-vwqr

More information

Details

Impact

The nodeIntegrationInWorker webPreference was not correctly scoped in all configurations. In certain process-sharing scenarios, workers spawned in frames configured with nodeIntegrationInWorker: false could still receive Node.js integration.

Apps are only affected if they enable nodeIntegrationInWorker. Apps that do not use nodeIntegrationInWorker are not affected.

Workarounds

Avoid enabling nodeIntegrationInWorker in apps that also open child windows or embed content with differing webPreferences.

Fixed Versions
  • 41.0.0
  • 40.8.4
  • 39.8.4
  • 38.8.6
For more information

If there are any questions or comments about this advisory, please email security@electronjs.org

Severity

  • CVSS Score: 6.8 / 10 (Medium)
  • Vector String: CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:N

References

This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).


Electron: Use-after-free in offscreen child window paint callback

CVE-2026-34774 / GHSA-532v-xpq5-8h95

More information

Details

Impact

Apps that use offscreen rendering and allow child windows via window.open() may be vulnerable to a use-after-free. If the parent offscreen WebContents is destroyed while a child window remains open, subsequent paint frames on the child dereference freed memory, which may lead to a crash or memory corruption.

Apps are only affected if they use offscreen rendering (webPreferences.offscreen: true) and their setWindowOpenHandler permits child windows. Apps that do not use offscreen rendering, or that deny child windows, are not affected.

Workarounds

Deny child window creation from offscreen renderers in your setWindowOpenHandler, or ensure child windows are closed before the parent is destroyed.

Fixed Versions
  • 41.0.0
  • 40.7.0
  • 39.8.1
For more information

If there are any questions or comments about this advisory, please email security@electronjs.org

Severity

  • CVSS Score: 8.1 / 10 (High)
  • Vector String: CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H

References

This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).


Electron: Crash in clipboard.readImage() on malformed clipboard image data

CVE-2026-34781 / GHSA-f37v-82c4-4x64

More information

Details

Impact

Apps that call clipboard.readImage() may be vulnerable to a denial of service. If the system clipboard contains image data that fails to decode, the resulting null bitmap is passed unchecked to image construction, triggering a controlled abort and crashing the process.

Apps are only affected if they call clipboard.readImage(). Apps that do not read images from the clipboard are not affected. This issue does not allow memory corruption or code execution.

Workarounds

Validate that the clipboard contains image data via clipboard.availableFormats() before calling clipboard.readImage(). Note this only narrows the window — upgrading to a fixed version is recommended.

Fixed Versions
  • 42.0.0-alpha.5
  • 41.1.0
  • 40.8.5
  • 39.8.5
For more information

If you have any questions or comments about this advisory, email us at security@electronjs.org

Severity

  • CVSS Score: 2.8 / 10 (Low)
  • Vector String: CVSS:3.1/AV:L/AC:L/PR:L/UI:R/S:U/C:N/I:N/A:L

References

This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).


Electron: Named window.open targets not scoped to the opener's browsing context

CVE-2026-34765 / GHSA-f3pv-wv63-48x8

More information

Details

Impact

When a renderer calls window.open() with a target name, Electron did not correctly scope the named-window lookup to the opener's browsing context group. A renderer could navigate an existing child window that was opened by a different, unrelated renderer if both used the same target name. If that existing child was created with more permissive webPreferences (via setWindowOpenHandler's overrideBrowserWindowOptions), content loaded by the second renderer inherits those permissions.

Apps are only affected if they open multiple top-level windows with differing trust levels and use setWindowOpenHandler to grant child windows elevated webPreferences such as a privileged preload script. Apps that do not elevate child window privileges, or that use a single top-level window, are not affected.

Apps that additionally grant nodeIntegration: true or sandbox: false to child windows (contrary to the security recommendations) may be exposed to arbitrary code execution.

Workarounds

Deny window.open() in renderers that load untrusted content by returning { action: 'deny' } from setWindowOpenHandler. Avoid granting child windows more permissive webPreferences than their opener.

Fixed Versions
  • 42.0.0-alpha.5
  • 41.1.0
  • 40.8.5
  • 39.8.5
For more information

If you have any questions or comments about this advisory, email us at security@electronjs.org

Severity

  • CVSS Score: 6.0 / 10 (Medium)
  • Vector String: CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:C/C:L/I:L/A:L

References

This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).


Electron: shell.openPath path validation bypass via embedded null byte

CVE-2026-70603 / GHSA-5c9j-mhmv-5xgx

More information

Details

Impact

shell.openPath() did not reject paths containing embedded null bytes. Apps that perform string-only validation of file paths (for example, checking the file extension) before passing them to shell.openPath() could be bypassed, allowing an attacker-controlled path to open a different file than the one that passed validation.

Apps are only affected if they pass paths derived from untrusted input to shell.openPath() and rely on string-based validation without a filesystem check. Node's fs APIs already reject paths containing null bytes, so apps that call fs.existsSync(), fs.stat(), or similar before shell.openPath() are not affected. Apps that do not call shell.openPath() with untrusted input are not affected.

Workarounds

Reject any path containing a null byte before passing it to shell.openPath():

if (filePath.includes('\0')) throw new Error('invalid path');
Fixed Versions
  • 42.0.0-beta.1
  • 41.1.1
  • 40.9.0
  • 39.8.6
For more information

If you have any questions or comments about this advisory, email us at security@electronjs.org

Severity

  • CVSS Score: 6.0 / 10 (Medium)
  • Vector String: CVSS:3.1/AV:L/AC:H/PR:L/UI:R/S:U/C:H/I:H/A:N

References

This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).


Electron: DevTools JavaScript Injection via Unsanitized Dock State Parameter

CVE-2026-70609 / GHSA-4f78-qhmw-8j8m

More information

Details

Impact

The mode option of webContents.openDevTools() was not sanitized before use by the DevTools frontend. If an attacker can influence this value, script under their control may run in the DevTools context, which in unsandboxed configurations has access to Node.js.

Apps are only affected if untrusted input can reach the mode argument of openDevTools(), or if untrusted content can call openDevTools() on a <webview> it embeds. Apps that only ever pass a fixed dock mode are not affected.

Workarounds

Only pass fixed, allowlisted values (right, bottom, undocked, detach) as the DevTools mode, and do not expose openDevTools to untrusted content.

Fixed Versions
  • 42.0.0-beta.1
  • 41.2.0
  • 40.9.0
  • 39.8.7
For more information

If you have any questions or comments about this advisory, email Electron at security@electronjs.org

Severity

  • CVSS Score: 5.7 / 10 (Medium)
  • Vector String: CVSS:3.1/AV:N/AC:H/PR:H/UI:R/S:U/C:H/I:H/A:N

References

This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).


Electron: Permission Check Handler Receives Main Frame Origin Instead of Requesting Iframe Origin

CVE-2026-70599 / GHSA-9pf5-hg6p-4pwp

More information

Details

Impact

For serial-port and media (camera / microphone) permission checks made from an iframe, the requestingOrigin passed to session.setPermissionCheckHandler was the top-level frame's origin rather than the requesting frame's. Origin-based handler logic could therefore grant a cross-origin iframe device access intended only for the top-level origin.

Apps are only affected if they use setPermissionCheckHandler with origin-based logic and embed cross-origin iframes with delegated device permissions. Apps that base the decision on details.securityOrigin, or that do not embed such iframes, are not affected.

Workarounds

Check details.securityOrigin instead of requestingOrigin for these permissions, or do not delegate device permissions to untrusted iframes.

Fixed Versions
  • 42.0.0-beta.1
  • 41.2.0
  • 40.9.0
  • 39.8.7
For more information

If you have any questions or comments about this advisory, email Electron at security@electronjs.org

Severity

  • CVSS Score: 5.9 / 10 (Medium)
  • Vector String: CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N

References

This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).


Electron: Parent process code-sign check is spoofable

CVE-2026-70597 / GHSA-jm7p-cc5g-qwxx

More information

Details

Impact

On macOS, the check Electron uses to confirm it was launched by a same-signed parent process could be bypassed by a local process. Apps that enable the fuse-based hardening restricting ELECTRON_RUN_AS_NODE and NODE_OPTIONS to same-signed parents rely on this check; a local attacker could bypass it and run their own code inside the signed app, inheriting its TCC permissions and keychain access.

Apps are only affected if they enable those macOS fuse-based restrictions. Apps that do not enable them are not affected.

Workarounds

There are no app side workarounds, you must update to a patched version of Electron.

Fixed Versions
  • 42.0.0-beta.3
  • 41.2.1
  • 40.9.0
  • 39.8.8
For more information

If you have any questions or comments about this advisory, email us at security@electronjs.org

Severity

  • CVSS Score: 6.3 / 10 (Medium)
  • Vector String: CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:N

References

This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).


Electron: Extension tab APIs operate across session boundaries

CVE-2026-70602 / GHSA-m55f-7gqj-fr98

More information

Details

Impact

Extension tab and scripting APIs were not scoped to the extension's own session. A malicious or compromised extension loaded into one session could navigate, script, and read from windows belonging to a different session.

Apps are only affected if they load Chrome extensions via session.loadExtension and rely on separate sessions to isolate that extension from other content. Apps that do not load extensions, or that use a single session, are not affected.

Workarounds

Only load extensions from sources you trust; do not rely on session separation alone to contain an extension.

Fixed Versions
  • 42.0.0-beta.3
  • 41.2.1
  • 40.9.0
  • 39.8.8
For more information

If you have any questions or comments about this advisory, email Electron at security@electronjs.org

Severity

  • CVSS Score: 6.6 / 10 (Medium)
  • Vector String: CVSS:3.1/AV:N/AC:H/PR:H/UI:N/S:C/C:H/I:L/A:N

References

This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).


Electron: Sandboxed iframes can launch external protocol handlers

CVE-2026-70612 / GHSA-p2rr-rvmm-c5fp

More information

Details

Impact

Requests to open external protocol URLs from web content did not take iframe sandbox restrictions into account, so a sandboxed iframe could cause an OS-registered external application to be launched. The frame's sandbox state was also not made available to the app's permission handlers.

Apps are only affected if they render untrusted content in sandboxed iframes and grant the openExternal permission (granted by default when no setPermissionRequestHandler is installed). Apps whose permission handler denies openExternal for untrusted content are not affected.

Workarounds

Install a setPermissionRequestHandler that denies the openExternal permission for untrusted content.

Fixed Versions
  • 42.0.0-beta.3
  • 41.2.1
  • 40.9.0
  • 39.8.8
For more information

If you have any questions or comments about this advisory, email Electron at security@electronjs.org

Severity

  • CVSS Score: 5.4 / 10 (Medium)
  • Vector String: CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:L/I:L/A:N

References

This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).


Electron: HTTP redirect followed into local file loader

CVE-2026-70605 / GHSA-v64r-4m7r-3mvq

More information

Details

Impact

When following HTTP redirects, net.fetch() and net.request() did not restrict which schemes a redirect could target. A remote server could redirect a request to a local resource, and if the app returns or forwards the response body, local file contents could be disclosed.

Apps are only affected if they make net requests to attacker-influenced URLs with redirects followed (the default) and expose the response body. Apps that only request fixed, trusted URLs are not affected.

Workarounds

Set redirect: 'error' or redirect: 'manual' on requests to untrusted URLs and validate any redirect target before following it.

Fixed Versions
  • 42.0.0-beta.3
  • 41.2.1
  • 40.9.0
  • 39.8.8
For more information

If you have any questions or comments about this advisory, email Electron at security@electronjs.org

Severity

  • CVSS Score: 5.9 / 10 (Medium)
  • Vector String: CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N

References

This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).


Electron: window.open features string controls some window options considered privileged

CVE-2026-70607 / GHSA-v93f-fgjr-hjrj

More information

Details

Impact

Some window options supplied by web content in the window.open() features string were applied to the new BrowserWindow without an allowlist. Untrusted content could set window options it should not control, including options that cause the main process to access attacker-chosen file or network paths.

Apps are only affected if untrusted content can call window.open() and the app does not override child window options via setWindowOpenHandler. Apps that deny window.open() for untrusted content, or set overrideBrowserWindowOptions explicitly, are not affected.

Workarounds

Return { action: 'deny' } from setWindowOpenHandler for untrusted content, or supply overrideBrowserWindowOptions so every window option is set explicitly.

Fixed Versions
  • 42.0.0-beta.3
  • 41.2.1
  • 40.9.0
  • 39.8.8
For more information

If you have any questions or comments about this advisory, email Electron at security@electronjs.org

Severity

  • CVSS Score: 5.3 / 10 (Medium)
  • Vector String: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N

References

This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).


Electron: Cross-origin iframe can position native autofill popup

CVE-2026-70600 / GHSA-x8rc-wpg4-grpf

More information

Details

Impact

The native autofill popup could be positioned by a cross-origin iframe outside that iframe's bounds, over the embedding page's UI, enabling clickjacking or spoofing of trusted UI.

Apps are only affected if they embed untrusted content in iframes within windows that also display trusted UI. Apps that do not embed untrusted third-party content are not affected.

Workarounds

Do not embed untrusted content in iframes inside windows that display trusted UI.

Fixed Versions
  • 42.0.0-beta.3
  • 41.2.1
  • 40.9.0
  • 39.8.8
For more information

If you have any questions or comments about this advisory, email Electron at security@electronjs.org

Severity

  • CVSS Score: 3.1 / 10 (Low)
  • Vector String: CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:N/I:L/A:N

References

This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).


Electron: DevTools embedder handler executes arbitrary files via shell open

CVE-2026-70611 / GHSA-f2r8-jv7c-xqmp

More information

Details

Impact

The DevTools "reveal in file manager" action could launch the target file rather than reveal it. An attacker with a separate means of running script inside the DevTools frontend (such as a malicious DevTools extension) could use this to execute native code outside the sandbox.

Apps are only affected if DevTools is opened for windows exposed to untrusted content or untrusted DevTools extensions. Apps that do not open DevTools in that context are not affected.

Workarounds

Do not open DevTools for windows that load untrusted content, and do not load untrusted DevTools extensions.

Fixed Versions
  • 42.0.0-beta.3
  • 41.2.1
  • 40.9.2
  • 39.8.9
For more information

If you have any questions or comments about this advisory, email Electron at security@electronjs.org

Severity

  • CVSS Score: 6.9 / 10 (Medium)
  • Vector String: CVSS:3.1/AV:L/AC:H/PR:H/UI:R/S:C/C:H/I:H/A:N

References

This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).


Electron: contextBridge object copy honors prototype setters

CVE-2026-70610 / GHSA-ff2p-hmqr-hxm4

More information

Details

Impact

Objects copied across the contextBridge boundary from untrusted content could carry an attacker-influenced prototype, enabling prototype-pollution-style attacks against preload code despite context isolation being enabled.

Apps are only affected if their preload code accepts object arguments from untrusted content and reads properties from them without own-property checks. Apps that only accept primitive arguments, or that validate object arguments, are not affected.

Workarounds

Validate objects received from untrusted content with own-property checks (Object.hasOwn), or copy them onto a null-prototype object before use.

Fixed Versions
  • 42.0.0-beta.4
  • 41.2.2
  • 40.9.2
  • 39.8.9
For more information

If you have any questions or comments about this advisory, email Electron at security@electronjs.org

Severity

  • CVSS Score: 5.4 / 10 (Medium)
  • Vector String: CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:L/I:L/A:N

References

This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).


Electron: Context isolation bypass via Function.prototype.bind hijack

CVE-2026-70601 / GHSA-h7rp-cf8h-j98x

More information

Details

Impact

Apps that expose Promise-returning functions to web content via contextBridge may be vulnerable to a context isolation bypass. Untrusted web content could obtain access to the isolated preload world and, through it, every capability the preload script has. In renderers without a sandbox, or with nodeIntegration enabled, this may escalate to Node.js access.

Apps are affected if they expose Promise-returning functions via contextBridge — the standard pattern for wrapping ipcRenderer.invoke — in windows that load untrusted content. Apps that never load untrusted content in those windows are not affected.

Workarounds

There are no app side workarounds, you must update to a patched version of Electron.

Fixed Versions
  • 42.0.0-beta.5
  • 41.2.2
  • 40.9.2
  • 39.8.9
For more information

If you have any questions or comments about this advisory, email Electron at security@electronjs.org

Severity

  • CVSS Score: 7.5 / 10 (High)
  • Vector String: CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:H/I:L/A:N

References

This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).


Electron: Sandboxed iframe can bypass the allow-popups restriction via the OpenURL navigation path

CVE-2026-70608 / GHSA-9f4c-93c8-jc8g

More information

Details

Impact

A sandboxed iframe without the allow-popups keyword could still open a new window (or trigger setWindowOpenHandler) with no user interaction, because new-window navigations taking the OpenURL path did not apply the iframe sandbox popup restriction.

Apps that embed untrusted content in sandboxed iframes and rely on the absence of allow-popups to prevent window creation are affected. Apps that deny window creation in setWindowOpenHandler, or that do not embed untrusted content in sandboxed iframes, are not affected.

Workarounds

Return { action: 'deny' } from setWindowOpenHandler for any content you do not trust, rather than relying on the iframe sandbox alone.

Fixed Versions
  • 42.0.1
  • 41.10.3
  • 39.8.10
For more information

If you have any questions or comments about this advisory, email Electron at security@electronjs.org

Severity

  • CVSS Score: 7.2 / 10 (High)
  • Vector String: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:L/A:N

References

This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).


Electron: Off-screen rendering trusts GPU-supplied geometry over shared-memory size

CVE-2026-70598 / GHSA-pfmc-3mgc-p6fp

More information

Details

Impact

In offscreen rendering mode, frame data received from the GPU process was not fully validated by the main process. A compromised GPU process could cause the main process to read out-of-bounds memory while producing paint event images, disclosing memory or crashing the app.

Apps are only affected if they use offscreen rendering (webPreferences.offscreen) and an attacker has separately gained code execution in the GPU process. Apps that do not use offscreen rendering are not affected.

Workarounds

There are no app side workarounds, you must update to a patched version of Electron.

Fixed Versions
  • 42.0.0-beta.3
  • 41.2.1
  • 40.9.0
  • 39.8.10
For more information

If you have any questions or comments about this advisory, email us at security@electronjs.org

Severity

  • CVSS Score: 3.9 / 10 (Low)
  • Vector String: CVSS:3.1/AV:L/AC:H/PR:H/UI:N/S:C/C:L/I:N/A:L

References

This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).


Electron: Custom protocol with supportFetchAPI but not corsEnabled allows cross-origin reads

CVE-2026-70604 / GHSA-v3j7-r9gq-3gjw

More information

Details

Impact

A custom scheme registered with supportFetchAPI: true but without corsEnabled: true was not subject to CORS enforcement. A page loaded from a remote origin could therefore fetch() or XMLHttpRequest that scheme cross-origin and read the full response body, rather than the read being blocked.

Apps that serve sensitive data from such a scheme and load remote or untrusted content in a renderer are affected. Apps that set corsEnabled: true, or that do not load untrusted content, are not affected.

Workarounds

Set corsEnabled: true on schemes that must enforce CORS, and validate the request Origin in your protocol handler before returning sensitive data.

Fixed Versions
  • 42.0.0
  • 41.4.0
  • 40.9.3
  • 39.8.10
For more information

If you have any questions or comments about this advisory, email Electron at security@electronjs.org

Severity

  • CVSS Score: 7.4 / 10 (High)
  • Vector String: CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:N/A:N

References

This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).


Electron: Local race condition in Squirrel.Mac update installation on macOS

CVE-2026-102672 / GHSA-vv43-5jgx-7qv8

More information

Details

Impact

On macOS, Electron bundles the Squirrel.Mac auto-update framework, whose privileged ShipIt helper performs the final step of an update as root. A local attacker could cause that helper to overwrite a different application's files, as root, instead of the app that started the update. Exploitation requires local access to the machine.

Apps are only affected on macOS if they ship Squirrel.Mac-based auto-updates. Apps on other platforms, or that do not use Squirrel.Mac auto-updates, are not affected.

Workarounds

There are no app side workarounds, you must update to a patched version of Electron.

Fixed Versions
  • 42.0.0-beta.2
  • 41.10.5
  • 39.8.10
For more information

If you have any questions or comments about this advisory, email us at security@electronjs.org

Severity

  • CVSS Score: 6.7 / 10 (Medium)
  • Vector String: CVSS:3.1/AV:L/AC:H/PR:L/UI:R/S:U/C:H/I:H/A:H

References

This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).


Electron drops inherited HTML sandbox restrictions for popups opened through OpenURLFromTab

CVE-2026-102673 / GHSA-hq2x-r82h-9wj4

More information

Details

Impact

Popups opened from a sandboxed iframe through a link (for example target="_blank" or a middle-click) did not inherit the iframe's HTML sandbox restrictions. Content that was meant to run sandboxed could open a popup with the embedding app's full origin, gaining access to that origin's cookies, storage, and same-origin scripting.

Apps are only affected if they embed untrusted content in iframes sandboxed with allow-scripts allow-popups. Apps that do not embed untrusted content in sandboxed iframes are not affected.

Workarounds

Use setWindowOpenHandler on the parent WebContents to deny or constrain popups opened from sandboxed frames, or do not apply allow-popups to sandboxed iframes that render untrusted content.

Fixed Versions
  • 43.0.0
  • 42.5.2
  • 41.10.4
For more information

If you have any questions or comments about this advisory, email us at security@electronjs.org

Severity

  • CVSS Score: 8.2 / 10 (High)
  • Vector String: CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:L/A:N

References

This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).


Electron: can enable Node.js integration in Web Workers despite embedder restrictions

CVE-2026-102676 / GHSA-9qh4-3jw8-366w

More information

Details

Impact

A <webview> could enable Node.js integration in its Web Workers even when its embedder had Node.js integration disabled, giving guest content more privilege than the embedder allowed.

Apps are only affected if they enable the <webview> tag and the embedder is unsandboxed. Apps that do not use <webview>, or that keep the embedder sandboxed, are not affected.

Workarounds

Remove nodeIntegrationInWorker from the guest preferences in a will-attach-webview handler, or do not enable the <webview> tag when loading untrusted content.

Fixed Versions
  • 44.0.0-beta.5
  • 43.4.1
  • 42.9.2
  • 41.10.6
For more information

If you have any questions or comments about this advisory, email us at security@electronjs.org

Severity

  • CVSS Score: 8.3 / 10 (High)
  • Vector String: CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:C/C:H/I:H/A:H

References

This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).


Electron: Windows opened from a sandboxed top-level document do not inherit its sandbox restrictions

CVE-2026-102674 / GHSA-gr2m-v5gq-v685

More information

Details

Impact

Windows opened from a sandboxed top-level document did not inherit that document's HTML sandbox restrictions, so content that was meant to run sandboxed could open a window with the app's full origin. GHSA-hq2x-r82h-9wj4 covers the same issue for sandboxed iframes.

Apps are only affected if they render untrusted content in a sandboxed top-level document that allows popups. Apps that deny popups from untrusted content with setWindowOpenHandler are not affected.

Workarounds

Return { action: 'deny' } from setWindowOpenHandler for windows opened by untrusted content.

Fixed Versions
  • 44.0.0-beta.5
  • 43.4.1
  • 42.9.2
  • 41.10.6
For more information

If you have any questions or comments about this advisory, email us at security@electronjs.org

Severity

  • CVSS Score: 8.2 / 10 (High)
  • Vector String: CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:L/A:N

References

This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).


Electron: File and HTTP protocol handlers allow cross-origin reads without corsEnabled

CVE-2026-102675 / GHSA-j84w-jfhq-vhvj

More information

Details

Impact

Responses served through protocol.registerFileProtocol or protocol.registerHttpProtocol for a custom scheme registered with supportFetchAPI: true but without corsEnabled: true could be read cross-origin by web content. This completes the fix for CVE-2026-70604.

Apps are only affected if they register such a scheme, serve it through one of those handlers, and load untrusted content. Apps that set corsEnabled: true, or that do not load untrusted content, are not affected.

Workarounds

Set corsEnabled: true on the scheme, or do not load untrusted content in windows that can reach it.

Fixed Versions
  • 44.0.0-beta.5
  • 43.4.1
  • 42.9.2
  • 41.10.6
For more information

If you have any questions or comments about this advisory, email us at security@electronjs.org

Severity

  • CVSS Score: 7.4 / 10 (High)
  • Vector String: CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:N/A:N

References

This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).


Electron: Extension tabs.query returns tab URLs and titles without the tabs permission

CVE-2026-113797 / GHSA-98mx-cjp9-gchm

More information

Details

Impact

chrome.tabs.query() returned each tab's url and title to extensions that held neither the tabs permission nor matching host permissions, so any loaded extension could read the URL and title of every webContents in its session.

Apps are only affected if they load extensions (session.extensions.loadExtension) that they do not fully trust. Apps that load no extensions, or only trusted ones, are not affected.

Workarounds

Do not load untrusted or unvalidated extensions. In general you should only load trusted extensions.

Fixed Versions
  • 45.0.0-alpha.4
  • 44.1.1
  • 43.5.1
  • 42.11.1
For more information

If you have any questions or comments about this advisory, email us at security@electronjs.org

Severity

  • CVSS Score: 3.1 / 10 (Low)
  • Vector String: CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:L/I:N/A:N

References

This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).


CVE-2026-113796 / GHSA-2p8c-gr87-2676

More information

Details

Impact

Pages opened into a new window from a link were loaded as if the app itself had navigated there rather than the page that contained the link, so the request was treated as same-site: SameSite=Strict cookies were sent and Sec-Fetch-Site did not identify the initiating page. Content shown in the app could use this to make a credentialed top-level request to another site that relies on SameSite cookies as a CSRF defence.

Apps are only affected if they load untrusted content and allow it to open new windows. Apps that deny new windows from untrusted content with setWindowOpenHandler are not affected.

Workarounds

Return { action: 'deny' } from setWindowOpenHandler for windows opened by untrusted content.

Fixed Versions
  • 45.0.0-alpha.6
  • 44.3.0
  • 43.7.0
  • 42.11.3
For more information

If you have any questions or comments about this advisory, email us at security@electronjs.org

Severity

  • CVSS Score: 4.2 / 10 (Medium)
  • Vector String: CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:L/I:L/A:N

References

This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).


Electron: openExternal permission requests can be attributed to the wrong origin

CVE-2026-114121 / GHSA-997q-gvvc-jwmx

More information

Details

Impact

Requests to open external protocol URLs could be attributed to a document other than the one that asked for them, so the requestingUrl passed to session.setPermissionRequestHandler was a trusted origin for a launch untrusted content had requested. An origin-based handler could therefore let untrusted content launch an OS-registered external application.

Apps are only affected if they grant openExternal based on the requesting origin and let untrusted content open or navigate windows. Apps whose permission handler denies openExternal for untrusted content are not affected.

Workarounds

Deny the openExternal permission for untrusted content, or deny the windows it opens with setWindowOpenHandler.

Fixed Versions
  • 45.0.0-alpha.5
  • 44.3.0
  • 43.7.0
  • 42.11.3
For more information

If you have any questions or comments about this advisory, email us at security@electronjs.org

Severity

  • CVSS Score: 5.4 / 10 (Medium)
  • Vector String: CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:L/I:L/A:N

References

This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).


Electron: HID and USB permission checks can be attributed to the wrong origin

CVE-2026-113800 / GHSA-fw47-9c62-h3vw

More information

Details

Impact

For hid and usb permission checks made from an iframe, session.setPermissionCheckHandler was given the top-level frame's origin and details instead of the requesting frame's. Apps that allow these permissions based on origin could grant an embedded frame access intended for the top-level page.

You're only affected if you use setPermissionCheckHandler with origin-based logic for hid or usb and embed cross-origin iframes with allow="hid" or allow="usb". Apps that don't delegate those features to untrusted iframes are not affected.

Workarounds

Don't add allow="hid" / allow="usb" to untrusted iframes, or make the decision in your select-hid-device / select-usb-device handler using details.frame.

Fixed Versions
  • 45.0.0-alpha.5
  • 44.3.0
  • 43.7.0
  • 42.11.3
For more information

If you have any questions or comments about this advisory, email us at security@electronjs.org

Severity

  • CVSS Score: 5.4 / 10 (Medium)
  • Vector String: CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:L/I:L/A:N

References

This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).


Electron: Frame subscription trusts GPU-supplied frame geometry

CVE-2026-114122 / GHSA-3qxv-5xgr-q7w9

More information

Details

Impact

Frame data received from the GPU process for webContents.beginFrameSubscription was not fully validated by the main process. A compromised GPU process could cause the main process to read out-of-bounds memory while producing the captured frame images, disclosing memory or crashing the app.

Apps are only affected if they use webContents.beginFrameSubscription and an attacker has separately gained code execution in the GPU process. Apps that do not subscribe to captured frames are not affected.

Workarounds

There are no app side workarounds, you must update to a patched version of Electron.

Fixed Versions
  • 45.0.0-alpha.9
  • 44.4.3
  • 43.7.3
  • 42.11.6
For more information

If you have any questions or comments about this advisory, email us at security@electronjs.org

Severity

  • CVSS Score: 3.9 / 10 (Low)
  • Vector String: CVSS:3.1/AV:L/AC:H/PR:H/UI:N/S:C/C:L/I:N/A:L

References

This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).


Electron: Off-screen rendering on macOS trusts GPU-supplied frame geometry

CVE-2026-114124 / GHSA-h3v5-h239-pg29

More information

Details

Impact

In offscreen rendering mode on macOS, frame data received from the GPU process was not fully validated by the main process. A compromised GPU process could cause the main process to read out-of-bounds memory while producing paint event images, disclosing memory or crashing the app. GHSA-pfmc-3mgc-p6fp covers the same issue on the other capture paths.

Apps are only affected if they use offscreen rendering (webPreferences.offscreen) on macOS and an attacker has separately gained code execution in the GPU process. Apps that do not use offscreen rendering are not affected.

Workarounds

There are no app side workarounds, you must update to a patched version of Electron.

Fixed Versions
  • 45.0.0-alpha.9
  • 44.4.3
  • 43.7.3
  • 42.11.6
For more information

If you have any questions or comments about this advisory, email us at security@electronjs.org

Severity

  • CVSS Score: 3.9 / 10 (Low)
  • Vector String: CVSS:3.1/AV:L/AC:H/PR:H/UI:N/S:C/C:L/I:N/A:L

References

This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).


Electron: Pointer lock permission requests can be attributed to the wrong frame

CVE-2026-113798 / GHSA-x562-297c-g43g

More information

Details

Impact

For pointerLock permission requests made from some cross-origin iframes, session.setPermissionRequestHandler() was given the top-level frame's requestingUrl and isMainFrame instead of the requesting frame's. Apps that grant pointer lock based on the requesting origin could grant it to embedded content under the top-level page's identity.

Apps are only affected if they embed untrusted content in iframes and decide pointerLock requests by origin in setPermissionRequestHandler. Apps that do not embed untrusted content, or that deny pointerLock for it, are not affected.

Workarounds

Deny the pointerLock permission for web contents that embed untrusted frames.

Fixed Versions
  • 45.0.0-alpha.13
  • 44.5.0
  • 43.7.6
  • 42.11.9
For more information

If you have any questions or comments about this advisory, email us at security@electronjs.org

Severity

  • CVSS Score: 5.4 / 10 (Medium)
  • Vector String: CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:L/A:L

References

This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).


Electron: Mitigation for compromised eMudhra intermediate certificates

CVE-2026-115570 / GHSA-jr5w-w6x2-84p9

More information

Details

Impact

A set of eMudhra intermediate certificates were compromised and are being blocked by browsers and other TLS clients. This Electron update adds the same block to both Chromium networking and Node.js tls, https and fetch. On earlier versions, an attacker holding a certificate issued through these intermediates and able to intercept network traffic could impersonate a TLS server to an app.

Apps are only affected if they make TLS connections over a network an attacker can intercept. Apps that make no network connections are not affected.

Other software has shipped the same mitigation, including Go (CVE-2026-111943) and Firefox (CVE-2026-113470).

Workarounds

There are no app side workarounds, you must update to a patched version of Electron.

Fixed Versions
  • 45.0.0-beta.6
  • 44.9.1
  • 43.8.1
  • 42.11.16
For more information

If you have any questions or comments about this advisory, email us at security@electronjs.org

Severity

  • CVSS Score: 7.4 / 10 (High)
  • Vector String: CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N

References

This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).


Release Notes

electron/electron (electron)

v45.2.1: electron v45.2.1

Compare Source

Release Notes for v45.2.1

Other Changes

  • Backported fixes from upstream Chromium. #​55523
  • Updated Chromium to 156.0.8078.75. #​55419

v45.2.0: electron v45.2.0

Compare Source

Release Notes for v45.2.0

Features

  • Added Menu.setHighlightColors() to set menu highlight colors on Windows. #​55493 (Also in 46)
  • Added support for chrome.storage.sync in extensions. It behaves as a second local storage area with Chrome's sync quotas; there is no cross-device sync. #​55253

Fixes

  • Fixed DevTools "Save" prompting for a location every time instead of reusing the previously chosen file. #​55485
    • Fixed DevTools "Save As" using the old file and Linux cancels treated as saved.
  • Fixed fractional opacity being truncated in window.open feature strings. #​55499 (Also in 46)
  • Fixed webContents.adjustSelection() ignoring the end option. #​55462 (Also in 44, 46)

Performance Improvements

  • Improved performance of net.fetch() requests without a body. #​55446 (Also in 43, 44, 46)
  • Improved performance of repeated net.fetch() calls for file: URLs. #​55459 (Also in 44, 46)

Other Changes

  • Backported fixes from upstream Chromium, Dawn, Skia and V8. #​55491

v45.1.0: electron v45.1.0

Compare Source

Release Notes for v45.1.0

Features

  • Added filtering options to session.registerPreloadScript - matches, excludeMatches, includeGlobs, excludeGlobs, matchOriginAsFallback. #​55181 (Also in 44)

Fixes

  • Fixed a crash on Linux when a D-Bus method call was made on a disconnected bus. #​55292 (Also in 44, 46)
  • Fixed a main process crash when onSendHeaders observed Blob uploads. #​55169 (Also in 44)
  • Fixed extension chrome.webRequest events reporting a tabId of -1 and chrome.declarativeNetRequest rules restricted to tabs never matching. #​55283 (Also in 46)
    • Fixed session.clearStorageData() unregistering the service workers of loaded extensions.
    • Fixed chrome.management methods and events being unavailable to extensions with the management permission.
    • Fixed __MSG_*__ placeholders not being localized in extension stylesheets.
    • Fixed extension service workers being stopped after 30 seconds while a WebSocket was active.
    • Fixed sandboxed extension pages being hosted in a process with extension API privileges.
    • Fixed extension service workers running an outdated script after an app restart when the extension's files changed without a version change.
    • Fixed chrome.alarms and content scripts registered with persistAcrossSessions not persisting across app restarts.
  • Fixed File System Access blocklist gaps for .git/hooks writes and hypervisor UNC shares. #​55329
  • Fixed handling of malformed asar archives whose size fields do not match the file length. #​55175 (Also in 43, 44)
  • Fixed inconsistent handling of asar archive paths between the main process and child processes. #​55184 (Also in 43, 44)
  • Fixed Menu.popup() on macOS sometimes not showing a menu after another closed. #​55326 (Also in 44, 46)
  • Fixed MV3 extension events not arriving to background service workers. #​55154 (Also in 43, 44)
  • Fixed protocol.registerSource schemes not applying the same fetch rules as protocol.handle schemes. #​55178 (Also in 44)
  • Fixed requests stalling when an extension used a blocking chrome.webRequest listener. #​55271 (Also in 46)
  • Fixed utilityProcess not emitting an exit event when the app quit while the process was still launching. #​55274 (Also in 43, 44, 46)

Other Changes

v45.0.0: electron v45.0.0

Compare Source

Release Notes for v45.0.0

Stack Upgrades

Breaking Changes

  • Reduced sandboxed renderer startup work for preload scripts that do not use Buffer. #​54048
    • Removed the events, timers and url modules and the Buffer, setImmediate and clearImmediate globals from sandboxed preload scripts; use a polyfill.
    • Made sandboxed renderers without a preload script start faster.
    • Made sandboxed preload scripts start faster; Electron no longer evaluates a JavaScript bundle of its own in sandboxed renderers unless webviewTag is enabled.
  • With nodeIntegrationInWorker: true, a Worker created from an <iframe> in the same process as the main frame used to get Node.js integration even though the iframe itself had none. Workers now only get Node.js integration when the frame that creates them has it: the main frame, or any frame when nodeIntegrationInSubFrames is enabled.
  • A chrome-extension:// document used to receive the window's preload script (and session preload scripts) wherever it was embedded. It now only does so when it is a top-level frame or is hosted inside the DevTools front-end (a devtools_page or panel); an extension frame embedded in an ordinary page is treated like any other subframe and follows nodeIntegrationInSubFrames.
  • The legacy chromeMediaSource: 'desktop' constraint now only accepts screen and window source ids from desktopCapturer.getSources. Passing a WebContents source id there now fails with an "Invalid state" error. To capture a WebContents, use chromeMediaSource: 'tab' with an id from webContents.getMediaSourceId(), or use ses.setDisplayMediaRequestHandler.
  • The experimental contentTracing.enableHeapProfiling() API has been removed. Chromium removed the memlog implementation that backed this API and replaced it with a Perfetto heap-profiling data source. Pass a nativeHeapProfiling option to contentTracing.startRecording() to enable heap profiling for the duration of a trace. Like all recordings, heap-enabled recordings use the Perfetto protobuf format.
  • Changed heap profiling in contentTracing recordings to now use a perfetto heap-profiling data source. #​54863
  • Screen, window and tab capture requests are now reported to setPermissionRequestHandler as display-capture instead of media; a handler that allows only media must also allow display-capture to keep screen sharing working. #​52824
  • Chromium has disabled document.requestStorageAccessFor by default ahead of its removal. The API can temporarily be restored with the enableBlinkFeatures web preference set to RequestStorageAccessFor. See Chromium's intent to remove discussion for more information.
  • fs.open, fs.openSync and fs.promises.open on a file inside an ASAR archive used to extract the file to a temporary copy and return a descriptor for that copy. They now return a descriptor that only identifies the entry to Node's fs module, which reads directly out of the archive with no temporary file (fs.read, fs.readv, fs.fstat, fs.readFile(fd), fs.createReadStream and the FileHandle methods). The descriptor itself is not backed by the file's contents: code that reads the raw descriptor (a native addon, child_process stdio, net.Socket({ fd }), http2stream.respondWithFile() / respondWithFD(), a FileHandle transferred to a worker, ...) fails with EBADF and is not supported. Opening a file inside an archive with a flag that allows writing (w, a, r+, ...) now fails with EACCES instead of silently writing to the temporary copy, and fs.fchmod, fs.fchown and fs.futimes on these descriptors fail with EACCES.
  • A window.open() child whose sandbox state differs from its opener's renderer process is now created in its own process with no opener relationship instead of silently sharing the opener's process; set sandbox: false in setWindowOpenHandler to keep sharing an unsandboxed opener's process. #​52472
  • The synchronous safeStorage methods are deprecated and will be removed in Electron 46, following Chromium's removal of the synchronous OSCrypt backend they are built on. Use the asynchronous methods instead, which use the same per-platform key stores. Data encrypted with safeStorage.encryptString() can be decrypted with safeStorage.decryptStringAsync().
  • Added select-client-certificate event support for net.request and net.fetch; requests to servers requesting a client certificate no longer fail with ERR_SSL_CLIENT_AUTH_CERT_NEEDED, and applications can now select a certificate to present. #​52162 (Also in 44)
  • Clipboard module is now aligned with the W3C Clipboard API. #​51707 (Also in 44)
  • Removed 32-bit builds (Windows ia32 and Linux armv7l). Electron is now published only for 64-bit (x64 and arm64) platforms. #​51816 (Also in 44)
  • Removed openAsHidden option from app.setLoginItemSettings(). #​52351 (Also in 44)
    • Removed openAsHidden, wasOpenedAsHidden and restoreState fields from return value of app.getLoginItemSettings().
    • Fixed potential deadlock inside app.getLoginItemSettings() on macOS.
  • Updated the Linux support policy. #​52429 (Also in 44)

See the Breaking Changes doc for more details about these changes.

Features

  • Added a badge property to MenuItem on macOS 14+ for showing a count or custom text badge next to a menu item's label. #​50805 (Also in 43, 44)
  • Added a Save/Restore Window State API for cross-platform use. #​51510 (Also in 44)
  • Added a Windows Error Reporting helper (electron_wer.dll, renamed to <app>_wer.dll alongside the executable) so crashReporter captures __fastfail and other crashes that bypass the in-process handler on Windows. #​53851
  • Added app shims on macOS to show windows under another app's Dock icon. #​55072 (Also in 44)
  • Added app.configureWebAuthn() API to enable iCloud Keychain passkey support on macOS. When enabled, navigator.credentials.create() and .get() present Apple's native passkey UI via ASAuthorizationController. #​51563
  • Added available to process.getSystemMemoryInfo() on Linux, exposing proc/meminfo MemAvailable. #​52299 (Also in 42, 43, 44)
  • Added disableWakeLocks option to WebPreferences. #​52342
  • Added getIsolatedWorlds method and isolated-world-created event for webFrame to enable discovery of isolated worlds. #​50633
  • Added initiatorOrigin to webRequest and protocol handler requests, DownloadItem.getInitiatorOrigin(), and a trailing frame argument to the will-download and preconnect session events. #​53700 (Also in 43, 44)
  • Added launch-failure reporting with systemErrorCode to the app child-process-gone event. #​54230 (Also in 44)
  • Added support for Notification action buttons on Linux. #​54889 (Also in 44)
  • Added support for the Prompt API via the new localAIHandler module in UtilityProcess. #​50659
  • Added the ELECTRON_DEBUG_DRAGGABLE_REGIONS environment variable, which visualizes and logs draggable regions in unpackaged apps to help debug custom title bars. #​53626 (Also in 43, 44)
  • Added the experimental protocol.registerSource() to serve a custom scheme from directories on disk without a JavaScript handler. #​54521 (Also in 44)
  • Added webContents.caretBrowsingEnabled for toggling caret browsing in a WebContents. #​52696 (Also in 43, 44)
  • Added webFrameMain.printToPDF() to allow printing individual frames to PDF from the main process. #​52439 (Also in 42, 43, 44)
  • Fixed an issue where getDisplayMedia({ audio: { restrictOwnAudio: true } }) was ignored in setDisplayMediaRequestHandler, causing loopback audio to include local app playback. #​52455 (Also in 43, 44)
  • Frameless windows on Linux now use system-themed titlebar icons for Window Controls Overlay (WCO). #​52461 (Also in 44)
  • fs.open, fs.createReadStream, fs.copyFile, fs.cp and friends now read files inside ASAR archives directly from the archive instead of extracting a temporary copy; fs.opendir and fs.readlink work on archives; opening a packed file for writing fails with EACCES. #​52833
  • Restored app.setBadgeCount and win.setProgressBar for Linux. These APIs now support any dock or taskbar which implements the LauncherEntry D-Bus API, and they no longer require libunity. #​52739 (Also in 44)
  • The macOS autoUpdater now streams update downloads to disk, resumes an interrupted download on the next check instead of starting over, and applies a binary delta when the update feed offers one for the running version. #​52820 (Also in 44)

Fixes

  • <webview> and window.open now inherit nodeIntegrationInWorker from the embedder, consistent with the other Node and sandbox preferences. #​52823 (Also in 41, 42, 43, 44)
  • <webview> without allowpopups also blocks links opened into a new window by modifier-click, and such windows navigate as the clicking document rather than as a browser-initiated load. #​53717 (Also in 42, 43, 44)
  • Added validation to protocol.registerSchemesAsPrivileged() to reject protocol names that do not conform to RFC 3986 URI scheme grammar. #​53742 (Also in 44)
  • Changed the default trash implementation on KDE Plasma 6 to kioclient. #​54362 (Also in 44)
  • DevTools zoom in/out now uses the same zoom steps as Chromium. #​54388 (Also in 44)
  • File System Access permission requests and the file-system-access-restricted event are scoped to the requesting document, grants are reset when the origin's last page closes, and write access works in in-memory sessions. #​53690 (Also in 42, 43, 44)
  • Fixed --xdg-portal-required-version having no effect and a spurious portal warning being logged for file dialogs on Linux. #​54302 (Also in 43, 44)
  • Fixed <select> dropdowns not rendering in offscreen windows on macOS. #​53716
  • Fixed a 1-in-200 chance per renderer process on Windows of scripts on the first page load being compiled without their V8 code cache. #​52791 (Also in 42, 43, 44)
  • Fixed a browser process crash that could occur during Windows logoff, shutdown, or restart. #​52604 (Also in 42, 43, 44)
  • Fixed a browser-process crash (ValidateIntegrityOrDie) and spurious preload ENOENT errors when an app's app.asar is replaced on disk (e.g. by an updater or MDM software) while the app is running. #​52283 (Also in 42, 43, 44)
  • Fixed a bug where content-protected windows could temporarily appear in screen captures during picture-in-picture state changes. #​54612
  • Fixed a child WebContentsView losing focus when its window is reactivated. #​54454 (Also in 43, 44)
  • Fixed a crash in systemPreferences.promptTouchID(reason) when an invalid reason value is passed. #​52764 (Also in 42, 43, 44)
  • Fixed a crash on Linux at startup or on theme change with GTK modules loaded. #​55017
  • Fixed a crash on Linux when process.env was written while another thread was reading the environment, and a memory leak when a worker thread exits. #​53508 (Also in 42, 43, 44)
  • Fixed a crash on Linux when the D-Bus session bus disconnected while the app was running, such as at logout or when dbus is restarted. #​53022 (Also in 42, 43, 44)
  • Fixed a crash on macOS when a notification's icon could not be attached; the notification is now shown without the icon. #​53131 (Also in 42, 43, 44)
  • Fixed a crash on macOS when a WebAuthn Touch ID prompt was requested while no locale resources were loaded. #​53185 (Also in 43, 44)
  • Fixed a crash on navigator.usb.requestDevice() in in-memory sessions. #​54615 (Also in 44)
  • Fixed a crash on Windows when V8 posted a delayed worker task during shutdown. #​52956 (Also in 42, 43, 44)
  • Fixed a crash report when the X server or Wayland compositor exits while an app is running. #​52603 (Also in 42, 43, 44)
  • Fixed a crash that could occur when closing DevTools while the host WebContents was being destroyed. #​52166 (Also in 41, 42, 43, 44)
  • Fixed a crash when a WebAuthn request used a security key that required its PIN. #​54371 (Also in 43, 44)
  • Fixed a crash when a webContents navigated to the Chrome Web Store and the page invoked the unsupported chrome.webstorePrivate API. #​53775 (Also in 44)
  • Fixed a crash when accessing frame details during cross-origin navigation. #​53102 (Also in 44)
  • Fixed a crash when calling node:wasi functions in optimized code. #​53266 (Also in 42, 43, 44)
  • Fixed a crash when calling setIgnoreMenuShortcuts() on DevTools. #​54115 (Also in 43, 44)
  • Fixed a crash when calling utilityProcess.postMessage() after the utility process had exited. #​53299 (Also in 43, 44)
  • Fixed a crash when creating a framed window on Wayland in environments where GTK could not initialize. #​54399 (Also in 43, 44)
  • Fixed a crash when quickly switching menus while the app is under heavy load. #​52598 (Also in 42, 43, 44)
  • Fixed a crash when resolving a path inside a malformed ASAR archive that contains cyclic link entries. #​52825 (Also in 42, 43, 44)
  • Fixed a crash when sending a DevTools protocol command with a non-string value for an optional string parameter via webContents.debugger. #​54444 (Also in 43, 44)
  • Fixed a crash when showing Linux message boxes while another Linux UI implementation was active. #​52238 (Also in 42, 43, 44)
  • Fixed a crash when starting without an available display server on Linux. #​54781
  • Fixed a crash with app.setLoginItemSettings if a non-UTF8 service name is used. #​52773 (Also in 42, 43, 44)
  • Fixed a graphical glitch on Linux where thin borders appeared past the drop shadows on frameless windows when multiple windows were created. #​52584 (Also in 42, 43, 44)
  • Fixed a grey border around frameless windows on Linux WMs without compositing. #​54392 (Also in 43, 44)
  • Fixed a Linux crash creating a window with a menu bar when GTK failed to load. #​54846 (Also in 43, 44)
  • Fixed a macOS File System Access blocklist bypass via /System/Volumes/Data paths. #​54678
  • Fixed a main process crash when a native API method was called with a this value of a different native type; it now throws a TypeError. #​54313 (Also in 43, 44)
  • Fixed a main-process crash when an app called loadURL() again right after a load failed because the renderer process exited before the page committed. #​53942 (Also in 43, 44)
  • Fixed a memory leak on Windows when app.getPreferredSystemLanguages() was called. #​53869 (Also in 43, 44)
  • Fixed a memory leak when creating BrowserWindows. #​52092 (Also in 42, 43, 44)
  • Fixed a pending read on a net.request chunked upload stream inside a protocol handler never settling when the request failed or was aborted. #​53368 (Also in 43, 44)
  • Fixed a possible crash (SIGABRT) during process exit when the process had loaded tls/https shortly before exiting, affecting app.exit() before ready and short-lived ELECTRON_RUN_AS_NODE / child_process.fork() scripts. #​52856 (Also in 42, 43, 44)
  • Fixed a possible crash during process exit when vm.Script or vm contexts created in the main process had been garbage collected shortly before quitting. #​54267 (Also in 43, 44)
  • Fixed a possible crash on Windows on ARM when powerMonitor is torn down. #​54384 (Also in 44)
  • Fixed a possible crash on Windows when a file dialog was shown for a window that was being closed at the same time. #​53586 (Also in 42, 43, 44)
  • Fixed a possible hang when pressing Esc while a <webview> is fullscreen. #​53744
  • Fixed a possible main process crash at quit when a session was created from JavaScript that runs during shutdown. #​52836 (Also in 42, 43, 44)
  • Fixed a potential crash during application shutdown. #​54526
  • Fixed a potential crash in contentTracing.stopRecording() when the trace file could not be written to the requested path. #​52793 (Also in 42, 43, 44)
  • Fixed a potential crash when cleaning up download items. #​54517
  • Fixed a potential crash when closing detached DevTools. #​54538
  • Fixed a potential crash when notifying user activation before the primary main frame was live. #​52215 (Also in 42, 43, 44)
  • Fixed a potential crash when using menu.popup with a frame from an offscreen rendered window. #​53242 (Also in 43, 44)
  • Fixed a potential UAF in app.getPreferredSystemLanguages() on Windows. #​53864 (Also in 43, 44)
  • Fixed a potential UAF when a select-usb-device handler destroys the requesting webContents. #​54008 (Also in 43, 44)
  • Fixed a rare crash in the main process when DevTools were opened and a garbage collection ran before the DevTools frontend finished loading. #​52847 (Also in 42, 43, 44)
  • Fixed a regression preventing from transparent frameless windows from being resized on Linux. #​52740 (Also in 43, 44)
  • Fixed a regression where a window created with a custom title can show an empty title after using back/forward navigation. #​53180 (Also in 42, 43, 44)
  • Fixed a renderer crash calling image.toPNG() from a sandboxed preload script. #​54501 (Also in 43, 44)
  • Fixed a renderer crash that could occur when printing from an iframe. #​53763 (Also in 43, 44)
  • Fixed a renderer crash when a page calls SpeechRecognition.available() or SpeechRecognition.install() with processLocally. #​52955 (Also in 42, 43, 44)
  • Fixed a renderer crash when a ResizeObserver loop-limit error handler modified layout. #​54289 (Also in 42, 43, 44)
  • Fixed a renderer crash when an array with a throwing property getter is passed across contextBridge, and several main/utility-process crashes when option objects passed to Electron APIs contain throwing accessors or Proxy traps. #​53069 (Also in 42, 43, 44)
  • Fixed a renderer crash when an iframe was removed right after loading with nodeIntegrationInSubFrames enabled and sandbox disabled, e.g. on pages that embed Meta Pixel. #​53883 (Also in 42, 43, 44)
  • Fixed a renderer crash when the main process sent IPC to, or a page navigated, a same-process window.open() child whose contextIsolation differed from its opener's. #​53538 (Also in 42, 43, 44)
  • Fixed a spurious node_init error being logged when creating a ShadowRealm with Node.js integration enabled. #​53578 (Also in 44)
  • Fixed a stale nativeTheme.shouldUseDarkColors after resetting themeSource. #​54648
  • Fixed a UAF with protocol.registerStreamProtocol when an error is emitted during a read. #​52474 (Also in 41, 42, 43, 44)
  • Fixed a WebContentsView staying blank after its window is shown when setBackgroundThrottling(false) was called while the window was hidden. #​52844 (Also in 42, 43, 44)
  • Fixed a window being marked hidden and background-throttled on macOS when covered by a transparent or click-through window. #​52365 (Also in 42, 43, 44)
  • Fixed accent-color-changed on Windows reporting a colour that differed from systemPreferences.getAccentColor(). #​54405 (Also in 44)
  • Fixed alignment of the text label and popup menu in the macOS save dialog. #​54144 (Also in 44)
  • Fixed an "Invalid guestInstanceId" error when removing a loaded <webview> from the DOM. #​54096 (Also in 42, 43, 44)
  • Fixed an intermittent crash (access violation) on Windows when an ASAR integrity violation is detected, so the process now exits with code 1 as intended. #​53438 (Also in 43, 44)
  • Fixed an intermittent crash at startup on Linux caused by a race between Pango and the main thread initializing fontconfig. #​53338 (Also in 43, 44)
  • Fixed an issue on Windows where the app process could fail to exit after app.quit() while a shell.openExternal() or shell.openPath() call was still waiting on a system "Open with" dialog. #​52888 (Also in 41, 43, 44)
  • Fixed an issue where a JavaScript out-of-memory crash could be reported from inside the crash-key handler instead of at the out-of-memory site. #​52591 (Also in 42, 43, 44)
  • Fixed an issue where an exception thrown by a property getter on an object passed through contextBridge was swallowed instead of being thrown back to the caller. #​53297 (Also in 43, 44)
  • Fixed an issue where clicks posted to a background app were dropped on macOS. #​54818 (Also in 42, 43, 44)
  • Fixed an issue where crashReporter.setUploadToServer() had no effect after crashReporter.start() was called. #​54519 (Also in 44)
  • Fixed an issue where loading ICO files from ASAR archives on Windows left temporary icon files behind. #​52424 (Also in 42, 43, 44)
  • Fixed an issue where notifications would sometimes not appear from certain long domains on Windows. #​54348
  • Fixed an issue where pages loaded in a detached WebContentsView wouldn't see the correct window size. #​53031 (Also in 42, 43, 44)
  • Fixed an issue where some values passed into requestSingleInstanceLock could result in a crash. #​52025 (Also in 42, 43, 44)
  • Fixed an issue where the browser-side check that blocks drag and drop between cross-site frames of the same page was disabled. #​53748 (Also in 43, 44)
  • Fixed an npm install failure with no recovery path when the OS blocked the native zip extractor from loading (for example, Windows Smart App Control). #​52748 (Also in 43, 44)
  • Fixed an uncatchable TypeError in net.fetch when receiving response headers with non-ASCII characters, and preserved multiple Set-Cookie headers. #​54671 (Also in 44)
  • Fixed app.disableHardwareAcceleration() not fully disabling GPU hardware usage on Windows starting from Electron 38. #​51817 (Also in 41, 42, 43, 44)
  • Fixed app.getGPUInfo('complete') stalling the GPU process for several seconds on some Windows systems. #​53645 (Also in 44)
  • Fixed app.getLoginItemSettings() not finding login items on Windows when the executable path contains spaces. #​54419
  • Fixed app.getRecentDocuments() omitting documents with non-ASCII paths on Windows. #​54385 (Also in 44)
  • Fixed application crash after a large number of IPC messages from renderers. #​53418 (Also in 42, 43, 44)
  • Fixed asar archives in non-ASCII folders failing to load on Linux. #​54848 (Also in 44)
  • Fixed BrowserWindow size corruption on Windows when created with explicit x/y on a secondary monitor whose DPI differs from the primary. #​51603 (Also in 42, 43, 44)
  • Fixed BrowserWindow.unmaximize() and restore() having no effect on Wayland when the window was maximized immediately after creation. #​53063 (Also in 42, 43, 44)
  • Fixed chrome.tabs.query() returning tab url and title to extensions without the tabs permission or host access, aligning with tabs.get. #​53353 (Also in 42, 43, 44)
  • Fixed clipboard.read(), readText() and has() resolving seconds late on Linux while the app was idle. #​54307 (Also in 42, 43, 44)
  • Fixed crash in sharedTexture module when GPU context becomes unavailable. #​49518 (Also in 42, 43, 44)
  • Fixed crash triggered by replacing an open application menu. #​52248 (Also in 41, 42, 43, 44)
  • Fixed crashes in setDisplayMediaRequestHandler when the granted frame had been destroyed or another tab was granted by id. #​53673 (Also in 42, 43, 44)
  • Fixed crashes in sharedTexture, service-worker ipcRenderer and utilityProcess.fork() caused by object lifetime bugs. #​53280 (Also in 43, 44)
  • Fixed crashes in the main process when a webRequest.onBeforeRequest listener redirected a CORS preflight request, and when calling net.fetch() with a webRequest-permission extension loaded. #​53302 (Also in 43, 44)
  • Fixed crashes when a webContents or parent window is destroyed while other APIs still reference it. #​53281 (Also in 43, 44)
  • Fixed crashes when certain app event handlers call back into Electron synchronously. #​53269 (Also in 43, 44)
  • Fixed Ctrl+Y not yanking text killed with Ctrl+K in text fields on macOS. #​53715 (Also in 44)
  • Fixed custom V8 snapshots (electron-mksnapshot, and the loadBrowserProcessSpecificV8Snapshot fuse) having no effect in the main process on macOS arm64, Linux x64 and Windows x64. #​52872 (Also in 42, 43, 44)
  • Fixed default protocol client APIs falsely returning true on Windows. #​53958 (Also in 43, 44)
  • Fixed desktopCapturer.getSources() leaving non-resizable windows resizable on macOS. #​54398 (Also in 43, 44)
  • Fixed DevTools device metrics overrides persisting indefinitely when a remote debugging client disconnected without clearing them. #​52254 (Also in 42, 43, 44)
  • Fixed DevTools popup and context menus not appearing when DevTools is hosted in a custom window via webContents.setDevToolsWebContents(). #​52205 (Also in 42, 43, 44)
  • Fixed dialog.showOpenDialog/dialog.showSaveDialog opening at an unusable location on Linux when defaultPath is a bare filename without a directory. #​52243 (Also in 42, 43, 44)
  • Fixed Dirent.parentPath being undefined for fs.readdir, fs.readdirSync, fs.glob, and fs.globSync with withFileTypes: true inside asar archives. #​51845 (Also in 42, 43, 44)
  • Fixed downloading files that live inside an asar archive, including saving a packed PDF from the built-in PDF viewer. #​52808 (Also in 42, 43, 44)
  • Fixed fs.constants.O_DIRECTORY, O_NOFOLLOW and O_DIRECT holding x86 values on Linux arm64 and armv7l, which made opening a directory fail with EINVAL, and made require('trace_events') behave the same on cross-compiled builds as on native ones. #​53321 (Also in 42, 43, 44)
  • Fixed fs.rmSync failing to remove read-only files on Windows. #​54190 (Also in 42, 43, 44)
  • Fixed GDK_BACKEND leaking into processes spawned by Electron apps on Linux. #​54424 (Also in 43, 44)
  • Fixed globalShortcut not working on GNOME Wayland by enabling Chromium's GlobalShortcutsPortalPreferredTrigger feature by default on Linux. #​52221 (Also in 43)
  • Fixed GPU shaders compiled by Skia not being cached between launches. #​54156 (Also in 44)
  • Fixed helper executables on macOS starting a second app instance when launched without a process type, for example through child_process.fork() with the runAsNode fuse disabled; fork() now throws in that configuration. #​53839 (Also in 44)
  • Fixed hidden windows continuing to render at full frame rate after setBackgroundThrottling(false) followed by setBackgroundThrottling(true). #​54339 (Also in 44)
  • Fixed interrupted macOS updates leaving a broken app behind. #​54843 (Also in 44)
  • Fixed link-opened windows not using the opener's session and webPreferences. #​55051 (Also in 42, 43, 44)
  • Fixed main process crashes when navigating to http://accessibility/ or http://devtools/, when using the LanguageModel API from a Worker with a local AI handler registered, when an extension background page used navigator.mediaDevices, and when calling SerialPort.forget() for a disconnected device. #​53325 (Also in 43, 44)
  • Fixed matchMedia('(display-mode: ...)') returning browser for window-controls-overlay, frameless, and fullscreen BrowserWindows. #​51396
  • Fixed mouse cursor missing over native dialogs in certain scenarios on Windows. #​54878 (Also in 44)
  • Fixed native addons deriving from node::ObjectWrap aborting during garbage collection on Node.js 24.19.0 and later. #​53391 (Also in 42, 43, 44)
  • Fixed net.fetch and session.fetch failing permanently with net::ERR_FAILED after the Network Service process restarts. #​54910 (Also in 42, 43, 44)
  • Fixed net.fetch() / net.request() spending seconds of main-process time buffering large streamed request bodies. #​54062 (Also in 44)
  • Fixed paste hanging indefinitely on Linux X11 until the app was restarted. #​54912
  • Fixed pointerLock permission requests from some iframes reporting the parent frame. #​54463 (Also in 42, 43, 44)
  • Fixed process.nextTick and promise callbacks queued in protocol/webRequest handlers running at the wrong time. #​54301
  • Fixed ready-to-show never firing for some hidden windows on Windows and Linux. #​54110 (Also in 43, 44)
  • Fixed region-qualified --lang values such as de-DE loading no locale resources on macOS, which left localized strings empty and could crash WebAuthn Touch ID prompts. #​53184 (Also in 42, 43, 44)
  • Fixed registerFileProtocol and registerHttpProtocol returning readable responses to cross-origin no-cors fetches; they now return opaque responses like protocol.handle. #​52822 (Also in 41, 42, 43, 44)
  • Fixed renderer crashes during garbage collection inside ShadowRealms. #​54864 (Also in 44)
  • Fixed select-hid-device presenting HID devices that could not be granted, which caused navigator.hid.requestDevice() to resolve with no device. #​52467 (Also in 44)
  • Fixed session.setPermissionCheckHandler receiving the top-level origin and a null webContents for hid and usb checks made from a subframe. #​53679 (Also in 42, 43, 44)
  • Fixed setCertificateVerifyProc occasionally not being applied to a request issued concurrently with the first request to a host. #​55045 (Also in 42, 43, 44)
  • Fixed setContentProtection(true) having no effect in Windows remote sessions. #​54499 (Also in 44)
  • Fixed setIgnoreMouseEvents() taking effect late on X11. #​54496 (Also in 43, 44)
  • Fixed setIgnoreMouseEvents(true) being undone by the next resize on X11. #​54394 (Also in 43, 44)
    • Added setIgnoreMouseEvents support on Wayland.
  • Fixed several non-functional DevTools integrations: the Security panel's "View certificate" button, Ctrl+wheel zooming inside DevTools, and DevTools keyboard shortcuts (e.g. F8) while the inspected page has focus. #​53471 (Also in 43, 44)
  • Fixed several object lifetime issues in Debugger, Menu, Tray, Notification, globalShortcut, utilityProcess, ServiceWorkerMain, WebFrameMain, webFrame, sharedTexture, systemPreferences, netLog, MessagePortMain, net.request and shell.openPath(). #​53805 (Also in 44)
  • Fixed shell.showItemInFolder() on Linux for paths containing #, ? or % when the file manager is reached over D-Bus. #​54386 (Also in 44)
  • Fixed spellcheck not initializing on Linux when the dictionary was already cached from a previous run. #​52712 (Also in 43, 44)
  • Fixed the built-in PDF viewer not rendering documents in in-memory sessions (partitions without the persist: prefix). #​52810 (Also in 42, 43, 44)
  • Fixed the default action label on Linux notifications not being localized. #​54402 (Also in 43, 44)
  • Fixed the GPU process being terminated in AppX/MSIX packaged apps on Windows when WebGPU fell back to SwiftShader. #​53174 (Also in 42, 43, 44)
  • Fixed the GPU process crash-looping on Windows when the sandbox cannot read the install folder; the folder is now reported instead. #​54483 (Also in 43, 44)
  • Fixed the PDF viewer failing to save an edited PDF with NotAllowedError: Third party iframes are not allowed to show a file picker. #​53326 (Also in 43, 44)
  • Fixed the primary instance being killed or receiving truncated arguments when a second instance passed a very long command line or large additionalData to app.requestSingleInstanceLock(). #​52628 (Also in 42, 43, 44)
  • Fixed the tray context menu not working for snap-confined apps because AppArmor blocked the /org/chromium/DbusMenu path. #​54102 (Also in 44)
  • Fixed the zoom level resetting on file: and other host-less pages after a location.hash change. #​54441 (Also in 43, 44)
  • Fixed Tray icons not appearing when running inside Flatpak or Snap sandboxes on Linux. #​53654 (Also in 44)
  • Fixed typing not working after closing an alert() or confirm() on Windows. #​54460 (Also in 43, 44)
  • Fixed Uncaught illegal access errors and renderer crashes when closing a same-process child window or removing an iframe with nodeIntegrationInSubFrames enabled, and when native modules use napi async work or thread-safe functions from such windows and frames. #​52964 (Also in 42, 43, 44)
  • Fixed unnecessary autofill popup creation for fields without datalist suggestions, which could cause input latency on macOS. #​52262 (Also in 41, 42, 43, 44)
  • Fixed utility process crashes at exit on Windows 11 24H2 and later. #​53038 (Also in 42, 43, 44)
  • Fixed utilityProcess dropping messages posted with process.parentPort.postMessage() right before the process exits. #​54956 (Also in 42, 43)
  • Fixed utilityProcess dropping stdout/stderr output that the child wrote immediately before exiting. #​54335 (Also in 42, 43, 44)
  • Fixed V8 code caching for https scripts loaded by file:// and custom-scheme pages. #​53746 (Also in 44)
  • Fixed visual zoom limits resetting on navigation and not applying to webviews. #​54438 (Also in 43, 44)
  • Fixed WebAssembly modules loaded from the code cache crashing or throwing RuntimeError: unreachable after updating between certain patch releases. #​54237 (Also in 42, 43, 44)
  • Fixed WebAuthn platform passkey requests on macOS hanging until the request timeout when an operation failed, and a potential crash when selecting between Touch ID and platform passkeys. #​52682
  • Fixed webContents emitting unresponsive right after the system wakes from sleep on Windows, and emitting responsive when a hung window was hidden rather than when it recovered. #​53760 (Also in 44)
  • Fixed webContents.capturePage() on offscreen windows returning an image resampled to the display's scale factor instead of rendered at the window's offscreen.deviceScaleFactor. #​53817 (Also in 43, 44)
  • Fixed webContents.executeJavaScript() with userGesture set not granting browser-side user activation, which could make activation-gated APIs fail. #​54959
  • Fixed webContents.executeJavaScriptInIsolatedWorld resolving with undefined when worldId was not an integer. #​53205 (Also in 43, 44)
  • Fixed webContents.on(), removeListener() and removeAllListeners() throwing "Object has been destroyed" for console-message listeners after the WebContents was destroyed. #​53495 (Also in 42, 43, 44)
  • Fixed webContents.print() honoring printBackground, duplexMode, and printer default duplex settings. #​52279 (Also in 42, 43, 44)
  • Fixed webview.findInPage() hanging when the host page also has an iframe. #​54585 (Also in 43, 44)
  • Fixed win.isFullScreen() being stale in fullscreen events on Windows. #​55008 (Also in 44)
  • Fixed win.setEnabled(false) and modal child windows not blocking input on Wayland. #​54448 (Also in 43, 44)
  • Fixed Window Controls Overlay caption buttons not rendering on Linux. #​52577 (Also in 44)
  • Fixed Window Controls Overlay CSS environment variables and navigator.windowControlsOverlay not being populated for WebContentsViews in a BaseWindow. #​53811 (Also in 44)
  • Fixed window state not being persisted when a window entered or left fullscreen, or was maximized or unmaximized, without also being moved or resized. #​53577 (Also in 44)
  • Fixed windows native message boxes being dismissed by other applications using invalid button ID. #​52812 (Also in 43, 44)
  • Fixed windows opened by a sandboxed top-level frame not inheriting the opener's sandbox restrictions. #​52841 (Also in 41, 42, 43, 44)
  • Fixed zoom in/out getting stuck after zooming past the 25%-500% range. #​54395 (Also in 43, 44)
    • Fixed setVisualZoomLevelLimits() shrinking pages when the minimum is under 1.
  • Fixed webContents.print() returning "Invalid printer settings" when print options are provided. #​52367 (Also in 43, 44)
  • Fixeed document title updates when using back/forward navigation using the same document without utilizing browserWindow.setTitle(). #​52089 (Also in 42, 43, 44)
  • getUserMedia with chromeMediaSource: 'desktop' no longer accepts WebContents source ids; use chromeMediaSource: 'tab' with webContents.getMediaSourceId() or setDisplayMediaRequestHandler to capture a WebContents. #​53708 (Also in 42, 43, 44)
  • Internal <webview>, window.close() and executeJavaScript reply IPCs are validated against the sending frame. #​53724 (Also in 42, 43, 44)
  • nodeIntegrationInWorker now applies only to workers created by frames that themselves have Node integration; enable nodeIntegrationInSubFrames to keep Node in workers created by subframes. #​53706 (Also in 42, 43, 44)
  • openExternal permission requests started by a frame that has since gone away are attributed to that frame's origin rather than to the navigating page. #​53696 (Also in 42, 43, 44)
  • pointerLock and keyboardLock permission requests now report the requesting frame, and execCommand('paste') requires user activation in the frame that calls it. #​53692 (Also in 42, 43, 44)
  • Reduced the cost of calling native methods and properties on BrowserWindow, BaseWindow, WebContents, WebFrameMain and View from JavaScript. #​54359
    • Fixed BaseWindow.setBounds() throwing when given a partial bounds object.
    • Improved the performance of app.getName(), app.name, app.getVersion() and app.getAppPath().

Performance Improvements

  • Fixed a stall of tens of milliseconds while creating the first BrowserWindow on Linux. #​52923 (Also in 42, 43, 44)
    • Improved the performance of file lookups inside ASAR archives and of large files served from them to the renderer.
    • Improved the performance of calls through contextBridge-exposed APIs.
    • Improved the performance of Buffer.allocUnsafe() and of large file reads in the main and utility processes.
    • Reduced the main-thread cost of sending large values through ipcRenderer, ipcMain handlers and webContents.send.
  • Fixed the app becoming unresponsive when a page has a very large number of app-region draggable elements. #​53596 (Also in 43, 44)
  • Improved application startup time on Linux by skipping GDK's OpenGL probe and loading FontConfig off the main thread during toolkit initialization. #​53070 (Also in 43, 44)
  • Improved cold-launch time on macOS by prefetching Electron's framework files. #​54528
  • Improved startup time of utilityProcess.fork(), child_process.fork() / ELECTRON_RUN_AS_NODE child processes and Node.js-enabled renderers. #​52873 (Also in 42, 43, 44)
  • Improved the error message when an asar integrity check fails to name the entry that failed. #​52600 (Also in 42, 43, 44)
  • Improved the performance of APIs that return rectangles, sizes, points and display objects. #​54213 (Also in 44)
  • Improved the performance of building and showing menus. #​53914
  • Improved the performance of fs operations and require() on files inside asar archives. #​53919 (Also in 44)
  • Improved the performance of session.getUserAgent(). #​54245 (Also in 44)
  • Improved throughput of responses that protocol.handle handlers return straight from net.fetch. #​53379 (Also in 44)
  • Page resources, fetch() calls and file:// loads in renderers no longer wait for the main process to be idle when no webRequest listeners or protocol interceptors are registered. #​53115 (Also in 42, 43, 44)
  • Reduced idle main-process CPU wakeups caused by Node.js timers and immediates. #​52862 (Also in 43, 44)
  • Reduced the macOS distribution size by shipping only the locale strings that Electron can actually use. #​52290
  • Renderer network requests no longer waited on the main process when the session's webRequest listeners only observe requests (onCompleted, onErrorOccurred, onSendHeaders, onBeforeRedirect, onResponseStarted) or are filtered to other resource types. #​53204 (Also in 44)
  • The first sandboxed BrowserWindow now starts in a renderer process launched ahead of time when the default session already exists, shortening the time from window creation to the page's first script; apps that open many windows can keep a spare renderer warm at all times with --enable-features=SpareRendererForSitePerProcess. #​53116 (Also in 44)

Other Changes

  • Backported fix from upstream V8. #​53987
  • Backported fixes from upstream ANGLE, Chromium, PDFium and V8. #​54220
  • Backported fixes from upstream ANGLE, Chromium, PDFium and V8. #​54897
  • Backported fixes from upstream ANGLE, Chromium, Skia and V8. #​53983
  • Backported fixes from upstream Chromium and V8. #​53765
  • Backported fixes from upstream Chromium and WebRTC. #​54656
  • Backported fixes from upstream Chromium, PDFium and V8. #​54084
  • Backported fixes from upstream Chromium, PDFium, Skia and V8. #​55145
  • Backported fixes from upstream Chromium, V8 and WebRTC. #​54664
  • Backported fixes from upstream Chromium. #​55031
  • Deprecated the synchronous safeStorage.isEncryptionAvailable(), safeStorage.encryptString() and safeStorage.decryptString() in favor of isAsyncEncryptionAvailable(), encryptStringAsync() and decryptStringAsync(). #​53850
  • Electron's internal JavaScript bundles are no longer listed in require('module').builtinModules or loadable through process.getBuiltinModule(). #​53624
  • Linux arm64, Windows arm64 and macOS x64 builds now start the main process from the embedded Node.js startup snapshot like the other platforms, improving startup time. #​52874 (Also in 42, 43, 44)
  • None (reverts an unreleased change). #​52323
  • Refactored mouse forwarding on Windows to fix setIgnoreMouseEvents(true, { forward: true }) related issues. #​54803 (Also in 44)
  • The non-functional dummy libEGL.so and libGLESv2.so files are no longer included in the Linux distribution, now that ANGLE is statically linked. #​52226 (Also in 44)

Documentation

Notices

End of Support for 42.x.y

Electron 42.x.y has reached end-of-support as per the project's support policy. Developers and applications are encouraged to upgrade to a newer version of Electron.

v44.10.1: electron v44.10.1

Compare Source

Release Notes for v44.10.1

Fixes

  • Fixed DevTools "Save" prompting for a location every time instead of reusing the previously chosen file. #​55484
    • Fixed DevTools "Save As" using the old file and Linux cancels treated as saved.
  • Fixed webContents.adjustSelection() ignoring the end option. #​55461 (Also in 45, 46)

Performance Improvements

  • Improved performance of net.fetch() requests without a body. #​55445 (Also in 43, 45, 46)
  • Improved performance of repeated net.fetch() calls for file: URLs. #​55458 (Also in 45, 46)

Other Changes

  • Backported fixes from upstream Chromium, Dawn, Skia and V8. #​55492

v44.10.0: electron v44.10.0

Compare Source

Release Notes for v44.10.0

Features

  • Added filtering options to session.registerPreloadScript - matches, excludeMatches, includeGlobs, excludeGlobs, matchOriginAsFallback. #​55182 (Also in 45)

Fixes

  • Fixed a crash on Linux when a D-Bus method call was made on a disconnected bus. #​55290 (Also in 45, 46)
  • Fixed a main process crash when onSendHeaders observed Blob uploads. #​55168 (Also in 45)
  • Fixed app.getLoginItemSettings() not finding login items on Windows when the executable path contains spaces. #​55207 (Also in 45)
  • Fixed Europe/London and Europe/Dublin time zone names showing as "GMT+00:00" in winter by updating ICU to tzdata 2026e. #​55335
  • Fixed File System Access blocklist gaps for .git/hooks writes and hypervisor UNC shares. #​55330
  • Fixed handling of malformed asar archives whose size fields do not match the file length. #​55176 (Also in 43, 45)
  • Fixed inconsistent handling of asar archive paths between the main process and child processes. #​55183 (Also in 43, 45)
  • Fixed Menu.popup() on macOS sometimes not showing a menu after another closed. #​55325 (Also in 45, 46)
  • Fixed MV3 extension events not arriving to background service workers. #​55152 (Also in 43, 45)
  • Fixed paste hanging indefinitely on Linux X11 until the app was restarted. #​55327
  • Fixed protocol.registerSource schemes not applying the same fetch rules as protocol.handle schemes. #​55177 (Also in 45)
  • Fixed utilityProcess not emitting an exit event when the app quit while the process was still launching. #​55273 (Also in 43, 45, 46)

Other Changes

v44.9.3: electron v44.9.3

Compare Source

Release Notes for v44.9.3

Other Changes

  • Backported fixes from upstream ANGLE, Chromium, PDFium, Skia and V8. #​55149

v44.9.2: electron v44.9.2

Compare Source

Release Notes for v44.9.2

v44.9.1: electron v44.9.1

Compare Source

Release Notes for v44.9.1

[!NOTE]
This release contains the fix for https://github.com/electron/electron/security/advisories/GHSA-jr5w-w6x2-84p9, the mitigation for compromised eMudhra intermediate certificates

v44.9.0: electron v44.9.0

Compare Source

Release Notes for v44.9.0

Features

  • Added app shims on macOS to show windows under another app's Dock icon. #​55073 (Also in 45)

Fixes

  • Fixed link-opened windows not using the opener's session and webPreferences. #​55048 (Also in 42, 43, 45)
  • Fixed setCertificateVerifyProc occasionally not being applied to a request issued concurrently with the first request to a host. #​55046 (Also in 42, 43, 45)

v44.8.0: electron v44.8.0

Compare Source

Release Notes for v44.8.0

Features

  • Added support for Notification action buttons on Linux. #​54890 (Also in 45)

Fixes

  • Fixed mouse cursor missing over native dialogs in certain scenarios on Windows. #​54987
  • Fixed net.fetch and session.fetch failing permanently with net::ERR_FAILED after the Network Service process restarts. #​54909 (Also in 42, 43, 45)
  • Fixed utilityProcess dropping messages posted with process.parentPort.postMessage() right before the process exits. #​54960 (Also in 42, 43, 45)
  • Fixed win.isFullScreen() being stale in fullscreen events on Windows. #​55009 (Also in 45)

Other Changes

  • Backported fixes from upstream Chromium and V8. #​55034
  • Updated Chromium to 152.0.7977.167. #​54928
  • Updated Node.js to v24.22.0. #​55004

v44.7.2: electron v44.7.2

Compare Source

Release Notes for v44.7.2

Fixes

  • Fixed an issue where clicks posted to a background app were dropped on macOS. #​54819 (Also in 45)
  • Fixed interrupted macOS updates leaving a broken app behind. #​54844 (Also in 45)

Other Changes

  • Backported fixes from upstream ANGLE, Chromium, PDFium and V8. #​54898

Documentation

v44.7.1: electron v44.7.1

Compare Source

Release Notes for v44.7.1

Fixes

  • Fixed a crash when starting without an available display server on Linux. #​54794 (Also in 45)
  • Fixed a Linux crash creating a window with a menu bar when GTK failed to load. #​54859 (Also in 45)
  • Fixed a WebContentsView that was removed with removeChildView() and re-added with addChildView() staying hidden behind its sibling views on Linux. #​54798
  • Fixed asar archives in non-ASCII folders failing to load on Linux. #​54849 (Also in 45)
  • Fixed renderer crashes during garbage collection inside ShadowRealms. #​54865 (Also in 45)

Other Changes

  • Refactored mouse forwarding on Windows to fix setIgnoreMouseEvents(true, { forward: true }) related issues. #​54802 (Also in 45)
  • Updated Chromium to 152.0.7977.149. #​54085

v44.7.0: electron v44.7.0

Compare Source

Release Notes for v44.7.0

Features

  • The macOS autoUpdater now streams update downloads to disk, resumes an interrupted download on the next check instead of starting over, and applies a binary delta when the update feed offers one for the running version. #​54204

Fixes

  • Fixed an uncatchable TypeError in net.fetch when receiving response headers with non-ASCII characters, and preserved multiple Set-Cookie headers. #​54672

Other Changes

  • Backported fixes from upstream ANGLE, Chromium, Dawn, fontconfig, Skia, V8 and WebRTC. #​54666
  • Backported fixes from upstream ANGLE, Chromium, Skia, V8 and WebRTC. #​54657

v44.6.0: electron v44.6.0

Compare Source

Release Notes for v44.6.0

Features

  • Added the experimental protocol.registerSource() to serve a custom scheme from directories on disk without a JavaScript handler. #​54522 (Also in 45)

Fixes

  • Fixed a crash on launch on macOS when the system refused to register the app for sleep/wake notifications. #​54596
  • Fixed a crash on navigator.usb.requestDevice() in in-memory sessions. #​54616 (Also in 45)
  • Fixed webview.findInPage() hanging when the host page also has an iframe. #​54586 (Also in 43, 45)
  • Updated time zone data to tzdata 2026d, including British Columbia's move to permanent UTC-7. #​54623

Documentation

v44.5.1: electron v44.5.1

Compare Source

Release Notes for v44.5.1

Other Changes

  • Backported fixes from upstream ANGLE, Chromium, Dawn and V8. #​54564

v44.5.0: electron v44.5.0

Compare Source

Release Notes for v44.5.0

Features

  • Added launch-failure reporting with systemErrorCode to the app child-process-gone event. #​54231 (Also in 45)

Fixes

  • Changed the default trash implementation on KDE Plasma 6 to kioclient. #​54361 (Also in 45)
  • DevTools zoom in/out now uses the same zoom steps as Chromium. #​54387 (Also in 45)
  • Fixed --xdg-portal-required-version having no effect and a spurious portal warning being logged for file dialogs on Linux. #​54303 (Also in 43, 45)
  • Fixed a child WebContentsView losing focus when its window is reactivated. #​54455 (Also in 43, 45)
  • Fixed a crash when a WebAuthn request used a security key that required its PIN. #​54403 (Also in 45)
  • Fixed a crash when creating a framed window on Wayland in environments where GTK could not initialize. #​54420 (Also in 45)
  • Fixed a crash when sending a DevTools protocol command with a non-string value for an optional string parameter via webContents.debugger. #​54445 (Also in 43, 45)
  • Fixed a GPU process crash on startup when another instance of the app is using the same session data directory. #​54469
  • Fixed a grey border around frameless windows on Linux WMs without compositing. #​54391 (Also in 43, 45)
  • Fixed a main process crash when a native API method was called with a this value of a different native type; it now throws a TypeError. #​54315 (Also in 43)
  • Fixed a possible crash during process exit when vm.Script or vm contexts created in the main process had been garbage collected shortly before quitting. #​54266 (Also in 43, 45)
  • Fixed a possible crash on Windows on ARM when powerMonitor is torn down. #​54408 (Also in 45)
  • Fixed a renderer crash calling image.toPNG() from a sandboxed preload script. #​54502 (Also in 43, 45)
  • Fixed a renderer crash when a ResizeObserver loop-limit error handler modified layout. #​54290 (Also in 45)
  • Fixed accent-color-changed on Windows reporting a colour that differed from systemPreferences.getAccentColor(). #​54409 (Also in 45)
  • Fixed an issue where crashReporter.setUploadToServer() had no effect after crashReporter.start() was called. #​54518 (Also in 45)
  • Fixed app.getRecentDocuments() omitting documents with non-ASCII paths on Windows. #​54407 (Also in 45)
  • Fixed clipboard.read(), readText() and has() resolving seconds late on Linux while the app was idle. #​54308 (Also in 42, 43, 45)
  • Fixed desktopCapturer.getSources() leaving non-resizable windows resizable on macOS. #​54397 (Also in 43, 45)
  • Fixed fs.rmSync failing to remove read-only files on Windows. #​54255 (Also in 42, 43, 45)
  • Fixed GDK_BACKEND leaking into processes spawned by Electron apps on Linux. #​54425 (Also in 43, 45)
  • Fixed hidden windows continuing to render at full frame rate after setBackgroundThrottling(false) followed by setBackgroundThrottling(true). #​54341 (Also in 45)
  • Fixed pointerLock permission requests from some iframes reporting the parent frame. #​54464 (Also in 42, 43, 45)
  • Fixed setContentProtection(true) having no effect in Windows remote sessions. #​54500 (Also in 45)
  • Fixed setIgnoreMouseEvents() taking effect late on X11. #​54497 (Also in 43, 45)
  • Fixed setIgnoreMouseEvents(true) being undone by the next resize on X11. #​54393 (Also in 43, 45)
    • Added setIgnoreMouseEvents support on Wayland.
  • Fixed shell.showItemInFolder() on Linux for paths containing #, ? or % when the file manager is reached over D-Bus. #​54406 (Also in 45)
  • Fixed the default action label on Linux notifications not being localized. #​54401 (Also in 43, 45)
  • Fixed the GPU process crash-looping on Windows when the sandbox cannot read the install folder; the folder is now reported instead. #​54484 (Also in 43, 45)
  • Fixed the zoom level resetting on file: and other host-less pages after a location.hash change. #​54442 (Also in 43, 45)
  • Fixed typing not working after closing an alert() or confirm() on Windows. #​54461 (Also in 43, 45)
  • Fixed utilityProcess dropping stdout/stderr output that the child wrote immediately before exiting. #​54278 (Also in 42, 43, 45)
  • Fixed visual zoom limits resetting on navigation and not applying to webviews. #​54449 (Also in 43, 45)
  • Fixed WebAssembly modules loaded from the code cache crashing or throwing RuntimeError: unreachable after updating between certain patch releases. #​54246 (Also in 42, 43, 45)
  • Fixed win.setEnabled(false) and modal child windows not blocking input on Wayland. #​54447 (Also in 43, 45)
  • Fixed zoom in/out getting stuck after zooming past the 25%-500% range. #​54421 (Also in 43, 45)
    • Fixed setVisualZoomLevelLimits() shrinking pages when the minimum is under 1.

Performance Improvements

  • Improved the performance of APIs that return rectangles, sizes, points and display objects. #​54215 (Also in 45)
  • Improved the performance of session.getUserAgent(). #​54244 (Also in 45)

Documentation

v44.4.5: electron v44.4.5

Compare Source

Release Notes for v44.4.5

Other Changes

  • Backported fixes from upstream ANGLE, Chromium, Dawn, PDFium and V8. #​54222

v44.4.4: electron v44.4.4

Compare Source

Release Notes for v44.4.4

Fixes

  • Fixed a Cannot read properties of undefined (reading 'startTime') error thrown in pages while the DevTools Performance panel's live metrics were active. #​54162
  • Fixed a crash when calling setIgnoreMenuShortcuts() on DevTools. #​54116 (Also in 43, 45)
  • Fixed a spurious "sandboxed_renderer.bundle.js script failed to run" console error when DevTools attached to a sandboxed frame before its first navigation. #​54155 (Also in 42, 43)
  • Fixed alignment of the text label and popup menu in the macOS save dialog. #​54143 (Also in 45)
  • Fixed an "Invalid guestInstanceId" error when removing a loaded <webview> from the DOM. #​54099 (Also in 42, 43, 45)
  • Fixed GPU shaders compiled by Skia not being cached between launches. #​54161 (Also in 45)
  • Fixed ready-to-show never firing for some hidden windows on Windows and Linux. #​54118 (Also in 43, 45)
  • Fixed the tray context menu not working for snap-confined apps because AppArmor blocked the /org/chromium/DbusMenu path. #​54103 (Also in 45)

v44.4.3: electron v44.4.3

Compare Source

Release Notes for v44.4.3

Fixes

  • Fixed net.fetch() / net.request() spending seconds of main-process time buffering large streamed request bodies. #​54061 (Also in 45)

Performance Improvements

  • Improved the performance of fs operations and require() on files inside asar archives. #​54051 (Also in 45)

Other Changes

  • Backported fixes from upstream Chromium, PDFium, Skia and V8. #​54081

v44.4.2: electron v44.4.2

Compare Source

Release Notes for v44.4.2

Fixes

  • Fixed a potential UAF when a select-usb-device handler destroys the requesting webContents. #​54009 (Also in 43, 45)

Other Changes

  • Backported fixes from upstream ANGLE, Chromium, Skia and V8. #​53985
  • Updated Chromium to 152.0.7977.130. #​53778

v44.4.1: electron v44.4.1

Compare Source

Release Notes for v44.4.1

Fixes

  • Fixed default protocol client APIs falsely returning true on Windows. #​53959 (Also in 43, 45)
  • Fixed several object lifetime issues in Debugger, Menu, Tray, Notification, globalShortcut, utilityProcess, ServiceWorkerMain, WebFrameMain, webFrame, sharedTexture, systemPreferences, netLog, MessagePortMain, net.request and shell.openPath(). #​53968 (Also in 45)

v44.4.0: electron v44.4.0

Compare Source

Release Notes for v44.4.0

Features

  • Added initiatorOrigin to webRequest and protocol handler requests, DownloadItem.getInitiatorOrigin(), and a trailing frame argument to the will-download and preconnect session events. #​53703 (Also in 43, 45)

Fixes

  • Added validation to protocol.registerSchemesAsPrivileged() to reject protocol names that do not conform to RFC 3986 URI scheme grammar. #​53743 (Also in 45)
  • Fixed a crash when a webContents navigated to the Chrome Web Store and the page invoked the unsupported chrome.webstorePrivate API. #​53776 (Also in 45)
  • Fixed a main-process crash when an app called loadURL() again right after a load failed because the renderer process exited before the page committed. #​53943 (Also in 43, 45)
  • Fixed a memory leak on Windows when app.getPreferredSystemLanguages() was called. #​53868 (Also in 43, 45)
  • Fixed a potential UAF in app.getPreferredSystemLanguages() on Windows. #​53865 (Also in 43, 45)
  • Fixed a renderer crash that could occur when printing from an iframe. #​53762 (Also in 43, 45)
  • Fixed a renderer crash when an iframe was removed right after loading with nodeIntegrationInSubFrames enabled and sandbox disabled, e.g. on pages that embed Meta Pixel. #​53885 (Also in 42, 43, 45)
  • Fixed a Windows renderer crash when no default locale could be determined. #​53947
  • Fixed an issue where the browser-side check that blocks drag and drop between cross-site frames of the same page was disabled. #​53749 (Also in 43, 45)
  • Fixed helper executables on macOS starting a second app instance when launched without a process type, for example through child_process.fork() with the runAsNode fuse disabled; fork() now throws in that configuration. #​53840 (Also in 45)
  • Fixed V8 code caching for https scripts loaded by file:// and custom-scheme pages. #​53745 (Also in 45)
  • Fixed webContents emitting unresponsive right after the system wakes from sleep on Windows, and emitting responsive when a hung window was hidden rather than when it recovered. #​53764 (Also in 45)
  • Fixed webContents.capturePage() on offscreen windows returning an image resampled to the display's scale factor instead of rendered at the window's offscreen.deviceScaleFactor. #​53816 (Also in 43, 45)
  • Fixed Window Controls Overlay CSS environment variables and navigator.windowControlsOverlay not being populated for WebContentsViews in a BaseWindow. #​53812 (Also in 45)

Other Changes

  • Backported fixes from upstream ANGLE, Chromium, libyuv, PDFium and V8. #​53769
  • Updated Node.js to v24.21.0. #​53779

v44.3.0: electron v44.3.0

Compare Source

Release Notes for v44.3.0

Features

  • Added the ELECTRON_DEBUG_DRAGGABLE_REGIONS environment variable, which visualizes and logs draggable regions in unpackaged apps to help debug custom title bars. #​53627 (Also in 43, 45)

Fixes

  • File System Access permission requests and the file-system-access-restricted event are scoped to the requesting document, grants are reset when the origin's last page closes, and write access works in in-memory sessions. #​53691 (Also in 42, 43, 45)
  • Fixed Ctrl+Y not yanking text killed with Ctrl+K in text fields on macOS. #​53714 (Also in 45)
  • Fixed Tray icons not appearing when running inside Flatpak or Snap sandboxes on Linux. #​53653 (Also in 45)
  • Fixed app.getGPUInfo('complete') stalling the GPU process for several seconds on some Windows systems. #​53644 (Also in 45)
  • Fixed session.setPermissionCheckHandler receiving the top-level origin and a null webContents for hid and usb checks made from a subframe. #​53688 (Also in 42, 43, 45)
  • Fixed webContents.on(), removeListener() and removeAllListeners() throwing "Object has been destroyed" for console-message listeners after the WebContents was destroyed. #​53494 (Also in 42, 43, 45)
  • Fixed a crash on Linux when process.env was written while another thread was reading the environment, and a memory leak when a worker thread exits. #​53509 (Also in 42, 43, 45)
  • Fixed a possible crash on Windows when a file dialog was shown for a window that was being closed at the same time. #​53583 (Also in 42, 43, 45)
  • Fixed a renderer crash when the main process sent IPC to, or a page navigated, a same-process window.open() child whose contextIsolation differed from its opener's. #​53539 (Also in 42, 43, 45)
  • Fixed a spurious node_init error being logged when creating a ShadowRealm with Node.js integration enabled. #​53579 (Also in 45)
  • Fixed crashes in setDisplayMediaRequestHandler when the granted frame had been destroyed or another tab was granted by id. #​53672 (Also in 42, 43, 45)
  • Fixed several non-functional DevTools integrations: the Security panel's "View certificate" button, Ctrl+wheel zooming inside DevTools, and DevTools keyboard shortcuts (e.g. F8) while the inspected page has focus. #​53630 (Also in 43, 45)
  • Fixed window state not being persisted when a window entered or left fullscreen, or was maximized or unmaximized, without also being moved or resized. #​53576 (Also in 45)
  • Internal <webview>, window.close() and executeJavaScript reply IPCs are validated against the sending frame. #​53723 (Also in 42, 43, 45)
  • <webview> without allowpopups also blocks links opened into a new window by modifier-click, and such windows navigate as the clicking document rather than as a browser-initiated load. #​53721 (Also in 42, 43, 45)
  • getUserMedia with chromeMediaSource: 'desktop' no longer accepts WebContents source ids; use chromeMediaSource: 'tab' with webContents.getMediaSourceId() or setDisplayMediaRequestHandler to capture a WebContents. #​53709 (Also in 42, 43, 45)
  • nodeIntegrationInWorker now applies only to workers created by frames that themselves have Node integration; enable nodeIntegrationInSubFrames to keep Node in workers created by subframes. #​53711 (Also in 42, 43, 45)
  • openExternal permission requests started by a frame that has since gone away are attributed to that frame's origin rather than to the navigating page. #​53699 (Also in 42, 43, 45)
  • pointerLock and keyboardLock permission requests now report the requesting frame, and execCommand('paste') requires user activation in the frame that calls it. #​53693 (Also in 42, 43, 45)

Other Changes

  • Fixed the app becoming unresponsive when a page has a very large number of app-region draggable elements. #​53597 (Also in 43, 45)
  • Updated Chromium to 152.0.7977.78. #​53523

v44.2.0: electron v44.2.0

Compare Source

Release Notes for v44.2.0

Fixes

  • Fixed a pending read on a net.request chunked upload stream inside a protocol handler never settling when the request failed or was aborted. #​53373 (Also in 43, 45)
  • Fixed a potential crash when using menu.popup with a frame from an offscreen rendered window. #​53362 (Also in 43)
  • Fixed an intermittent crash (access violation) on Windows when an ASAR integrity violation is detected, so the process now exits with code 1 as intended. #​53455 (Also in 43, 45)
  • Fixed application crash after a large number of IPC messages from renderers. #​53417 (Also in 42, 43, 45)
  • Fixed native addons deriving from node::ObjectWrap aborting during garbage collection on Node.js 24.19.0 and later. #​53392 (Also in 42, 43, 45)

Other Changes

  • Backported fixes from upstream ANGLE, Chromium, Skia and V8. #​53479
  • Improved throughput of responses that protocol.handle handlers return straight from net.fetch. #​53378
  • Updated Chromium to 152.0.7977.76. #​53382
  • Updated Node.js to v24.20.0. #​53250

v44.1.1: electron v44.1.1

Compare Source

Release Notes for v44.1.1

Fixes

  • Fixed chrome.tabs.query() returning tab url and title to extensions without the tabs permission or host access, aligning with tabs.get. #​53354 (Also in 42, 43, 45)
  • Fixed a renderer crash when an array with a throwing property getter is passed across contextBridge, and several main/utility-process crashes when option objects passed to Electron APIs contain throwing accessors or Proxy traps. #​53331 (Also in 42, 43)
  • Fixed an intermittent crash at startup on Linux caused by a race between Pango and the main thread initializing fontconfig. #​53340 (Also in 43, 45)
  • Fixed an issue where an exception thrown by a property getter on an object passed through contextBridge was swallowed instead of being thrown back to the caller. #​53335 (Also in 43, 45)
  • Fixed main process crashes when navigating to http://accessibility/ or http://devtools/, when an extension background page used navigator.mediaDevices, and when calling SerialPort.forget() for a disconnected device. #​53333 (Also in 43, 45)
  • Fixed the PDF viewer failing to save an edited PDF with NotAllowedError: Third party iframes are not allowed to show a file picker. #​53328 (Also in 43, 45)

v44.1.0: electron v44.1.0

Compare Source

Release Notes for v44.1.0

Fixes

  • Fixed fs.constants.O_DIRECTORY, O_NOFOLLOW and O_DIRECT holding x86 values on Linux arm64 and armv7l, which made opening a directory fail with EINVAL, and made require('trace_events') behave the same on cross-compiled builds as on native ones. #​53320 (Also in 42, 43, 45)
  • Fixed webContents.executeJavaScriptInIsolatedWorld resolving with undefined when worldId was not an integer. #​53238 (Also in 43)
  • Fixed webContents.print() honoring printBackground, duplexMode, and printer default duplex settings. #​53159 (Also in 42, 43)
  • Fixed a crash on Windows when V8 posted a delayed worker task during shutdown. #​53201 (Also in 42, 43)
  • Fixed a crash on macOS when a WebAuthn Touch ID prompt was requested while no locale resources were loaded. #​53194 (Also in 43)
  • Fixed a crash on macOS when a notification's icon could not be attached; the notification is now shown without the icon. #​53146 (Also in 42, 43)
  • Fixed a crash when calling node:wasi functions in optimized code. #​53268 (Also in 42, 43, 45)
  • Fixed a crash when calling utilityProcess.postMessage() after the utility process had exited. #​53300 (Also in 43, 45)
  • Fixed a regression where a window created with a custom title can show an empty title after using back/forward navigation. #​53218 (Also in 42, 43)
  • Fixed an issue where pages loaded in a detached WebContentsView wouldn't see the correct window size. #​53153 (Also in 42, 43)
  • Fixed crashes in sharedTexture, service-worker ipcRenderer and utilityProcess.fork() caused by object lifetime bugs. #​53279 (Also in 43, 45)
  • Fixed crashes in the main process when a webRequest.onBeforeRequest listener redirected a CORS preflight request, and when calling net.fetch() with a webRequest-permission extension loaded. #​53303 (Also in 43, 45)
  • Fixed crashes when a webContents or parent window is destroyed while other APIs still reference it. #​53287 (Also in 43, 45)
  • Fixed crashes when certain app event handlers call back into Electron synchronously. #​53275 (Also in 43, 45)
  • Fixed region-qualified --lang values such as de-DE loading no locale resources on macOS, which left localized strings empty and could crash WebAuthn Touch ID prompts. #​53188 (Also in 42, 43)
  • Fixed the GPU process being terminated in AppX/MSIX packaged apps on Windows when WebGPU fell back to SwiftShader. #​53198 (Also in 42, 43)
  • Fixed the tray icon not appearing on GNOME (and disappearing entirely on Wayland) since 44.0.0-beta.6. #​53214
  • Fixed windows native message boxes being dismissed by other applications using invalid button ID. #​53154 (Also in 43)

Other Changes

  • Backported fixes from upstream Chromium and V8. #​53189
  • Page resources, fetch() calls and file:// loads in renderers no longer wait for the main process to be idle when no webRequest listeners or protocol interceptors are registered. #​53141 (Also in 42, 43)
  • Renderer network requests no longer waited on the main process when the session's webRequest listeners only observe requests (onCompleted, onErrorOccurred, onSendHeaders, onBeforeRedirect, onResponseStarted) or are filtered to other resource types. #​53240
  • Updated Chromium to 152.0.7977.65. #​53203
  • Updated Node.js to v24.19.0. #​52636

Documentation

v44.0.0: electron v44.0.0

Compare Source

Release Notes for v44.0.0

Stack Upgrades

Breaking Changes

  • Removed support for the Unity desktop environment on Linux. #​51649
  • Added select-client-certificate event support for net.request and net.fetch; requests to servers requesting a client certificate no longer fail with ERR_SSL_CLIENT_AUTH_CERT_NEEDED, and applications can now select a certificate to present. #​52397
  • macOS 12 (Monterey) is no longer supported by Chromium. Older versions of Electron will continue to run on Monterey, but macOS 13 (Ventura) or later will be required to run Electron v44.0.0 and higher. #​51967
  • ANGLE is now statically linked into the Electron binary on all platforms, matching upstream Chromium. The libEGL.(so|dylib|dll) and libGLESv2.(so|dylib|dll) libraries are no longer shipped in the distribution. #​52288
  • net.request now rejects requests where Sec-Fetch-Dest is document, frame, iframe, or fencedframe unless Sec-Fetch-Mode is also set to navigate. #​52216
  • Removed 32-bit builds (Windows ia32 and Linux armv7l). Electron is now published only for 64-bit (x64 and arm64) platforms. #​52326
  • The clipboard module is now aligned with the W3C Clipboard API and is no longer exposed to renderer processes. #​52508
  • Removed the openAsHidden option from app.setLoginItemSettings() and the openAsHidden, wasOpenedAsHidden and restoreState fields from the return value of app.getLoginItemSettings(). These only worked on macOS 12 and below, which are no longer supported. #​52667

See the Breaking Changes doc for more details about these changes.

Features

  • Added Notification.remove(), removeAll(), and removeGroup() static methods for macOS. #​51182 (Also in 42, 43)
  • Added available to process.getSystemMemoryInfo() on Linux, exposing proc/meminfo MemAvailable. #​52380 (Also in 42, 43)
  • Added net.WebSocket, a WHATWG-compatible WebSocket client for the main process that routes through Chromium's network stack. #​51593 (Also in 42, 43)
  • Added webContents.setZoomMode(mode), webContents.getZoomMode(), and webContents.zoomMode for per-WebContents zoom control. #​49962
  • Added webFrameMain.printToPDF() to allow printing individual frames to PDF from the main process. #​52625 (Also in 42, 43)
  • Added a Save/Restore Window State API for cross-platform use. #​52270
  • Added a badge property to MenuItem on macOS 14+ for showing a count or custom text badge next to a menu item's label. #​53046
  • Added support for win.setOpacity(opacity) on Linux. #​51455
  • Added webContents.caretBrowsingEnabled for toggling caret browsing in a WebContents. #​53035
  • Frameless windows on Linux now use system-themed titlebar icons for Window Controls Overlay (WCO). #​52531
  • Frameless windows on Linux now have rounded corners by default, just like on macOS and Windows. Rounded corners can be disabled on all platforms by setting roundedCorners: false on the window. #​51459 (Also in 43)
  • Restored app.setBadgeCount and win.setProgressBar for Linux. These APIs now support any dock or taskbar which implements the LauncherEntry D-Bus API, and they no longer require libunity. #​52895

Fixes

  • If a nativeImage was passed an image with a color profile, its pixel values will now be normalized to SRGB. This ensures that two visually identical images after color space application will receive similar pixel values when converted to a nativeImage. #​48178 (Also in 43)
  • Fixed DevTools Network panel missing most requests after navigating when webContents.debugger is attached. #​51959 (Also in 42, 43)
  • Fixed DevTools device metrics overrides persisting indefinitely when a remote debugging client disconnected without clearing them. #​52930 (Also in 42, 43)
  • Fixed DevTools popup and context menus not appearing when DevTools is hosted in a custom window via webContents.setDevToolsWebContents(). #​52434 (Also in 42, 43)
  • Fixed Window Controls Overlay caption buttons not rendering on Linux. #​52580
  • Fixed Windows edge case in NativeWindowViews::MoveBehindTaskBarIfNeeded(). #​52000 (Also in 41, 42, 43)
  • Fixed BrowserWindow.unmaximize() and restore() having no effect on Wayland when the window was maximized immediately after creation. #​53124 (Also in 42)
  • Fixed BrowserWindow size corruption on Windows when created with explicit x/y on a secondary monitor whose DPI differs from the primary. #​52499 (Also in 42, 43)
  • Fixed Dirent.parentPath being undefined for fs.readdir, fs.readdirSync, fs.glob, and fs.globSync with withFileTypes: true inside asar archives. #​52507 (Also in 42, 43)
  • Fixed ProtocolResponse.url requests being made through the default session instead of the session the protocol handler was registered on when ProtocolResponse.session was not set. #​52113 (Also in 40, 41, 42, 43)
  • Fixed Uncaught illegal access errors and possible renderer crashes after closing a same-process child window or removing an iframe with nodeIntegrationInSubFrames enabled. #​53040 (Also in 42)
  • Fixed app.disableHardwareAcceleration() not fully disabling GPU hardware usage on Windows starting from Electron 38. #​52370 (Also in 41, 42, 43)
  • Fixed dialog.showOpenDialog and dialog.showSaveDialog opening at an unusable location on Linux when defaultPath is a bare filename without a directory. #​52402 (Also in 42, 43)
  • Fixed registerFileProtocol and registerHttpProtocol returning readable responses to cross-origin no-cors fetches; they now return opaque responses like protocol.handle. #​52852 (Also in 41, 42, 43)
  • Fixed select-hid-device presenting HID devices that could not be granted, which caused navigator.hid.requestDevice() to resolve with no device. #​52497
  • Fixed a use-after-free crash with protocol.registerStreamProtocol when an error is emitted during a read. #​52515 (Also in 41, 42, 43)
  • Fixed a WebContentsView staying blank after its window is shown when setBackgroundThrottling(false) was called while the window was hidden. #​52863 (Also in 42, 43)
  • Fixed a browser process crash that could occur during Windows logoff, shutdown, or restart. #​52619 (Also in 42, 43)
  • Fixed a browser process crash when calling webContents.reload() or navigating synchronously from the render-process-gone event; the event is now emitted after the renderer's teardown notification has completed. #​51900 (Also in 41, 42, 43)
  • Fixed a browser-process crash (ValidateIntegrityOrDie) and spurious preload ENOENT errors when an app's app.asar is replaced on disk (e.g., by an updater or MDM software) while the app is running. #​52292 (Also in 42, 43)
  • Fixed a bug on Linux where a 1px line appeared at the top of a frameless window if the window and web contents had different background colors. #​51458 (Also in 41, 42, 43)
  • Fixed a crash in systemPreferences.promptTouchID(reason) when an invalid reason value is passed. #​52781 (Also in 42, 43)
  • Fixed a crash in the macOS Touch ID WebAuthn prompt caused by a missing string resource, and added touchID.promptReason to app.configureWebAuthn() to customize the prompt text. #​51592 (Also in 41, 42, 43)
  • Fixed a crash on Linux when the D-Bus session bus disconnected while the app was running, such as at logout or when dbus is restarted. #​53096 (Also in 42, 43)
  • Fixed a crash on MacOS when a user clicked into a title bar or top view. #​51586 (Also in 42, 43)
  • Fixed a crash report when the X server or Wayland compositor exits while an app is running. #​52684 (Also in 42, 43)
  • Fixed a crash that could occur when closing DevTools while the host WebContents was being destroyed. #​52509 (Also in 41, 42, 43)
  • Fixed a crash when accessing frame details during cross-origin navigation. #​53109
  • Fixed a crash when quickly switching menus while the app is under heavy load. #​52672 (Also in 42, 43)
  • Fixed a crash when resolving a path inside a malformed ASAR archive that contains cyclic link entries. #​52858 (Also in 42, 43)
  • Fixed a crash when showing Linux message boxes while another Linux UI implementation was active. #​52409 (Also in 42, 43)
  • Fixed a crash with app.setLoginItemSettings if a non-UTF8 service name is used. #​52801 (Also in 42, 43)
  • Fixed a graphical glitch on Linux where thin borders appeared past the drop shadows on frameless windows when multiple windows were created. #​52606 (Also in 42, 43)
  • Fixed a memory leak when creating BrowserWindows. #​52894 (Also in 42, 43)
  • Fixed a possible crash (SIGABRT) during process exit when the process had loaded tls/https shortly before exiting, affecting app.exit() before ready and short-lived ELECTRON_RUN_AS_NODE / child_process.fork() scripts. #​52871 (Also in 42, 43)
  • Fixed a possible main process crash at quit when a session was created from JavaScript running during shutdown. #​52924 (Also in 42, 43)
  • Fixed a potential crash in contentTracing.stopRecording() when the trace file could not be written to the requested path. #​52794 (Also in 42, 43)
  • Fixed a potential crash when notifying user activation before the primary main frame was live. #​52698 (Also in 42, 43)
  • Fixed a rare crash in the main process when DevTools were opened and a garbage collection ran before the DevTools frontend finished loading. #​52904 (Also in 42, 43)
  • Fixed a regression preventing transparent frameless windows from being resized on Linux. #​52891 (Also in 43)
  • Fixed a renderer crash when a page calls SpeechRecognition.available() or SpeechRecognition.install() with processLocally. #​53021 (Also in 42, 43)
  • Fixed a renderer crash when calling WebAssembly.compileStreaming() or WebAssembly.instantiateStreaming() with nodeIntegration enabled. #​51953 (Also in 41, 42, 43)
  • Fixed a window being marked hidden and background-throttled on macOS when covered by a transparent or click-through window. #​52391 (Also in 42, 43)
  • Fixed an npm install failure with no recovery path when the OS blocked the native zip extractor from loading (for example, Windows Smart App Control). #​52846 (Also in 43)
  • Fixed an issue on Linux and Windows where frameless windows would shrink when calling win.center(). Additionally, fixed an issue where frameless windows would appear slightly off-center on Windows. #​51732 (Also in 41, 42, 43)
  • Fixed an issue on Linux where the system theme color appeared at the top edge of frameless windows. #​52062 (Also in 41, 42, 43)
  • Fixed an issue on Windows where the app process could fail to exit after app.quit() while a shell.openExternal() or shell.openPath() call was still waiting on a system "Open with" dialog. #​52898 (Also in 41, 43)
  • Fixed an issue where process and other Node globals were undefined in ESM preload scripts when contextIsolation was disabled. #​51693 (Also in 42, 43)
  • Fixed an issue where a JavaScript out-of-memory crash could be reported from inside the crash-key handler instead of at the out-of-memory site. #​52724 (Also in 42, 43)
  • Fixed an issue where clicking the maximize button could progressively shrink the window in some Wayland environments. #​52012 (Also in 42, 43)
  • Fixed an issue where frameless windows windows could shrink after applying constraints or toggling resizability on Windows. #​51562 (Also in 42, 43)
  • Fixed an issue where loading ICO files from ASAR archives on Windows left temporary icon files behind. #​52477 (Also in 42, 43)
  • Fixed an issue where some values passed into requestSingleInstanceLock could result in a crash. #​52470 (Also in 42, 43)
  • Fixed an issue where the "Toggle Developer Tools" menu item failed to function correctly with BaseWindow. #​49356 (Also in 41, 42, 43)
  • Fixed a crash when calling close() on a notification within a close event on macOS. #​51597 (Also in 41, 42, 43)
  • Fixed a crash in the sharedTexture module when GPU context becomes unavailable. #​52926 (Also in 42, 43)
  • Fixed a crash triggered by replacing an open application menu. #​52277 (Also in 41, 42, 43)
  • Fixed custom V8 snapshots (electron-mksnapshot, and the loadBrowserProcessSpecificV8Snapshot fuse) having no effect in the main process on macOS arm64, Linux x64 and Windows x64. #​52878 (Also in 42, 43)
  • Fixed desktopCapturer thumbnail generation and premature portal timeout on Linux with Wayland. #​51674 (Also in 43)
  • Fixed downloading files that live inside an ASAR archive, including saving a packed PDF from the built-in PDF viewer. #​52827 (Also in 42, 43)
  • Fixed native addon compilation failure with undefined MSVC intrinsic from v8 headers. #​51695 (Also in 42, 43)
  • Fixed running under tsx import transpilation. #​51947 (Also in 41, 42, 43)
  • Fixed sandboxed preload scripts running a stale cached version after the script was modified without its file size changing. #​51930 (Also in 42, 43)
  • Fixed spellcheck not initializing on Linux when the dictionary was already cached from a previous run. #​52716
  • Fixed the Linux system accent color intermittently not being applied (systemPreferences.getAccentColor() returning an empty string on some launches). #​52574
  • Fixed the built-in PDF viewer not rendering documents in in-memory sessions (partitions without the persist: prefix). #​52834 (Also in 42, 43)
  • Fixed the context menu in a detached DevTools window focusing the inspected page's window instead of the DevTools window. #​51805 (Also in 41, 42, 43)
  • Fixed the primary instance being killed or receiving truncated arguments when a second instance passed a very long command line or large additionalData to app.requestSingleInstanceLock(). #​52950
  • Fixed titleBarOverlay.color set to rgba(0,0,0,0) failing back to default frame color. #​51017 (Also in 41, 42, 43)
  • Fixed unnecessary autofill popup creation for fields without datalist suggestions, which could cause input latency on macOS. #​52318 (Also in 41, 42, 43)
  • Fixed utility process crashes at exit on Windows 11 24H2 and later. #​53093 (Also in 42, 43)
  • Fixed windows opened by a sandboxed top-level frame not inheriting the opener's sandbox restrictions. #​52851 (Also in 41, 42, 43)
  • Fixed webContents.print() returning "Invalid printer settings" when print options are provided. #​52382 (Also in 43)
  • Fixeed document title updates when using back/forward navigation using the same document without utilizing browserWindow.setTitle(). #​52968 (Also in 42, 43)
  • Improved external resize band positioning and scaling for frameless windows on Windows. #​51503 (Also in 41, 42, 43)
  • Made "reload" menu items work with BaseWindow. #​51985 (Also in 41, 42, 43)
  • Windows opened from links inside a sandboxed iframe now inherit the iframe's sandbox restrictions unless allow-popups-to-escape-sandbox is set. #​52133 (Also in 41, 42, 43)
  • Fixed an issue where getDisplayMedia({ audio: { restrictOwnAudio: true } }) was ignored in setDisplayMediaRequestHandler, causing loopback audio to include local app playback. #​52534 (Also in 43)
  • <webview> and window.open now inherit nodeIntegrationInWorker from the embedder, consistent with the other Node and sandbox preferences. #​52832 (Also in 41, 42, 43)
  • Fixed potential deadlock inside app.getLoginItemSettings() on macOS. #​52667
  • Fixed Tray icons not appearing (and their menus not opening) on Linux desktops that address the StatusNotifierItem by its unique D-Bus name or via the org.freedesktop.StatusNotifierItem interface, such as GNOME with the AppIndicator extension, Cinnamon and XFCE. #​52951
  • Fixed a 1-in-200 chance per renderer process on Windows of scripts on the first page load being compiled without their V8 code cache. #​52792 (Also in 42, 43)
  • On Linux, fixed runtime toggling of shadows for frameless windows and added support for system-configured button layouts in Window Controls Overlay on Linux. #​51161 (Also in 43)
  • Fixed silent data truncation in Buffer/TextEncoder APIs and a crash in fs.writeFileSync with non-ASCII strings on Apple Silicon. #​51848 (Also in 41, 42, 43)
  • Improved the error message when an asar integrity check fails to name the entry that failed. #​52624 (Also in 42, 43)

Performance Improvements

  • Enabled ThinLTO on macOS builds. #​51669 (Also in 41, 42, 43)
  • Made various performance improvements related to initialization and IPC. #​53017 (Also in 42, 43)
  • Improved app startup time by booting the main process from an embedded Node.js startup snapshot. #​51703 (Also in 42, 43)
  • Improved application startup time on Linux by skipping GDK's OpenGL probe and loading FontConfig off the main thread during toolkit initialization. #​53107 (Also in 43)
  • Improved performance of Linux and Windows release builds by enabling ThinLTO link-time optimization for the main Electron binary. #​51809 (Also in 42, 43)
  • Improved performance of webRequest header conversions and several other gin converter hot paths. #​51599 (Also in 42, 43)
  • Improved performance of native event emission, IPC dispatch, and option-dictionary parsing. #​51596 (Also in 41, 42, 43)
  • Improved runtime performance by consuming Electron-generated PGO profiles instead of Chrome's published ones. #​51815 (Also in 42, 43)
  • Improved sandboxed renderer startup performance — preload scripts and process info are now pushed ahead of navigation instead of fetched via blocking IPC, and preload compilation results are cached on disk. Preload stack traces now show the correct file path and line number. #​51602 (Also in 42, 43)
  • Improved startup time of utilityProcess.fork(), child_process.fork() / ELECTRON_RUN_AS_NODE child processes and Node.js-enabled renderers. #​53134 (Also in 42, 43)
  • Linux arm64, Windows arm64 and macOS x64 builds now start the main process from the embedded Node.js startup snapshot like the other platforms, improving startup time. #​52879 (Also in 42, 43)
  • Reduced idle main-process CPU wakeups caused by Node.js timers and immediates. #​52906 (Also in 43)
  • Reduced sandboxed renderer cold-start time (DidClearWindowObject) by ~35% by deserializing a build-time V8 code cache for Electron's framework bundles instead of parsing and compiling them from source on every launch. #​51697 (Also in 42, 43)
  • Reduced the Linux distribution size by ~37 MB by only shipping locale strings and resources that Electron can actually use. #​51804
  • Removed showHiddenFiles support from the dialog API on Linux. #​51704 (Also in 43)
  • The first sandboxed BrowserWindow now starts in a renderer process launched ahead of time when the default session already exists, shortening the time from window creation to the page's first script; apps that open many windows can keep a spare renderer warm at all times with --enable-features=SpareRendererForSitePerProcess. #​53144
  • The non-functional dummy libEGL.so and libGLESv2.so files are no longer included in the Linux distribution, now that ANGLE is statically linked. #​52227

Other Changes

  • Updated the Squirrel.Mac autoUpdater backend on macOS to pick up upstream fixes, including correct version-string validation when downgrade prevention is enabled, fixes for stale launcher errors persisting across update checks, and forwarding of custom download request headers. #​51584
  • Backported fixes from upstream Chromium and V8. #​52774
  • Backported fixes from upstream Chromium. #​52701

Documentation

v43.8.6: electron v43.8.6

Compare Source

Release Notes for v43.8.6

Performance Improvements

  • Improved performance of repeated net.fetch() calls for file: URLs. #​55481 (Also in 44, 45, 46)

Other Changes

  • Backported fixes from upstream ANGLE, Chromium, libaom, libvpx, PDFium, Skia, V8 and WebRTC. #​55517

v43.8.5: electron v43.8.5

Compare Source

Release Notes for v43.8.5

Fixes

  • Fixed a crash on Linux when a D-Bus method call was made on a disconnected bus. #​55291 (Also in 44, 45, 46)

Performance Improvements

  • Improved performance of net.fetch() requests without a body. #​55447 (Also in 44, 45, 46)

Other Changes

  • Backported fixes from upstream Chromium, Dawn, Skia and V8. #​55495

v43.8.4: electron v43.8.4

Compare Source

Release Notes for v43.8.4

Fixes

  • Backported fix for a macOS File System Access blocklist bypass via /System/Volumes/Data paths. #​54677
  • Fixed Europe/London and Europe/Dublin time zone names showing as "GMT+00:00" in winter by updating ICU to tzdata 2026e. #​55336
  • Fixed File System Access blocklist gaps for .git/hooks writes and hypervisor UNC shares. #​55331
  • Fixed handling of malformed asar archives whose size fields do not match the file length. #​55179 (Also in 44, 45)
  • Fixed inconsistent handling of asar archive paths between the main process and child processes. #​55185 (Also in 44, 45)
  • Fixed MV3 extension events not arriving to background service workers. #​55153 (Also in 44, 45)
  • Fixed utilityProcess not emitting an exit event when the app quit while the process was still launching. #​55272 (Also in 44, 45, 46)

Other Changes

v43.8.3: electron v43.8.3

Compare Source

Release Notes for v43.8.3

Other Changes

  • Backported fixes from upstream ANGLE, Chromium, PDFium, Skia and V8. #​55147

v43.8.2: electron v43.8.2

Compare Source

Release Notes for v43.8.2

v43.8.1: electron v43.8.1

Compare Source

Release Notes for v43.8.1

[!NOTE]
This release contains the fix for https://github.com/electron/electron/security/advisories/GHSA-jr5w-w6x2-84p9, the mitigation for compromised eMudhra intermediate certificates

Fixes

  • Fixed link-opened windows not using the opener's session and webPreferences. #​55049 (Also in 42, 44, 45)
  • Fixed setCertificateVerifyProc occasionally not being applied to a request issued concurrently with the first request to a host. #​55047 (Also in 42, 44, 45)

v43.8.0: electron v43.8.0

Compare Source

Release Notes for v43.8.0

Fixes

  • Fixed a crash on Linux at startup or on theme change with GTK modules loaded. #​55016
  • Fixed a crash when creating a framed window on Wayland in environments where GTK could not initialize. #​54893 (Also in 44, 45)
  • Fixed a Linux crash creating a window with a menu bar when GTK failed to load. #​54884 (Also in 44, 45)
  • Fixed an issue where clicks posted to a background app were dropped on macOS. #​54905 (Also in 42, 44, 45)
  • Fixed net.fetch and session.fetch failing permanently with net::ERR_FAILED after the Network Service process restarts. #​54908 (Also in 42, 44, 45)
  • Fixed utilityProcess dropping messages posted with process.parentPort.postMessage() right before the process exits. #​54962 (Also in 42, 45)

Other Changes

  • Backported fixes from upstream Chromium and V8. #​55032
  • Updated Node.js to v24.22.0. #​55003

v43.7.11: electron v43.7.11

Compare Source

Release Notes for v43.7.11

Other Changes

  • Backported fixes from upstream ANGLE, Chromium, PDFium and V8. #​54899

Documentation

v43.7.10: electron v43.7.10

Compare Source

Release Notes for v43.7.10

Fixes

  • Fixed a crash when starting without an available display server on Linux. #​54795 (Also in 45)
  • Fixed a renderer crash when a ResizeObserver loop-limit error handler modified layout. #​54611 (Also in 42, 44, 45)

v43.7.9: electron v43.7.9

Compare Source

Release Notes for v43.7.9

Other Changes

  • Backported fixes from upstream ANGLE, Chromium, Dawn, fontconfig, Skia, V8 and WebRTC. #​54667
  • Backported fixes from upstream ANGLE, Chromium, Skia, V8 and WebRTC. #​54658

v43.7.8: electron v43.7.8

Compare Source

Release Notes for v43.7.8

Fixes

  • Fixed a crash on launch on macOS when the system refused to register the app for sleep/wake notifications. #​54597
  • Fixed webview.findInPage() hanging when the host page also has an iframe. #​54584 (Also in 44, 45)
  • Updated time zone data to tzdata 2026d, including British Columbia's move to permanent UTC-7. #​54622

v43.7.7: electron v43.7.7

Compare Source

Release Notes for v43.7.7

Other Changes

  • Backported fixes from upstream ANGLE, Chromium, Dawn and V8. #​54569

v43.7.6: electron v43.7.6

Compare Source

Release Notes for v43.7.6

Fixes

  • Fixed --xdg-portal-required-version having no effect and a spurious portal warning being logged for file dialogs on Linux. #​54304 (Also in 44, 45)
  • Fixed a child WebContentsView losing focus when its window is reactivated. #​54456 (Also in 44, 45)
  • Fixed a crash when a WebAuthn request used a security key that required its PIN. #​54404 (Also in 45)
  • Fixed a crash when sending a DevTools protocol command with a non-string value for an optional string parameter via webContents.debugger. #​54443 (Also in 44, 45)
  • Fixed a grey border around frameless windows on Linux WMs without compositing. #​54390 (Also in 44, 45)
  • Fixed a main process crash when a native API method was called with a this value of a different native type; it now throws a TypeError. #​54316 (Also in 44)
  • Fixed a possible crash during process exit when vm.Script or vm contexts created in the main process had been garbage collected shortly before quitting. #​54268 (Also in 44, 45)
  • Fixed a possible renderer crash in 32-bit Windows and Linux ARM builds caused by under-aligned Blink heap vector allocations. #​54259
  • Fixed a renderer crash calling image.toPNG() from a sandboxed preload script. #​54503 (Also in 44, 45)
  • Fixed clipboard.read(), readText() and has() resolving seconds late on Linux while the app was idle. #​54309 (Also in 42, 44, 45)
  • Fixed desktopCapturer.getSources() leaving non-resizable windows resizable on macOS. #​54396 (Also in 44, 45)
  • Fixed fs.rmSync failing to remove read-only files on Windows. #​54256 (Also in 42, 44, 45)
  • Fixed GDK_BACKEND leaking into processes spawned by Electron apps on Linux. #​54426 (Also in 44, 45)
  • Fixed pointerLock permission requests from some iframes reporting the parent frame. #​54465 (Also in 42, 44, 45)
  • Fixed setIgnoreMouseEvents() taking effect late on X11. #​54498 (Also in 44, 45)
  • Fixed setIgnoreMouseEvents(true) being undone by the next resize on X11. #​54423 (Also in 44, 45)
    • Added setIgnoreMouseEvents support on Wayland.
  • Fixed the default action label on Linux notifications not being localized. #​54400 (Also in 44, 45)
  • Fixed the GPU process crash-looping on Windows when the sandbox cannot read the install folder; the folder is now reported instead. #​54485 (Also in 44, 45)
  • Fixed the zoom level resetting on file: and other host-less pages after a location.hash change. #​54440 (Also in 44, 45)
  • Fixed typing not working after closing an alert() or confirm() on Windows. #​54462 (Also in 44, 45)
  • Fixed utilityProcess dropping stdout/stderr output that the child wrote immediately before exiting. #​54279 (Also in 42, 44, 45)
  • Fixed visual zoom limits resetting on navigation and not applying to webviews. #​54450 (Also in 44, 45)
  • Fixed WebAssembly exception handlers failing to catch, or crashing during tier-up, in modules using wasm exceptions. #​54235
  • Fixed WebAssembly modules loaded from the code cache crashing or throwing RuntimeError: unreachable after updating between certain patch releases. #​54238 (Also in 42, 44, 45)
  • Fixed win.setEnabled(false) and modal child windows not blocking input on Wayland. #​54446 (Also in 44, 45)
  • Fixed zoom in/out getting stuck after zooming past the 25%-500% range. #​54422 (Also in 44, 45)
    • Fixed setVisualZoomLevelLimits() shrinking pages when the minimum is under 1.

v43.7.5: electron v43.7.5

Compare Source

Release Notes for v43.7.5

Other Changes

  • Backported fixes from upstream ANGLE, Chromium, Dawn, PDFium and V8. #​54221

v43.7.4: electron v43.7.4

Compare Source

Release Notes for v43.7.4

Fixes

  • Fixed a crash when calling setIgnoreMenuShortcuts() on DevTools. #​54117 (Also in 44, 45)
  • Fixed a spurious "sandboxed_renderer.bundle.js script failed to run" console error when DevTools attached to a sandboxed frame before its first navigation. #​54176 (Also in 42)
  • Fixed an "Invalid guestInstanceId" error when removing a loaded <webview> from the DOM. #​54097 (Also in 42, 44, 45)
  • Fixed ready-to-show never firing for some hidden windows on Windows and Linux. #​54119 (Also in 44, 45)

v43.7.3: electron v43.7.3

Compare Source

Release Notes for v43.7.3

Other Changes

  • Backported fixes from upstream Chromium, Dawn, PDFium, Skia and V8. #​54082

v43.7.2: electron v43.7.2

Compare Source

Release Notes for v43.7.2

Fixes

  • Fixed a potential UAF when a select-usb-device handler destroys the requesting webContents. #​54007 (Also in 44, 45)
  • Fixed default protocol client APIs falsely returning true on Windows. #​53960 (Also in 44, 45)

Other Changes

  • Backported fix from upstream V8. #​53988
  • Backported fixes from upstream ANGLE, Chromium, Skia and V8. #​53984

v43.7.1: electron v43.7.1

Compare Source

Release Notes for v43.7.1

Fixes

  • Fixed a main-process crash when an app called loadURL() again right after a load failed because the renderer process exited before the page committed. #​53944 (Also in 44, 45)
  • Fixed a memory leak on Windows when app.getPreferredSystemLanguages() was called. #​53867 (Also in 44, 45)
  • Fixed a potential UAF in app.getPreferredSystemLanguages() on Windows. #​53866 (Also in 44, 45)
  • Fixed a renderer crash when an iframe was removed right after loading with nodeIntegrationInSubFrames enabled and sandbox disabled, e.g. on pages that embed Meta Pixel. #​53884 (Also in 42, 44, 45)
  • Fixed a Windows renderer crash when no default locale could be determined. #​53948
  • Fixed webContents.capturePage() on offscreen windows returning an image resampled to the display's scale factor instead of rendered at the window's offscreen.deviceScaleFactor. #​53818 (Also in 44, 45)

v43.7.0: electron v43.7.0

Compare Source

Release Notes for v43.7.0

Features

  • Added initiatorOrigin to webRequest and protocol handler requests, DownloadItem.getInitiatorOrigin(), and a trailing frame argument to the will-download and preconnect session events. #​53704 (Also in 44, 45)
  • Added the ELECTRON_DEBUG_DRAGGABLE_REGIONS environment variable, which visualizes and logs draggable regions in unpackaged apps to help debug custom title bars. #​53633 (Also in 44, 45)

Fixes

  • File System Access permission requests and the file-system-access-restricted event are scoped to the requesting document, grants are reset when the origin's last page closes, and write access works in in-memory sessions. #​53694 (Also in 42, 44, 45)
  • Fixed session.setPermissionCheckHandler receiving the top-level origin and a null webContents for hid and usb checks made from a subframe. #​53689 (Also in 42, 44, 45)
  • Fixed webContents.on(), removeListener() and removeAllListeners() throwing "Object has been destroyed" for console-message listeners after the WebContents was destroyed. #​53496 (Also in 42, 44, 45)
  • Fixed a crash on Linux when process.env was written while another thread was reading the environment, and a memory leak when a worker thread exits. #​53510 (Also in 42, 44, 45)
  • Fixed a possible crash on Windows when a file dialog was shown for a window that was being closed at the same time. #​53584 (Also in 42, 44, 45)
  • Fixed a renderer crash when the main process sent IPC to, or a page navigated, a same-process window.open() child whose contextIsolation differed from its opener's. #​53540 (Also in 42, 44, 45)
  • Fixed an issue where the browser-side check that blocks drag and drop between cross-site frames of the same page was disabled. #​53750 (Also in 44, 45)
  • Fixed crashes in setDisplayMediaRequestHandler when the granted frame had been destroyed or another tab was granted by id. #​53671 (Also in 42, 44, 45)
  • Fixed several non-functional DevTools integrations: the Security panel's "View certificate" button, Ctrl+wheel zooming inside DevTools, and DevTools keyboard shortcuts (e.g. F8) while the inspected page has focus. #​53631 (Also in 44, 45)
  • Internal <webview>, window.close() and executeJavaScript reply IPCs are validated against the sending frame. #​53726 (Also in 42, 44, 45)
  • <webview> without allowpopups also blocks links opened into a new window by modifier-click, and such windows navigate as the clicking document rather than as a browser-initiated load. #​53718 (Also in 42, 44, 45)
  • getUserMedia with chromeMediaSource: 'desktop' no longer accepts WebContents source ids; use chromeMediaSource: 'tab' with webContents.getMediaSourceId() or setDisplayMediaRequestHandler to capture a WebContents. #​53707 (Also in 42, 44, 45)
  • nodeIntegrationInWorker now applies only to workers created by frames that themselves have Node integration; enable nodeIntegrationInSubFrames to keep Node in workers created by subframes. #​53712 (Also in 42, 44, 45)
  • openExternal permission requests started by a frame that has since gone away are attributed to that frame's origin rather than to the navigating page. #​53698 (Also in 42, 44, 45)
  • pointerLock and keyboardLock permission requests now report the requesting frame, and execCommand('paste') requires user activation in the frame that calls it. #​53701 (Also in 42, 44, 45)

Other Changes

  • Backported fixes from upstream ANGLE, Chromium, libyuv, PDFium and V8. #​53766
  • Fixed a renderer crash that could occur when printing from an iframe. #​53761 (Also in 44, 45)
  • Fixed the app becoming unresponsive when a page has a very large number of app-region draggable elements. #​53632 (Also in 44, 45)
  • Updated Node.js to v24.21.0. #​53777

v43.6.0: electron v43.6.0

Compare Source

Release Notes for v43.6.0

Features

  • Added a badge property to MenuItem on macOS 14+ for showing a count or custom text badge next to a menu item's label. #​53045 (Also in 44)
  • Added webContents.caretBrowsingEnabled for toggling caret browsing in a WebContents. #​53034 (Also in 44)

Fixes

  • Fixed VoiceOver Braille displays showing the wrong line in multi-line text fields on macOS: AXLineForIndex and AXRangeForLine now return the line containing the caret. #​53428
  • Fixed a pending read on a net.request chunked upload stream inside a protocol handler never settling when the request failed or was aborted. #​53374 (Also in 44, 45)
  • Fixed a potential crash when using menu.popup with a frame from an offscreen rendered window. #​53432 (Also in 44)
  • Fixed an intermittent crash (access violation) on Windows when an ASAR integrity violation is detected, so the process now exits with code 1 as intended. #​53456 (Also in 44, 45)
  • Fixed application crash after a large number of IPC messages from renderers. #​53420 (Also in 42, 44, 45)
  • Fixed native addons deriving from node::ObjectWrap aborting during garbage collection on Node.js 24.19.0 and later. #​53393 (Also in 42, 44, 45)

Other Changes

  • Backported fixes from upstream ANGLE, Chromium, Skia and V8. #​53485
  • Backported fixes from upstream Chromium, Dawn and V8. #​53396
  • Updated Node.js to v24.20.0. #​53249

v43.5.1: electron v43.5.1

Compare Source

Release Notes for v43.5.1

Fixes

  • Fixed chrome.tabs.query() returning tab url and title to extensions without the tabs permission or host access, aligning with tabs.get. #​53356 (Also in 42, 44, 45)
  • Fixed a renderer crash when an array with a throwing property getter is passed across contextBridge, and several main/utility-process crashes when option objects passed to Electron APIs contain throwing accessors or Proxy traps. #​53330 (Also in 42, 44)
  • Fixed an intermittent crash at startup on Linux caused by a race between Pango and the main thread initializing fontconfig. #​53339 (Also in 44, 45)
  • Fixed an issue where an exception thrown by a property getter on an object passed through contextBridge was swallowed instead of being thrown back to the caller. #​53334 (Also in 44, 45)
  • Fixed main process crashes when navigating to http://accessibility/ or http://devtools/, when an extension background page used navigator.mediaDevices, and when calling SerialPort.forget() for a disconnected device. #​53332 (Also in 44, 45)
  • Fixed the PDF viewer failing to save an edited PDF with NotAllowedError: Third party iframes are not allowed to show a file picker. #​53327 (Also in 44, 45)
  • Fixed xdg-desktop-portal misidentifying Electron apps whose desktopName contains dashes, which broke globalShortcut and other portal-based APIs on Linux. #​52722

v43.5.0: electron v43.5.0

Compare Source

Release Notes for v43.5.0

Fixes

  • Fixed DevTools device metrics overrides persisting indefinitely when a remote debugging client disconnected without clearing them. #​52946 (Also in 42, 44)
  • Fixed BrowserWindow.unmaximize() and restore() having no effect on Wayland when the window was maximized immediately after creation. #​53125 (Also in 42, 44)
  • Fixed Uncaught illegal access errors and possible renderer crashes after closing a same-process child window or removing an iframe with nodeIntegrationInSubFrames enabled. #​53041 (Also in 42, 44)
  • Fixed fs.constants.O_DIRECTORY, O_NOFOLLOW and O_DIRECT holding x86 values on Linux arm64 and armv7l, which made opening a directory fail with EINVAL, and made require('trace_events') behave the same on cross-compiled builds as on native ones. #​53319 (Also in 42, 44, 45)
  • Fixed webContents.executeJavaScriptInIsolatedWorld resolving with undefined when worldId was not an integer. #​53237 (Also in 44)
  • Fixed webContents.print() honoring printBackground, duplexMode, and printer default duplex settings. #​53160 (Also in 42, 44)
  • Fixed a crash on Linux when the D-Bus session bus disconnected while the app was running, such as at logout or when dbus is restarted. #​53095 (Also in 42, 44)
  • Fixed a crash on Windows when V8 posted a delayed worker task during shutdown. #​53013 (Also in 42, 44)
  • Fixed a crash on macOS when a WebAuthn Touch ID prompt was requested while no locale resources were loaded. #​53195 (Also in 44)
  • Fixed a crash on macOS when a notification's icon could not be attached; the notification is now shown without the icon. #​53147 (Also in 42, 44)
  • Fixed a crash when calling node:wasi functions in optimized code. #​53265 (Also in 42, 44, 45)
  • Fixed a crash when calling utilityProcess.postMessage() after the utility process had exited. #​53301 (Also in 44, 45)
  • Fixed a regression where a window created with a custom title can show an empty title after using back/forward navigation. #​53219 (Also in 42, 44)
  • Fixed a renderer crash when a page calls SpeechRecognition.available() or SpeechRecognition.install() with processLocally. #​53015 (Also in 42, 44)
  • Fixed an issue where pages loaded in a detached WebContentsView wouldn't see the correct window size. #​53152 (Also in 42, 44)
  • Fixed crashes in sharedTexture, service-worker ipcRenderer and utilityProcess.fork() caused by object lifetime bugs. #​53278 (Also in 44, 45)
  • Fixed crashes in the main process when a webRequest.onBeforeRequest listener redirected a CORS preflight request, and when calling net.fetch() with a webRequest-permission extension loaded. #​53304 (Also in 44, 45)
  • Fixed crashes when a webContents or parent window is destroyed while other APIs still reference it. #​53288 (Also in 44, 45)
  • Fixed crashes when certain app event handlers call back into Electron synchronously. #​53276 (Also in 44, 45)
  • Fixed document title updates when using back/forward navigation using the same document without utilizing browserWindow.setTitle(). #​53023 (Also in 42, 44)
  • Fixed region-qualified --lang values such as de-DE loading no locale resources on macOS, which left localized strings empty and could crash WebAuthn Touch ID prompts. #​53186 (Also in 42, 44)
  • Fixed spellcheck not initializing on Linux when the dictionary was already cached from a previous run. #​52717 (Also in 44)
  • Fixed the GPU process being terminated in AppX/MSIX packaged apps on Windows when WebGPU fell back to SwiftShader. #​53197 (Also in 42, 44)
  • Fixed the primary instance being killed or receiving truncated arguments when a second instance passed a very long command line or large additionalData to app.requestSingleInstanceLock(). #​53156 (Also in 42, 44)
  • Fixed the tray icon not appearing on GNOME (and disappearing entirely on Wayland) since 43.4.1. #​53215
  • Fixed utility process crashes at exit on Windows 11 24H2 and later. #​53092 (Also in 42, 44)
  • Fixed windows native message boxes being dismissed by other applications using invalid button ID. #​53155 (Also in 44)

Other Changes

  • Backported fixes from upstream ANGLE, Chromium, Dawn, Skia and V8. #​52969
  • Backported fixes from upstream ANGLE, Chromium, Dawn, V8 and WebRTC. #​53190
  • Backported fixes from upstream Chromium and V8. #​53055
  • Fixed a 1-in-200 chance per renderer process on Windows of scripts on the first page load being compiled without their V8 code cache. #​52943 (Also in 42, 44)
  • Fixed a stall of tens of milliseconds while creating the first BrowserWindow on Linux.
    • Improved the performance of file lookups inside ASAR archives and of large files served from them to the renderer.
    • Improved the performance of calls through contextBridge-exposed APIs.
    • Reduced the main-thread cost of sending large values through ipcRenderer, ipcMain handlers and webContents.send. #​53018 (Also in 42, 44)
  • Improved application startup time on Linux by skipping GDK's OpenGL probe and loading FontConfig off the main thread during toolkit initialization. #​53108 (Also in 44)
  • Improved startup time of utilityProcess.fork(), child_process.fork() / ELECTRON_RUN_AS_NODE child processes and Node.js-enabled renderers. #​53135 (Also in 42, 44)
  • Linux arm64, Windows arm64 and macOS x64 builds now start the main process from the embedded Node.js startup snapshot like the other platforms, improving startup time. #​52881 (Also in 42, 44)
  • Page resources, fetch() calls and file:// loads in renderers no longer wait for the main process to be idle when no webRequest listeners or protocol interceptors are registered. #​53142 (Also in 42, 44)
  • Updated Chromium to 150.0.7871.250. #​52787
  • Updated Node.js to v24.19.0. #​52635

v43.4.1: electron v43.4.1

Compare Source

Release Notes for v43.4.1

Fixes

  • Fixed DevTools popup and context menus not appearing when DevTools is hosted in a custom window via webContents.setDevToolsWebContents(). #​52937 (Also in 44)
  • Fixed registerFileProtocol and registerHttpProtocol returning readable responses to cross-origin no-cors fetches; they now return opaque responses like protocol.handle. #​52853 (Also in 41, 42, 44)
  • Fixed a WebContentsView staying blank after its window is shown when setBackgroundThrottling(false) was called while the window was hidden. #​52864 (Also in 42, 44)
  • Fixed a crash in systemPreferences.promptTouchID(reason) when an invalid reason value is passed. #​52782 (Also in 42, 44)
  • Fixed a crash when resolving a path inside a malformed ASAR archive that contains cyclic link entries. #​52857 (Also in 42, 44)
  • Fixed a crash with app.setLoginItemSettings if a non-UTF8 service name is used. #​52944 (Also in 44)
  • Fixed a memory leak when creating BrowserWindows. #​52892 (Also in 42, 44)
  • Fixed a possible crash (SIGABRT) during process exit when the process had loaded tls/https shortly before exiting, affecting app.exit() before ready and short-lived ELECTRON_RUN_AS_NODE / child_process.fork() scripts. #​52870 (Also in 44)
  • Fixed a possible main process crash at quit when a session was created from JavaScript that runs during shutdown. #​52925 (Also in 44)
  • Fixed a potential crash in contentTracing.stopRecording() when the trace file could not be written to the requested path. #​52795 (Also in 42, 44)
  • Fixed a rare crash in the main process when DevTools were opened and a garbage collection ran before the DevTools frontend finished loading. #​52903 (Also in 44)
  • Fixed a regression preventing from transparent frameless windows from being resized on Linux. #​52947 (Also in 44)
  • Fixed an npm install failure with no recovery path when the OS blocked the native zip extractor from loading (for example, Windows Smart App Control). #​52845 (Also in 44)
  • Fixed an issue on Windows where the app process could fail to exit after app.quit() while a shell.openExternal() or shell.openPath() call was still waiting on a system "Open with" dialog. #​52897 (Also in 41, 44)
  • Fixed crash in sharedTexture module when GPU context becomes unavailable. #​52938 (Also in 44)
  • Fixed custom V8 snapshots (electron-mksnapshot, and the loadBrowserProcessSpecificV8Snapshot fuse) having no effect in the main process on macOS arm64, Linux x64 and Windows x64. #​52877 (Also in 42, 44)
  • Fixed downloading files that live inside an asar archive, including saving a packed PDF from the built-in PDF viewer. #​52826 (Also in 42, 44)
  • Fixed the built-in PDF viewer not rendering documents in in-memory sessions (partitions without the persist: prefix). #​52835 (Also in 44)
  • Fixed windows opened by a sandboxed top-level frame not inheriting the opener's sandbox restrictions. #​52848 (Also in 41, 42, 44)
  • <webview> and window.open now inherit nodeIntegrationInWorker from the embedder, consistent with the other Node and sandbox preferences. #​52830 (Also in 41, 42, 44)

Other Changes

  • Backported fix for 5246282. #​52868
  • Backported fixes for 5422242, 5420251. #​52842
  • Backported fixes from upstream Chromium and V8. #​52778
  • Fixed Tray icons not appearing (and their menus not opening) on Linux desktops that address the StatusNotifierItem by its unique D-Bus name or via the org.freedesktop.StatusNotifierItem interface, such as GNOME with the AppIndicator extension, Cinnamon and XFCE. #​52952
  • Fixed an issue on macOS where a page's first use of speechSynthesis could block the main process for several hundred milliseconds. #​52814
  • Reduced idle main-process CPU wakeups caused by Node.js timers and immediates. #​52905 (Also in 44)

v43.4.0: electron v43.4.0

Compare Source

Release Notes for v43.4.0

Features

  • Added webFrameMain.printToPDF() to allow printing individual frames to PDF from the main process. #​52627 (Also in 42, 44)
  • Fixed an issue where getDisplayMedia({ audio: { restrictOwnAudio: true } }) was ignored in setDisplayMediaRequestHandler, causing loopback audio to include local app playback. #​52533 (Also in 44)

Fixes

  • Fixed a browser process crash that could occur during Windows logoff, shutdown, or restart. #​52620 (Also in 42, 44)
  • Fixed a crash report when the X server or Wayland compositor exits while an app is running. #​52685 (Also in 42, 44)
  • Fixed a crash when quickly switching menus while the app is under heavy load. #​52673 (Also in 42, 44)
  • Fixed a potential crash when notifying user activation before the primary main frame was live. #​52697 (Also in 42, 44)
  • Fixed an issue where a JavaScript out-of-memory crash could be reported from inside the crash-key handler instead of at the out-of-memory site. #​52725 (Also in 42, 44)
  • Fixed the Linux system accent color intermittently not being applied (systemPreferences.getAccentColor() returning an empty string on some launches). #​52575

Other Changes

  • Backported fixes from upstream ANGLE and Chromium. #​52709
  • Backported fixes from upstream ANGLE, Chromium and V8. #​52663
  • No user-facing change; semver/none. #​52732
  • Updated Chromium to 150.0.7871.224. #​52693

v43.3.0: electron v43.3.0

Compare Source

Release Notes for v43.3.0

Features

  • Added available to process.getSystemMemoryInfo() on Linux, exposing proc/meminfo MemAvailable. #​52379 (Also in 42, 44)

Fixes

  • Fixed BrowserWindow size corruption on Windows when created with explicit x/y on a secondary monitor whose DPI differs from the primary. #​52501 (Also in 42, 44)
  • Fixed Dirent.parentPath being undefined for fs.readdir, fs.readdirSync, fs.glob, and fs.globSync with withFileTypes: true inside asar archives. #​52505 (Also in 42, 44)
  • Fixed dialog.showOpenDialog/dialog.showSaveDialog opening at an unusable location on Linux when defaultPath is a bare filename without a directory. #​52401 (Also in 44)
  • Fixed a UAF with protocol.registerStreamProtocol when an error is emitted during a read. #​52514 (Also in 41, 42, 44)
  • Fixed a crash that could occur when closing DevTools while the host WebContents was being destroyed. #​52510 (Also in 41, 42, 44)
  • Fixed a graphical glitch on Linux where thin borders appeared past the drop shadows on frameless windows when multiple windows were created. #​52607 (Also in 44)
  • Fixed an issue where loading ICO files from ASAR archives on Windows left temporary icon files behind. #​52478 (Also in 42, 44)
  • Fixed an issue where some values passed into requestSingleInstanceLock could result in a crash. #​52471 (Also in 44)

Other Changes

  • Fixed bindings for MV3 service workers. #​52503
  • Improved the error message when an asar integrity check fails to name the entry that failed. #​52622 (Also in 42, 44)
  • Updated Chromium to 150.0.7871.212. #​52524
  • Updated Node.js to v24.18.1. #​52552

v43.2.0: electron v43.2.0

Compare Source

Release Notes for v43.2.0

Features

  • Added net.WebSocket, a WHATWG-compatible WebSocket client for the main process that routes through Chromium's network stack. #​52344 (Also in 42)

Fixes

  • Fixed app.disableHardwareAcceleration() not fully disabling GPU hardware usage on Windows starting from Electron 38. #​52369 (Also in 41, 42, 44)
  • Fixed globalShortcut not working on GNOME Wayland by enabling Chromium's GlobalShortcutsPortalPreferredTrigger feature by default on Linux. #​52228
  • Fixed a crash when showing Linux message boxes while another Linux UI implementation was active. #​52410 (Also in 42, 44)
  • Fixed a window being marked hidden and background-throttled on macOS when covered by a transparent or click-through window. #​52389 (Also in 44)
  • Fixed unnecessary autofill popup creation for fields without datalist suggestions, which could cause input latency on macOS. #​52321 (Also in 41, 42, 44)
  • Fixed webContents.print() returning "Invalid printer settings" when print options are provided. #​52381 (Also in 44)

Other Changes

  • Updated Chromium to 150.0.7871.129. #​52355

v43.1.1: electron v43.1.1

Compare Source

Release Notes for v43.1.1

Fixes

  • Fixed a browser-process crash (ValidateIntegrityOrDie) and spurious preload ENOENT errors when an app's app.asar is replaced on disk (e.g. by an updater or MDM software) while the app is running. #​52293 (Also in 42, 44)

Other Changes

  • Updated Chromium to 150.0.7871.114. #​52297

v43.1.0: electron v43.1.0

Compare Source

Release Notes for v43.1.0

Fixes

  • Fixed crash triggered by replacing an open application menu. #​52276 (Also in 41, 42, 44)

Other Changes

v43.0.0: electron v43.0.0

Compare Source

Release Notes for v43.0.0

Stack Upgrades

Breaking Changes

  • File downloads will open by default in the user's Downloads folder (or Home directory if Downloads doesn't exist). #​49868
  • Fix: If a nativeImage was passed an image with a color profile, its pixel values will now be normalized to SRGB. This ensures that two visually identical images after color space application will receive similar pixel values when converted to a nativeImage. #​51565
  • On Linux, frameless windows now have rounded corners by default, just like on macOS and Windows. Rounded corners can be disabled on all platforms by setting roundedCorners: false on the window. #​52111
  • Removed showHiddenFiles support from the dialog API on Linux. #​51880

Features

Additions
  • Added Clone method to WebContents. #​49959
  • Added JS stack trace to crash reports on renderer OOM. #​50043 (Also in 42)
  • Added Linux support for app.getApplicationInfoForProtocol(). #​51297 (Also in 42)
  • Added Notification.remove(), removeAll(), and removeGroup() static methods for macOS. #​51690 (Also in 42)
  • Added Notification.getHistory() for macOS, allowing developers to restore all delivered notifications still present in Notification Center. #​50325 (Also in 42)
  • Added accessibilityLabel property to MenuItem constructor options and properties for defining screen-reader-friendly labels. #​50240
  • Added allowExtensions privilege to protocol.registerSchemesAsPrivileged() to enable Chrome extensions on custom protocols. #​49951 (Also in 40, 41, 42)
  • Added app.configureWebAuthn() to enable the Touch ID platform authenticator for WebAuthn on macOS, and a select-webauthn-account session event for choosing between multiple discoverable credentials. #​51255 (Also in 41, 42)
  • Added globalShortcut.setSuspended() and globalShortcut.isSuspended() methods to temporarily suspend and resume global shortcut handling. #​50425 (Also in 42)
  • Added id and groupId options to the Notification constructor on macOS. id allows custom identifiers for notifications, and groupId visually groups notifications together in Notification Center. #​50097 (Also in 42)
  • Added nv12 OSR pixel format support for professional use. #​49799
  • Added view.setBackgroundBlur. #​51076
  • Added webContents.copyVideoFrameAt(x, y) and webContents.saveVideoFrameAs(x, y) methods. #​48149
  • Added id, groupId, and groupTitle support for Windows notifications. #​50328 (Also in 42)
  • Added nativeTheme.shouldDifferentiateWithoutColor on macOS. #​49912 (Also in 41, 42)
  • Added session support to net module requests from utility process. #​51279 (Also in 42)
  • Added support for heap profiling via contentTracing.enableHeapProfiling(). #​50826 (Also in 41, 42)
  • Added support for importing shared textures using the nv16 pixel format. #​50728 (Also in 42)
  • Added support for the urgency option in Notifications on Windows. #​50225 (Also in 41, 42)
  • Added support for using a proxy during yarn install. #​50322 (Also in 39, 40, 41, 42)
  • Allowed the --experimental-inspector-network-resource Node.js flag to be passed through Electron. #​49689 (Also in 41, 42)
  • Enabled ThinLTO on macOS builds. #​51819 (Also in 42)
  • Enabled profile-guided optimization for V8 builtins in release builds, improving JavaScript builtin performance (Array, String, RegExp, etc.). #​50416 (Also in 40, 41, 42)
  • Feat: SF Symbol customisation. #​48911
  • Fixed contentTracing module to capture Node.js trace categories. #​50591
Improvements
  • Improved app startup performance — the main process now boots from an embedded Node.js startup snapshot, framework bundles and preload scripts are cached as compiled V8 bytecode, and sandboxed renderer startup data is pushed ahead of navigation instead of fetched via blocking IPC. Preload stack traces now show the correct file path and line number. #​51792 (Also in 42)
  • Improved performance of Linux and Windows release builds by enabling ThinLTO link-time optimization for the main Electron binary. #​51820 (Also in 42)
  • Improved performance of app.getApplicationNameForProtocol() on Linux. #​51251 (Also in 42)
  • Improved performance of app.isDefaultProtocolClient() and app.setAsDefaultProtocolClient() on Linux. #​51316 (Also in 42)
  • Improved performance of webRequest header conversions and several other gin converter hot paths. #​51608 (Also in 42)
  • Improved performance of native event emission, IPC dispatch, and option-dictionary parsing. #​51615 (Also in 41, 42)
  • Improved runtime performance. #​51829 (Also in 42)

Fixes

  • Fixed desktopCapturer.getSources() hanging on macOS. #​51128
  • Fixed an issue on Linux where the system theme color appeared at the top edge of frameless windows. #​52179
  • Fixed an issue where frameless windows windows could shrink after applying constraints or toggling resizability on Windows. #​51954
  • Fixed an issue with the main process where process.exit() with no argument did not exit with process.exitCode
    • Fixed handling of string value arguments to process.exit() in the main process. #​51428
  • Fixed desktopCapturer thumbnail generation and premature portal timeout on Linux with Wayland. #​51783
  • Fixed running under tsx import transpilation. #​51978
  • Fixed runtime toggling of shadows for frameless windows on Linux.
    • Added support for system-configured button layouts in Window Controls Overlay on Linux. #​51658
  • Fixed titleBarOverlay.color set to rgba(0,0,0,0) failing back to default frame color. #​52010
  • On Linux, apps should now display their names and icons in audio managers instead of all being labeled as Chromium. #​49270
Also in earlier versions...
  • Added additional ASAR support to additional fs copy methods. #​50226 (Also in 39, 40, 41, 42)
  • Added crash keys to diagnose power monitor shutdown crash on arm64 windows. #​51198 (Also in 42)
  • Added missing metadata fields to contentTracing traces. #​50892 (Also in 41, 42)
  • BrowserWindow now enforces min/max size constraints on window creation, even if they conflict with the requested width and height. #​49906 (Also in 41, 42)
  • Changed the kResizeThreshold to trigger the resize on corners. #​50637 (Also in 41, 42)
  • Ensured cross-origin fetch() and XHR are blocked for custom protocols registered with supportFetchAPI: true unless corsEnabled: true is also set; cross-origin mode: 'no-cors' requests now receive an opaque response. #​51152 (Also in 39, 40, 41, 42)
  • Fixed DesktopCapturer crash on macOS. #​50960 (Also in 42)
  • Fixed DevTools Network panel missing most requests after navigating when webContents.debugger is attached. #​51964 (Also in 42)
  • Fixed Electron child process titles on Linux so they show their types (render, gpu, etc.) and complete command-line arguments and flags in ps aux. #​50509 (Also in 42)
  • Fixed Windows edge case in NativeWindowViews::MoveBehindTaskBarIfNeeded(). #​52021 (Also in 41, 42)
  • Fixed ELECTRON_INSTALL_PLATFORM being ignored when resolving the Electron executable path during postinstall, which caused path.txt to be written for the host platform instead of the requested target and made isInstalled() always re-download on subsequent installs. #​51029 (Also in 42)
  • Fixed ProtocolResponse.url requests being made through the default session instead of the session the protocol handler was registered on when ProtocolResponse.session was not set. #​52131 (Also in 40, 41, 42)
  • Fixed app.getLoginItemSettings() returning undefined for executableWillLaunchAtLogin on macOS; the property is now always a boolean. #​51416 (Also in 40, 41, 42)
  • Fixed fs.stat on files inside asar archives returning undefined for blksize and blocks instead of numeric values. #​50825 (Also in 40, 41, 42)
  • Fixed webContents.printToPDF rejecting on all subsequent calls after a prior call was rejected with an invalid pageRanges value. #​51174 (Also in 40, 41, 42)
  • Fixed a crash when providing invalid HTTP header names or values in the webRequest.onBeforeSendHeaders() callback. #​51340 (Also in 40, 41, 42)
  • Fixed a browser process crash when calling webContents.reload() or navigating synchronously from the render-process-gone event; the event is now emitted after the renderer's teardown notification has completed. #​51918 (Also in 41, 42)
  • Fixed a bug on Linux where a 1px line appeared at the top of frameless windows if the window and web contents had different background colors. #​51999 (Also in 41, 42)
  • Fixed a bug where Windows notification icons could fail to save because their temporary filenames contained invalid characters. #​50454 (Also in 40, 41, 42)
  • Fixed a bug where errors would occur when using the Chrome DevTools Fetch API. #​50744 (Also in 41, 42)
  • Fixed a crash in clipboard.readImage() when the clipboard contains malformed image data. #​50475 (Also in 39, 40, 41, 42)
  • Fixed a crash in the macOS Touch ID WebAuthn prompt caused by a missing string resource, and added touchID.promptReason to app.configureWebAuthn() to customize the prompt text. #​51595 (Also in 41, 42)
  • Fixed a crash on MacOS when a user clicked into a title bar or top view. #​51606 (Also in 42)
  • Fixed a crash that could occur when an autofill suggestion popup was shown while a window was closing. #​51302 (Also in 41, 42)
  • Fixed a crash when calling contentTracing.getTraceBufferUsage() while a trace session is active. #​50556 (Also in 39, 40, 41, 42)
  • Fixed a crash when calling an offscreen shared texture's release() after the texture object was garbage collected. #​50473 (Also in 39, 40, 41, 42)
  • Fixed a crash when rendering PDFs when Site Isolation is disabled. #​50689 (Also in 41, 42)
  • Fixed a memory leak where Menu items were not cleaned up after Menu.setApplicationMenu was called repeatedly. #​50806 (Also in 40, 41, 42)
  • Fixed a potential crash when using webContents.print(). #​50843 (Also in 41, 42)
  • Fixed a potential race condition crash when closing DevTools. #​51420 (Also in 41, 42)
  • Fixed a regression on Linux where transparent frameless windows would have visible borders. Also fixed a longstanding issue where transparent windows on Linux could show smeared and glitched content as windows moved around. #​50541 (Also in 41, 42)
  • Fixed a regression on Windows where frameless windows changed their size after calling setResizable. #​51252 (Also in 41, 42)
  • Fixed a regression where frameless fullscreen windows had white borders on Windows. #​51287 (Also in 41, 42)
  • Fixed a renderer crash when a page uses the <geolocation> HTML element. #​51346 (Also in 41, 42)
  • Fixed a renderer crash when calling WebAssembly.compileStreaming() or WebAssembly.instantiateStreaming() with nodeIntegration enabled. #​51955 (Also in 42)
  • Fixed absent 'Electron Isolated Context' in the execution context dropdown in Dev Tools. #​51062 (Also in 41, 42)
  • Fixed an accessibility issue where the AXMenuOpened event was not fired on menu creation. #​50377 (Also in 40, 41, 42)
  • Fixed an intermittent Invoke in DisallowJavascriptExecutionScope crash on application quit when a WebContents (or other JS-emitting native object) is garbage-collected during shutdown. #​50688 (Also in 40, 41, 42)
  • Fixed an issue on Linux and Windows where frameless windows would shrink when calling win.center(). Additionally, fixed an issue where frameless windows would appear slightly off-center on Windows. #​51920 (Also in 41, 42)
  • Fixed an issue on Windows where a transient UnhookWindowsHookEx failure in setIgnoreMouseEvents(true, { forward: true }) teardown could cause duplicate low-level mouse hooks to be installed on the next activation. #​51098 (Also in 41, 42)
  • Fixed an issue on macOS where show/hide events and WebContents visibility state could be reported incorrectly when multiple WebContentsViews were attached to a window. #​50579 (Also in 40, 41, 42)
  • Fixed an issue where DevTools would re-attach to the window when opened after previously being detached. #​50807 (Also in 39, 40, 41, 42)
  • Fixed an issue where app-region: drag inside a hidden WebContentsView would still drag the parent window on Windows. #​51200 (Also in 40, 41, 42)
  • Fixed an issue where nodeIntegrationInWorker didn't always work in AudioWorklet. #​47244 (Also in 40, 41, 42)
  • Fixed an issue where process and other Node globals were undefined in ESM preload scripts when contextIsolation was disabled. #​51723 (Also in 42)
  • Fixed an issue where setSimpleFullScreen on macOS would exit when web content called requestFullscreen(). #​50874 (Also in 40, 41, 42)
  • Fixed an issue where an Electron auto-update job would occasionally fail if a macOS system update is pending. #​51070 (Also in 42)
  • Fixed an issue where an Electron macOS update would not be applied if another app was previously blocking the macOS system update loop. #​51191 (Also in 40, 41, 42)
  • Fixed an issue where an app shortcut may lose its icon after auto-updating on Windows. #​50471 (Also in 40, 41, 42)
  • Fixed an issue where calling contentTracing APIs before app.whenReady() would crash the application. #​50920 (Also in 41, 42)
  • Fixed an issue where clicking the maximize button could progressively shrink the window in some Wayland environments. #​52039 (Also in 42)
  • Fixed an issue where closing devtools immediately after focus caused a crash. #​47435 (Also in 40, 41, 42)
  • Fixed an issue where concurrent getFileHandle requests on the same path could stall indefinitely. #​50597 (Also in 40, 41, 42)
  • Fixed an issue where custom options in webContents.print() did not prefill the print dialog on macOS. #​50600 (Also in 40, 41, 42)
  • Fixed an issue where importing electron via ESM would touch the OS keychain on app-ready even when safeStorage was never used. safeStorage.isAsyncEncryptionAvailable() now returns a Promise as documented. #​50419 (Also in 42)
  • Fixed an issue where margins did not look as expected when printing in silent mode. #​50615 (Also in 41, 42)
  • Fixed an issue where saving edited PDF files would fail with a cross-origin SecurityError. #​51042 (Also in 41, 42)
  • Fixed an issue where some DevTools functionality didn't work as expected. #​50241 (Also in 40, 41, 42)
  • Fixed an issue where some toast notification properties didn't work as expected in WinRT. #​51286 (Also in 41, 42)
  • Fixed an issue where the "Toggle Developer Tools" menu item failed to function correctly with BaseWindow. #​51901 (Also in 41, 42)
  • Fixed an issue where the Squirrel.Mac installer could resolve the target bundle path to different locations at different stages of an install. #​50745 (Also in 39, 42)
  • Fixed an issue where the webContents.print() callback may not fire correctly in some cases. #​50431 (Also in 41, 42)
  • Fixed an issue where webContents.print() would ignore pageSize / mediaSize when silent was true. #​50808 (Also in 41, 42)
  • Fixed aspect ratio min/max size clamping to correctly account for extraSize on macOS. #​50794 (Also in 40, 41, 42)
  • Fixed bug that could occasionally cause browserWindow's always-on-top-changed even to fire with incorrect values. #​51110 (Also in 40, 41, 42)
  • Fixed buggy behavior where Backspace would accept macOS text replacements inside contenteditable elements. #​51289 (Also in 40, 41, 42)
  • Fixed build failure when building with enable_pdf disabled. #​51223 (Also in 41, 42)
  • Fixed certain DevTools extension panels not showing without a page reload. #​50611 (Also in 42)
  • Fixed crash for Notification close. #​51655 (Also in 41, 42)
  • Fixed crash when app.setPath('sessionData') was called with a non-existent directory. #​50891 (Also in 41, 42)
  • Fixed crash when handling JavaScript dialogs from windows opened with invalid or empty URLs. #​50062 (Also in 39, 40, 41, 42)
  • Fixed cross-origin isolation failing for non-file origins. #​50789 (Also in 41, 42)
  • Fixed frameless transparent windows on Windows losing their transparency after setResizable(false) followed by setResizable(true). #​51175 (Also in 41, 42)
  • Fixed improper focus tracking in BaseWindow on MacOS. #​49460 (Also in 39, 40, 41, 42)
  • Fixed logic bug that rendered certain window types un-resizable on MAS builds. #​50096 (Also in 40, 41, 42)
  • Fixed native addon compilation failure with undefined msvc intrinsic from v8 headers. #​51705 (Also in 42)
  • Fixed native notification clicks not focusing the application window on Wayland. #​50568 (Also in 42)
  • Fixed printing on Linux failing with "Invalid printer settings". #​50430 (Also in 41, 42)
  • Fixed remote debugging via --remote-debugging-port not working when inspecting from Chrome's chrome://inspect page. The DevTools page would appear empty due to the frontend URL pointing to a CDN that returned 404 for Electron's Chromium builds. #​51236 (Also in 41)
  • Fixed resize hit targets for frameless windows on Windows. Resize targets now start at the side and bottom edges of the window and extend outward when frame: false, matching the behavior for windows with frames. #​50706 (Also in 41, 42)
  • Fixed sandboxed preload scripts running a stale cached version after the script was modified without its file size changing. #​51932 (Also in 42)
  • Fixed shutdown crash on windows when power monitor notifications were subscribed. #​50878 (Also in 42)
  • Fixed test scaffolding bug when running tests locally on Linux. #​51129 (Also in 40, 41, 42)
  • Fixed the appearance of maximized windows on GNOME in Wayland, especially when non-default GTK themes like Breeze are set. #​50550 (Also in 41, 42)
  • Fixed the context menu in a detached DevTools window focusing the inspected page's window instead of the DevTools window. #​51863 (Also in 42)
  • Fixed the crash keys being lost and the crash reporter hanging on macOS when many dynamic crash keys were registered. #​50795 (Also in 40, 41, 42)
  • Fixed user resizing of transparent windows on win32 platform. #​49428 (Also in 39, 40, 41, 42)
  • Fixed utilityProcess exit event reporting incorrect exit codes on Windows when the exit code has the high bit. #​50256 (Also in 40, 41, 42)
  • Fixed window freeze when failing to enter/exit fullscreen on macOS. #​49421 (Also in 39, 40, 41, 42)
  • Improved external resize band positioning and scaling for frameless windows on Windows. #​51552 (Also in 41, 42)
  • Improved the way Electron determines the default XDG App ID and WM_CLASS on Linux for better platform compatibility if desktopName is not provided in package.json. #​51424 (Also in 41, 42)
  • Made "reload" menu items work with BaseWindow. #​52119 (Also in 41, 42)
  • Moved Electron-specific help menu links to the default app only; unpackaged apps will no longer see these items in their default menu. #​50629 (Also in 40, 41, 42)
  • Removed "representedObject is not a WeakPtrToElectronMenuModelAsNSObject" logging when interacting with macOS menus. #​50608 (Also in 41, 42)
  • Removed support for the ELECTRON_SKIP_BINARY_DOWNLOAD environment variable. #​50406 (Also in 42)
  • This PR fixes a regression in silent printing where custom DPI values from webContents.print were not honored, causing incorrect output scaling in real-world print flows. #​51046 (Also in 41, 42)
  • Windows opened from links inside a sandboxed iframe now inherit the iframe's sandbox restrictions unless allow-popups-to-escape-sandbox is set. #​52189 (Also in 42)

Other Changes

  • Backported fixes from upstream Chromium. #​52116
  • Backported fixes from upstream Chromium. #​52168
  • Fixed gn gen failing to resolve electron_version when building from a git worktree checkout. #​51146 (Also in 39, 40, 41, 42)
  • Fixed silent data truncation in Buffer/TextEncoder APIs and a crash in fs.writeFileSync with non-ASCII strings on Apple Silicon. #​51850 (Also in 41, 42)

Documentation

Notices

Support for 32-bit platforms ending

Electron 43.x.y will be the last version series of Electron to ship with prebuilt binaries for 32-bit platforms: Windows x86 (win32-ia32) and Linux ARM (linux-armv7l). Once the v43 series reaches end of life in January 2027, these 32-bit platforms will no longer be supported.

End of Support for 40.x.y

Electron 40.x.y has reached end-of-support as per the project's support policy. Developers and applications are encouraged to upgrade to a newer version of Electron.

v42.11.18: electron v42.11.18

Compare Source

Release Notes for v42.11.18

[!WARNING]
Electron 42.x.y has reached end-of-support as per the project's support policy. Developers and applications are encouraged to upgrade to a newer version of Electron.

Other Changes

  • Backported fixes from upstream ANGLE, Chromium, PDFium, Skia and V8. #​55148

v42.11.17: electron v42.11.17

Compare Source

Release Notes for v42.11.17

[!WARNING]
Electron 42.x.y has reached end-of-support as per the project's support policy. Developers and applications are encouraged to upgrade to a newer version of Electron.

v42.11.16: electron v42.11.16

Compare Source

Release Notes for v42.11.16

[!NOTE]
This release contains the fix for https://github.com/electron/electron/security/advisories/GHSA-jr5w-w6x2-84p9, the mitigation for compromised eMudhra intermediate certificates

Fixes

  • Fixed link-opened windows not using the opener's session and webPreferences. #​55050 (Also in 43, 44, 45)
  • Fixed setCertificateVerifyProc occasionally not being applied to a request issued concurrently with the first request to a host. #​55054 (Also in 43, 44, 45)

v42.11.15: electron v42.11.15

Compare Source

Release Notes for v42.11.15

Fixes

  • Fixed a crash on Linux at startup or on theme change with GTK modules loaded. #​55015
  • Fixed an issue where clicks posted to a background app were dropped on macOS. #​54906 (Also in 43, 44, 45)
  • Fixed net.fetch and session.fetch failing permanently with net::ERR_FAILED after the Network Service process restarts. #​54925 (Also in 43, 44, 45)
  • Fixed utilityProcess dropping messages posted with process.parentPort.postMessage() right before the process exits. #​55000 (Also in 43, 45)

Other Changes

  • Backported fixes from upstream Chromium and V8. #​55035

v42.11.14: electron v42.11.14

Compare Source

Release Notes for v42.11.14

Other Changes

  • Backported fixes from upstream ANGLE, Chromium, PDFium and V8. #​54900

v42.11.13: electron v42.11.13

Compare Source

Release Notes for v42.11.13

Fixes

  • Fixed a crash when starting without an available display server on Linux. #​54796 (Also in 45)

v42.11.12: electron v42.11.12

Compare Source

Release Notes for v42.11.12

Fixes

  • Fixed a renderer crash when a ResizeObserver loop-limit error handler modified layout. #​54610 (Also in 43, 44, 45)

Other Changes

  • Backported fixes from upstream ANGLE, Chromium, Dawn, fontconfig, Skia, V8 and WebRTC. #​54668
  • Backported fixes from upstream ANGLE, Chromium, Skia, V8 and WebRTC. #​54659

v42.11.11: electron v42.11.11

Compare Source

Release Notes for v42.11.11

Fixes

  • Fixed a crash on launch on macOS when the system refused to register the app for sleep/wake notifications. #​54598

v42.11.10: electron v42.11.10

Compare Source

Release Notes for v42.11.10

Other Changes

  • Backported fixes from upstream ANGLE, Chromium, Dawn and V8. #​54565

v42.11.9: electron v42.11.9

Compare Source

Release Notes for v42.11.9

Fixes

  • Fixed clipboard.read(), readText() and has() resolving seconds late on Linux while the app was idle. #​54310 (Also in 43, 44, 45)
  • Fixed fs.rmSync failing to remove read-only files on Windows. #​54257 (Also in 43, 44, 45)
  • Fixed pointerLock permission requests from some iframes reporting the parent frame. #​54466 (Also in 43, 44, 45)
  • Fixed utilityProcess dropping stdout/stderr output that the child wrote immediately before exiting. #​54332 (Also in 43, 44, 45)
  • Fixed WebAssembly exception handlers failing to catch, or crashing during tier-up, in modules using wasm exceptions. #​54236
  • Fixed WebAssembly modules loaded from the code cache crashing or throwing RuntimeError: unreachable after updating between certain patch releases. #​54239 (Also in 43, 44, 45)

v42.11.8: electron v42.11.8

Compare Source

Release Notes for v42.11.8

Other Changes

  • Backported fixes from upstream ANGLE, Chromium, Dawn, PDFium and V8. #​54223

v42.11.7: electron v42.11.7

Compare Source

Release Notes for v42.11.7

Fixes

  • Fixed a spurious "sandboxed_renderer.bundle.js script failed to run" console error when DevTools attached to a sandboxed frame before its first navigation. #​54175 (Also in 43)
  • Fixed an "Invalid guestInstanceId" error when removing a loaded <webview> from the DOM. #​54098 (Also in 43, 44, 45)

v42.11.6: electron v42.11.6

Compare Source

Release Notes for v42.11.6

Other Changes

  • Backported fixes from upstream Chromium, Dawn, PDFium, Skia and V8. #​54083

v42.11.5: electron v42.11.5

Compare Source

Release Notes for v42.11.5

Other Changes

  • Backported fixes from upstream ANGLE, Chromium, Skia and V8. #​53986

v42.11.4: electron v42.11.4

Compare Source

Release Notes for v42.11.4

Fixes

  • Fixed a renderer crash when an iframe was removed right after loading with nodeIntegrationInSubFrames enabled and sandbox disabled, e.g. on pages that embed Meta Pixel. #​53886 (Also in 43, 44, 45)

Other Changes

  • Backported fixes from upstream ANGLE, Chromium, libyuv, PDFium and V8. #​53767

v42.11.3: electron v42.11.3

Compare Source

Release Notes for v42.11.3

Fixes

  • File System Access permission requests and the file-system-access-restricted event are scoped to the requesting document, grants are reset when the origin's last page closes, and write access works in in-memory sessions. #​53695 (Also in 43, 44, 45)
  • Fixed session.setPermissionCheckHandler receiving the top-level origin and a null webContents for hid and usb checks made from a subframe. #​53736 (Also in 43, 44, 45)
  • Fixed webContents.on(), removeListener() and removeAllListeners() throwing "Object has been destroyed" for console-message listeners after the WebContents was destroyed. #​53497 (Also in 43, 44, 45)
  • Fixed a crash on Linux when process.env was written while another thread was reading the environment, and a memory leak when a worker thread exits. #​53511 (Also in 43, 44, 45)
  • Fixed a possible crash on Windows when a file dialog was shown for a window that was being closed at the same time. #​53585 (Also in 43, 44, 45)
  • Fixed a renderer crash when the main process sent IPC to, or a page navigated, a same-process window.open() child whose contextIsolation differed from its opener's. #​53541 (Also in 43, 44, 45)
  • Fixed crashes in setDisplayMediaRequestHandler when the granted frame had been destroyed or another tab was granted by id. #​53674 (Also in 43, 44, 45)
  • Internal <webview>, window.close() and executeJavaScript reply IPCs are validated against the sending frame. #​53727 (Also in 43, 44, 45)
  • <webview> without allowpopups also blocks links opened into a new window by modifier-click, and such windows navigate as the clicking document rather than as a browser-initiated load. #​53719 (Also in 43, 44, 45)
  • getUserMedia with chromeMediaSource: 'desktop' no longer accepts WebContents source ids; use chromeMediaSource: 'tab' with webContents.getMediaSourceId() or setDisplayMediaRequestHandler to capture a WebContents. #​53710 (Also in 43, 44, 45)
  • nodeIntegrationInWorker now applies only to workers created by frames that themselves have Node integration; enable nodeIntegrationInSubFrames to keep Node in workers created by subframes. #​53713 (Also in 43, 44, 45)
  • openExternal permission requests started by a frame that has since gone away are attributed to that frame's origin rather than to the navigating page. #​53697 (Also in 43, 44, 45)
  • pointerLock and keyboardLock permission requests now report the requesting frame, and execCommand('paste') requires user activation in the frame that calls it. #​53702 (Also in 43, 44, 45)

v42.11.2: electron v42.11.2

Compare Source

Release Notes for v42.11.2

Fixes

  • Fixed application crash after a large number of IPC messages from renderers. #​53419 (Also in 43, 44, 45)
  • Fixed native addons deriving from node::ObjectWrap aborting during garbage collection on Node.js 24.19.0 and later. #​53394 (Also in 43, 44, 45)

Other Changes

  • Backported fixes from upstream ANGLE, Chromium, Skia and V8. #​53480
  • Backported fixes from upstream Chromium, Dawn, Skia and V8. #​53397
  • Backported fixes from upstream Chromium, V8, ANGLE, Dawn, Skia, WebRTC and DevTools. #​53367

v42.11.1: electron v42.11.1

Compare Source

Release Notes for v42.11.1

Fixes

  • Fixed chrome.tabs.query() returning tab url and title to extensions without the tabs permission or host access, aligning with tabs.get. #​53355 (Also in 43, 44, 45)
  • Fixed a renderer crash when an array with a throwing property getter is passed across contextBridge, and several main/utility-process crashes when option objects passed to Electron APIs contain throwing accessors or Proxy traps. #​53329 (Also in 43, 44)

Other Changes

  • Security: backported fixes for CVE-2026-15764, CVE-2026-15765, CVE-2026-15766, CVE-2026-15767, CVE-2026-15768, CVE-2026-15769, CVE-2026-15770, CVE-2026-15771, CVE-2026-15772, CVE-2026-15773, CVE-2026-15774, CVE-2026-15775, CVE-2026-15776, CVE-2026-15777, CVE-2026-15778. #​53344

v42.11.0: electron v42.11.0

Compare Source

Release Notes for v42.11.0

Fixes

  • Fixed fs.constants.O_DIRECTORY, O_NOFOLLOW and O_DIRECT holding x86 values on Linux arm64 and armv7l, which made opening a directory fail with EINVAL, and made require('trace_events') behave the same on cross-compiled builds as on native ones. #​53318 (Also in 43, 44, 45)
  • Fixed a crash when calling node:wasi functions in optimized code. #​53267 (Also in 43, 44, 45)
  • Fixed a regression where a window created with a custom title can show an empty title after using back/forward navigation. #​53217 (Also in 43, 44)
  • Fixed desktopCapturer thumbnail generation and premature portal timeout on Linux with Wayland. #​51784 (Also in 43)
  • Fixed region-qualified --lang values such as de-DE loading no locale resources on macOS, which left localized strings empty and could crash WebAuthn Touch ID prompts. #​53187 (Also in 43, 44)
  • Fixed the GPU process being terminated in AppX/MSIX packaged apps on Windows when WebGPU fell back to SwiftShader. #​53199 (Also in 43, 44)

Other Changes

  • Backported fixes from upstream ANGLE, Chromium, Dawn, V8 and WebRTC. #​53191
  • Updated Node.js to v24.19.0. #​52634

v42.10.1: electron v42.10.1

Compare Source

Release Notes for v42.10.1

Fixes

  • Fixed webContents.print() honoring printBackground, duplexMode, and printer default duplex settings. #​53158 (Also in 43, 44)
  • Fixed a crash on macOS when a notification's icon could not be attached; the notification is now shown without the icon. #​53148 (Also in 43, 44)
  • Fixed an issue where pages loaded in a detached WebContentsView wouldn't see the correct window size. #​53151 (Also in 43, 44)
  • Fixed the primary instance being killed or receiving truncated arguments when a second instance passed a very long command line or large additionalData to app.requestSingleInstanceLock(). #​53157 (Also in 43, 44)

Other Changes

  • Backported fixes from upstream ANGLE, Chromium, Dawn, Skia and V8. #​52970
  • Page resources, fetch() calls and file:// loads in renderers no longer wait for the main process to be idle when no webRequest listeners or protocol interceptors are registered. #​53143 (Also in 43, 44)

v42.10.0: electron v42.10.0

Compare Source

Release Notes for v42.10.0

Features

  • Fixed contentTracing module to capture Node.js trace categories. #​52973

Fixes

  • Fixed DevTools device metrics overrides persisting indefinitely when a remote debugging client disconnected without clearing them. #​53133 (Also in 43, 44)
  • Fixed DevTools popup and context menus not appearing when DevTools is hosted in a custom window via webContents.setDevToolsWebContents(). #​52981 (Also in 43, 44)
  • Fixed BrowserWindow.unmaximize() and restore() having no effect on Wayland when the window was maximized immediately after creation. #​53126 (Also in 44)
  • Fixed Uncaught illegal access errors and possible renderer crashes after closing a same-process child window or removing an iframe with nodeIntegrationInSubFrames enabled. #​53042 (Also in 44)
  • Fixed dialog.showOpenDialog/dialog.showSaveDialog opening at an unusable location on Linux when defaultPath is a bare filename without a directory. #​52980 (Also in 43, 44)
  • Fixed a crash on Linux when the D-Bus session bus disconnected while the app was running, such as at logout or when dbus is restarted. #​53094 (Also in 43, 44)
  • Fixed a crash on Windows when V8 posted a delayed worker task during shutdown. #​53014 (Also in 43)
  • Fixed a crash with app.setLoginItemSettings if a non-UTF8 service name is used. #​52989 (Also in 43, 44)
  • Fixed a possible crash (SIGABRT) during process exit when the process had loaded tls/https shortly before exiting, affecting app.exit() before ready and short-lived ELECTRON_RUN_AS_NODE / child_process.fork() scripts. #​52992 (Also in 43, 44)
  • Fixed a possible main process crash at quit when a session was created from JavaScript that runs during shutdown. #​53132 (Also in 43, 44)
  • Fixed a rare crash in the main process when DevTools were opened and a garbage collection ran before the DevTools frontend finished loading. #​52994 (Also in 43, 44)
  • Fixed a renderer crash when a page calls SpeechRecognition.available() or SpeechRecognition.install() with processLocally. #​53016 (Also in 43, 44)
  • Fixed an issue on Linux where the system theme color appeared at the top edge of frameless windows. #​52978 (Also in 41, 43)
  • Fixed an issue where some values passed into requestSingleInstanceLock could result in a crash. #​52982 (Also in 43, 44)
  • Fixed crash in sharedTexture module when GPU context becomes unavailable. #​52983 (Also in 43, 44)
  • Fixed document title updates when using back/forward navigation using the same document without utilizing browserWindow.setTitle(). #​53099 (Also in 43, 44)
  • Fixed the built-in PDF viewer not rendering documents in in-memory sessions (partitions without the persist: prefix). #​52990 (Also in 43, 44)
  • Fixed titleBarOverlay.color set to rgba(0,0,0,0) failing back to default frame color. #​52976 (Also in 41, 43)
  • Fixed utility process crashes at exit on Windows 11 24H2 and later. #​53091 (Also in 43, 44)

Other Changes

  • Backported fixes from upstream Chromium and V8. #​53060
  • Fixed a 1-in-200 chance per renderer process on Windows of scripts on the first page load being compiled without their V8 code cache. #​52988 (Also in 43, 44)
  • Fixed a Windows x64 renderer performance regression introduced in 42.8.1 that made style/layout work (and app startup) noticeably slower. #​53064
  • Fixed a stall of tens of milliseconds while creating the first BrowserWindow on Linux.
    • Improved the performance of file lookups inside ASAR archives and of large files served from them to the renderer.
    • Improved the performance of calls through contextBridge-exposed APIs.
    • Reduced the main-thread cost of sending large values through ipcRenderer, ipcMain handlers and webContents.send. #​53019 (Also in 43, 44)
  • Improved startup time of utilityProcess.fork(), child_process.fork() / ELECTRON_RUN_AS_NODE child processes and Node.js-enabled renderers. #​53136 (Also in 43, 44)
  • Linux arm64, Windows arm64 and macOS x64 builds now start the main process from the embedded Node.js startup snapshot like the other platforms, improving startup time. #​52880 (Also in 43, 44)

v42.9.3: electron v42.9.3

Compare Source

Release Notes for v42.9.3

Fixes

  • Fixed a graphical glitch on Linux where thin borders appeared past the drop shadows on frameless windows when multiple windows were created. #​52772 (Also in 43, 44)
  • Fixed a memory leak when creating BrowserWindows. #​52893 (Also in 43, 44)
  • Fixed an issue on Windows where the app process could fail to exit after app.quit() while a shell.openExternal() or shell.openPath() call was still waiting on a system "Open with" dialog. #​52900 (Also in 41, 43, 44)
  • Fixed custom V8 snapshots (electron-mksnapshot, and the loadBrowserProcessSpecificV8Snapshot fuse) having no effect in the main process on macOS arm64, Linux x64 and Windows x64. #​52876 (Also in 43, 44)

Other Changes

  • Backported fix for 5246282. #​52869
  • Reduced idle main-process CPU wakeups caused by Node.js timers and immediates. #​52907 (Also in 43, 44)

v42.9.2: electron v42.9.2

Compare Source

Release Notes for v42.9.2

Fixes

  • Fixed registerFileProtocol and registerHttpProtocol returning readable responses to cross-origin no-cors fetches; they now return opaque responses like protocol.handle. #​52855 (Also in 41, 43, 44)
  • Fixed a WebContentsView staying blank after its window is shown when setBackgroundThrottling(false) was called while the window was hidden. #​52865 (Also in 43, 44)
  • Fixed a crash when resolving a path inside a malformed ASAR archive that contains cyclic link entries. #​52859 (Also in 43, 44)
  • Fixed downloading files that live inside an asar archive, including saving a packed PDF from the built-in PDF viewer. #​52828 (Also in 43, 44)
  • Fixed windows opened by a sandboxed top-level frame not inheriting the opener's sandbox restrictions. #​52850 (Also in 41, 43, 44)
  • <webview> and window.open now inherit nodeIntegrationInWorker from the embedder, consistent with the other Node and sandbox preferences. #​52831 (Also in 41, 43, 44)

Other Changes

v42.9.1: electron v42.9.1

Compare Source

Release Notes for v42.9.1

Fixes

  • Fixed a crash in systemPreferences.promptTouchID(reason) when an invalid reason value is passed. #​52780 (Also in 43, 44)
  • Fixed a potential crash in contentTracing.stopRecording() when the trace file could not be written to the requested path. #​52796 (Also in 43, 44)

Other Changes

  • Backported fixes from upstream ANGLE, Chromium, Skia and V8. #​52706
  • Backported fixes from upstream Chromium and V8. #​52785
  • Fixed an issue on macOS where a page's first use of speechSynthesis could block the main process for several hundred milliseconds. #​52813

v42.9.0: electron v42.9.0

Compare Source

Release Notes for v42.9.0

Features

  • Added webFrameMain.printToPDF() to allow printing individual frames to PDF from the main process. #​52626 (Also in 43, 44)

Fixes

  • Fixed a browser process crash that could occur during Windows logoff, shutdown, or restart. #​52621 (Also in 43, 44)
  • Fixed a crash report when the X server or Wayland compositor exits while an app is running. #​52686 (Also in 43, 44)
  • Fixed a crash when quickly switching menus while the app is under heavy load. #​52671 (Also in 43, 44)
  • Fixed a potential crash when notifying user activation before the primary main frame was live. #​52699 (Also in 43, 44)
  • Fixed an issue where a JavaScript out-of-memory crash could be reported from inside the crash-key handler instead of at the out-of-memory site. #​52723 (Also in 43, 44)

Other Changes

  • Backported fixes from upstream ANGLE, Chromium and V8. #​52664
  • No user-facing change; semver/none. #​52733

v42.8.1: electron v42.8.1

Compare Source

Release Notes for v42.8.1

Fixes

  • Fixed BrowserWindow size corruption on Windows when created with explicit x/y on a secondary monitor whose DPI differs from the primary. #​52500 (Also in 43, 44)
  • Fixed Dirent.parentPath being undefined for fs.readdir, fs.readdirSync, fs.glob, and fs.globSync with withFileTypes: true inside asar archives. #​52506 (Also in 43, 44)
  • Fixed a UAF with protocol.registerStreamProtocol when an error is emitted during a read. #​52516 (Also in 41, 43, 44)
  • Fixed a crash that could occur when closing DevTools while the host WebContents was being destroyed. #​52511 (Also in 41, 43, 44)

Other Changes

  • Fixed a renderer crash when disabling device emulation while the main frame was not local. #​52601
  • Improved the error message when an asar integrity check fails to name the entry that failed. #​52623 (Also in 43, 44)
  • Updated Node.js to v24.18.1. #​52551

v42.8.0: electron v42.8.0

Compare Source

Release Notes for v42.8.0

Features

  • Added available to process.getSystemMemoryInfo() on Linux, exposing proc/meminfo MemAvailable. #​52378 (Also in 43, 44)

Fixes

  • Fixed a window being marked hidden and background-throttled on macOS when covered by a transparent or click-through window. #​52390 (Also in 43, 44)
  • Fixed an issue where loading ICO files from ASAR archives on Windows left temporary icon files behind. #​52479 (Also in 43, 44)

v42.7.1: electron v42.7.1

Compare Source

Release Notes for v42.7.1

Fixes

  • Fixed app.disableHardwareAcceleration() not fully disabling GPU hardware usage on Windows starting from Electron 38. #​52371 (Also in 41, 43, 44)
  • Fixed a crash when showing Linux message boxes while another Linux UI implementation was active. #​52408 (Also in 43, 44)
  • Fixed an issue where frameless windows could shrink after applying constraints or toggling resizability on Windows. #​52366 (Also in 43)
  • Fixed crash during maglev compilation. #​52311
  • Fixed remote debugging via --remote-debugging-port not working when inspecting from Chrome's chrome://inspect page. The DevTools page would appear empty due to the frontend URL pointing to a CDN that returned 404 for Electron's Chromium builds. #​51415 (Also in 41)
  • Fixed unnecessary autofill popup creation for fields without datalist suggestions, which could cause input latency on macOS. #​52319 (Also in 41, 43, 44)

Other Changes

  • Backported fixes from upstream Chromium and V8. #​52395

v42.7.0: electron v42.7.0

Compare Source

Release Notes for v42.7.0

Features

  • Added net.WebSocket, a WHATWG-compatible WebSocket client for the main process that routes through Chromium's network stack. #​52345

v42.6.2: electron v42.6.2

Compare Source

Release Notes for v42.6.2

Fixes

  • Fixed a browser-process crash (ValidateIntegrityOrDie) and spurious preload ENOENT errors when an app's app.asar is replaced on disk (e.g. by an updater or MDM software) while the app is running. #​52294 (Also in 43, 44)
  • Fixed an issue on Windows where BrowserWindow with useContentSize: true would clamp the content area smaller than the configured maxWidth / maxHeight when programmatically resizing beyond those constraints via setBounds, setSize, or setContentSize. #​51622

Other Changes

  • Backported fixes from upstream Chromium. #​52303

v42.6.1: electron v42.6.1

Compare Source

Release Notes for v42.6.1

Fixes

  • Fixed crash triggered by replacing an open application menu. #​52275 (Also in 41, 43, 44)

v42.6.0: electron v42.6.0

Compare Source

Release Notes for v42.6.0

Fixes

  • Fixed running under tsx import transpilation. #​52046 (Also in 43)

Other Changes

  • Backported fixes from upstream Chromium, ANGLE, Dawn, and V8. #​52230
  • Updated Chromium to 148.0.7778.280. #​52110
  • Updated Node.js to v24.18.0. #​52105

v42.5.2: electron v42.5.2

Compare Source

Release Notes for v42.5.2

Fixes

  • Windows opened from links inside a sandboxed iframe now inherit the iframe's sandbox restrictions unless allow-popups-to-escape-sandbox is set. #​52190 (Also in 43)

v42.5.1: electron v42.5.1

Compare Source

Release Notes for v42.5.1

Fixes

  • Fixed ProtocolResponse.url requests being made through the default session instead of the session the protocol handler was registered on when ProtocolResponse.session was not set. #​52132 (Also in 40, 41, 43)
  • Made "reload" menu items work with BaseWindow. #​52117 (Also in 41, 43)

Other Changes

  • Backported fixes from upstream Chromium. #​52115
  • Backported fixes from upstream Chromium. #​52169

v42.5.0: electron v42.5.0

Compare Source

Release Notes for v42.5.0

Fixes

  • Fixed Windows edge case in NativeWindowViews::MoveBehindTaskBarIfNeeded(). #​52022 (Also in 41, 43)
  • Fixed an issue where clicking the maximize button could progressively shrink the window in some Wayland environments. #​52045 (Also in 43)

Other Changes

  • Backported fixes from upstream Chromium. #​51975
  • Updated Chromium to 148.0.7778.271. #​52038
  • Updated Node.js to v24.17.0. #​52066

v42.4.1: electron v42.4.1

Compare Source

Release Notes for v42.4.1

Fixes

  • Fixed DevTools Network panel missing most requests after navigating when webContents.debugger is attached. #​51965 (Also in 43)
  • Fixed safeStorage.isAsyncEncryptionAvailable() incorrectly reporting false shortly after the app ready event, and a crash when calling safeStorage.encryptStringAsync() or safeStorage.decryptStringAsync() before async encryption initialization completed. safeStorage.isAsyncEncryptionAvailable() now returns a Promise as documented. #​51924
  • Fixed a bug on Linux where a 1px line appeared at the top of frameless windows if the window and web contents had different background colors. #​52005 (Also in 41, 43)
  • Fixed a renderer crash when calling WebAssembly.compileStreaming() or WebAssembly.instantiateStreaming() with nodeIntegration enabled. #​51956 (Also in 43)

Other Changes

  • Backported fixes from upstream Chromium, Skia and Dawn. #​51942
  • Updated Chromium to 148.0.7778.265. #​51979

Documentation

v42.4.0: electron v42.4.0

Compare Source

Release Notes for v42.4.0

Fixes

  • Fixed a browser process crash when calling webContents.reload() or navigating synchronously from the render-process-gone event; the event is now emitted after the renderer's teardown notification has completed. #​51916 (Also in 43)
  • Fixed an issue on Linux and Windows where frameless windows would shrink when calling win.center(). Additionally, fixed an issue where frameless windows would appear slightly off-center on Windows. #​51921 (Also in 41, 43)
  • Fixed an issue where the "Toggle Developer Tools" menu item failed to function correctly with BaseWindow. #​51903 (Also in 41, 43)
  • Fixed sandboxed preload scripts running a stale cached version after the script was modified without its file size changing. #​51933 (Also in 43)
  • Fixed the context menu in a detached DevTools window focusing the inspected page's window instead of the DevTools window. #​51864 (Also in 43)

Other Changes

  • Backported fixes from upstream Chromium and V8. #​51934
  • Security: backported fixes for CVE-2026-9115, CVE-2026-9116. #​51904
  • Updated Chromium to 148.0.7778.254. #​51878
  • Updated Node.js to v24.16.0. #​51747

v42.3.3: electron v42.3.3

Compare Source

Release Notes for v42.3.3

Fixes

  • Fixed a crash when calling node:wasi functions with fast API calls enabled. #​51867
  • Improved external resize band positioning and scaling for frameless windows on Windows. #​51561 (Also in 41, 43)

Other Changes

  • Fixed silent data truncation in Buffer/TextEncoder APIs and a crash in fs.writeFileSync with non-ASCII strings on Apple Silicon. #​51849 (Also in 41, 43)
  • Improved app startup performance — the main process now boots from an embedded Node.js startup snapshot, framework bundles and preload scripts are cached as compiled V8 bytecode, and sandboxed renderer startup data is pushed ahead of navigation instead of fetched via blocking IPC. Preload stack traces now show the correct file path and line number. #​51831 (Also in 43)

v42.3.2: electron v42.3.2

Compare Source

Release Notes for v42.3.2

  • Fixed a crash in simdutf when processing strings in the main process

v42.3.1: electron v42.3.1

Compare Source

Release Notes for v42.3.1

Fixes

  • Fixed a desktopCapturer crash when sharing a window on Windows. #​51787

Other Changes

  • Enabled ThinLTO on macOS builds. #​51823 (Also in 43)
  • Improved performance of Linux and Windows release builds by enabling ThinLTO link-time optimization for the main Electron binary. #​51821 (Also in 43)
  • Improved performance of app.isDefaultProtocolClient() and app.setAsDefaultProtocolClient() on Linux. #​51627
  • Improved runtime performance. #​51828
  • Updated Chromium to 148.0.7778.218. #​51790

v42.3.0: electron v42.3.0

Compare Source

Release Notes for v42.3.0

Features

  • Added Linux support for app.getApplicationInfoForProtocol(). #​51680
  • Added Notification.remove(), removeAll(), and removeGroup() static methods for macOS. #​51691 (Also in 43)
  • Added session support to net module requests from utility process. #​51698

Fixes

  • Fixed an issue where process and other Node globals were undefined in ESM preload scripts when contextIsolation was disabled. #​51726 (Also in 43)
  • Fixed native addon compilation failure with undefined msvc intrinsic from v8 headers. #​51706 (Also in 43)

Other Changes

  • Updated Chromium to 148.0.7778.180. #​51600

v42.2.0: electron v42.2.0

Compare Source

Release Notes for v42.2.0

Features

  • Allowed the --experimental-inspector-network-resource Node.js flag to be passed through Electron. #​51378 (Also in 41)

Fixes

Other Changes

  • Backported fixes for a use-after-free in touch-event queue teardown, a runtime-effect validation gap in Skia image filters, and an integer overflow in the GLSL translator. #​51646
  • Backported fixes for an out-of-bounds write in WebAudio worklet setup, a heap overflow in the ANGLE GL backend, a use-after-free in the GTK Wayland platform, an accessibility tree-state validation issue, and an integer overflow in text bidi handling. #​51666
  • Improved performance of app.getApplicationNameForProtocol() on Linux. #​51628

Documentation

v42.1.0: electron v42.1.0

Compare Source

Release Notes for v42.1.0

Fixes

  • Fixed a crash in the macOS Touch ID WebAuthn prompt caused by a missing string resource, and added touchID.promptReason to app.configureWebAuthn() to customize the prompt text. #​51594 (Also in 41, 43)
  • Fixed a crash on MacOS when a user clicked into a title bar or top view. #​51605 (Also in 43)

Other Changes

  • Improved performance of webRequest header conversions and several other gin converter hot paths. #​51607 (Also in 43)
  • Improved performance of native event emission, IPC dispatch, and option-dictionary parsing. #​51614 (Also in 41)

v42.0.1: electron v42.0.1

Compare Source

Release Notes for v42.0.1

Fixes

  • Fixed DesktopCapturer crash on macOS. #​51506
  • Fixed ELECTRON_INSTALL_PLATFORM being ignored when resolving the Electron executable path during postinstall, which caused path.txt to be written for the host platform instead of the requested target and made isInstalled() always re-download on subsequent installs. #​51370
  • Fixed app.getLoginItemSettings() returning undefined for executableWillLaunchAtLogin on macOS; the property is now always a boolean. #​51507 (Also in 40, 41)
  • Fixed a potential race condition crash when closing DevTools. #​51473 (Also in 41)

Other Changes

  • Updated Chromium to 148.0.7778.97. #​51517

v42.0.0: electron v42.0.0

Compare Source

Release Notes for v42.0.0

Stack Upgrades

Breaking Changes

Behavior Changed: macOS notifications now use UNNotification API

Electron has migrated from the deprecated NSUserNotification API to the UNNotification API on macOS. The new API requires that an application be code-signed in order for notifications to be displayed. If an application is not code-signed, notifications will emit a failed event on the Notification object. #​47817

Behavior Changed: electron no longer downloads itself via postinstall script

Previously, the electron npm package would download the Electron binary from the repository's GitHub Releases in the package's postinstall script. With recent supply chain security attacks against the npm ecosystem with postinstall scripts as a common attack vector, Electron will now download itself dynamically the first time that its main bin script is run (e.g. via npx electron). See RFC #​22 for more context. #​49328

Behavior Changed: Offscreen rendering default device scale factor

Previously, OSR used the primary display's device scale factor for rendering. Starting from Electron 42, the default changes to a constant value of 1.0 for more consistent output sizes. Use webPreferences.offscreen.deviceScaleFactor to specify a custom value. #​49683

Removed: quotas object from Session.clearStorageData(options)

When calling Session.clearStorageData(options), the options.quotas object is no longer supported because it has been removed from upstream Chromium.

Removed: ELECTRON_SKIP_BINARY_DOWNLOAD environment variable

This environment variable is no longer supported due to the new lazy download behavior. #​50459

Features

Additions
  • Added app.configureWebAuthn({ touchID: { keychainAccessGroup } }) to enable the WebAuthn Touch ID platform authenticator on macOS. Also introduces a select-webauthn-account session event for discoverable-credential selection. #​51411 (Also in 41)
  • Added Notification.getHistory() for macOS. #​51123
  • Added Notification.handleActivation(callback) API on Windows to handle notification clicks, replies, and action buttons - including when the app is launched from a notification (cold start). #​49919
  • Added ELECTRON_INSTALL_PLATFORM and ELECTRON_INSTALL_ARCH variables to install binaries from other platforms and architectures. #​49981
  • Added allowExtensions privilege to protocol.registerSchemesAsPrivileged() to enable Chrome extensions on custom protocols. #​50530 (Also in 40, 41)
  • Added app.isActive() to check if the app is the active/foreground application (macOS only). #​49622
  • Added globalShortcut.setSuspended() and globalShortcut.isSuspended() methods to temporarily suspend and resume global shortcut handling. #​50777
  • Added id and groupId options to the Notification constructor on macOS. id allows custom identifiers for notifications, and groupId visually groups notifications together in Notification Center. #​50304
  • Added webContents.getOrCreateDevToolsTargetId(). #​49733 (Also in 41)
  • Added a disclaim option to the UtilityProcess API to allow for TCC disclaiming on macOS. #​49128 (Also in 39, 40, 41)
  • Added a reason property to the Notification 'closed' event on Windows to allow developers to know the reason the Notification was dismissed. #​49913 (Also in 40, 41)
  • Added an usePrinterDefaultPageSize option to webContents.print() to allow using the printer's default page size. #​49523 (Also in 41)
  • Added animation functionality to view.setBounds and added view.setBackgroundBlur. #​48812
  • Added id, groupId, and groupTitle support for Windows notifications. #​50895
  • Added nativeTheme.shouldDifferentiateWithoutColor on macOS. #​50409 (Also in 41)
  • Added support for MSIX auto-updating. #​49230 (Also in 39, 40, 41)
  • Added support for --experimental-transform-types. #​49711 (Also in 39, 40, 41)
  • Added support for long-animation-frame script attribution (via --enable-features=AlwaysLogLOAFURL). #​49706 (Also in 39, 40, 41)
  • Added support for heap profiling in contentTracing. #​51162 (Also in 41)
  • Added support for importing shared textures using the nv16 pixel format. #​51187
  • Added support for importing shared textures using the p010le 10-bit YUV pixel format. #​49272
  • Added support for several more safeStorage backends via new asynchronous functionality in safeStorage. #​49054
  • Added support for the urgency option in Notifications on Windows. #​50383 (Also in 41)
  • Added the ability to capture JS stack trace on renderer OOM. #​50911
  • Added the ability to disable auto-focusing of WebContents on navigation using webPreferences.focusOnNavigation. #​49425 (Also in 40, 41)
  • Electron now downloads its binary into node_modules dynamically on first launch instead of running a postinstall script. Added the install-electron script to manually trigger the download as well. #​49328
  • Enabled wasm trap handlers behind WasmTrapHandlers fuse. #​48983 (Also in 41)
  • Extended actions support for Windows notifications to include buttons, select dropdowns, and replies. #​48132 (Also in 40, 41)
  • On Wayland (Linux), frameless windows now have GTK drop shadows and extended resize boundaries. To create fully frameless windows with no decorations, set hasShadow: false in the window constructor. #​49295 (Also in 41)
  • Replaced deprecated NSUserNotification with User Notifications. #​47817

Fixes

  • Added additional ASAR support to additional fs copy methods. #​50285 (Also in 39, 40, 41)
  • Added crash keys to diagnose power monitor shutdown crash on arm64 windows. #​51205
  • Added missing metadata fields to contentTracing traces. #​51007 (Also in 41)
  • Added validation to protocol client methods to reject protocol names that do not conform to the RFC 3986 URI scheme grammar. #​50141 (Also in 38, 39, 40, 41)
  • Addressed upstream Chromium shift to enable CoreAudio Tap API for audio capture used in electron's desktopCapturer (macOS). #​49717 (Also in 39, 40, 41)
  • Allow dynamically updating menu item labels, sublabels, and icons. #​49678 (Also in 40, 41)
  • BrowserWindow now enforces min/max size constraints on window creation, even if they conflict with the requested width and height. #​50754 (Also in 41)
  • Changed the kResizeThreshold to trigger the resize on corners. #​51001 (Also in 41)
  • Fixed AllowUniversalAccessFromFileURLs not being properly constrained to file: origins in agent cluster key assignment. #​51404
  • Fixed corsEnabled: false protocol handlers incorrectly working across protocols. #​51269 (Also in 39, 40, 41)
  • Fixed printToPDF queue not resetting after a rejection. #​51222 (Also in 40, 41)
  • Fixed webContents.print() not honoring dpi horizontal/vertical options. #​51354 (Also in 41)
  • Fixed Electron child process titles on Linux so they show their types (render, gpu, etc.) and complete command-line arguments and flags in ps aux. #​50533
  • Fixed Fetch-intercepted requests using incorrect header client, which could cause request failures. #​51372 (Also in 41)
  • Fixed fs.stat on files inside asar archives returning undefined for blksize and blocks instead of numeric values. #​50877 (Also in 40, 41)
  • Fixed globalShortcut not working on Wayland with GlobalShortcutsPortal feature enabled. #​49842 (Also in 40, 41)
  • Fixed a bug that cause offscreen rendering doesn't have valid screen info and unable to get valid result of related media queries. Added webPreference.offscreen.deviceScaleFactor to allow user specify a value. #​48730 (Also in 40, 41)
  • Fixed a bug where Windows notification icons could fail to save because their temporary filenames contained invalid characters. #​50482 (Also in 40, 41)
  • Fixed a crash in AutofillPopup teardown. #​51317 (Also in 40, 41)
  • Fixed a crash in clipboard.readImage() when the clipboard contains malformed image data. #​50494 (Also in 39, 40, 41)
  • Fixed a crash that could occur when using the File System Access API. #​49578 (Also in 39, 40, 41)
  • Fixed a crash when calling contentTracing APIs before app is ready. #​51353 (Also in 41)
  • Fixed a crash when calling contentTracing.getTraceBufferUsage() while a trace session is active. #​50592 (Also in 39, 40, 41)
  • Fixed a crash when calling webRequest.onBeforeSendHeaders with invalid header names or values. #​51366 (Also in 40, 41)
  • Fixed a crash when calling an offscreen shared texture's release() after the texture object was garbage collected. #​50502 (Also in 39, 40, 41)
  • Fixed a crash when rendering PDFs when Site Isolation is disabled. #​50846 (Also in 41)
  • Fixed a crash caused by missing MicrotasksScope for worker exit emit in ContextWillDestroy. #​51350 (Also in 40, 41)
  • Fixed a crash when the <permission> element was used, by including permission element string resources in locale paks. #​51374 (Also in 41)
  • Fixed a macOS crash when creating a new tab from the tab overview. #​49917 (Also in 40, 41)
  • Fixed a memory leak where Menu items were not cleaned up after Menu.setApplicationMenu was called repeatedly. #​50832 (Also in 40, 41)
  • Fixed a potential crash when using webContents.print(). #​50853
  • Fixed absent 'Electron Isolated Context' in the execution context dropdown in Dev Tools. #​51079 (Also in 41)
  • Fixed an accessibility issue where the AXMenuOpened event was not fired on menu creation. #​50504 (Also in 40, 41)
  • Fixed an application crash on MacOS where the menu observer was not being properly removed before garbage collection. #​49648 (Also in 40, 41)
  • Fixed an error with Windows release builds after MSIX merger. #​49613
  • Fixed an intermittent Invoke in DisallowJavascriptExecutionScope crash on application quit when a WebContents (or other JS-emitting native object) is garbage-collected during shutdown. #​50695 (Also in 40, 41)
  • Fixed an issue in chrome://accessibility. #​49547 (Also in 39, 40, 41)
  • Fixed an issue on macOS where Universal Links were not delivered to app.on('continue-activity') on cold launch when NSUserActivity.userInfo was nil. #​49986 (Also in 39, 40, 41)
  • Fixed an issue on macOS where show/hide events and WebContents visibility state could be reported incorrectly when multiple WebContentsViews were attached to a window. #​50712 (Also in 40, 41)
  • Fixed an issue on macOS where calling autoUpdater.quitAndInstall() could fail if checkForUpdates() was called again after an update was already downloaded. #​50210 (Also in 39, 40, 41)
  • Fixed an issue that caused the RGBAF16 shared texture format to have a keyed mutex on Windows. #​49798 (Also in 41)
  • Fixed an issue where Chrome Devtools menus may not appear in certain embedded windows. #​49794 (Also in 39, 40, 41)
  • Fixed an issue where DevTools would re-attach to the window when opened after previously being detached. #​50815 (Also in 39, 40, 41)
  • Fixed an issue where VideoFrame objects returned through contextBridge had an incorrect prototype. #​49997 (Also in 39, 40, 41)
  • Fixed an issue where additionalData passed to app.requestSingleInstanceLock on Windows could be truncated or fail to deserialize in the primary instance's second-instance event. #​50119 (Also in 38, 39, 40, 41)
  • Fixed an issue where net.fetch() requests in the main process and utility processes would permanently fail with net::ERR_FAILED after the Network Service process crashed and restarted. #​49887
  • Fixed an issue where nodeIntegrationInWorker didn't always work in AudioWorklet. #​51005 (Also in 40, 41)
  • Fixed an issue where nodeIntegrationInWorker overrides in setWindowOpenHandler were not honored for child windows sharing a renderer process with their opener. #​50122 (Also in 38, 39, 40, 41)
  • Fixed an issue where screen.getCursorScreenPoint() crashed on Wayland when it was called before a BrowserWindow had been created. #​50092 (Also in 39, 40, 41)
  • Fixed an issue where setSimpleFullScreen on macOS would exit when web content called requestFullscreen(). #​50987 (Also in 40, 41)
  • Fixed an issue where shell.writeShortcutLink was throwing TypeError: Insufficient number of arguments when called with just [(path, options)]. #​49476 (Also in 39, 40, 41)
  • Fixed an issue where alt+space triggered the system context menu even if an accelerator was registered for the hotkey combination. #​49619 (Also in 39, 40, 41)
  • Fixed an issue where an Electron auto-update job would occasionally fail if a macOS system update is pending. #​51111
  • Fixed an issue where an Electron macOS update would not be applied if another app was previously blocking the macOS system update loop. #​51212 (Also in 40, 41)
  • Fixed an issue where an app shortcut may lose its icon after auto-updating on Windows. #​50517 (Also in 40, 41)
  • Fixed an issue where calling setBounds on a WebContentsView could trigger redundant page-favicon-updated events even when the favicon had not changed. #​49464 (Also in 39, 40, 41)
  • Fixed an issue where closing devtools immediately after focus caused a crash. #​51036 (Also in 41)
  • Fixed an issue where concurrent getFileHandle requests on the same path could stall indefinitely. #​50671 (Also in 40, 41)
  • Fixed an issue where cookie changed events weren't properly emitted in all cases. #​49103 (Also in 41)
  • Fixed an issue where custom options in webContents.print() did not prefill the print dialog on macOS. #​50643
  • Fixed an issue where frameless windows had resize issues in Mac App Store builds. #​49780 (Also in 39, 40, 41)
  • Fixed an issue where invalid characters in custom protocol or webRequest response header values were not rejected. #​50123 (Also in 38, 39, 40, 41)
  • Fixed an issue where making a window fullscreen on Windows, minimizing it and then restoring it broke previous fullscreen state. #​49872 (Also in 40, 41)
  • Fixed an issue where malformed custom toastXml could cause a Notification crash. #​49947 (Also in 40, 41)
  • Fixed an issue where margins did not look as expected when printing in silent mode. #​50653 (Also in 41)
  • Fixed an issue where menu item accelerators stopped working after the item's enabled property was toggled on macOS. #​49553 (Also in 39, 40, 41)
  • Fixed an issue where menu item enabled state wasn't updated during key equivalent dispatch when the menu was closed on macOS. #​49875 (Also in 39, 40, 41)
  • Fixed an issue where native modules would either crash or not compile for MacOS 12. #​49697 (Also in 40, 41)
  • Fixed an issue where permission and device-chooser handlers received the top-level page origin instead of the requesting subframe's origin. #​50052 (Also in 38, 39, 40, 41)
  • Fixed an issue where role-based menu items were incorrectly returning null for their accelerator property. #​49558 (Also in 39, 40, 41)
  • Fixed an issue where saving edited PDF files would fail with a cross-origin SecurityError. #​51072 (Also in 41)
  • Fixed an issue where setting zoomFactor in setWindowOpenHandler's overrideBrowserWindowOptions had no effect on windows opened via window.open(). #​49886 (Also in 39, 40, 41)
  • Fixed an issue where some DevTools functionality didn't work as expected. #​50274 (Also in 40, 41)
  • Fixed an issue where some shell functionality may not work on Linux if the target window is already open. #​49499 (Also in 41)
  • Fixed an issue where some packages weren't correctly filtered on macOS in dialogs. #​49444 (Also in 38, 39, 40, 41)
  • Fixed an issue where the Squirrel.Mac installer could resolve the target bundle path to different locations at different stages of an install. #​50765
  • Fixed an issue where the webContents.print() callback may not fire correctly in some cases. #​50603 (Also in 41)
  • Fixed an issue where traffic light buttons would flash at position (0,0) when restoring a window with a custom trafficLightPosition from minimization on macOS. #​50183 (Also in 39, 40, 41)
  • Fixed an issue where webContents.print() would ignore pageSize / mediaSize when silent was true. #​50855 (Also in 41)
  • Fixed an issue whereby a duplicate "Toggle Full Screen" menu item appeared in the View menu on macOS. #​49074 (Also in 38, 39, 40, 41)
  • Fixed aspect ratio min/max size clamping to correctly account for extraSize on macOS. #​50836 (Also in 40, 41)
  • Fixed borders and smearing in transparent frameless/client frame windows on Linux. #​51430 (Also in 41)
  • Fixed bug that could occasionally cause browserWindow's always-on-top-changed event to fire with incorrect values. #​51133 (Also in 40, 41)
  • Fixed bug where opening a message box immediately upon closing a child window may cause the parent window to freeze on Windows. #​50078 (Also in 39, 40, 41)
  • Fixed build failure when printing is disabled. #​50056 (Also in 41)
  • Fixed certain DevTools extension panels not showing without a page reload. #​50640
  • Fixed crash in platform_util::Beep() on Linux. #​49442 (Also in 39, 40, 41)
  • Fixed crash when app.setPath('sessionData') was called with a non-existent directory. #​50908 (Also in 41)
  • Fixed crash when handling JavaScript dialogs from windows opened with invalid or empty URLs. #​50398 (Also in 39, 40, 41)
  • Fixed CSS selector syntax in default app styles to properly apply animations to hero icons. #​49950 (Also in 41)
  • Fixed dependency issue that caused Squirrel.Mac updates to fail. #​49980
  • Fixed dock menu items not respecting enabled and checked properties on macOS. #​49574 (Also in 38, 39, 40, 41)
  • Fixed draggable regions not updating position when DevTools is docked to the left or right in a frameless window. #​49822 (Also in 39, 40, 41)
  • Fixed draggable regions responding to clicks in hidden WebContentsView. #​51245 (Also in 40, 41)
  • Fixed duplicate mouse hooks stacking on Windows when UnhookWindowsHookEx fails in SetForwardMouseMessages. #​51418 (Also in 41)
  • Fixed improper focus tracking in BaseWindow on MacOS. #​50339 (Also in 39, 40, 41)
  • Fixed logic bug that rendered certain window types un-resizable on MAS builds. #​50356 (Also in 40, 41)
  • Fixed macOS text replacement not working on contenteditable elements. #​51344 (Also in 40, 41)
  • Fixed memory leak when setting icons on Linux/GTK. #​49863 (Also in 38, 39, 40, 41)
  • Fixed menu bar hiding after a call to win.setFullScreen(false) when not in fullscreen on Linux. #​45930 (Also in 39, 40, 41)
  • Fixed menus to correctly emit menu-will-close event when closed after any submenu has been open. #​49783 (Also in 40, 41)
  • Fixed native notification clicks not focusing the application window on Wayland. #​50669
  • Fixed printing on Linux failing with "Invalid printer settings". #​50487 (Also in 41)
  • Fixed rendering glitches on macOS. #​49608 (Also in 40, 41)
  • Fixed resize hit targets for frameless windows on Windows. Resize targets now start at the side and bottom edges of the window and extend outward when frame: false, matching the behavior for windows with frames. #​50864 (Also in 41)
  • Fixed several issues with consistent window sizing and resizing on Linux when CSD is in use (e.g. on GNOME/Wayland) and added support for creating content-sized windows. #​49209 (Also in 41)
  • Fixed shutdown crash on windows when hidden titlebar is enabled. #​50042 (Also in 39, 40, 41)
  • Fixed shutdown crash on windows when power monitor notifications were subscribed. #​50893
  • Fixed squirrel.mac stacked update behavior to old staged updates. #​49365 (Also in 39, 40, 41)
  • Fixed stable bounds on Windows when toggling setResizable for frameless windows. #​51296 (Also in 41)
  • Fixed startup crash when V8 sandbox is disabled. #​49210 (Also in 40, 41)
  • Fixed test scaffolding bug when running tests locally on Linux. #​51149 (Also in 40, 41)
  • Fixed the appearance of maximized windows on GNOME in Wayland, especially when non-default GTK themes like Breeze are set. #​50644 (Also in 41)
  • Fixed the crash keys being lost and the crash reporter hanging on macOS when many dynamic crash keys were registered. #​50839 (Also in 40, 41)
  • Fixed transparency being lost across setResizable toggles on Windows. #​51218 (Also in 41)
  • Fixed user resizing of transparent windows on win32 platform. #​50299 (Also in 39, 40, 41)
  • Fixed utilityProcess exit event reporting incorrect exit codes on Windows when the exit code has the high bit. #​50385 (Also in 40, 41)
  • Fixed webRequest handlers not being called for intercepted protocols and special net.fetch URLs. #​45915
  • Fixed window freeze when failing to enter/exit fullscreen on macOS. #​50342 (Also in 39, 40, 41)
  • Fixed window insets not being removed on fullscreen windows on Windows. #​51331 (Also in 41)
  • Fixed window sizing on Linux when min/max size constraints are set or resizable is false. Windows no longer shrink below the requested max size or grow taller when resizability is disabled. #​49903 (Also in 41)
  • Fixed Windows notification toast action and reply events not dispatching from WinRT activation path. #​51330 (Also in 41)
  • Global shortcuts can now be registered more reliably on Wayland using the globalShortcut API. #​49988 (Also in 41)
  • Improved the appearance of shadows and borders on frameless windows on Wayland. #​50007 (Also in 41)
  • Moved Electron-specific help menu links to the default app only; unpackaged apps will no longer see these items in their default menu. #​50861 (Also in 40, 41)
  • Removed "representedObject is not a WeakPtrToElectronMenuModelAsNSObject" logging when interacting with macOS menus. #​50614 (Also in 41)

Other Changes

  • Added support for using a proxy during yarn install. #​50351 (Also in 39, 40, 41)
  • Backported fix for 4835695. #​49788
  • Bumped Chromium to 148.0.7778.40. #​51126
  • Bumped Chromium to 148.0.7778.56. #​51299
  • Enabled profile-guided optimization for V8 builtins in release builds, improving JavaScript builtin performance (Array, String, RegExp, etc.). #​50573 (Also in 40, 41)
  • Fixed gn gen failing to resolve electron_version when building from a git worktree checkout. #​51166 (Also in 39, 40, 41)
  • Fixed crash in platform_util::Beep() on Linux. #​49680 (Also in 40, 41)
  • Refactored gin_helper::Promise to be managed by cppgc. #​51405
  • Refactored our MSIX updater code to use an upstream Chromium pattern and eliminates the need for special exception handling build flags. #​49645 (Also in 39, 40, 41)
  • Replaced ESLint with oxlint and added oxfmt for JS/TS formatting. #​51435
  • Restricted npm tarball contents to an explicit allowlist. #​51308
  • Security: backported fixes for CVE-2026-6358, CVE-2026-6359, CVE-2026-6360, CVE-2026-6310, CVE-2026-6312, CVE-2026-6313, CVE-2026-6314, CVE-2026-6316, CVE-2026-6361, CVE-2026-6362. #​51136

Documentation

Notices

End of Support for 39.x.y

Electron 39.x.y has reached end-of-support as per the project's support policy. Developers and applications are encouraged to upgrade to a newer version of Electron.

v41.10.7: electron v41.10.7

Compare Source

Release Notes for v41.10.7

[!WARNING]
Electron 41.x.y has reached end-of-support as per the project's support policy. Developers and applications are encouraged to upgrade to a newer version of Electron.

Fixes

  • Fixed an issue on Linux where the system theme color appeared at the top edge of frameless windows. #​53006 (Also in 42, 43)
  • Fixed running under tsx import transpilation. #​53003 (Also in 42, 43)
  • Fixed shutdown crash on windows when power monitor notifications were subscribed. #​52999 (Also in 42)
  • Fixed the context menu in a detached DevTools window focusing the inspected page's window instead of the DevTools window. #​53002 (Also in 42, 43)
  • Fixed titleBarOverlay.color set to rgba(0,0,0,0) failing back to default frame color. #​53004 (Also in 42, 43)

Other Changes

  • Backported fixes from upstream ANGLE, Chromium, Dawn, Skia and V8. #​52997
  • Backported fixes from upstream Chromium and V8. #​53059

v41.10.6: electron v41.10.6

Compare Source

Release Notes for v41.10.6

Fixes

  • Fixed registerFileProtocol and registerHttpProtocol returning readable responses to cross-origin no-cors fetches; they now return opaque responses like protocol.handle. #​52854 (Also in 42, 43, 44)
  • Fixed an issue on Windows where the app process could fail to exit after app.quit() while a shell.openExternal() or shell.openPath() call was still waiting on a system "Open with" dialog. #​52899 (Also in 43, 44)
  • Fixed windows opened by a sandboxed top-level frame not inheriting the opener's sandbox restrictions. #​52849 (Also in 42, 43, 44)
  • <webview> and window.open now inherit nodeIntegrationInWorker from the embedder, consistent with the other Node and sandbox preferences. #​52829 (Also in 42, 43, 44)

Other Changes

  • Backported fixes from upstream ANGLE, Chromium and Skia. #​52707
  • Backported fixes from upstream Chromium and V8. #​52775

v41.10.5: electron v41.10.5

Compare Source

Release Notes for v41.10.5

Fixes

  • Fixed an issue where the Squirrel.Mac installer could resolve the target bundle path to different locations at different stages of an install. #​50764 (Also in 39, 42)

Other Changes

  • Backported fixes from upstream ANGLE, Chromium, Skia and V8. #​52702
  • No user-facing change; semver/none. #​52734

v41.10.4: electron v41.10.4

Compare Source

Release Notes for v41.10.4

Fixes

  • Fixed a UAF with protocol.registerStreamProtocol when an error is emitted during a read. #​52513 (Also in 42, 43, 44)
  • Fixed a crash that could occur when closing DevTools while the host WebContents was being destroyed. #​52512 (Also in 42, 43, 44)
  • Windows opened from links inside a sandboxed iframe now inherit the iframe's sandbox restrictions unless allow-popups-to-escape-sandbox is set. #​52486 (Also in 42, 43)

v41.10.3: electron v41.10.3

Compare Source

Release Notes for v41.10.3

Fixes

  • Fixed app.disableHardwareAcceleration() not fully disabling GPU hardware usage on Windows starting from Electron 38. #​52368 (Also in 42, 43, 44)
  • Fixed unnecessary autofill popup creation for fields without datalist suggestions, which could cause input latency on macOS. #​52320 (Also in 42, 43, 44)

Other Changes

  • Backported fixes from upstream Chromium and V8. #​52396

v41.10.2: electron v41.10.2

Compare Source

Release Notes for v41.10.2

Fixes

  • Fixed a renderer crash when calling WebAssembly.compileStreaming() or WebAssembly.instantiateStreaming() with nodeIntegration enabled. #​52240 (Also in 42, 43)

Other Changes

  • Backported fixes from upstream Chromium. #​52304

v41.10.1: electron v41.10.1

Compare Source

Release Notes for v41.10.1

Fixes

  • Fixed crash triggered by replacing an open application menu. #​52278 (Also in 42, 43, 44)

v41.10.0: electron v41.10.0

Compare Source

Release Notes for v41.10.0

Other Changes

  • Backported fixes from upstream Chromium, ANGLE, Dawn, Skia, and V8. #​52231
  • Updated Node.js to v24.18.0. #​52104

v41.9.2: electron v41.9.2

Compare Source

Release Notes for v41.9.2

Fixes

  • Fixed an issue where clicking the maximize button could progressively shrink the window in some Wayland environments. #​52074 (Also in 42, 43)

v41.9.1: electron v41.9.1

Compare Source

Release Notes for v41.9.1

Fixes

  • Fixed ProtocolResponse.url requests being made through the default session instead of the session the protocol handler was registered on when ProtocolResponse.session was not set. #​52134 (Also in 40, 42, 43)
  • Made "reload" menu items work with BaseWindow. #​52118 (Also in 42, 43)

Other Changes

  • Backported fixes from upstream Chromium. #​52120
  • Backported fixes from upstream Chromium. #​52170

v41.9.0: electron v41.9.0

Compare Source

Release Notes for v41.9.0

Fixes

  • Fixed Windows edge case in NativeWindowViews::MoveBehindTaskBarIfNeeded(). #​52023 (Also in 42, 43)

Other Changes

  • Backported fixes from upstream Chromium. #​51976
  • Updated Node.js to v24.17.0. #​52065

v41.8.0: electron v41.8.0

Compare Source

Release Notes for v41.8.0

Fixes

  • Fixed a browser process crash when calling webContents.reload() or navigating synchronously from the render-process-gone event; the event is now emitted after the renderer's teardown notification has completed. #​51917 (Also in 42, 43)
  • Fixed a bug on Linux where a 1px line appeared at the top of frameless windows if the window and web contents had different background colors. #​52004 (Also in 42, 43)

Other Changes

  • Backported fixes from upstream Chromium and V8. #​51936
  • Backported fixes from upstream Chromium, Skia and Dawn. #​51943
  • Updated Node.js to v24.16.0. #​51746

Documentation

v41.7.2: electron v41.7.2

Compare Source

Release Notes for v41.7.2

Fixes

  • Fixed an issue on Linux and Windows where frameless windows would shrink when calling win.center(). Additionally, fixed an issue where frameless windows would appear slightly off-center on Windows. #​51919 (Also in 42, 43)
  • Fixed an issue where the "Toggle Developer Tools" menu item failed to function correctly with BaseWindow. #​51902 (Also in 42, 43)

Other Changes

  • Fixed silent data truncation in Buffer/TextEncoder APIs and a crash in fs.writeFileSync with non-ASCII strings on Apple Silicon. #​51851 (Also in 42, 43)
  • Security: backported fixes for CVE-2026-9110, CVE-2026-9111, CVE-2026-9114, CVE-2026-9115, CVE-2026-9116, CVE-2026-9117, CVE-2026-9118, CVE-2026-9120, CVE-2026-9121, CVE-2026-9122, CVE-2026-9124, CVE-2026-9126. #​51906

v41.7.1: electron v41.7.1

Compare Source

Release Notes for v41.7.1

Fixes

  • Fixed a potential crash when using webContents.print(). #​51728 (Also in 42)
  • Fixed an issue where custom options in webContents.print() did not prefill the print dialog on macOS. #​51682 (Also in 40, 42)

v41.7.0: electron v41.7.0

Compare Source

Release Notes for v41.7.0

Features

  • Allowed the --experimental-inspector-network-resource Node.js flag to be passed through Electron. #​51377 (Also in 42)

Fixes

Other Changes

  • Backported a batch of upstream fixes for memory-safety and validation issues across media, GPU, networking, accessibility, compositing and the ANGLE GL backend. #​51667
  • Backported fixes for several use-after-free and object-lifetime issues in input, UI, Aura, HID and file-system teardown paths, a runtime-effect validation gap in Skia, and an integer overflow in the GLSL translator. #​51647

v41.6.1: electron v41.6.1

Compare Source

Release Notes for v41.6.1

Other Changes

  • Improved performance of native event emission, IPC dispatch, and option-dictionary parsing. #​51613 (Also in 42)
  • Security: backported 20 High-severity fixes from Chrome 148 stable release. #​51612

v41.6.0: electron v41.6.0

Compare Source

Release Notes for v41.6.0

Fixes

  • Fixed a crash in the macOS Touch ID WebAuthn prompt caused by a missing string resource, and added touchID.promptReason to app.configureWebAuthn() to customize the prompt text. #​51604 (Also in 42, 43)

v41.5.2: electron v41.5.2

Compare Source

Release Notes for v41.5.2

Fixes

  • Improved external resize band positioning and scaling for frameless windows on Windows. #​51560 (Also in 43)

v41.5.1: electron v41.5.1

Compare Source

Release Notes for v41.5.1

Fixes

  • Fixed app.getLoginItemSettings() returning undefined for executableWillLaunchAtLogin on macOS; the property is now always a boolean. #​51508 (Also in 40, 42)
  • Fixed a potential race condition crash when closing DevTools. #​51474 (Also in 42)
  • Fixed cross-origin isolation failing for non-file origins. #​51403 (Also in 42)
  • Improved the way Electron determines the default XDG App ID and WM_CLASS on Linux for better platform compatibility if desktopName is not provided in package.json. #​51480 (Also in 42)

v41.5.0: electron v41.5.0

Compare Source

Release Notes for v41.5.0

Features

  • Added app.configureWebAuthn() to enable the Touch ID platform authenticator for WebAuthn on macOS, and a select-webauthn-account session event for choosing between multiple discoverable credentials. #​51412 (Also in 42)

Fixes

  • Fixed a regression on Windows where frameless windows changed their size after calling setResizable. #​51427 (Also in 42)
  • Fixed an issue on Windows where a transient UnhookWindowsHookEx failure in setIgnoreMouseEvents(true, { forward: true }) teardown could cause duplicate low-level mouse hooks to be installed on the next activation. #​51419 (Also in 42)
  • Fixed remote debugging via --remote-debugging-port not working when inspecting from Chrome's chrome://inspect page. The DevTools page would appear empty due to the frontend URL pointing to a CDN that returned 404 for Electron's Chromium builds. #​51413

v41.4.0: electron v41.4.0

Compare Source

Release Notes for v41.4.0

Features

  • Added support for heap profiling via contentTracing.enableHeapProfiling(). #​51178 (Also in 42)

Fixes

  • Ensured cross-origin fetch() and XHR are blocked for custom protocols registered with supportFetchAPI: true unless corsEnabled: true is also set; cross-origin mode: 'no-cors' requests now receive an opaque response. #​51270 (Also in 39, 40, 42)
  • Fixed a crash when providing invalid HTTP header names or values in the webRequest.onBeforeSendHeaders() callback. #​51365 (Also in 40, 42)
  • Fixed a bug that cause offscreen rendering doesn't have valid screen info and unable to get valid result of related media queries.
    • Added webPreference.offscreen.deviceScaleFactor to allow user specify a value, instead of using user's primary display's value. #​50375 (Also in 40)
  • Fixed a bug where errors would occur when using the Chrome DevTools Fetch API. #​51371 (Also in 42)
  • Fixed a crash that could occur when an autofill suggestion popup was shown while a window was closing. #​51321 (Also in 42)
  • Fixed a regression where frameless fullscreen windows had white borders on Windows. #​51332 (Also in 42)
  • Fixed a renderer crash when a page uses the <geolocation> HTML element. #​51373 (Also in 42)
  • Fixed an issue where calling contentTracing APIs before app.whenReady() would crash the application. #​51352 (Also in 42)
  • Fixed an issue where some toast notification properties didn't work as expected in WinRT. #​51397 (Also in 42)
  • Fixed buggy behavior where Backspace would accept macOS text replacements inside contenteditable elements. #​51343 (Also in 40, 42)
  • This PR fixes a regression in silent printing where custom DPI values from webContents.print were not honored, causing incorrect output scaling in real-world print flows. #​51355 (Also in 42)

Other Changes

v41.3.0: electron v41.3.0

Compare Source

Release Notes for v41.3.0

Fixes

  • Fixed webContents.printToPDF rejecting on all subsequent calls after a prior call was rejected with an invalid pageRanges value. #​51221 (Also in 40, 42)
  • Fixed an issue where app-region: drag inside a hidden WebContentsView would still drag the parent window on Windows. #​51246 (Also in 40, 42)
  • Fixed an issue where an Electron macOS update would not be applied if another app was previously blocking the macOS system update loop. #​51210 (Also in 40, 42)
  • Fixed build failure when building with enable_pdf disabled. #​51248 (Also in 42)
  • Fixed frameless transparent windows on Windows losing their transparency after setResizable(false) followed by setResizable(true). #​51217 (Also in 42)

Other Changes

v41.2.2: electron v41.2.2

Compare Source

Release Notes for v41.2.2

Fixes

  • Fixed absent 'Electron Isolated Context' in the execution context dropdown in Dev Tools. #​51078 (Also in 42)
  • Fixed an issue where nodeIntegrationInWorker didn't always work in AudioWorklet. #​51006 (Also in 42)
  • Fixed an issue where saving edited PDF files would fail with a cross-origin SecurityError. #​51073 (Also in 42)
  • Fixed bug that could occasionally cause browserWindow's always-on-top-changed even to fire with incorrect values. #​51135 (Also in 40, 42)
  • Fixed test scaffolding bug when running tests locally on Linux. #​51150 (Also in 40, 42)

Other Changes

  • Fixed gn gen failing to resolve electron_version when building from a git worktree checkout. #​51165 (Also in 39, 40, 42)
  • Security: backported fixes for CVE-2026-6296, CVE-2026-6297, CVE-2026-6298, CVE-2026-6299, CVE-2026-6358, CVE-2026-6359, CVE-2026-6300, CVE-2026-6301, CVE-2026-6302, CVE-2026-6303, CVE-2026-6304, CVE-2026-6306, CVE-2026-6307, CVE-2026-6308, CVE-2026-6309, CVE-2026-6360, CVE-2026-6311, CVE-2026-6312, CVE-2026-6313, CVE-2026-6314, CVE-2026-6316, CVE-2026-6318, CVE-2026-6361, CVE-2026-6362, CVE-2026-6363. #​51137

v41.2.1: electron v41.2.1

Compare Source

Release Notes for v41.2.1

Fixes

  • Added missing metadata fields to contentTracing traces. #​51021 (Also in 42)
  • Changed the kResizeThreshold to trigger the resize on corners. #​51002 (Also in 42)
  • Fixed fs.stat on files inside asar archives returning undefined for blksize and blocks instead of numeric values. #​50876 (Also in 40, 42)
  • Fixed a crash when rendering PDFs when Site Isolation is disabled. #​50845 (Also in 42)
  • Fixed a memory leak where Menu items were not cleaned up after Menu.setApplicationMenu was called repeatedly. #​50830 (Also in 40, 42)
  • Fixed an issue where DevTools would re-attach to the window when opened after previously being detached. #​50816 (Also in 39, 40, 42)
  • Fixed an issue where setSimpleFullScreen on macOS would exit when web content called requestFullscreen(). #​50985 (Also in 40, 42)
  • Fixed an issue where closing devtools immediately after focus caused a crash. #​51037 (Also in 42)
  • Fixed an issue where webContents.print() would ignore pageSize / mediaSize when silent was true. #​50856 (Also in 42)
  • Fixed aspect ratio min/max size clamping to correctly account for extraSize on macOS. #​50835 (Also in 40, 42)
  • Fixed crash when app.setPath('sessionData') was called with a non-existent directory. #​50958 (Also in 42)
  • Fixed resize hit targets for frameless windows on Windows. Resize targets now start at the side and bottom edges of the window and extend outward when frame: false, matching the behavior for windows with frames. #​50863 (Also in 42)
  • Fixed the crash keys being lost and the crash reporter hanging on macOS when many dynamic crash keys were registered. #​50837 (Also in 40, 42)
  • Moved Electron-specific help menu links to the default app only; unpackaged apps will no longer see these items in their default menu. #​50859 (Also in 40, 42)

Other Changes

  • Backported fix for none. #​50880
  • Backported upstream fixes for two edge cases in the WebNN TFLite graph builder. #​50983
  • Backported upstream v8 fixes for a maglev use-count accounting issue and an inspector InspectedContext lifetime issue. #​50991
  • Updated Chromium to 146.0.7680.188. #​50787
  • Updated Node.js to v24.14.1. #​50478

v41.2.0: electron v41.2.0

Compare Source

Release Notes for v41.2.0

Features

  • Added allowExtensions privilege to protocol.registerSchemesAsPrivileged() to enable Chrome extensions on custom protocols. #​50529 (Also in 40, 42)

Fixes

  • BrowserWindow now enforces min/max size constraints on window creation, even if they conflict with the requested width and height. #​50753 (Also in 42)
  • Fixed a regression on Linux where transparent frameless windows would have visible borders. Also fixed a longstanding issue where transparent windows on Linux could show smeared and glitched content as windows moved around. #​50605
  • Fixed an intermittent Invoke in DisallowJavascriptExecutionScope crash on application quit when a WebContents (or other JS-emitting native object) is garbage-collected during shutdown. #​50694 (Also in 40, 42)
  • Fixed an issue on macOS where show/hide events and WebContents visibility state could be reported incorrectly when multiple WebContentsViews were attached to a window. #​50715 (Also in 40, 42)
  • Fixed an issue where concurrent getFileHandle requests on the same path could stall indefinitely. #​50670 (Also in 40, 42)
  • Fixed an issue where margins did not look as expected when printing in silent mode. #​50652 (Also in 42)
  • Fixed an issue where the webContents.print() callback may not fire correctly in some cases. #​50604 (Also in 42)
  • Fixed the appearance of maximized windows on GNOME in Wayland, especially when non-default GTK themes like Breeze are set. #​50645 (Also in 42)
  • Removed "representedObject is not a WeakPtrToElectronMenuModelAsNSObject" logging when interacting with macOS menus. #​50613 (Also in 42)

Other Changes

  • Updated Chromium to 146.0.7680.179. #​50616

v41.1.1: electron v41.1.1

Compare Source

Release Notes for v41.1.1

Fixes

  • Fixed a crash when calling contentTracing.getTraceBufferUsage() while a trace session is active. #​50594 (Also in 39, 40, 42)
  • Fixed printing on Linux failing with "Invalid printer settings". #​50486 (Also in 42)

Other Changes

  • Enabled profile-guided optimization for V8 builtins in release builds, improving JavaScript builtin performance (Array, String, RegExp, etc.). #​50574 (Also in 40, 42)

v41.1.0: electron v41.1.0

Compare Source

Release Notes for v41.1.0

Features

  • Added nativeTheme.shouldDifferentiateWithoutColor on macOS. #​50408 (Also in 42)
  • Notes: Added support for the urgency option in Notifications on Windows. #​50382 (Also in 42)

Fixes

  • Fixed a bug where Windows notification icons could fail to save because their temporary filenames contained invalid characters. #​50483 (Also in 40)
  • Fixed a crash in clipboard.readImage() when the clipboard contains malformed image data. #​50492 (Also in 39, 40, 42)
  • Fixed a crash when calling an offscreen shared texture's release() after the texture object was garbage collected. #​50501 (Also in 39, 40, 42)
  • Fixed an accessibility issue where the AXMenuOpened event was not fired on menu creation. #​50506 (Also in 40, 42)
  • Fixed an issue where an app shortcut may lose its icon after auto-updating on Windows. #​50519 (Also in 40)

Other Changes

  • Updated Chromium to 146.0.7680.166. #​50458

v41.0.4: electron v41.0.4

Compare Source

Release Notes for v41.0.4

Fixes

  • Fixed crash when handling JavaScript dialogs from windows opened with invalid or empty URLs. #​50399 (Also in 39, 40, 42)
  • Fixed improper focus tracking in BaseWindow on MacOS. #​50340 (Also in 39, 40, 42)
  • Fixed logic bug that rendered certain window types un-resizable on MAS builds. #​50354 (Also in 40, 42)
  • Fixed utilityProcess exit event reporting incorrect exit codes on Windows when the exit code has the high bit. #​50386 (Also in 40, 42)
  • Fixed window freeze when failing to enter/exit fullscreen on macOS. #​50343 (Also in 39, 40, 42)
  • Improved the appearance of shadows and borders on frameless windows on Wayland. #​50213

Other Changes

  • Added support for using a proxy during yarn install. #​50350 (Also in 39, 40, 42)
  • Updated Chromium to 146.0.7680.153. #​50346

v41.0.3: electron v41.0.3

Compare Source

Release Notes for v41.0.3

Fixes

  • Added additional ASAR support to additional fs copy methods. #​50286 (Also in 39, 40, 42)
  • Fixed an issue where some DevTools functionality didn't work as expected. #​50276 (Also in 40, 42)
  • Fixed user resizing of transparent windows on win32 platform. #​50298 (Also in 39, 40, 42)

Other Changes

  • Updated Chromium to 146.0.7680.80. #​50262

Documentation

v41.0.2: electron v41.0.2

Compare Source

Release Notes for v41.0.2

Other Changes

v41.0.1: electron v41.0.1

Compare Source

Release Notes for v41.0.1

Fixes

  • Fixed an issue on macOS where calling autoUpdater.quitAndInstall() could fail if checkForUpdates() was called again after an update was already downloaded. #​50217 (Also in 39, 40)
  • Fixed an issue where traffic light buttons would flash at position (0,0) when restoring a window with a custom trafficLightPosition from minimization on macOS. #​50209 (Also in 39, 40)
  • Fixed bug where opening a message box immediately upon closing a child window may cause the parent window to freeze on Windows. #​50191 (Also in 39, 40)

Other Changes

  • Updated Chromium to 146.0.7680.72. #​50196

v41.0.0: electron v41.0.0

Compare Source

Release Notes for v41.0.0

Stack Upgrades

Breaking Changes

  • Fixed an issue where cookie changed events weren't properly emitted in all cases. #​49631

For breaking changes inherited via Chromium, see blog post

Features

Additions
  • Added --disable-geolocation command-line flag for macOS apps to disable location services. #​45934
  • Added NV12 support for import shared texture. #​48922 (Also in 40)
  • Added webContents.getOrCreateDevToolsTargetId(). #​50176
  • Added a disclaim option to the UtilityProcess API to allow for TCC disclaiming on macOS. #​49693 (Also in 39, 40)
  • Added a reason property to the Notification 'closed' event on Windows to allow developers to know the reason the Notification was dismissed. #​50029 (Also in 40)
  • Added additional defence against privileged user modifications to ASAR Integrity protected applications on macOS. #​48587
  • Added an usePrinterDefaultPageSize option to webContents.print() to allow using the printer's default page size. #​49812
  • Added bypassCustomProtocolHandlers option to net.request. #​47331 (Also in 38, 39, 40)
  • Added support for MSIX auto-updating. #​49586 (Also in 39, 40)
  • Added support for WebSocket authentication through the login event on webContents. #​48512 (Also in 39, 40)
  • Added support for --experimental-transform-types. #​49882 (Also in 39, 40)
  • Added support for long-animation-frame script attribution (via --enable-features=AlwaysLogLOAFURL). #​49773 (Also in 39, 40)
  • Added support to import external shared texture as VideoFrame. #​47317 (Also in 40)
  • Added the ability to disable auto-focusing of WebContents on navigation using webPreferences.focusOnNavigation. #​49511 (Also in 40)
  • Enable wasm trap handlers behind WasmTrapHandlers fuse. #​49839
  • On Wayland (Linux), frameless windows now have GTK drop shadows and extended resize boundaries. To create fully frameless windows with no decorations, set hasShadow: false in the window constructor. #​49885
Improvements
  • Extended actions support for Windows notifications to include buttons, select dropdowns, and replies. #​49787 (Also in 40)
  • Refactored our MSIX updater code to use an upstream Chromium pattern and eliminates the need for special exception handling build flags. #​49686 (Also in 39, 40)
  • Updated nativeImage.createFromNamedImage to support SF Symbol names. #​48203 (Also in 39, 40)
Removed/Deprecated
  • DevTools errors are no longer printed to console. #​49292 (Also in 40)

Fixes

  • Fixed CSS selector syntax in default app styles to properly apply animations to hero icons. #​50033
  • Fixed ID of tray icons on Linux. #​48675
  • Fixed an issue that caused the RGBAF16 shared texture format to have a keyed mutex on Windows. #​49876
  • Fixed an issue where Squirrel.Mac's auto updater would fail to install new updates if the targetBundleURL was either not set or contained special characters. #​49978
  • Fixed an issue where some shell functionality may not work on Linux if the target window is already open. #​49594
  • Fixed build failure when printing is disabled. #​50077
  • Fixed several issues with consistent window sizing and resizing on Linux when CSD is in use (e.g. on GNOME/Wayland) and added support for creating content-sized windows. #​49835
  • Fixed window sizing on Linux when min/max size constraints are set or resizable is false. Windows no longer shrink below the requested max size or grow taller when resizability is disabled. #​49971
  • Global shortcuts can now be registered more reliably on Wayland using the globalShortcut API. #​50051
Also in earlier versions...
  • Added validation to protocol client methods to reject protocol names that do not conform to the RFC 3986 URI scheme grammar. #​50155 (Also in 38, 39, 40)
  • Addressed upstream Chromium shift to enable CoreAudio Tap API for audio capture used in electron's desktopCapturer (🍏 macOS). #​49739 (Also in 39, 40)
  • Allow dynamically updating menu item labels, sublabels, and icons. #​49972 (Also in 40)
  • Corrected the appearance of tiled windows on GNOME (when frame: true), and removed resize handles from tiled edges. #​48765 (Also in 38, 39, 40)
  • Fix: ESM-from-CJS import when CJK characters are in path. #​48855 (Also in 39, 40)
  • Fixed globalShortcut not working on Wayland with GlobalShortcutsPortal feature enabled. #​49871 (Also in 40)
  • Fixed setRepresentedFilename() not setting AXDocument accessibility attribute on macOS. #​49346 (Also in 39, 40)
  • Fixed a Windows notification issue where clicking a native notification would result in an application hang on certain Windows environments. #​49106 (Also in 39, 40)
  • Fixed a crash that could occur when using the File System Access API. #​49636 (Also in 39, 40)
  • Fixed a macOS crash when creating a new tab from the tab overview. #​49933 (Also in 40)
  • Fixed a potential race condition crash when opening DevTools. #​49406 (Also in 39, 40)
  • Fixed an application crash on MacOS where the menu observer was not being properly removed before garbage collection. #​49658 (Also in 40)
  • Fixed an application crash when clicking or hovering over the native MacOS "Window" menu. Reverts #​48598. #​48794 (Also in 37, 38, 39, 40)
  • Fixed an error on debug symbol upload by moving dsym.zip to use tar.xz compression. #​48941 (Also in 40)
  • Fixed an issue in chrome://accessibility. #​49561 (Also in 39, 40)
  • Fixed an issue on Windows and Linux where no cookie encryption key provider was passed into the network service when cookie encryption was enabled. #​49371 (Also in 40)
  • Fixed an issue on macOS where Universal Links were not delivered to app.on('continue-activity') on cold launch when NSUserActivity.userInfo was nil. #​50006 (Also in 39, 40)
  • Fixed an issue that menu items on macOS could not be disabled under all circumstances. #​48795 (Also in 37, 38, 39, 40)
  • Fixed an issue where Chrome Devtools menus may not appear in certain embedded windows. #​50137 (Also in 40)
  • Fixed an issue where VideoFrame objects returned through contextBridge had an incorrect prototype. #​50023 (Also in 39, 40)
  • Fixed an issue where additionalData passed to app.requestSingleInstanceLock on Windows could be truncated or fail to deserialize in the primary instance's second-instance event. #​50154 (Also in 38, 39, 40)
  • Fixed an issue where menu-did-close was not emitted properly for some application menus. #​49075 (Also in 38, 39, 40)
  • Fixed an issue where nodeIntegrationInWorker overrides in setWindowOpenHandler were not honored for child windows sharing a renderer process with their opener. #​50134 (Also in 38)
  • Fixed an issue where screen.getCursorScreenPoint() crashed on Wayland when it was called before a BrowserWindow had been created. #​50105 (Also in 39, 40)
  • Fixed an issue where shell.writeShortcutLink was throwing TypeError: Insufficient number of arguments when called with just [(path, options)]. #​49503 (Also in 39, 40)
  • Fixed an issue where alt+space triggered th system context menu even if an accelerator was registered for the hotkey combination. #​49642 (Also in 39, 40)
  • Fixed an issue where calling setBounds on a WebContentsView could trigger redundant page-favicon-updated events even when the favicon had not changed. #​50085 (Also in 39, 40)
  • Fixed an issue where frameless windows had resize issues in Mac App Store builds. #​49857 (Also in 39, 40)
  • Fixed an issue where invalid characters in custom protocol or webRequest response header values were not rejected. #​50132 (Also in 38, 39, 40)
  • Fixed an issue where making a window fullscreen on Windows, minimizing it and then restoring it broke previous fullscreen state. #​49891 (Also in 40)
  • Fixed an issue where malformed custom toastXml could cause a Notification crash. #​49953 (Also in 40)
  • Fixed an issue where menu item accelerators stopped working after the item's enabled property was toggled on macOS. #​49591 (Also in 39, 40)
  • Fixed an issue where menu item enabled state wasn't updated during key equivalent dispatch when the menu was closed on macOS. #​49890 (Also in 39, 40)
  • Fixed an issue where native modules would either crash or not compile for MacOS 12. #​49703 (Also in 40)
  • Fixed an issue where no cookie encryption provider was passed into the network service when cookie encryption was enabled. #​49348 (Also in 40)
  • Fixed an issue where permission and device-chooser handlers received the top-level page origin instead of the requesting subframe's origin. #​50148 (Also in 38, 39, 40)
  • Fixed an issue where pressing AltGr could activate or focus the menu bar. #​49916 (Also in 39, 40)
  • Fixed an issue where some packages weren't correctly filtered on macOS in dialogs. #​49470 (Also in 38, 39, 40)
  • Fixed an issue where role-based menu items were incorrectly returning null for their accelerator property. #​49668 (Also in 39, 40)
  • Fixed an issue where setting zoomFactor in setWindowOpenHandler's overrideBrowserWindowOptions had no effect on windows opened via window.open(). #​49911 (Also in 39, 40)
  • Fixed an issue where some apps would throw an exception on launch. #​48973 (Also in 39, 40)
  • Fixed an issue where the close callback param for menu.popup would fire when any arbitrary submenu of the given menu closed, and not the menu itself. #​49017 (Also in 38, 39, 40)
  • Fixed an issue whereby a duplicate "Toggle Full Screen" menu item appeared in the View menu on macOS. #​49598 (Also in 38, 39, 40)
  • Fixed crash in platform_util::Beep() on Linux. #​49483 (Also in 39, 40)
  • Fixed crash on windows when UTF-8 is in path. #​48898 (Also in 38, 39, 40)
  • Fixed crash when attempting to resolve modules during process exit. #​49090 (Also in 40)
  • Fixed crash when creating event object for ipc events. #​48987 (Also in 39, 40)
  • Fixed crash when reading system certificates via nodejs tls module. #​49028 (Also in 39, 40)
  • Fixed dock menu items not respecting enabled and checked properties on macOS. #​49625 (Also in 38, 39, 40)
  • Fixed drag regions in child windows. #​49231 (Also in 40)
  • Fixed draggable regions not updating position when DevTools is docked to the left or right in a frameless window. #​49848 (Also in 39, 40)
  • Fixed draw smoothing round corner issue. #​48769 (Also in 40)
  • Fixed memory leak when setting icons on Linux/GTK. #​49895 (Also in 38, 39, 40)
  • Fixed menu bar hiding after a call to win.setFullScreen(false) when not in fullscreen on Linux. #​49996 (Also in 39, 40)
  • Fixed menus to correctly emit menu-will-close event when closed after any submenu has been open. #​49964 (Also in 40)
  • Fixed oom crash when optimizing certain wasm functions involving large phi nodes. #​48791 (Also in 38, 39, 40)
  • Fixed rendering glitches on macOS. #​49621 (Also in 40)
  • Fixed shutdown crash on windows when hidden titlebar is enabled. #​50055 (Also in 39, 40)
  • Fixed squirrel.mac stacked update behavior to old staged updates. #​49639 (Also in 39, 40)
  • Fixed startup crash when V8 sandbox is disabled. #​49504 (Also in 40)
  • Fixed the cookie encryption logic to use the old os_crypt sync implementation present in M142. #​49382 (Also in 40)
  • Fixed the issue where the parent window leave disabled after the modal window call show() multiple time. #​48977 (Also in 38, 39, 40)
  • Fixed the issue where the parent window remained interactive after the modal window was opened. #​48770 (Also in 38, 39, 40)
  • Made toplevel icon Wayland protocol work. #​49290 (Also in 39, 40)
  • Reenable V8 trap handlers for wasm in browser and utility process, improves runtime execution of wasm. #​48788 (Also in 39, 40)
  • Requests sent via net are now capable of having their headers modified to use reserved headers via webRequest. #​49226 (Also in 39, 40)
  • Restored window's canHide property. #​47970 (Also in 37, 38, 39)
  • Reverted AltGr key fix that caused menu bar to no longer show on Windows. #​50111 (Also in 39, 40)
  • Windows: Calling window.setFocusable(true) will no longer cause a window to lose focus. #​45640 (Also in 39, 40)

Other Changes

  • Backported fix for 4835695. #​49789
  • Fixed crash in platform_util::Beep() on Linux. #​49865 (Also in 40)
  • Fixed devtools element panel flickering when with node inspection. #​49027 (Also in 39, 40)

Documentation

Notices

End of Support for 38.x.y

Electron 38.x.y has reached end-of-support as per the project's support policy. Developers and applications are encouraged to upgrade to a newer version of Electron.

v40.10.6: electron v40.10.6

Compare Source

Release Notes for v40.10.6

Fixes

  • Fixed ProtocolResponse.url requests being made through the default session instead of the session the protocol handler was registered on when ProtocolResponse.session was not set. #​52135 (Also in 41, 42, 43)

Other Changes

  • Backported fixes from upstream Chromium. #​52121
  • Backported fixes from upstream Chromium. #​52171

v40.10.5: electron v40.10.5

Compare Source

Release Notes for v40.10.5

Other Changes

  • Backported fixes from upstream Chromium. #​51977

v40.10.4: electron v40.10.4

Compare Source

Release Notes for v40.10.4

Other Changes

  • Backported fixes from upstream Chromium and V8. #​51937
  • Backported fixes from upstream Chromium, Skia and Dawn. #​51946

Documentation

v40.10.3: electron v40.10.3

Compare Source

Release Notes for v40.10.3

Other Changes

  • Security: backported fixes for CVE-2026-9110, CVE-2026-9111, CVE-2026-9112, CVE-2026-9113, CVE-2026-9114, CVE-2026-9115, CVE-2026-9116, CVE-2026-9117, CVE-2026-9118, CVE-2026-9119, CVE-2026-9120, CVE-2026-9121, CVE-2026-9122, CVE-2026-9124, CVE-2026-9126. #​51907

v40.10.2: electron v40.10.2

Compare Source

Release Notes for v40.10.2

Fixes

  • Fixed an issue that caused the RGBAF16 shared texture format to have a keyed mutex on Windows. #​51701 (Also in 41)
  • Fixed an issue where closing devtools immediately after focus caused a crash. #​51702 (Also in 41, 42)
  • Fixed an issue where custom options in webContents.print() did not prefill the print dialog on macOS. #​51692 (Also in 41, 42)

v40.10.1: electron v40.10.1

Compare Source

Release Notes for v40.10.1

Other Changes

  • Backported a batch of upstream fixes for memory-safety and validation issues across media, GPU, networking, accessibility, compositing and the ANGLE GL backend. #​51671
  • Backported fixes for several use-after-free and object-lifetime issues in input, UI, Aura, HID and file-system teardown paths, and a runtime-effect validation gap in Skia. #​51648
  • Security: backported 20 High-severity fixes from Chrome 148 stable release. #​51618

v40.10.0: electron v40.10.0

Compare Source

Release Notes for v40.10.0

Fixes

  • Fixed app.getLoginItemSettings() returning undefined for executableWillLaunchAtLogin on macOS; the property is now always a boolean. #​51509 (Also in 41, 42)

Other Changes

v40.9.3: electron v40.9.3

Compare Source

Release Notes for v40.9.3

Fixes

  • Ensured cross-origin fetch() and XHR are blocked for custom protocols registered with supportFetchAPI: true unless corsEnabled: true is also set; cross-origin mode: 'no-cors' requests now receive an opaque response. #​51271 (Also in 39, 41, 42)
  • Fixed webContents.printToPDF rejecting on all subsequent calls after a prior call was rejected with an invalid pageRanges value. #​51220 (Also in 41, 42)
  • Fixed a crash when providing invalid HTTP header names or values in the webRequest.onBeforeSendHeaders() callback. #​51364 (Also in 41, 42)
  • Fixed a crash that could occur when an autofill suggestion popup was shown while a window was closing. #​51334 (Also in 41, 42)
  • Fixed an issue where app-region: drag inside a hidden WebContentsView would still drag the parent window on Windows. #​51247 (Also in 41, 42)
  • Fixed an issue where an Electron macOS update would not be applied if another app was previously blocking the macOS system update loop. #​51211 (Also in 41, 42)
  • Fixed buggy behavior where Backspace would accept macOS text replacements inside contenteditable elements. #​51345 (Also in 41, 42)

Other Changes

v40.9.2: electron v40.9.2

Compare Source

Release Notes for v40.9.2

Fixes

  • Fixed an issue where nodeIntegrationInWorker didn't always work in AudioWorklet. #​51004 (Also in 41, 42)
  • Fixed bug that could occasionally cause browserWindow's always-on-top-changed even to fire with incorrect values. #​51134 (Also in 41, 42)
  • Fixed test scaffolding bug when running tests locally on Linux. #​51151 (Also in 41, 42)

Other Changes

  • Fixed gn gen failing to resolve electron_version when building from a git worktree checkout. #​51164 (Also in 39, 41, 42)
  • Security: backported fixes for CVE-2026-6297, CVE-2026-6299, CVE-2026-6358, CVE-2026-6359, CVE-2026-6300, CVE-2026-6303, CVE-2026-6308, CVE-2026-6309, CVE-2026-6360, CVE-2026-6311, CVE-2026-6313, CVE-2026-6314, CVE-2026-6316, CVE-2026-6362, CVE-2026-6301, CVE-2026-6307, CVE-2026-6363, CVE-2026-6298, CVE-2026-6304, CVE-2026-6364, CVE-2026-6296, CVE-2026-6305, CVE-2026-6306, CVE-2026-6361, CVE-2026-6302, CVE-2026-6318. #​51139

v40.9.1: electron v40.9.1

Compare Source

Release Notes for v40.9.1

Features

  • Added allowExtensions privilege to protocol.registerSchemesAsPrivileged() to enable Chrome extensions on custom protocols. #​50588 (Also in 41, 42)

Fixes

  • Fixed fs.stat on files inside asar archives returning undefined for blksize and blocks instead of numeric values. #​50875 (Also in 41, 42)
  • Fixed a memory leak where Menu items were not cleaned up after Menu.setApplicationMenu was called repeatedly. #​50831 (Also in 41, 42)
  • Fixed an intermittent Invoke in DisallowJavascriptExecutionScope crash on application quit when a WebContents (or other JS-emitting native object) is garbage-collected during shutdown. #​50693 (Also in 41, 42)
  • Fixed an issue on macOS where show/hide events and WebContents visibility state could be reported incorrectly when multiple WebContentsViews were attached to a window. #​50713 (Also in 41, 42)
  • Fixed an issue where DevTools would re-attach to the window when opened after previously being detached. #​50817 (Also in 39, 41, 42)
  • Fixed an issue where setSimpleFullScreen on macOS would exit when web content called requestFullscreen(). #​50986 (Also in 42)
  • Fixed an issue where concurrent getFileHandle requests on the same path could stall indefinitely. #​50672 (Also in 41, 42)
  • Fixed aspect ratio min/max size clamping to correctly account for extraSize on macOS. #​50834 (Also in 41, 42)
  • Fixed the crash keys being lost and the crash reporter hanging on macOS when many dynamic crash keys were registered. #​50838 (Also in 41, 42)
  • Moved Electron-specific help menu links to the default app only; unpackaged apps will no longer see these items in their default menu. #​50860 (Also in 41, 42)

Other Changes

v40.8.5: electron v40.8.5

Compare Source

Release Notes for v40.8.5

Fixes

  • Fixed a bug where Windows notification icons could fail to save because their temporary filenames contained invalid characters. #​50484 (Also in 41)
  • Fixed a crash in clipboard.readImage() when the clipboard contains malformed image data. #​50491 (Also in 39, 41, 42)
  • Fixed a crash when calling an offscreen shared texture's release() after the texture object was garbage collected. #​50500 (Also in 39, 41, 42)
  • Fixed an accessibility issue where the AXMenuOpened event was not fired on menu creation. #​50505 (Also in 41, 42)
  • Fixed an issue where an app shortcut may lose its icon after auto-updating on Windows. #​50518

Other Changes

  • Backported fix for chromium:475877320. #​50438

v40.8.4: electron v40.8.4

Compare Source

Release Notes for v40.8.4

Fixes

  • Fixed an issue where nodeIntegrationInWorker overrides in setWindowOpenHandler were not honored for child windows sharing a renderer process with their opener. #​50467 (Also in 38, 39, 41)
  • Fixed crash when handling JavaScript dialogs from windows opened with invalid or empty URLs. #​50401 (Also in 39, 41, 42)
  • Fixed improper focus tracking in BaseWindow on MacOS. #​50337 (Also in 39, 41, 42)
  • Fixed logic bug that rendered certain window types un-resizable on MAS builds. #​50355 (Also in 41, 42)
  • Fixed utilityProcess exit event reporting incorrect exit codes on Windows when the exit code has the high bit. #​50387 (Also in 41, 42)
  • Fixed window freeze when failing to enter/exit fullscreen on macOS. #​50344 (Also in 39, 41, 42)

Other Changes

v40.8.3: electron v40.8.3

Compare Source

Release Notes for v40.8.3

Fixes

  • Added additional ASAR support to additional fs copy methods. #​50287 (Also in 39, 41, 42)
  • Fixed an issue where some DevTools functionality didn't work as expected. #​50275 (Also in 41, 42)
  • Fixed user resizing of transparent windows on win32 platform. #​50301 (Also in 39, 41, 42)

v40.8.2: electron v40.8.2

Compare Source

Release Notes for v40.8.2

Other Changes

  • Backported fix for b/491421267. #​50229
  • Fixed an issue where running app icons were not correctly retrieved on macOS Tahoe. #​50188

v40.8.1: electron v40.8.1

Compare Source

Release Notes for v40.8.1

Fixes

  • Added validation to protocol client methods to reject protocol names that do not conform to the RFC 3986 URI scheme grammar. #​50158 (Also in 38, 39, 41)
  • Fixed an issue on macOS where calling autoUpdater.quitAndInstall() could fail if checkForUpdates() was called again after an update was already downloaded. #​50216 (Also in 39, 41)
  • Fixed an issue where Chrome Devtools menus may not appear in certain embedded windows. #​50138 (Also in 39, 41)
  • Fixed an issue where additionalData passed to app.requestSingleInstanceLock on Windows could be truncated or fail to deserialize in the primary instance's second-instance event. #​50162 (Also in 38, 39, 41)
  • Fixed an issue where screen.getCursorScreenPoint() crashed on Wayland when it was called before a BrowserWindow had been created. #​50104 (Also in 39, 41)
  • Fixed an issue where calling setBounds on a WebContentsView could trigger redundant page-favicon-updated events even when the favicon had not changed. #​50084 (Also in 39, 41)
  • Fixed an issue where invalid characters in custom protocol or webRequest response header values were not rejected. #​50131 (Also in 38, 39, 41)
  • Fixed an issue where permission and device-chooser handlers received the top-level page origin instead of the requesting subframe's origin. #​50149 (Also in 38, 39, 41)
  • Fixed an issue where traffic light buttons would flash at position (0,0) when restoring a window with a custom trafficLightPosition from minimization on macOS. #​50207 (Also in 39, 41)
  • Fixed bug where opening a message box immediately upon closing a child window may cause the parent window to freeze on Windows. #​50189 (Also in 39, 41)
  • Reverted AltGr key fix that caused menu bar to no longer show on Windows. #​50110 (Also in 39, 41)

Other Changes

  • Backported fix for chromium:485622239. #​50168

v40.8.0: electron v40.8.0

Compare Source

Release Notes for v40.8.0

Features

  • Added a reason property to the Notification 'closed' event on Windows to allow developers to know the reason the Notification was dismissed. #​50030 (Also in 41)

Fixes

  • Fixed shutdown crash on windows when hidden titlebar is enabled. #​50053 (Also in 39, 41)

Other Changes

  • Updated Chromium to 144.0.7559.236. #​50060

v40.7.0: electron v40.7.0

Compare Source

Release Notes for v40.7.0

Features

  • Added support for --experimental-transform-types. #​49883 (Also in 39, 41)

Fixes

  • Allow dynamically updating menu item labels, sublabels, and icons. #​49973 (Also in 41)
  • Fixed safeStorage failing to clean up legacy keychain entries when migrating to suffixed account names on macOS, and fixed first launch creating entries with the wrong (unsuffixed) account name. #​49817
  • Fixed a bug that cause offscreen rendering doesn't have valid screen info and unable to get valid result of related media queries.
    • Added webPreference.offscreen.deviceScaleFactor to allow user specify a value, instead of using user's primary display's value. #​49681
  • Fixed a macOS crash when creating a new tab from the tab overview. #​49934 (Also in 41)
  • Fixed an issue on macOS where Universal Links were not delivered to app.on('continue-activity') on cold launch when NSUserActivity.userInfo was nil. #​50005 (Also in 39, 41)
  • Fixed an issue where VideoFrame objects returned through contextBridge had an incorrect prototype. #​50022 (Also in 39, 41)
  • Fixed an issue where malformed custom toastXml could cause a Notification crash. #​49952 (Also in 41)
  • Fixed menu bar hiding after a call to win.setFullScreen(false) when not in fullscreen on Linux. #​49994 (Also in 41)
  • Fixed menus to correctly emit menu-will-close event when closed after any submenu has been open. #​49963 (Also in 41)

Other Changes

v40.6.1: electron v40.6.1

Compare Source

Release Notes for v40.6.1

Fixes

  • Fixed globalShortcut not working on Wayland with GlobalShortcutsPortal feature enabled. #​49870 (Also in 41)
  • Fixed an issue where making a window fullscreen on Windows, minimizing it and then restoring it broke previous fullscreen state. #​49892 (Also in 41)
  • Fixed an issue where menu item enabled state wasn't updated during key equivalent dispatch when the menu was closed on macOS. #​49889 (Also in 39, 41)
  • Fixed an issue where pressing AltGr could activate or focus the menu bar. #​49915 (Also in 39, 41)
  • Fixed an issue where setting zoomFactor in setWindowOpenHandler's overrideBrowserWindowOptions had no effect on windows opened via window.open(). #​49909 (Also in 41)
  • Fixed draggable regions not updating position when DevTools is docked to the left or right in a frameless window. #​49847 (Also in 39, 41)
  • Fixed memory leak when setting icons on Linux/GTK. #​49898 (Also in 38, 39, 41)
  • Fixed startup crash when V8 sandbox is disabled. #​49884 (Also in 41)

Other Changes

  • Fixed crash in platform_util::Beep() on Linux. #​49864 (Also in 41)
  • Updated Chromium to 144.0.7559.220. #​49869

v40.6.0: electron v40.6.0

Compare Source

Release Notes for v40.6.0

Features

  • Added the ability to disable auto-focusing of WebContents on navigation using webPreferences.focusOnNavigation. #​49512 (Also in 41)

Fixes

  • Fixed an issue where frameless windows had resize issues in Mac App Store builds. #​49856

v40.5.0: electron v40.5.0

Compare Source

Release Notes for v40.5.0

Features

  • Added support for long-animation-frame script attribution (via --enable-features=AlwaysLogLOAFURL). #​49772 (Also in 41)
  • Extended actions support for Windows notifications to include buttons, select dropdowns, and replies. #​49786 (Also in 41)

Fixes

  • Addressed upstream Chromium shift to enable CoreAudio Tap API for audio capture used in electron's desktopCapturer (🍏 macOS). #​49741 (Also in 39, 41)
  • Made pointer lock work on Wayland. #​49283

Other Changes

v40.4.1: electron v40.4.1

Compare Source

Release Notes for v40.4.1

Other Changes

v40.4.0: electron v40.4.0

Compare Source

Release Notes for v40.4.0

Features

  • Added a disclaim option to the UtilityProcess API to allow for TCC disclaiming on macOS. #​49695

v40.3.0: electron v40.3.0

Compare Source

Release Notes for v40.3.0

Fixes

  • Fixed an issue where native modules would either crash or not compile for MacOS 12. #​49702 (Also in 41)
  • Fixed an issue where role-based menu items were incorrectly returning null for their accelerator property. #​49669 (Also in 39, 41)

Other Changes

v40.2.1: electron v40.2.1

Compare Source

Release Notes for v40.2.1

Other Changes

  • Refactored our MSIX updater code to use an upstream Chromium pattern and eliminates the need for special exception handling build flags. #​49687 (Also in 39, 41)

v40.1.0: electron v40.1.0

Compare Source

Release Notes for v40.1.0

Features

  • DevTools errors are no longer printed to console. #​49359

Fixes

  • Fixed setRepresentedFilename() not setting AXDocument accessibility attribute on macOS. #​49417 (Also in 39)
  • Fixed a potential race condition crash when opening DevTools. #​49422 (Also in 39)
  • Fixed an issue in chrome://accessibility. #​49560 (Also in 39, 41)
  • Fixed an issue where shell.writeShortcutLink was throwing TypeError: Insufficient number of arguments when called with just [(path, options)]. #​49501 (Also in 39, 41)
  • Fixed crash in platform_util::Beep() on Linux. #​49482 (Also in 39, 41)
  • Made toplevel icon Wayland protocol work. #​49414 (Also in 39)

Other Changes

Unknown

  • Fixed an issue where some packages weren't correctly filtered on macOS in dialogs. #​49473 (Also in 38, 39, 41)

v40.0.0: electron v40.0.0

Compare Source

Release Notes for v40.0.0

Stack Upgrades

Breaking Changes

  • Deprecated clipboard API access from renderer processes #​48923
  • Fixed an error on debug symbol upload by moving dsym.zip to use tar.xz compression. #​48952

Features

Additions
  • Added "memory-eviction" as a possible reason for a child process to exit. #​48362
  • Added RGBAF16 output format with scRGB HDR color space support to Offscreen Rendering. #​48265 (Also in 39)
  • Added app.isHardwareAccelerationEnabled(). #​47614 (Also in 37, 38, 39)
  • Added bypassCustomProtocolHandlers option to net.request. #​48883 (Also in 38, 39)
  • Added methods to enable more granular accessibility support management. #​48042 (Also in 37, 38, 39)
  • Added support for WebSocket authentication through the login event on webContents. #​49064 (Also in 39)
  • Added support to import external shared texture as VideoFrame. #​48831
  • Added the ability to retrieve the system accent color on Linux using systemPreferences.getAccentColor. #​48027 (Also in 39)
  • Allowed for persisting File System API grant status within a given session. #​48170 (Also in 37, 38, 39)
  • Automatically focus DevTools when element is inspected or breakpoint is triggered. #​46386 (Also in 37, 38, 39)
Improvements
  • Enables resetting accent color to follow system accent settings if a previous color has been set via window.setAccentColor(null). #​48274 (Also in 38, 39)
  • Support dynamic ESM imports in non-context isolated preloads. #​48375 (Also in 37, 38, 39)
  • Updated nativeImage.createFromNamedImage to support SF Symbol names. #​48772 (Also in 39)

Fixes

  • Added support for --no-stdio-init to be used when nul device is disabled on windows. #​47870
  • Fixed an issue on Windows and Linux where no cookie encryption key provider was passed into the network service when cookie encryption was enabled. #​49375
  • Fixed an issue where no cookie encryption provider was passed into the network service when cookie encryption was enabled. #​49350
  • Fixed crash when attempting to resolve modules during process exit. #​49104
  • Fixed drag regions in child windows. #​49312
  • Fixed draw smoothing round corner issue. #​48782
  • Fixed the cookie encryption logic to use the old os_crypt sync implementation present in M142. #​49384
  • Fixed visual artifacts while resizing a window on Windows. #​49191
Also in earlier versions...
  • AccentColor set distinguishes the frame. #​48405 (Also in 37, 38, 39)
  • Corrected the appearance of tiled windows on GNOME (when frame: true), and removed resize handles from tiled edges. #​48835 (Also in 38, 39)
  • Fix: ESM-from-CJS import when CJK characters are in path. #​48862 (Also in 39)
  • Fix: runtime JS error that crashes GetPackageJSON. #​48293 (Also in 37, 38, 39)
  • Fixed Wayland configuration through the XDG_SESSION_TYPE environment variable. #​48301 (Also in 38, 39)
  • Fixed Windows dialog.showMessageBox default button handling. #​48216 (Also in 36, 37, 38, 39)
  • Fixed a Windows notification issue where clicking a native notification would result in an application hang on certain Windows environments. #​49129 (Also in 39)
  • Fixed a potential crash in dialog.showOpenDialog on Windows with an empty extension filter array. #​48640 (Also in 37, 38, 39)
  • Fixed an application crash when clicking or hovering over the native MacOS "Window" menu. Reverts #​48598. #​48799 (Also in 37, 38, 39)
  • Fixed an error when checking environmental variables when using remote checksums when installing Electron via npm. #​48634 (Also in 37, 38, 39)
  • Fixed an issue that menu items on macOS could not be disabled under all circumstances. #​48598 (Also in 37, 38, 39)
  • Fixed an issue where menu-did-close was not emitted properly for some application menus. #​49092 (Also in 38, 39)
  • Fixed an issue where shell.openExternal caused an unexpected dialog to open when there was no app suitable to open the url. #​48502 (Also in 38, 39)
  • Fixed an issue where systemPreferences.getAccentColor inverted the color. #​48511 (Also in 37, 38, 39)
  • Fixed an issue where trafficLightPosition would not be correctly applied when using titleBarStyle: 'customButtonsOnHover' on macOS 26. #​48538 (Also in 37, 38, 39)
  • Fixed an issue where authentication via websockets can crash. #​48510 (Also in 37, 38, 39)
  • Fixed an issue where button background on mouse hover with titleBarOverlay wasn't always calculated to provide appropriate minimum contrast. #​48568 (Also in 37, 38, 39)
  • Fixed an issue where calling webContents.openDevTools({ mode: 'detach' }) would cause a crash on Wayland. #​48600 (Also in 38, 39)
  • Fixed an issue where changing the resizable property on a window would break the styles of a transparent window. #​48378 (Also in 37, 38, 39)
  • Fixed an issue where icons didn't show up as expected on Windows Toast notifications. #​48543 (Also in 38, 39)
  • Fixed an issue where snapped windows aren't correctly snapped when minimized and then unminimized. #​48296 (Also in 37, 38, 39)
  • Fixed an issue where some apps would throw an exception on launch. #​48976 (Also in 39)
  • Fixed an issue where the close callback param for menu.popup would fire when any arbitrary submenu of the given menu closed, and not the menu itself. #​49046 (Also in 38, 39)
  • Fixed crash on windows when UTF-8 is in path. #​48942 (Also in 38, 39)
  • Fixed crash when accessing webContents.session or webContents.debugger. #​48318 (Also in 39)
  • Fixed crash when creating event object for ipc events. #​48991 (Also in 39)
  • Fixed crash when inspector agent attempts to evaluate on provisional frames. #​48503 (Also in 37, 38, 39)
  • Fixed crash when passing feature param from commandline --enable-features=Feature:ParamA/Value. #​48411 (Also in 39)
  • Fixed crash when reading system certificates via nodejs tls module. #​49041 (Also in 39)
  • Fixed download button does not work in PDF Viewer. #​48372 (Also in 38, 39)
  • Fixed excessive WindowServer GPU usage on macOS Tahoe 26. #​48376 (Also in 36, 37, 38, 39)
  • Fixed high CPU usage with <input> tag on macOS 26. #​48379 (Also in 36, 37, 38, 39)
  • Fixed incorrect signal variable reference in nan-spec-runner that could cause install failures to go undetected. #​48639 (Also in 38, 39)
  • Fixed oom crash when optimizing certain wasm functions involving large phi nodes. #​48816 (Also in 38, 39)
  • Fixed shader-f16 to work on Windows. #​48342 (Also in 37, 38, 39)
  • Fixed the issue where the parent window leave disabled after the modal window call show() multiple time. #​49021 (Also in 38, 39)
  • Fixed the issue where the parent window remained interactive after the modal window was opened. #​48864 (Also in 38, 39)
  • Fixed white flash on call to BrowserWindow.show. #​47151 (Also in 37, 38, 39)
  • Reenable V8 trap handlers for wasm in browser and utility process, improves runtime execution of wasm. #​48839 (Also in 39)
  • Requests sent via net are now capable of having their headers modified to use reserved headers via webRequest. #​49241 (Also in 39)
  • Titlebar buttons now appear on the correct side of windows on Wayland in Ubuntu. #​48490 (Also in 38, 39)
  • Windows: Calling window.setFocusable(true) will no longer cause a window to lose focus. #​48927 (Also in 39)

Other Changes

Documentation

Notices

End of Support for 37.x.y

Electron 37.x.y has reached end-of-support as per the project's support policy. Developers and applications are encouraged to upgrade to a newer version of Electron.

v39.8.10: electron v39.8.10

Compare Source

Release Notes for v39.8.10

[!WARNING]
Electron 39.x.y has reached end-of-support as per the project's support policy. Developers and applications are encouraged to upgrade to a newer version of Electron.

Fixes

  • Ensured cross-origin fetch() and XHR are blocked for custom protocols registered with supportFetchAPI: true unless corsEnabled: true is also set; cross-origin mode: 'no-cors' requests now receive an opaque response. #​51272 (Also in 40, 41, 42)
  • Fixed an issue where the Squirrel.Mac installer could resolve the target bundle path to different locations at different stages of an install. #​50766 (Also in 42)

Other Changes

v39.8.9: electron v39.8.9

Compare Source

Release Notes for v39.8.9

Other Changes

  • Fixed gn gen failing to resolve electron_version when building from a git worktree checkout. #​51163 (Also in 40, 41, 42)
  • Security: backported fixes for CVE-2026-6296, CVE-2026-6297, CVE-2026-6298, CVE-2026-6299, CVE-2026-6300, CVE-2026-6301, CVE-2026-6302, CVE-2026-6303, CVE-2026-6304, CVE-2026-6305, CVE-2026-6306, CVE-2026-6307, CVE-2026-6308, CVE-2026-6309, CVE-2026-6311, CVE-2026-6312, CVE-2026-6313, CVE-2026-6314, CVE-2026-6316, CVE-2026-6318, CVE-2026-6358, CVE-2026-6359, CVE-2026-6360, CVE-2026-6361, CVE-2026-6362, CVE-2026-6363, CVE-2026-6364. #​51141

v39.8.8: electron v39.8.8

Compare Source

Release Notes for v39.8.8

Fixes

  • Fixed an issue where DevTools would re-attach to the window when opened after previously being detached. #​50818 (Also in 40, 41, 42)

Other Changes

v39.8.7: electron v39.8.7

Compare Source

Release Notes for v39.8.7

Other Changes

v39.8.6: electron v39.8.6

Compare Source

Release Notes for v39.8.6

Fixes

  • Fixed a crash when calling contentTracing.getTraceBufferUsage() while a trace session is active. #​50595 (Also in 40, 41, 42)

v39.8.5: electron v39.8.5

Compare Source

Release Notes for v39.8.5

Fixes

  • Fixed a crash in clipboard.readImage() when the clipboard contains malformed image data. #​50493 (Also in 40, 41, 42)
  • Fixed a crash when calling an offscreen shared texture's release() after the texture object was garbage collected. #​50499 (Also in 40, 41, 42)

v39.8.4: electron v39.8.4

Compare Source

Release Notes for v39.8.4

Fixes

  • Fixed an issue where nodeIntegrationInWorker overrides in setWindowOpenHandler were not honored for child windows sharing a renderer process with their opener. #​50468 (Also in 38, 40, 41)
  • Fixed crash when handling JavaScript dialogs from windows opened with invalid or empty URLs. #​50400 (Also in 40, 41, 42)
  • Fixed improper focus tracking in BaseWindow on MacOS. #​50338 (Also in 40, 41, 42)
  • Fixed window freeze when failing to enter/exit fullscreen on macOS. #​50341 (Also in 40, 41, 42)

Other Changes

v39.8.3: electron v39.8.3

Compare Source

Release Notes for v39.8.3

Fixes

  • Added additional ASAR support to additional fs copy methods. #​50284 (Also in 40, 41, 42)
  • Fixed user resizing of transparent windows on win32 platform. #​50300 (Also in 40, 41, 42)

v39.8.2: electron v39.8.2

Compare Source

Release Notes for v39.8.2

Other Changes

v39.8.1: electron v39.8.1

Compare Source

Release Notes for v39.8.1

Fixes

  • Added validation to protocol client methods to reject protocol names that do not conform to the RFC 3986 URI scheme grammar. #​50156 (Also in 38, 40, 41)
  • Fixed an issue on macOS where calling autoUpdater.quitAndInstall() could fail if checkForUpdates() was called again after an update was already downloaded. #​50215 (Also in 40, 41)
  • Fixed an issue where Chrome Devtools menus may not appear in certain embedded windows. #​50136 (Also in 40, 41)
  • Fixed an issue where additionalData passed to app.requestSingleInstanceLock on Windows could be truncated or fail to deserialize in the primary instance's second-instance event. #​50174 (Also in 38, 40, 41)
  • Fixed an issue where screen.getCursorScreenPoint() crashed on Wayland when it was called before a BrowserWindow had been created. #​50106 (Also in 40, 41)
  • Fixed an issue where calling setBounds on a WebContentsView could trigger redundant page-favicon-updated events even when the favicon had not changed. #​50086 (Also in 40, 41)
  • Fixed an issue where invalid characters in custom protocol or webRequest response header values were not rejected. #​50129 (Also in 38, 40, 41)
  • Fixed an issue where permission and device-chooser handlers received the top-level page origin instead of the requesting subframe's origin. #​50147 (Also in 38, 40, 41)
  • Fixed an issue where traffic light buttons would flash at position (0,0) when restoring a window with a custom trafficLightPosition from minimization on macOS. #​50208 (Also in 40, 41)
  • Fixed bug where opening a message box immediately upon closing a child window may cause the parent window to freeze on Windows. #​50190 (Also in 40, 41)
  • Fixed menu bar hiding after a call to win.setFullScreen(false) when not in fullscreen on Linux. #​49995 (Also in 40, 41)
  • Fixed shutdown crash on windows when hidden titlebar is enabled. #​50054 (Also in 40, 41)
  • Reverted AltGr key fix that caused menu bar to no longer show on Windows. #​50109 (Also in 40, 41)

Other Changes

v39.8.0: electron v39.8.0

Compare Source

Release Notes for v39.8.0

Features

  • Added support for --experimental-transform-types. #​49881 (Also in 40, 41)

Fixes

  • Fixed an issue on macOS where Universal Links were not delivered to app.on('continue-activity') on cold launch when NSUserActivity.userInfo was nil. #​50004 (Also in 40, 41)
  • Fixed an issue where VideoFrame objects returned through contextBridge had an incorrect prototype. #​50021 (Also in 40, 41)
  • Fixed an issue where setting zoomFactor in setWindowOpenHandler's overrideBrowserWindowOptions had no effect on windows opened via window.open(). #​49910 (Also in 40, 41)

v39.7.0: electron v39.7.0

Compare Source

Release Notes for v39.7.0

Features

  • Added support for long-animation-frame script attribution (via --enable-features=AlwaysLogLOAFURL). #​49771 (Also in 40, 41)

Fixes

  • Fixed an issue where frameless windows had resize issues in Mac App Store builds. #​49861 (Also in 40, 41)
  • Fixed an issue where menu item enabled state wasn't updated during key equivalent dispatch when the menu was closed on macOS. #​49888 (Also in 40, 41)
  • Fixed an issue where pressing AltGr could activate or focus the menu bar. #​49914 (Also in 40, 41)
  • Fixed memory leak when setting icons on Linux/GTK. #​49896 (Also in 38, 40, 41)

v39.6.1: electron v39.6.1

Compare Source

Release Notes for v39.6.1

Fixes

  • Fixed draggable regions not updating position when DevTools is docked to the left or right in a frameless window. #​49846 (Also in 41)

v39.6.0: electron v39.6.0

Compare Source

Release Notes for v39.6.0

Features

  • Added a disclaim option to the UtilityProcess API to allow for TCC disclaiming on macOS. #​49696 (Also in 40, 41)

Fixes

  • Addressed upstream Chromium shift to enable CoreAudio Tap API for audio capture used in electron's desktopCapturer (🍏 macOS). #​49740 (Also in 41)

Other Changes

v39.5.2: electron v39.5.2

Compare Source

Release Notes for v39.5.2

Fixes

  • Fixed a crash that could occur when using the File System Access API. #​49634 (Also in 40, 41)
  • Fixed an issue where alt+space triggered th system context menu even if an accelerator was registered for the hotkey combination. #​49641 (Also in 40, 41)
  • Fixed an issue where role-based menu items were incorrectly returning null for their accelerator property. #​49670 (Also in 40, 41)
  • Fixed application input broken on certain wayland compositors when DND action was cancelled. #​49694
  • Fixed dock menu items not respecting enabled and checked properties on macOS. #​49626 (Also in 38, 40, 41)

Other Changes

  • Refactored our MSIX updater code to use an upstream Chromium pattern and eliminates the need for special exception handling build flags. #​49688 (Also in 40, 41)

Unknown

  • Fixed squirrel.mac stacked update behavior to old staged updates. #​49637 (Also in 40, 41)

v39.5.1: electron v39.5.1

Compare Source

Release Notes for v39.5.1

Fixes

v39.5.0: electron v39.5.0

Compare Source

Release Notes for v39.5.0

Features

  • Added support for MSIX auto-updating. #​49585 (Also in 40, 41)

Fixes

  • Fixed an issue where menu item accelerators stopped working after the item's enabled property was toggled on macOS. #​49593 (Also in 40, 41)
  • Fixed an issue whereby a duplicate "Toggle Full Screen" menu item appeared in the View menu on macOS. #​49597 (Also in 38, 40, 41)

v39.4.0: electron v39.4.0

Compare Source

Release Notes for v39.4.0

Fixes

  • Fixed an issue in chrome://accessibility. #​49559 (Also in 40, 41)
  • Fixed an issue where shell.writeShortcutLink was throwing TypeError: Insufficient number of arguments when called with just [(path, options)]. #​49502 (Also in 40, 41)
  • Fixed crash in platform_util::Beep() on Linux. #​49484 (Also in 40, 41)

Other Changes

Unknown

  • Fixed an issue where some packages weren't correctly filtered on macOS in dialogs. #​49472 (Also in 38, 40, 41)

v39.3.0: electron v39.3.0

Compare Source

Release Notes for v39.3.0

Features

  • Added support for WebSocket authentication through the login event on webContents. #​49065 (Also in 40)

Fixes

  • Fixed setRepresentedFilename() not setting AXDocument accessibility attribute on macOS. #​49418 (Also in 40)
  • Fixed a potential race condition crash when opening DevTools. #​49423 (Also in 40)
  • Fixed stack overflow when compiling deeply nested JS functions. #​49360
  • Made toplevel icon Wayland protocol work. #​49415 (Also in 40)
  • Requests sent via net are now capable of having their headers modified to use reserved headers via webRequest. #​49242 (Also in 40)

Other Changes

v39.2.7: electron v39.2.7

Compare Source

Release Notes for v39.2.7

Other Changes

  • Updated Chromium to 142.0.7444.235. #​49190

v39.2.6: electron v39.2.6

Compare Source

Release Notes for v39.2.6

Fixes

  • Fixed visual artifacts while resizing a window on Windows. #​49138

Other Changes

  • Updated Chromium to 142.0.7444.226. #​49137

v39.2.5: electron v39.2.5

Compare Source

Release Notes for v39.2.5

Fixes

  • Fixed a Windows notification issue where clicking a native notification would result in an application hang on certain Windows environments. #​49130 (Also in 40)
  • Fixed an issue where menu-did-close was not emitted properly for some application menus. #​49093 (Also in 38, 40)
  • Reduced amount of visual artifacts while resizing a window on Windows. #​49076

Other Changes

  • Fixed devtools element panel flickering when with node inspection. #​49044 (Also in 40)

v39.2.4: electron v39.2.4

Compare Source

Release Notes for v39.2.4

Fixes

  • Fixed an issue where the close callback param for menu.popup would fire when any arbitrary submenu of the given menu closed, and not the menu itself. #​49045 (Also in 38, 40)
  • Fixed crash when reading system certificates via nodejs tls module. #​49042 (Also in 40)
  • Fixed the issue where the parent window leave disabled after the modal window call show() multiple time. #​49019 (Also in 38, 40)

Other Changes

  • Updated Chromium to 142.0.7444.177. #​49037

v39.2.3: electron v39.2.3

Compare Source

Release Notes for v39.2.3

  • Updated Chromium to 142.0.7444.175.

v39.2.2: electron v39.2.2

Compare Source

Release Notes for v39.2.2

Fixes

  • Fixed crash when creating event object for IPC events. #​48992 (Also in 40)

v39.2.1: electron v39.2.1

Compare Source

Release Notes for v39.2.1

Fixes

  • Fixed an issue where some apps would throw an exception on launch. #​48975 (Also in 40)

v39.2.0: electron v39.2.0

Compare Source

Release Notes for v39.2.0

Features

  • Added app.isHardwareAccelerationEnabled(). #​48680 (Also in 37, 38)
  • Added bypassCustomProtocolHandlers option to net.request. #​48882 (Also in 38, 40)
  • Automatically focus DevTools when element is inspected or breakpoint is triggered. #​48702 (Also in 37, 38)
  • Enables resetting accent color to follow system accent settings if a previous color has been set via window.setAccentColor(null). #​48852 (Also in 38)
  • Updated nativeImage.createFromNamedImage to support SF Symbol names. #​48773 (Also in 40)

Fixes

  • Fixed crash on windows when UTF-8 is in path. #​48944 (Also in 38, 40)
  • Reenable V8 trap handlers for wasm in browser and utility process, improves runtime execution of wasm. #​48837 (Also in 40)
  • Restored window's canHide property. #​48901 (Also in 37, 38)
  • Windows: Calling window.setFocusable(true) will no longer cause a window to lose focus. #​48928 (Also in 40)

Other Changes

  • Updated Chromium to 142.0.7444.162. #​48899

v39.1.2: electron v39.1.2

Compare Source

Release Notes for v39.1.2

Fixes

  • Corrected the appearance of tiled windows on GNOME (when frame: true), and removed resize handles from tiled edges. #​48834 (Also in 38, 40)
  • Fix: ESM-from-CJS import when CJK characters are in path. #​48873
  • Fixed oom crash when optimizing certain wasm functions involving large phi nodes. #​48815 (Also in 38, 40)
  • Fixed the issue where the parent window remained interactive after the modal window was opened. #​48865 (Also in 40)

Other Changes

  • Updated Chromium to 142.0.7444.134. #​48818

Documentation

Unknown

  • Fixed an issue that menu items on macOS could not be disabled under all circumstances. #​48830 (Also in 38, 40)

v39.1.1: electron v39.1.1

Compare Source

Release Notes for v39.1.1

Fixes

  • Fixed an application crash when clicking or hovering over the native MacOS "Window" menu. Reverts #​48598. #​48800 (Also in 40)
  • Fixed draw smoothing round corner issue. #​48781 (Also in 40)

v39.1.0: electron v39.1.0

Compare Source

Release Notes for v39.1.0

Fixes

  • Fixed an issue on Wayland (Linux) where right-clicking in the titlebar could break mouse interactions. #​48758 (Also in 38, 40)
  • Fixed an issue that menu items on macOS could not be disabled under all circumstances. #​48711 (Also in 37, 38)
  • Fixed incorrect signal variable reference in nan-spec-runner that could cause install failures to go undetected. #​48709 (Also in 38)

Other Changes

v39.0.0: electron v39.0.0

Compare Source

Release Notes for v39.0.0

Stack Upgrades

Breaking Changes

  • Added colorSpace to offscreen shared texture info of webContents.on('paint') event.
    • Breaking Changed the signature of OffscreenSharedTexture to provide a unified handle that holds the native handle. #​47315
  • Fixed a spec compliance issue with window.open where it should always create a resizable popup window but did not. #​47540

For breaking changes inherited via Chromium, see blog post

Features

Additions
  • Added RGBAF16 output format with scRGB HDR color space support to Offscreen Rendering. #​48504
  • Added fileBacked and purgeable fields to process.getSystemMemoryInfo() for macOS. #​47628 (Also in 37, 38)
  • Added support for guid Tray constructor option on macOS to allow tray icons to maintain position across launches. #​47838 (Also in 36, 37, 38)
  • Added webFrameMain.fromFrameToken(processId, frameToken) to get a WebFrameMain instance from its frame token. #​47850 (Also in 38)
  • Added methods to enable more granular accessibility support management. #​48625
  • Added support for app.getRecentDocuments() on Windows and macOS. #​45839 (Also in 36, 37, 38)
  • Added support for USBDevice.configurations. #​47459
  • Added the ability to retrieve the system accent color on Linux using systemPreferences.getAccentColor. #​48628
  • Adds the ability to change window accent color on Windows after initial window initialization via {get|set}AccentColor. #​47741 (Also in 36, 37, 38)
  • Allowed for persisting File System API grant status within a given session. #​48326 (Also in 37, 38)
  • Internally switched to using DIR_ASSETS instead of DIR_MODULE/DIR_EXE to locate assets and resources, and added "assets" as a key that can be queried via app.getPath. #​47439 (Also in 37, 38)
  • Support dynamic ESM imports in non-context isolated preloads. #​48488 (Also in 37, 38)

Fixes

  • Fixed an issue where systemPreferences.getAccentColor inverted the color. #​48624
  • Fixed an issue where calling webContents.openDevTools({ mode: 'detach' }) would cause a crash on Wayland. #​48623
  • Fixed crash when accessing webContents.session. #​48344
  • Fixed crash when inspector agent attempts to evaluate on provisional frames. #​48515
  • Fixed crash when passing feature param from commandline --enable-features=Feature:ParamA/Value. #​48442
Also in earlier versions...
  • AccentColor set distinguishes the frame. #​48450 (Also in 37, 38)
  • Fix: runtime JS error that crashes GetPackageJSON. #​48425 (Also in 37, 38)
  • Fixed Wayland configuration through the XDG_SESSION_TYPE environment variable. #​48310 (Also in 38)
  • Fixed Windows dialog.showMessageBox default button handling. #​48521 (Also in 36, 37, 38)
  • Fixed a bug where app extensions filters didn't allow for selecting app bundles in macOS file dialogs. #​47825 (Also in 36, 37, 38)
  • Fixed a bug where the Referer header was not being set correctly when using webContents.downloadURL(). #​47625 (Also in 36, 37, 38)
  • Fixed a child process crash on macOS when the running application is replaced with one that has a newer implementation triggering the sandbox. #​47765 (Also in 37, 38)
  • Fixed a crash possible when calling webContents.loadURL() from a failed webContents.loadURL() call's catch handler. #​48004 (Also in 36, 37, 38)
  • Fixed a crash when adding the -electron-corner-smoothing CSS rule to a stylesheet with no associated document. #​47759 (Also in 37, 38)
  • Fixed a crash when calling desktopCapturer.getSources with an empty thumbnail size. #​47641 (Also in 36, 37, 38)
  • Fixed a crash when calling some webContents functions after window.close(). #​47933 (Also in 36, 37, 38)
  • Fixed a potential crash in dialog.showOpenDialog on Windows with an empty extension filter array. #​48658 (Also in 37, 38)
  • Fixed addBrowserView to prevent unnecessary removal and re-adding of the same BrowserView. #​48053 (Also in 37, 38)
  • Fixed an error when checking environmental variables when using remote checksums when installing Electron via npm. #​48673 (Also in 37, 38)
  • Fixed an issue on some older Windows versions where setContentProtection didn't work as expected. #​47856 (Also in 36, 37, 38)
  • Fixed an issue where app.accessibilitySupportEnabled didn't work as expected. #​48041 (Also in 37, 38)
  • Fixed an issue where dialog.showMessageDialog showed a window incorrectly centered to monitor instead of parent window when passed. #​48181 (Also in 38)
  • Fixed an issue where net.isOnline() always returned true in utilityProcesses. #​48111 (Also in 36, 37, 38)
  • Fixed an issue where require('node:sqlite') didn't work. #​47706 (Also in 36, 37, 38)
  • Fixed an issue where shell.openExternal caused an unexpected dialog to open when there was no app suitable to open the url. #​48518 (Also in 38)
  • Fixed an issue where shell.openPath was not non-blocking as expected. #​48079 (Also in 36, 37, 38)
  • Fixed an issue where trafficLightPosition would not be correctly applied when using titleBarStyle: 'customButtonsOnHover' on macOS 26. #​48621 (Also in 38)
  • Fixed an issue where a file-only picker incorrectly allowed some directories. #​48198 (Also in 36, 37, 38)
  • Fixed an issue where an invalid color passed as a string to accentColor would result in a white accent color. #​47660 (Also in 37, 38)
  • Fixed an issue where authentication via websockets can crash. #​48541 (Also in 37, 38)
  • Fixed an issue where button background on mouse hover with titleBarOverlay wasn't always calculated to provide appropriate minimum contrast. #​48597 (Also in 37, 38)
  • Fixed an issue where certain operations performed in a window close callback could trigger a crash. #​47751 (Also in 36, 37, 38)
  • Fixed an issue where changing the resizable property on a window would break the styles of a transparent window. #​48501 (Also in 37, 38)
  • Fixed an issue where child windows could crash if they were opened from a fullscreen parent and have roundedCorners set to false. #​47664 (Also in 36, 37, 38)
  • Fixed an issue where dragging sometimes didn't work after the contextmenu event was emitted. #​48199 (Also in 36, 37, 38)
  • Fixed an issue where icons didn't show up as expected on Windows Toast notifications. #​48629 (Also in 38)
  • Fixed an issue where importing from electron/utility in an ESM file threw an error at runtime. #​47998 (Also in 36, 37, 38)
  • Fixed an issue where importing from electron/utility threw a ERR_MODULE_NOT_FOUND error at runtime. #​47968 (Also in 36, 37, 38)
  • Fixed an issue where snapped corner state wasn't properly restored after minimizing and then restoring. #​48142 (Also in 36, 37, 38)
  • Fixed an issue where snapped windows aren't correctly snapped when minimized and then unminimized. #​48438 (Also in 37, 38)
  • Fixed an issue where the accent border was drawn on all windows regardless of the window's active focused status. #​47740 (Also in 36, 37, 38)
  • Fixed an issue where the accent color would be accidentally inverted when set to match the system color. #​48085 (Also in 36, 37, 38)
  • Fixed an issue where the window required restart in order to recognize system accent color setting change. #​47629 (Also in 36, 37, 38)
  • Fixed an issue where users on MacOS were unable to interact with a webpage loaded via loadURL. #​47560 (Also in 38)
  • Fixed an issue where video scrubbing would not correctly hold the new position on playback. #​47703 (Also in 37, 38)
  • Fixed an issue where windows opened with window.open would never be offscreen. #​47868 (Also in 37, 38)
  • Fixed an issue where windows used dark theme on Linux all the time without reacting to system theme changes. #​47869 (Also in 37, 38)
  • Fixed applying background material correctly when creating windows on Windows, restored animations, and also fixed the issue where dynamically setting the background material had no effect. #​47386 (Also in 36, 37, 38)
  • Fixed compilation error when disabling extensions and pdf_viewer. #​47964 (Also in 37, 38)
  • Fixed download button does not work in PDF Viewer. #​48404 (Also in 38)
  • Fixed excessive WindowServer GPU usage on macOS Tahoe 26. #​48399 (Also in 36, 37, 38)
  • Fixed high CPU usage with <input> tag on macOS 26. #​48393 (Also in 36, 37, 38)
  • Fixed potential deadlock inside app.getLoginItemSettings on macOS. #​48090 (Also in 36, 37, 38)
  • Fixed shader-f16 to work on Windows. #​48557 (Also in 37, 38)
  • Fixed white flash on call to BrowserWindow.show. #​48559 (Also in 37, 38)
  • Titlebar buttons now appear on the correct side of windows on Wayland in Ubuntu. #​48603 (Also in 38)

Other Changes

  • Added abi_version file to the npm package. #​47598
  • Added platform-specific conditions to the source_set in chromium_src. #​47627
  • Fixed a development issue where the metal toolchain could not be found when building on macOS 26. #​48472 (Also in 37, 38)
  • Electron.Event object backing class is now managed by v8. #​48161
  • app module backing C++ object is now managed by v8. #​48118
  • session module backing C++ object is now managed by v8. #​48141

Documentation

Notices

End of Support for 36.x.y

Electron 36.x.y has reached end-of-support as per the project's support policy. Developers and applications are encouraged to upgrade to a newer version of Electron.

v38.8.6: electron v38.8.6

Compare Source

Release Notes for v38.8.6

[!WARNING]
Electron 38.x.y has reached end-of-support as per the project's support policy. Developers and applications are encouraged to upgrade to a newer version of Electron.

Fixes

  • Added validation to protocol client methods to reject protocol names that do not conform to the RFC 3986 URI scheme grammar. #​50157 (Also in 39, 40, 41)
  • Fixed an issue where additionalData passed to app.requestSingleInstanceLock on Windows could be truncated or fail to deserialize in the primary instance's second-instance event. #​50177 (Also in 39, 40, 41)
  • Fixed an issue where invalid characters in custom protocol or webRequest response header values were not rejected. #​50130 (Also in 39, 40, 41)
  • Fixed an issue where permission and device-chooser handlers received the top-level page origin instead of the requesting subframe's origin. #​50151 (Also in 39, 40, 41)

v38.8.4: electron v38.8.4

Compare Source

Release Notes for v38.8.4

Fixes

  • Fixed memory leak when setting icons on Linux/GTK. #​49897 (Also in 39, 40, 41)

v38.8.2: electron v38.8.2

Compare Source

Release Notes for v38.8.2

Other Changes

v38.8.1: electron v38.8.1

Compare Source

Release Notes for v38.8.1

Fixes

  • Fixed an issue whereby a duplicate "Toggle Full Screen" menu item appeared in the View menu on macOS. #​49596 (Also in 39, 40, 41)
  • Fixed dock menu items not respecting enabled and checked properties on macOS. #​49627 (Also in 39, 40, 41)

v38.8.0: electron v38.8.0

Compare Source

Release Notes for v38.8.0

Fixes

  • Fixed an issue where menu-did-close was not emitted properly for some application menus. #​49094 (Also in 39, 40)
  • Fixed an issue where systemPreferences.getAccentColor inverted the color. #​49066 (Also in 37, 39)

Other Changes

Unknown

  • Fixed an issue where some packages weren't correctly filtered on macOS in dialogs. #​49471 (Also in 39, 40, 41)

v38.7.2: electron v38.7.2

Compare Source

Release Notes for v38.7.2

Fixes

  • Fixed an issue where the close callback param for menu.popup would fire when any arbitrary submenu of the given menu closed, and not the menu itself. #​49047 (Also in 39, 40)
  • Fixed the issue where the parent window leave disabled after the modal window call show() multiple time. #​49020 (Also in 39, 40)

v38.7.1: electron v38.7.1

Compare Source

Release Notes for v38.7.1

Other Changes

v38.7.0: electron v38.7.0

Compare Source

Release Notes for v38.7.0

Features

  • Added app.isHardwareAccelerationEnabled(). #​48681 (Also in 37, 39)
  • Added bypassCustomProtocolHandlers option to net.request. #​48881 (Also in 39, 40)
  • Automatically focus DevTools when element is inspected or breakpoint is triggered. #​48701 (Also in 37, 39)
  • Enables resetting accent color to follow system accent settings if a previous color has been set via window.setAccentColor(null). #​48853 (Also in 39)

Fixes

  • Corrected the appearance of tiled windows on GNOME (when frame: true), and removed resize handles from tiled edges. #​48836 (Also in 39, 40)
  • Fix: ESM-from-CJS import when CJK characters are in path. #​48876 (Also in 39, 40)
  • Fixed an issue where calling webContents.openDevTools({ mode: 'detach' }) would cause a crash on Wayland. #​48926 (Also in 39)
  • Fixed crash on windows when UTF-8 is in path. #​48947 (Also in 39, 40)
  • Fixed oom crash when optimizing certain wasm functions involving large phi nodes. #​48817 (Also in 39, 40)
  • Fixed the issue where the parent window remained interactive after the modal window was opened. #​48866 (Also in 39, 40)
  • Restored window's canHide property. #​48900 (Also in 37, 39)

Other Changes

Unknown

  • Fixed an issue that menu items on macOS could not be disabled under all circumstances. #​48829 (Also in 39, 40)

v38.6.0: electron v38.6.0

Compare Source

Release Notes for v38.6.0

Fixes

  • Fixed an application crash when clicking or hovering over the native MacOS "Window" menu. Reverts #​48598. #​48801 (Also in 39, 40)
  • Fixed an issue on Wayland (Linux) where right-clicking in the titlebar could break mouse interactions. #​48757 (Also in 39, 40)
  • Fixed an issue that menu items on macOS could not be disabled under all circumstances. #​48710 (Also in 37, 39)
  • Fixed draw smoothing round corner issue. #​48780 (Also in 40)
  • Fixed incorrect signal variable reference in nan-spec-runner that could cause install failures to go undetected. #​48708 (Also in 39)

Other Changes

v38.5.0: electron v38.5.0

Compare Source

Release Notes for v38.5.0

Features

  • Added methods to enable more granular accessibility support management. #​48626 (Also in 37, 39)

Fixes

  • Fixed a potential crash in dialog.showOpenDialog on Windows with an empty extension filter array. #​48660 (Also in 37, 39)
  • Fixed an error when checking environmental variables when using remote checksums when installing Electron via npm. #​48672 (Also in 37, 39)
  • Fixed an issue where trafficLightPosition would not be correctly applied when using titleBarStyle: 'customButtonsOnHover' on macOS 26. #​48620 (Also in 37, 39)
  • Fixed an issue where button background on mouse hover with titleBarOverlay wasn't always calculated to provide appropriate minimum contrast. #​48595 (Also in 37, 39)
  • Fixed an issue where icons didn't show up as expected on Windows Toast notifications. #​48630 (Also in 39)
  • Fixed crash when inspector agent attempts to evaluate on provisional frames. #​48513 (Also in 39)

Other Changes

  • Updated Chromium to 140.0.7339.249. #​48569

Documentation

v38.4.0: electron v38.4.0

Compare Source

Release Notes for v38.4.0

Features

  • Support dynamic ESM imports in non-context isolated preloads. #​48489 (Also in 39)

Fixes

  • Fixed shader-f16 to work on Windows. #​48555 (Also in 37, 39)
  • Fixed white flash on call to BrowserWindow.show. #​48560 (Also in 37, 39)
  • Titlebar buttons now appear on the correct side of windows on Wayland in Ubuntu. #​48602 (Also in 39)

v38.3.0: electron v38.3.0

Compare Source

Release Notes for v38.3.0

Fixes

  • Fixed Windows dialog.showMessageBox default button handling. #​48519 (Also in 36, 37, 39)
  • Fixed an issue where shell.openExternal caused an unexpected dialog to open when there was no app suitable to open the url. #​48517 (Also in 39)
  • Fixed an issue where authentication via websockets can crash. #​48539 (Also in 37, 39)
  • Fixed an issue where changing the resizable property on a window would break the styles of a transparent window. #​48499 (Also in 39)

Other Changes

  • Fixed a development issue where the metal toolchain could not be found when building on macOS 26. #​48473 (Also in 37, 39)
  • Updated Chromium to 140.0.7339.240. #​48486
  • Updated Node.js to v22.20.0. #​48381

v38.2.2: electron v38.2.2

Compare Source

Release Notes for v38.2.2

Fixes

  • AccentColor set distinguishes the frame. #​48451 (Also in 37, 39)
  • Fix: runtime JS error that crashes GetPackageJSON. #​48424 (Also in 37, 39)
  • Fixed download button does not work in PDF Viewer. #​48409 (Also in 39)

v38.2.1: electron v38.2.1

Compare Source

Release Notes for v38.2.1

Fixes

  • Fixed an issue where snapped windows aren't correctly snapped when minimized and then unminimized. #​48437 (Also in 39)

v38.2.0: electron v38.2.0

Compare Source

Release Notes for v38.2.0

Features

  • Allowed for persisting File System API grant status within a given session. #​48327 (Also in 37)

Fixes

  • Fixed Wayland configuration through the XDG_SESSION_TYPE environment variable. #​48309
  • Fixed excessive WindowServer GPU usage on macOS Tahoe 26. #​48398 (Also in 36, 37, 39)
  • Fixed high CPU usage with <input> tag on macOS 26. #​48394 (Also in 37, 39)

v38.1.2: electron v38.1.2

Compare Source

Release Notes for v38.1.2

Other Changes

v38.1.1: electron v38.1.1

Compare Source

Release Notes for v38.1.1

Other Changes

  • Updated Chromium to 140.0.7339.133. #​48287

v38.1.0: electron v38.1.0

Compare Source

Release Notes for v38.1.0

Other Changes

v38.0.0: electron v38.0.0

Compare Source

Release Notes for v38.0.0

Stack Upgrades

Breaking Changes

  • For breaking changes inherited via Chromium, see blog post

Features

Additions
  • Added before-mouse-event to allow intercepting and preventing mouse events in WebContents. #​47280 (Also in 36, 37)
  • Added fileBacked and purgeable fields to process.getSystemMemoryInfo() for macOS. #​48146 (Also in 37)
  • Added innerWidth and innerHeight options for window.open. #​46749 (Also in 35, 36, 37)
  • Added support for guid Tray constructor option on macOS to allow tray icons to maintain position across launches. #​48077 (Also in 36, 37)
  • Added webFrameMain.fromFrameToken(processId, frameToken) to get a WebFrameMain instance from its frame token. #​47942
  • Added sublabel functionality for menus on macOS >= 14.4. #​46887 (Also in 35, 36, 37)
  • Added support for app.getRecentDocuments() on Windows and macOS. #​47924 (Also in 36, 37)
  • Added support for --no-experimental-global-navigator flag. #​47370 (Also in 35, 36, 37)
  • Added support for HIDDevice.collections. #​47391 (Also in 36, 37)
  • Added support for screen.dipToScreenPoint(point) and screen.screenToDipPoint(point) on Linux X11. #​46211 (Also in 35, 36, 37)
  • Added support for customizing system accent color and highlighting of active window border. #​47285 (Also in 35, 36, 37)
  • Added support for menu item role palette and header on macOS. #​45538 (Also in 37)
  • Added support for node option --experimental-network-inspection. #​46690 (Also in 35, 36, 37)
  • Added the priority and priorityIncremental options to net.request(). #​42628 (Also in 36, 37)
  • Adds the ability to change window accent color on Windows after initial window initialization via {get|set}AccentColor. #​47939 (Also in 36, 37)
Improvements
  • Exposed win.isContentProtected() to allow developers to check window protection status. #​47242 (Also in 36, 37)
  • Internally switched to using DIR_ASSETS instead of DIR_MODULE/DIR_EXE to locate assets and resources, and added "assets" as a key that can be queried via app.getPath. #​47950 (Also in 37)

Fixes

  • Fixed an issue where dialog.showMessageDialog showed a window incorrectly centered to monitor instead of parent window when passed. #​48215
  • Fixed an issue where users on MacOS were unable to interact with a webpage loaded via loadURL. #​47575
  • Fixed broken chrome://accessibility page. #​47497
Also in earlier versions...
  • Fixed addChildView() crashes when adding a closed WebContentsView. #​47099 (Also in 35, 36, 37)
  • Fixed a bug where app extensions filters didn't allow for selecting app bundles in macOS file dialogs. #​47841 (Also in 36, 37)
  • Fixed a bug where the Referer header was not being set correctly when using webContents.downloadURL(). #​47867 (Also in 36, 37)
  • Fixed a child process crash on macOS when the running application is replaced with one that has a newer implementation triggering the sandbox. #​47783 (Also in 37)
  • Fixed a crash possible when calling webContents.loadURL() from a failed webContents.loadURL() call's catch handler. #​48043 (Also in 36, 37)
  • Fixed a crash that could occur when opening some dialogs as windows are closing on macOS. #​46927 (Also in 35, 36, 37)
  • Fixed a crash when adding the -electron-corner-smoothing CSS rule to a stylesheet with no associated document. #​47785 (Also in 37)
  • Fixed a crash when calling desktopCapturer.getSources with an empty thumbnail size. #​47652 (Also in 36, 37)
  • Fixed a crash when calling some webContents functions after window.close(). #​47952 (Also in 36, 37)
  • Fixed a possible crash using the WebView tag and calling focus. #​46979 (Also in 35, 36, 37)
  • Fixed a potential crash using session.clearData in some circumstances. #​47361 (Also in 35, 36, 37)
  • Fixed an error when importing electron for the first time from an ESM module loaded by a CJS module in a packaged app. #​46810 (Also in 35, 36, 37)
  • Fixed an issue on some older Windows versions where setContentProtection didn't work as expected. #​47886 (Also in 36, 37)
  • Fixed an issue where app.accessibilitySupportEnabled didn't work as expected. #​48060 (Also in 37)
  • Fixed an issue where net.isOnline() always returned true in utilityProcesses. #​48151 (Also in 36, 37)
  • Fixed an issue where require('node:sqlite') didn't work. #​47757 (Also in 36, 37)
  • Fixed an issue where shell.openPath was not non-blocking as expected. #​48089 (Also in 36, 37)
  • Fixed an issue where webContents.print did not work as expected when mediaSize was not passed. #​46937 (Also in 36, 37)
  • Fixed an issue where an invalid color passed as a string to accentColor would result in a white accent color. #​47684 (Also in 37)
  • Fixed an issue where calling Fetch.continueResponse via debugger with WebContentsView could cause a crash. #​47434 (Also in 35, 36, 37)
  • Fixed an issue where certain operations performed in a window close callback could trigger a crash. #​47812 (Also in 36, 37)
  • Fixed an issue where child windows could crash if they were opened from a fullscreen parent and have roundedCorners set to false. #​47681 (Also in 36, 37)
  • Fixed an issue where filters wouldn't apply in the specific case only one was passed. #​46900 (Also in 36, 37)
  • Fixed an issue where dragging sometimes didn't work after the contextmenu event was emitted. #​48224 (Also in 36, 37)
  • Fixed an issue where importing from electron/utility in an ESM file threw an error at runtime. #​48019 (Also in 36, 37)
  • Fixed an issue where importing from electron/utility threw a ERR_MODULE_NOT_FOUND error at runtime. #​47989 (Also in 36, 37)
  • Fixed an issue where printing PDFs with webContents.print({ silent: true }) would fail. #​47378 (Also in 36, 37)
  • Fixed an issue where protected transparent windows inappropriately showed a titlebar after visibility change. #​47241 (Also in 35, 36, 37)
  • Fixed an issue where snapped corner state wasn't properly restored after minimizing and then restoring. #​48157 (Also in 36, 37)
  • Fixed an issue where the 'suspend' and 'resume' events could be emitted in duplicate. #​47162 (Also in 35, 36, 37)
  • Fixed an issue where the accent border was drawn on all windows regardless of the window's active focused status. #​47802 (Also in 36, 37)
  • Fixed an issue where the accent color would be accidentally inverted when set to match the system color. #​48108 (Also in 36, 37)
  • Fixed an issue where the window flickers with either a light or dark color before loading the desired background color. #​47022 (Also in 35, 36, 37)
  • Fixed an issue where the window required restart in order to recognize system accent color setting change. #​47658 (Also in 36, 37)
  • Fixed an issue where transparent child windows on macOS were rendering a grey block as opposed to their correct contents. #​46886 (Also in 35, 36, 37)
  • Fixed an issue where utility processes could leak file handles. #​47525 (Also in 35, 36, 37)
  • Fixed an issue where video scrubbing would not correctly hold the new position on playback. #​47965 (Also in 37)
  • Fixed an issue where windows opened with window.open would never be offscreen. #​48026 (Also in 37)
  • Fixed an issue where windows used dark theme on Linux all the time without reacting to system theme changes. #​47919 (Also in 37)
  • Fixed applying background material correctly when creating windows on Windows, restored animations, and also fixed the issue where dynamically setting the background material had no effect. #​47814 (Also in 36, 37)
  • Fixed compilation error when disabling extensions and pdf_viewer. #​47993 (Also in 37)
  • Fixed crash in autoUpdater on macOS when zip extraction failed. #​47271 (Also in 34, 35, 36, 37)
  • Fixed crash in xdg portal version detection on startup. #​47008 (Also in 35, 36, 37)
  • Fixed log files written to the current working directory on Windows. #​44413 (Also in 35, 36, 37)
  • Fixed opening package paths as directory when treatPackageAsDirectory is enabled on macOS. #​47077 (Also in 35, 36, 37)
  • Fixed potential deadlock inside app.getLoginItemSettings on macOS. #​48094 (Also in 36, 37)
  • Fixed regression with directory selection in macOS dialogs. #​47259 (Also in 35, 36, 37)
  • Fixed utilityProcess running user script after process.exit is called. #​47469 (Also in 37)
  • Fixed xdg portal version detection for file dialogs on linux. #​46905 (Also in 35, 36, 37)
  • Partially fixes an issue with printing a PDF via webContents.print() where the callback would not be called. #​47377 (Also in 35, 36, 37)
  • Restored previous window-hiding behavior of win.setContentProtected() on Windows. #​47020 (Also in 35, 36, 37)

Documentation

Notices

End of Support for 35.x.y

Electron 35.x.y has reached end-of-support as per the project's support policy. Developers and applications are encouraged to upgrade to a newer version of Electron.

v37.10.3: electron v37.10.3

Compare Source

Release Notes for v37.10.3

[!WARNING]
Electron 37.x.y has reached end-of-support as per the project's support policy. Developers and applications are encouraged to upgrade to a newer version of Electron.

Fixes

  • Fixed an issue where systemPreferences.getAccentColor inverted the color. #​49067 (Also in 39)

v37.10.2: electron v37.10.2

Compare Source

Release Notes for v37.10.2

Other Changes

v37.10.1: electron v37.10.1

Compare Source

Release Notes for v37.10.1

Fixes

  • Fixed an issue that menu items on macOS could not be disabled under all circumstances. #​48827

v37.10.0: electron v37.10.0

Compare Source

Release Notes for v37.10.0

Features

  • Added app.isHardwareAccelerationEnabled(). #​48679 (Also in 38, 39)
  • Automatically focus DevTools when element is inspected or breakpoint is triggered. #​48703 (Also in 38, 39)

Fixes

Other Changes

v37.9.0: electron v37.9.0

Compare Source

Release Notes for v37.9.0

Fixes

  • Fixed an application crash when clicking or hovering over the native MacOS "Window" menu. Reverts #​48598. #​48803 (Also in 38, 39, 40)
  • Fixed an issue on Wayland (Linux) where right-clicking in the titlebar could break mouse interactions. #​48756 (Also in 38, 39, 40)
  • Fixed an issue that menu items on macOS could not be disabled under all circumstances. #​48712 (Also in 38, 39)
  • Fixed crash when inspector agent attempts to evaluate on provisional frames. #​48514 (Also in 38, 39)
  • Fixed draw smoothing round corner issue. #​48783 (Also in 40)

Other Changes

v37.8.0: electron v37.8.0

Compare Source

Release Notes for v37.8.0

Features

  • Added methods to enable more granular accessibility support management. #​48627 (Also in 38, 39)
  • Support dynamic ESM imports in non-context isolated preloads. #​48487 (Also in 38, 39)

Fixes

  • Fixed a potential crash in dialog.showOpenDialog on Windows with an empty extension filter array. #​48659 (Also in 38, 39)
  • Fixed an error when checking environmental variables when using remote checksums when installing Electron via npm. #​48671 (Also in 38, 39)
  • Fixed an issue where trafficLightPosition would not be correctly applied when using titleBarStyle: 'customButtonsOnHover' on macOS 26. #​48622 (Also in 38, 39)

Documentation

v37.7.1: electron v37.7.1

Compare Source

Release Notes for v37.7.1

Fixes

  • Fixed an issue where button background on mouse hover with titleBarOverlay wasn't always calculated to provide appropriate minimum contrast. #​48596 (Also in 39)
  • Fixed an issue where changing the resizable property on a window would break the styles of a transparent window. #​48500 (Also in 38, 39)
  • Fixed shader-f16 to work on Windows. #​48556 (Also in 38, 39)
  • Fixed white flash on call to BrowserWindow.show. #​48558 (Also in 38, 39)

v37.7.0: electron v37.7.0

Compare Source

Release Notes for v37.7.0

Fixes

  • Fixed Windows dialog.showMessageBox default button handling. #​48520 (Also in 36, 38, 39)
  • Fixed addBrowserView to prevent unnecessary removal and re-adding of the same BrowserView. #​48200 (Also in 38)
  • Fixed an issue where authentication via websockets can crash. #​48540 (Also in 38, 39)

Other Changes

  • Fixed a development issue where the metal toolchain could not be found when building on macOS 26. #​48471 (Also in 38, 39)
  • Updated Node.js to v22.20.0. #​48380

v37.6.1: electron v37.6.1

Compare Source

Release Notes for v37.6.1

Fixes

  • AccentColor set distinguishes the frame. #​48449 (Also in 38, 39)
  • Fix: runtime JS error that crashes GetPackageJSON. #​48423 (Also in 38, 39)
  • Fixed an issue where snapped windows aren't correctly snapped when minimized and then unminimized. #​48439 (Also in 38, 39)

v37.6.0: electron v37.6.0

Compare Source

Release Notes for v37.6.0

Features

  • Allowed for persisting File System API grant status within a given session. #​48328 (Also in 38)

Fixes

  • Fixed excessive WindowServer GPU usage on macOS Tahoe 26. #​48400 (Also in 36, 39)
  • Fixed high CPU usage with <input> tag on macOS 26. #​48392 (Also in 39)

v37.5.1: electron v37.5.1

Compare Source

Release Notes for v37.5.1

Other Changes

v37.5.0: electron v37.5.0

Compare Source

Release Notes for v37.5.0

Features

  • Added fileBacked and purgeable fields to process.getSystemMemoryInfo() for macOS. #​48143 (Also in 38)

Fixes

  • Fixed an issue where dialog.showMessageDialog showed a window incorrectly centered to monitor instead of parent window when passed. #​48213 (Also in 36, 38)
  • Fixed an issue where a file-only picker incorrectly allowed some directories. #​48230 (Also in 36, 38)
  • Fixed an issue where dragging sometimes didn't work after the contextmenu event was emitted. #​48226 (Also in 36, 38)

Other Changes

v37.4.0: electron v37.4.0

Compare Source

Release Notes for v37.4.0

Features

  • Added support for guid Tray constructor option on macOS to allow tray icons to maintain position across launches. #​48076 (Also in 36, 38)

Fixes

  • Fixed an issue where net.isOnline() always returned true in utilityProcesses. #​48152 (Also in 36, 38)
  • Fixed an issue where snapped corner state wasn't properly restored after minimizing and then restoring. #​48156 (Also in 36, 38)
  • Fixed an issue where the accent color would be accidentally inverted when set to match the system color. #​48107 (Also in 36, 38)

Other Changes

  • Updated Chromium to 138.0.7204.243. #​48119

v37.3.1: electron v37.3.1

Compare Source

Release Notes for v37.3.1

Fixes

  • Fixed an issue where shell.openPath was not non-blocking as expected. #​48088 (Also in 36, 38)
  • Fixed an issue where windows opened with window.open would never be offscreen. #​48070 (Also in 38)
  • Fixed potential deadlock inside app.getLoginItemSettings on macOS. #​48096 (Also in 36)

Other Changes

  • Updated Chromium to 138.0.7204.235. #​48066

v37.3.0: electron v37.3.0

Compare Source

Release Notes for v37.3.0

Features

  • Added support for app.getRecentDocuments() on Windows and macOS. #​47923 (Also in 36, 38)
  • Adds the ability to change window accent color on Windows after initial window initialization via {get|set}AccentColor. #​48017 (Also in 36, 38)
  • Internally switched to using DIR_ASSETS instead of DIR_MODULE/DIR_EXE to locate assets and resources, and added "assets" as a key that can be queried via app.getPath. #​47951 (Also in 38)

Fixes

  • Fixed a crash possible when calling webContents.loadURL() from a failed webContents.loadURL() call's catch handler. #​48045 (Also in 36, 38)
  • Fixed an issue where app.accessibilitySupportEnabled didn't work as expected. #​48061 (Also in 38)
  • Fixed an issue where importing from electron/utility in an ESM file threw an error at runtime. #​48021 (Also in 36, 38)
  • Fixed an issue where importing from electron/utility threw a ERR_MODULE_NOT_FOUND error at runtime. #​47988 (Also in 36, 38)
  • Fixed an issue where the accent border was drawn on all windows regardless of the window's active focused status. #​48011 (Also in 36, 38)
  • Fixed compilation error when disabling extensions and pdf_viewer. #​47994 (Also in 38)

Other Changes

v37.2.6: electron v37.2.6

Compare Source

Release Notes for v37.2.6

Fixes

  • Fixed a bug where the Referer header was not being set correctly when using webContents.downloadURL(). #​47865 (Also in 36, 38)
  • Fixed a crash when calling some webContents functions after window.close(). #​47954 (Also in 36, 38)
  • Fixed an issue on some older Windows versions where setContentProtection didn't work as expected. #​47887 (Also in 36, 38)
  • Fixed an issue where an invalid color passed as a string to accentColor would result in a white accent color. #​47800 (Also in 38)
  • Fixed an issue where video scrubbing would not correctly hold the new position on playback. #​47971 (Also in 38)
  • Fixed an issue where windows used dark theme on Linux all the time without reacting to system theme changes. #​47920 (Also in 38)
  • Fixed applying background material correctly when creating windows on Windows, restored animations, and also fixed the issue where dynamically setting the background material had no effect. #​47956 (Also in 36, 38)

Other Changes

  • Updated Chromium to 138.0.7204.185. #​47909

v37.2.5: electron v37.2.5

Compare Source

Release Notes for v37.2.5

Other Changes

  • Updated Chromium to 138.0.7204.168. #​47861

v37.2.4: electron v37.2.4

Compare Source

Release Notes for v37.2.4

Fixes

  • Fixed a bug where app extensions filters didn't allow for selecting app bundles in macOS file dialogs. #​47839 (Also in 36, 38)
  • Fixed an issue where certain operations performed in a window close callback could trigger a crash. #​47813 (Also in 36, 38)

Other Changes

v37.2.3: electron v37.2.3

Compare Source

Release Notes for v37.2.3

Fixes

  • Fixed a child process crash on macOS when the running application is replaced with one that has a newer implementation triggering the sandbox. #​47784 (Also in 38)
  • Fixed a crash when adding the -electron-corner-smoothing CSS rule to a stylesheet with no associated document. #​47792
  • Fixed an issue where require('node:sqlite') didn't work. #​47756 (Also in 36, 38)

v37.2.2: electron v37.2.2

Compare Source

Release Notes for v37.2.2

Other Changes

  • Updated Chromium to 138.0.7204.100. #​47701

v37.2.1: electron v37.2.1

Compare Source

Release Notes for v37.2.1

Fixes

  • Fixed a crash when calling desktopCapturer.getSources with an empty thumbnail size. #​47653 (Also in 36, 38)
  • Fixed an issue where child windows could crash if they were opened from a fullscreen parent and have roundedCorners set to false. #​47682 (Also in 36, 38)
  • Fixed an issue where the window required restart in order to recognize system accent color setting change. #​47656 (Also in 36, 38)

v37.2.0: electron v37.2.0

Compare Source

Release Notes for v37.2.0

Other Changes

v37.1.0: electron v37.1.0

Compare Source

Release Notes for v37.1.0

Features

  • Added support for customizing system accent color and highlighting of active window border. #​47537 (Also in 35, 36)

Fixes

  • Fixed an issue where utility processes could leak file handles. #​47543 (Also in 35, 36)

v37.0.0: electron v37.0.0

Compare Source

Release Notes for v37.0.0

Stack Upgrades

Breaking Changes

  • Added support for Web Serial & WebUSB blocklists. #​46600
  • Fixed an issue where utility processes crashed on unhandled rejections. #​45921
  • Fixed utilityProcess running user script after process.exit is called. #​47492
  • Removed deprecated feature of creating a new random session by setting ProtocolResponse.session's property to null. #​46264

Features

Additions
  • Added BrowserWindow.isSnapped() to indicate whether a given window has been arranged via Snap. #​46079 (Also in 36)
  • Added before-mouse-event to allow intercepting and preventing mouse events in WebContents. #​47364 (Also in 36)
  • Added ffmpeg.dll to delay load configuration. #​46151 (Also in 34, 35, 36)
  • Added innerWidth and innerHeight options for window.open. #​47039 (Also in 35, 36)
  • Added nativeTheme.shouldUseDarkColorsForSystemIntegratedUI to distinguish system and app theme. #​46438 (Also in 35, 36)
  • Added scriptURL property to ServiceWorkerMain. #​45863
  • Added a CSS rule for smooth corners. #​45185
  • Added sublabel functionality for menus on macOS >= 14.4. #​47042 (Also in 35, 36)
  • Added support for Autofill, Writing Tools and Services macOS level menu items in context menus via the new frame option in menu.popup. #​45138 (Also in 36)
  • Added support for HIDDevice.collections. #​47483 (Also in 36)
  • Added support for --no-experimental-global-navigator flag. #​47418 (Also in 35, 36)
  • Added support for screen.dipToScreenPoint(point) and screen.screenToDipPoint(point) on Linux X11. #​46895 (Also in 35, 36)
  • Added support for system-context-menu on Linux. #​45848 (Also in 35, 36)
  • Added support for menu item role palette and header on macOS. #​47245
  • Added support for node option --experimental-network-inspection. #​47031 (Also in 35, 36)
  • Added the priority and priorityIncremental options to net.request(). #​47321 (Also in 36)
  • Exposed win.isContentProtected() to allow developers to check window protection status. #​47310 (Also in 36)
Improvements
  • Improved ASAR integrity checks on Windows. #​46509 (Also in 36)
  • Improved performance of desktopCapturer.getSources when not requesting thumbnails on macOS. #​46138 (Also in 34, 35, 36)
Removed/Deprecated
  • Deprecated NativeImage.getBitmap() and fixed incorrect documentation. #​46696 (Also in 36)

Fixes

  • Fixed an issue on application close on Windows, where not all processes are quit on close. #​47485
  • Fixed an issue where printing PDFs with webContents.print({ silent: true }) would fail. #​47397
Also in earlier versions...
  • Fix: don't copy 'package.json's out of ASAR file. #​46390 (Also in 35, 36)
  • Fix: osr stutter fix backport for electron. #​46650 (Also in 36)
  • Fixed ElectronAccessibilityUI bug. #​46562 (Also in 33, 34, 35, 36)
  • Fixed Minimize menu button to follow set window minimizability on Windows. #​46279 (Also in 34, 35, 36)
  • Fixed NODE_OPTIONS parsing for child processes on macOS. #​46209 (Also in 34, 35, 36)
  • Fixed addChildView() crashes when adding a closed WebContentsView. #​47338 (Also in 35, 36)
  • Fixed electron.shell.openExternal and electron.shell.openPath to honor user-defined system defaults on Linux. #​45310 (Also in 33, 34, 35, 36)
  • Fixed getNativeWindowHandle() crash that affected 36 betas on macOS. #​46733 (Also in 36)
  • Fixed a bug that could cause some maximized windows on Linux to report an incorrect window state. #​46450 (Also in 34, 35, 36)
  • Fixed a crash seen on Linux when calling webContents.print(). #​46087 (Also in 35, 36)
  • Fixed a crash that could occur when dragging and dropping files into the browser. #​46253 (Also in 35, 36)
  • Fixed a crash that could occur when opening some dialogs as windows are closing on macOS. #​46952 (Also in 35, 36)
  • Fixed a possible BrowserWindow crash caused by closing a parent window with focus or blur events. #​46559 (Also in 34, 35, 36)
  • Fixed a possible crash in shell.readShortcutLink. #​46294 (Also in 35, 36)
  • Fixed a possible crash using Node.js on some arm32 devices. #​46435 (Also in 35, 36)
  • Fixed a possible crash using the WebView tag and calling focus. #​47036 (Also in 35, 36)
  • Fixed a possible crash when using navigator.bluetooth.requestDevice and the select-bluetooth-device event. #​46745 (Also in 34, 35, 36)
  • Fixed a potential crash in parentPort. #​46437 (Also in 34, 35, 36)
  • Fixed a potential crash in utilityProcess.postMessage when calling with an invalid transferable. #​46639 (Also in 35, 36)
  • Fixed a potential crash using session.clearData in some circumstances. #​47412 (Also in 35, 36)
  • Fixed a potential crash when closing a window with child windows. #​46758 (Also in 34, 35, 36)
  • Fixed an error when calling window.emit('close') after toggling fullscreen mode. #​46605 (Also in 35, 36)
  • Fixed an error when importing electron for the first time from an ESM module loaded by a CJS module in a packaged app. #​47342 (Also in 35, 36)
  • Fixed an inverted conditional in the above PR that caused broken window borders in some circumstances on Wayland. #​46624 (Also in 33, 34, 35, 36)
  • Fixed an issue where Node.js OOM errors terminate the process directly without raising an OOM exception. #​45895 (Also in 35, 36)
  • Fixed an issue where Web Workers crashed on unhandled rejections. #​45992 (Also in 34, 35, 36)
  • Fixed an issue where context-menu event weren't emitted as expected on Windows in draggable regions. #​45851 (Also in 34, 35, 36)
  • Fixed an issue where navigationHistory.restore() failed to restore the userAgent if it was overridden. #​46260 (Also in 34, 35, 36)
  • Fixed an issue where system-context-menu incorrectly fired for all regions in frameless windows. #​45893 (Also in 33, 34, 35, 36)
  • Fixed an issue where webContents.printToPDF() didn't work as expected with cross-process subframes. #​46218 (Also in 34, 35, 36)
  • Fixed an issue where webContents.print did not work as expected when mediaSize was not passed. #​46971 (Also in 36)
  • Fixed an issue where badly formatted switches could cause crashes in app.commandLine functions. #​46004 (Also in 35, 36)
  • Fixed an issue where calling Fetch.continueResponse via debugger with WebContentsView could cause a crash. #​47444 (Also in 35, 36)
  • Fixed an issue where calling UtilityProcess.fork prior to the app ready event would cause a crash. #​46380 (Also in 34, 35, 36)
  • Fixed an issue where context menu actions such as copy/paste did not correctly fire when a frame was not passed in. #​46595 (Also in 36)
  • Fixed an issue where filters wouldn't apply in the specific case only one was passed. #​46946 (Also in 36)
  • Fixed an issue where packages could be mistakenly not found in asar. #​45997 (Also in 35, 36)
  • Fixed an issue where printing from the renderer process crashes the main process when no printers are installed in the system or there's not a default printer. #​46587 (Also in 34, 35, 36)
  • Fixed an issue where protected transparent windows inappropriately showed a titlebar after visibility change. #​47266 (Also in 35, 36)
  • Fixed an issue where snapped windows in Windows may sometimes be improperly restored. #​46006 (Also in 33, 34, 35, 36)
  • Fixed an issue where the 'suspend' and 'resume' events could be emitted in duplicate. #​47188 (Also in 35, 36)
  • Fixed an issue where the backgroundMaterial feature did not work in a frameless window on initial window creation. #​46657 (Also in 35, 36)
  • Fixed an issue where the resizing border didn't work as expected on Wayland windows. #​46155 (Also in 33, 34, 35, 36)
  • Fixed an issue where the window flickers with either a light or dark color before loading the desired background color. #​47051 (Also in 35, 36)
  • Fixed an issue where transparent child windows on macOS were rendering a grey block as opposed to their correct contents. #​46891 (Also in 35, 36)
  • Fixed an issue with --inspect-brk failing in packaged apps. #​46560 (Also in 35, 36)
  • Fixed an issue with the assert Node.js module in the renderer process. #​46528 (Also in 35, 36)
  • Fixed an issue with token formatting for tokens received after calling pushNotifications.registerForAPNSNotifications(). #​46101 (Also in 34, 35, 36)
  • Fixed build error with enable_electron_extensions=false. #​46812 (Also in 34, 35, 36)
  • Fixed build failure when building with printing disabled. #​46283 (Also in 34, 35, 36)
  • Fixed case where file dialog filters would get mixed up, if a * filter was included. #​46660 (Also in 34, 35, 36)
  • Fixed crash in autoUpdater on macOS when zip extraction failed. #​47302 (Also in 34, 35, 36)
  • Fixed crash in xdg portal version detection on startup. #​47023 (Also in 35, 36)
  • Fixed crash on Linux when PipeWire screenshare source selection is cancelled. #​46112 (Also in 35, 36)
  • Fixed crash on application exit with pending app.getGPUInfo promise. #​46434 (Also in 34, 35, 36)
  • Fixed crash on reconversion with google IME and editcontext on macOS. #​46688 (Also in 34, 35, 36)
  • Fixed crash when renderer process crashes while webview is reloading. #​46735 (Also in 34, 35, 36)
  • Fixed crash with out-of-bounds string read when parsing NODE_OPTIONS. #​46210 (Also in 34, 35, 36)
  • Fixed flickering and ghosting artifacts in transparent windows on macOS. #​46353 (Also in 35, 36)
  • Fixed incorrect titlebar in file save dialogs. #​46067 (Also in 33, 34, 35, 36)
  • Fixed log files written to the current working directory on Windows. #​46910 (Also in 35, 36)
  • Fixed memory leak in AutofillPopupView. #​46384 (Also in 34, 35, 36)
  • Fixed opening package paths as directory when treatPackageAsDirectory is enabled on macOS. #​47108 (Also in 35, 36)
  • Fixed regression with directory selection in macOS dialogs. #​47277 (Also in 35, 36)
  • Fixed several paint and white flash issues on macOS. #​46615 (Also in 35, 36)
  • Fixed the border style of windows with vibrancy on macOS. #​46648 (Also in 35, 36)
  • Fixed the issue where maximizing and restoring the window does not respect the corner radius settings, and the corner radius is incorrect in fullscreen mode. #​46641 (Also in 35, 36)
  • Fixed the issue where rounded corners disappear momentarily when closing on Windows 11. #​46382 (Also in 35, 36)
  • Fixed title changes to not occur while navigating within a page. #​45981 (Also in 34, 35, 36)
  • Fixed xdg portal version detection for file dialogs on linux. #​46922 (Also in 35, 36)
  • Improved webContents loading time when resolving fonts for uncommon scripts. #​45905 (Also in 34, 35, 36)
  • Microtasks are no longer (incorrectly) run by serializing values, including when sending IPC. #​46668 (Also in 34, 35, 36)
  • Partially fixes an issue with printing a PDF via webContents.print() where the callback would not be called. #​47398 (Also in 35, 36)
  • Restored previous window-hiding behavior of win.setContentProtected() on Windows. #​47033 (Also in 35, 36)
  • When a menu item on macOS is disabled (enabled = false), it is now greyed out. #​46307 (Also in 34, 35, 36)

Other Changes

Documentation

Notices

End of Support for 34.x.y

Electron 34.x.y has reached end-of-support as per the project's support policy. Developers and applications are encouraged to upgrade to a newer version of Electron.

v36.9.5: electron v36.9.5

Compare Source

Release Notes for v36.9.5

[!WARNING]
Electron 36 has reached end-of-support as per the project's support policy. Developers and applications are encouraged to upgrade to a newer version of Electron.

Fixes

  • Fixed Windows dialog.showMessageBox default button handling. #​48522 (Also in 37, 38, 39)

v36.9.4: electron v36.9.4

Compare Source

Release Notes for v36.9.4

Other Changes
  • Test: Rerun failed tests individually #​48397

v36.9.3: electron v36.9.3

Compare Source

Release Notes for v36.9.3

Fixes

  • Fixed high CPU usage with <input> tag on macOS 26. #​48419 (Also in 37, 38, 39)

v36.9.2: electron v36.9.2

Compare Source

Release Notes for v36.9.2

Fixes

  • Fixed excessive WindowServer GPU usage on macOS Tahoe 26. #​48401 (Also in 37, 39)

v36.9.1: electron v36.9.1

Compare Source

Release Notes for v36.9.1

Other Changes

v36.9.0: electron v36.9.0

Compare Source

Release Notes for v36.9.0

Features

  • Added support for guid Tray constructor option on macOS to allow tray icons to maintain position across launches. #​48078 (Also in 37, 38)

Fixes

  • Fixed an issue where dialog.showMessageDialog showed a window incorrectly centered to monitor instead of parent window when passed. #​48214 (Also in 37, 38)
  • Fixed an issue where net.isOnline() always returned true in utilityProcesses. #​48153 (Also in 37, 38)
  • Fixed an issue where a file-only picker incorrectly allowed some directories. #​48229 (Also in 37, 38)
  • Fixed an issue where dragging sometimes didn't work after the contextmenu event was emitted. #​48225 (Also in 37, 38)
  • Fixed an issue where snapped corner state wasn't properly restored after minimizing and then restoring. #​48155 (Also in 37, 38)
  • Fixed an issue where the accent color would be accidentally inverted when set to match the system color. #​48109 (Also in 37, 38)

Other Changes

v36.8.1: electron v36.8.1

Compare Source

Release Notes for v36.8.1

Fixes

  • Fixed an issue where shell.openPath was not non-blocking as expected. #​48087 (Also in 37, 38)
  • Fixed potential deadlock inside app.getLoginItemSettings on macOS. #​48095 (Also in 37)

v36.8.0: electron v36.8.0

Compare Source

Release Notes for v36.8.0

Features

  • Added support for app.getRecentDocuments() on Windows and macOS. #​47925 (Also in 37, 38)
  • Adds the ability to change window accent color on Windows after initial window initialization via {get|set}AccentColor. #​48018 (Also in 37, 38)

Fixes

  • Fixed a crash possible when calling webContents.loadURL() from a failed webContents.loadURL() call's catch handler. #​48044 (Also in 37, 38)
  • Fixed an issue where importing from electron/utility in an ESM file threw an error at runtime. #​48020 (Also in 37, 38)
  • Fixed an issue where importing from electron/utility threw a ERR_MODULE_NOT_FOUND error at runtime. #​47987 (Also in 37, 38)
  • Fixed an issue where the accent border was drawn on all windows regardless of the window's active focused status. #​48012 (Also in 37, 38)

Other Changes

v36.7.4: electron v36.7.4

Compare Source

Release Notes for v36.7.4

Fixes

  • Fixed a bug where the Referer header was not being set correctly when using webContents.downloadURL(). #​47866 (Also in 37, 38)
  • Fixed a crash when calling some webContents functions after window.close(). #​47953 (Also in 37, 38)
  • Fixed an issue on some older Windows versions where setContentProtection didn't work as expected. #​47888 (Also in 37, 38)
  • Fixed an issue where an invalid color passed as a string to accentColor would result in a white accent color. #​47921 (Also in 37, 38)
  • Fixed applying background material correctly when creating windows on Windows, restored animations, and also fixed the issue where dynamically setting the background material had no effect. #​47957 (Also in 37, 38)

v36.7.3: electron v36.7.3

Compare Source

Release Notes for v36.7.3

Fixes

  • Fixed a bug where app extensions filters didn't allow for selecting app bundles in macOS file dialogs. #​47840 (Also in 37, 38)
  • Fixed an issue where require('node:sqlite') didn't work. #​47755 (Also in 37, 38)
  • Fixed an issue where certain operations performed in a window close callback could trigger a crash. #​47811 (Also in 37, 38)

Other Changes

v36.7.1: electron v36.7.1

Compare Source

Release Notes for v36.7.1

Fixes

  • Fixed a crash when calling desktopCapturer.getSources with an empty thumbnail size. #​47651 (Also in 37, 38)
  • Fixed an issue where child windows could crash if they were opened from a fullscreen parent and have roundedCorners set to false. #​47683 (Also in 37, 38)
  • Fixed an issue where printing PDFs with webContents.print({ silent: true }) would fail. #​47624 (Also in 37)
  • Fixed an issue where the window required restart in order to recognize system accent color setting change. #​47657 (Also in 37, 38)

v36.7.0: electron v36.7.0

Compare Source

Release Notes for v36.7.0

Other Changes

v36.6.0: electron v36.6.0

Compare Source

Release Notes for v36.6.0

Features

  • Added support for --no-experimental-global-navigator flag. #​47417 (Also in 35, 37)
  • Added support for HIDDevice.collections. #​47484 (Also in 37)
  • Added support for customizing system accent color and highlighting of active window border. #​47538 (Also in 35, 37)

Fixes

  • Fixed an issue where utility processes could leak file handles. #​47541 (Also in 35, 37)

Other Changes

  • Updated Chromium to 136.0.7103.177. #​47500

v36.5.0: electron v36.5.0

Compare Source

Release Notes for v36.5.0

Features

  • Added before-mouse-event to allow intercepting and preventing mouse events in WebContents. #​47365 (Also in 37)
  • Added the priority and priorityIncremental options to net.request(). #​47320 (Also in 37)
  • Exposed win.isContentProtected() to allow developers to check window protection status. #​47311 (Also in 37)

Fixes

  • Fixed addChildView() crashes when adding a closed WebContentsView. #​47340 (Also in 35, 37)
  • Fixed a potential crash using session.clearData in some circumstances. #​47411 (Also in 35, 37)
  • Fixed an error when importing electron for the first time from an ESM module loaded by a CJS module in a packaged app. #​47343 (Also in 35, 37)
  • Fixed an issue where calling Fetch.continueResponse via debugger with WebContentsView could cause a crash. #​47442 (Also in 35, 37)
  • Partially fixes an issue with printing a PDF via webContents.print() where the callback would not be called. #​47400 (Also in 35, 37)

Other Changes

v36.4.0: electron v36.4.0

Compare Source

Release Notes for v36.4.0

Fixes

  • Fixed crash in autoUpdater on macOS when zip extraction failed. #​47300 (Also in 34, 35, 37)

Other Changes

  • Security: backported fix for CVE-2025-5419. #​47353
  • Updated Chromium to 136.0.7103.149. #​47295

Documentation

v36.3.2: electron v36.3.2

Compare Source

Release Notes for v36.3.2

Fixes

  • Fixed an issue where protected transparent windows inappropriately showed a titlebar after visibility change. #​47264 (Also in 35, 37)
  • Fixed regression with directory selection in macOS dialogs. #​47278 (Also in 35, 37)

Other Changes

  • Updated Chromium to 136.0.7103.115. #​47215

v36.3.1: electron v36.3.1

Compare Source

Release Notes for v36.3.1

Other Changes

v36.3.0: electron v36.3.0

Compare Source

Release Notes for v36.3.0

Features

  • Added innerWidth and innerHeight options for window.open. #​47038 (Also in 35, 37)
  • Added sublabel functionality for menus on macOS >= 14.4. #​47040 (Also in 35, 37)
  • Added support for screen.dipToScreenPoint(point) and screen.screenToDipPoint(point) on Linux X11. #​47125 (Also in 35, 37)
  • Added support for node option --experimental-network-inspection. #​47030 (Also in 35, 37)

Fixes

  • Fixed an issue where the 'suspend' and 'resume' events could be emitted in duplicate. #​47189 (Also in 37)
  • Fixed opening package paths as directory when treatPackageAsDirectory is enabled on macOS. #​47109 (Also in 35, 37)

Other Changes

v36.2.1: electron v36.2.1

Compare Source

Release Notes for v36.2.1

Fixes

  • Fixed a possible crash using the WebView tag and calling focus. #​47037 (Also in 35, 37)
  • Fixed an issue where the window flickers with either a light or dark color before loading the desired background color. #​47053 (Also in 35, 37)
  • Fixed crash in xdg portal version detection on startup. #​47024 (Also in 35, 37)
  • Restored previous window-hiding behavior of win.setContentProtected() on Windows. #​47032 (Also in 35, 37)

Other Changes

  • Updated Chromium to 136.0.7103.93. #​46974

v36.2.0: electron v36.2.0

Compare Source

Release Notes for v36.2.0

Fixes

  • Fixed a crash that could occur when opening some dialogs as windows are closing on macOS. #​46951 (Also in 35, 37)
  • Fixed an issue where webContents.print did not work as expected when mediaSize was not passed. #​46972 (Also in 37)
  • Fixed an issue where filters wouldn't apply in the specific case only one was passed. #​46945 (Also in 37)
  • Fixed log files written to the current working directory on Windows. #​46912 (Also in 35, 37)
  • Fixed xdg portal version detection for file dialogs on linux. #​46923 (Also in 35, 37)

Other Changes

v36.1.0: electron v36.1.0

Compare Source

Release Notes for v36.1.0

Fixes

  • Fixed an issue where transparent child windows on macOS were rendering a grey block as opposed to their correct contents. #​46890
  • Fixed display id validation errors on certain versions of windows 10. #​46874

Other Changes

  • Added support for --js-flags=--perf-prof on macOS. #​46876 (Also in 35)
  • Updated Chromium to 136.0.7103.49. #​46870

v36.0.1: electron v36.0.1

Compare Source

Release Notes for v36.0.1

Fixes

  • Fixed the visibleOnAllWorkspaces property on Linux. #​46850 (Also in 35)
  • Fixed the issue where maximizing and restoring the window does not respect the corner radius settings, and the corner radius is incorrect in fullscreen mode. #​46848 (Also in 35)

v36.0.0: electron v36.0.0

Compare Source

Release Notes for v36.0.0

Stack Upgrades

Breaking Changes

  • Deprecated NativeImage.getBitmap() and fixed incorrect documentation. #​46736
  • Fixed an issue where badly formatted switches could cause crashes in app.commandLine functions. #​46446 (Also in 35)
  • Moved Session extension APIs to Session.extensions. #​45597
  • The deprecated systemPreferences.isAeroGlassEnabled() API has been removed. #​45563
  • Updated Chromium to 135.0.7015.0 refactor: remove status, isDefault properties from PrinterInfo in 5b65cc7 #​45500
  • Updated Chromium to 135.0.7047.0 docs: call out breaking change for GTK 4 default on GNOME in 02353aa #​45859
  • Updated Chromium to 136.0.7054.0. Removed ses.clearDataStorage({ quota: 'syncable' }) in c180524 #​45923

Features

Additions
  • Added BrowserWindow.isSnapped() to indicate whether a given window has been arranged via Snap. #​46226
  • Added ServiceWorkerMain class to interact with service workers in the main process.
    • Added fromVersionID on ServiceWorkers to get an instance of ServiceWorkerMain.
    • Added running-status-changed event on ServiceWorkers to indicate when a service worker's running status has changed.
    • Added startWorkerForScope on ServiceWorkers to start a worker that may have been previously stopped. #​45232 (Also in 35)
  • Added WebContents.focusedFrame to get the focused frame.
    • Fixed WebContents.opener to specify potential null type. #​45667
  • Added contextBridge.executeInMainWorld to safely execute code across world boundaries. #​45229 (Also in 35)
  • Added ffmpeg.dll to delay load configuration. #​46173 (Also in 34, 35)
  • Added nativeTheme.shouldUseDarkColorsForSystemIntegratedUI to distinguish system and app theme. #​46598 (Also in 35)
  • Added view.getVisible(). #​44999 (Also in 34, 35)
  • Added webContents.navigationHistory.restore(index, entries) API that allows restoration of navigation history. #​45433 (Also in 34, 35)
  • Added excludeUrls to webRequest filter and deprecated the use of empty arrays in urls property. #​44692 (Also in 35)
  • Added permission support for document.executeCommand("paste"). #​45377 (Also in 33, 34, 35)
  • Added support for Autofill, Writing Tools and Services macOS level menu items in context menus via the new frame option in menu.popup. #​46350
  • Added support for roundedCorners BrowserWindow constructor option on Windows. #​45594 (Also in 34, 35)
  • Added support for system-context-menu on Linux. #​46399
  • Added support for service worker preload scripts. #​44411 (Also in 35)
  • Redesigned preload script APIs by introducing registerPreloadScript, unregisterPreloadScript, getPreloadScripts on Session.
    • Deprecated getPreloads and setPreloads on Session. #​45230 (Also in 35)
  • Removed 240 FPS limit when use shared texture OSR. #​45669 (Also in 35)
  • Support Portal's globalShortcuts. Electron must be run with --enable-features=GlobalShortcutsPortal in order to have the feature working. #​45171 (Also in 35)
Improvements
  • Improved ASAR integrity checks on Windows. #​46537
  • Improved performance of desktopCapturer.getSources when not requesting thumbnails on macOS. #​46251 (Also in 34, 35)
Removed/Deprecated
  • The systemPreferences.isAeroGlassEnabled() API has been deprecated and will be removed without replacement. #​45434 (Also in 35)

Fixes

  • Fix: osr stutter fix backport for electron. #​46709
  • Fixed getNativeWindowHandle() crash that affected 36 betas on macOS. #​46750
  • Fixed a possible crash in shell.readShortcutLink. #​46324
  • Fixed an issue where the backgroundMaterial feature did not work in a frameless window on initial window creation. #​46792
  • Fixed an issue where context menu actions such as copy/paste did not correctly fire when a frame was not passed in. #​46619
Also in earlier versions...
  • Addressed two possible crashes in the File System Access API. #​45233 (Also in 34, 35)
  • Backported fix for a upstream bug that cause Offscreen Rendering to stutter. #​45572 (Also in 32, 33, 34, 35)
  • Fix: don't copy 'package.json's out of ASAR file. #​46477 (Also in 35)
  • Fixed ElectronAccessibilityUI bug. #​46590 (Also in 33, 34, 35)
  • Fixed Minimize menu button to follow set window minimizability on Windows. #​46714 (Also in 34, 35)
  • Fixed NODE_OPTIONS parsing for child processes on macOS. #​46243 (Also in 34, 35)
  • Fixed WebFrameMain crash related to accessing speculative frames that have been destroyed. #​45609 (Also in 33, 34, 35)
  • Fixed electron.shell.openExternal and electron.shell.openPath to honor user-defined system defaults on Linux. #​46788 (Also in 33, 34, 35)
  • Fixed v8.setHeapSnapshotNearHeapLimit api in main and utility process, along with support for --diagnostic-dir Node.js cli flag to specify the directory to save the heap snapshots. #​45606 (Also in 33, 34, 35)
  • Fixed webContents.print() after switch to OOP printing on macOS and Linux. #​45266 (Also in 35)
  • Fixed a bug that could cause some maximized windows on Linux to report an incorrect window state. #​46463 (Also in 34, 35)
  • Fixed a bug where the default path didn't always correctly fill the Name field in KDialogs on Linux. #​45402 (Also in 34, 35)
  • Fixed a crash seen on Linux when calling webContents.print(). #​46146 (Also in 35)
  • Fixed a crash that could occur in OSR on window close. #​45573 (Also in 34, 35)
  • Fixed a crash that could occur when dragging and dropping files into the browser. #​46312 (Also in 35)
  • Fixed a crash when calling shell.readShortcutLink caused by PKEY_AppUserModel_ToastActivatorCLSID sometimes being represented by a string uuid. #​45195 (Also in 33, 34, 35)
  • Fixed a possible BrowserWindow crash caused by closing a parent window with focus or blur events. #​46580 (Also in 34, 35)
  • Fixed a possible crash using Node.js on some arm32 devices. #​46460 (Also in 35)
  • Fixed a possible crash when using navigator.bluetooth.requestDevice and the select-bluetooth-device event. #​46782 (Also in 34, 35)
  • Fixed a potential crash in chrome.tabs.update(). #​45276 (Also in 33, 34, 35)
  • Fixed a potential crash in parentPort. #​46496 (Also in 34, 35)
  • Fixed a potential crash in utilityProcess.postMessage when calling with an invalid transferable. #​46667 (Also in 35)
  • Fixed a potential crash when calling legacy getUserMedia with an invalid chromeMediaSourceId. #​45733 (Also in 34, 35)
  • Fixed a potential crash when closing a window with child windows. #​46773 (Also in 34, 35)
  • Fixed a potential issues permissions in the Pointer Lock API after focus loss and regain. #​45574 (Also in 34, 35)
  • Fixed an error when calling window.emit('close') after toggling fullscreen mode. #​46621 (Also in 35)
  • Fixed an inverted conditional in the above PR that caused broken window borders in some circumstances on Wayland. #​46642 (Also in 33, 34, 35)
  • Fixed an issue where Electron could fail to load on some older Linux distributions. #​45984 (Also in 34, 35)
  • Fixed an issue where Node.js OOM errors terminate the process directly without raising an OOM exception. #​45912 (Also in 35)
  • Fixed an issue where RTL tooltips could be incorrect when using WCO on Windows. #​45405 (Also in 33, 34, 35)
  • Fixed an issue where Web Workers crashed on unhandled rejections. #​46021 (Also in 34, 35)
  • Fixed an issue where Windows Control Overlay didn't work with some window configurations. #​45422 (Also in 33, 34, 35)
  • Fixed an issue where context-menu event weren't emitted as expected on Windows in draggable regions. #​46032 (Also in 34, 35)
  • Fixed an issue where contextmenu events wouldn't be correctly dispatched in draggable regions on Linux. #​45813 (Also in 34, 35)
  • Fixed an issue where navigationHistory.restore() failed to restore the userAgent if it was overridden. #​46299 (Also in 34, 35)
  • Fixed an issue where setContentProtection(true) was reverted when a given window was hidden. #​45868 (Also in 34, 35)
  • Fixed an issue where system-context-menu incorrectly fired for all regions in frameless windows. #​46002 (Also in 33, 34, 35)
  • Fixed an issue where webContents.printToPDF() didn't work as expected with cross-process subframes. #​46259 (Also in 34, 35)
  • Fixed an issue where calling UtilityProcess.fork prior to the app ready event would cause a crash. #​46404 (Also in 34, 35)
  • Fixed an issue where drag-dropping two directories would cause getAsFileSystemHandle to never resolve. #​45234 (Also in 33, 34, 35)
  • Fixed an issue where packages could be mistakenly not found in asar. #​46023 (Also in 35)
  • Fixed an issue where print scaling could be too small during silent print. #​45218 (Also in 34, 35)
  • Fixed an issue where printing from the renderer process crashes the main process when no printers are installed in the system or there's not a default printer. #​46617 (Also in 34, 35)
  • Fixed an issue where selection of multiple directories with the dialog module didn't work on Linux. #​45373 (Also in 34, 35)
  • Fixed an issue where snapped windows in Windows may sometimes be improperly restored. #​46041 (Also in 33, 34, 35)
  • Fixed an issue where the renderer process crashed when loading about:blank in subframes. #​45694 (Also in 35)
  • Fixed an issue where the resizing border didn't work as expected on Wayland windows. #​46225 (Also in 33, 34, 35)
  • Fixed an issue where windows on Windows with backgroundMaterial lost effect on maximization. #​45456 (Also in 34, 35)
  • Fixed an issue with --inspect-brk failing in packaged apps. #​46584 (Also in 35)
  • Fixed an issue with the assert Node.js module in the renderer process. #​46561 (Also in 35)
  • Fixed an issue with token formatting for tokens received after calling pushNotifications.registerForAPNSNotifications(). #​46149 (Also in 34, 35)
  • Fixed broken OOP window.print() on macOS/Linux. #​45214 (Also in 35)
  • Fixed build error with enable_electron_extensions=false. #​46842 (Also in 34, 35)
  • Fixed build failure when building with printing disabled. #​46284 (Also in 34, 35)
  • Fixed case where file dialog filters would get mixed up, if a * filter was included. #​46722 (Also in 34, 35)
  • Fixed crash in gin::wrappable::secondweakcallback. #​45368 (Also in 33, 34, 35)
  • Fixed crash on Linux when PipeWire screenshare source selection is cancelled. #​46235 (Also in 35)
  • Fixed crash on application exit with pending app.getGPUInfo promise. #​46471 (Also in 34, 35)
  • Fixed crash on reconversion with google IME and editcontext on macOS. #​46699 (Also in 34, 35)
  • Fixed crash on startup with asan build on macOS. #​45541 (Also in 33, 34, 35)
  • Fixed crash when accessing WebFrameMain frames and name attributes on destroyed frames. #​45487 (Also in 33, 34, 35)
  • Fixed crash when renderer process crashes while webview is reloading. #​46768 (Also in 34, 35)
  • Fixed crash with out-of-bounds string read when parsing NODE_OPTIONS. #​46247 (Also in 34, 35)
  • Fixed displaying content on macOS when using BaseWindow.showInactive. #​45427 (Also in 35)
  • Fixed documentation to mark Window.autoHideMenuBar as supported on Linux and Windows. #​46830 (Also in 34, 35)
  • Fixed drag and drop icons not showing on Windows. #​45767 (Also in 34, 35)
  • Fixed file preview window reappearing when calling win.closeFilePreview twice on macOS. #​45319 (Also in 32, 33, 34, 35)
  • Fixed flickering and ghosting artifacts in transparent windows on macOS. #​46393 (Also in 35)
  • Fixed incorrect titlebar in file save dialogs. #​46077 (Also in 33, 34, 35)
  • Fixed invalid memory access in pdf viewer which lead to random crashes. #​45389 (Also in 33, 34, 35)
  • Fixed memory leak in AutofillPopupView. #​46412 (Also in 34, 35)
  • Fixed several paint and white flash issues on macOS. #​46629 (Also in 35)
  • Fixed spellcheck suggestions not correctly populating on Windows. #​45712 (Also in 35)
  • Fixed the border style of windows with vibrancy on macOS. #​46771 (Also in 35)
  • Fixed the issue where maximizing and restoring the window does not respect the corner radius settings, and the corner radius is incorrect in fullscreen mode. #​46848 (Also in 35)
  • Fixed the issue where rounded corners disappear momentarily when closing on Windows 11. #​46407 (Also in 35)
  • Fixed the path for a needed library used for mksnapshot. #​45488 (Also in 32, 33, 34, 35)
  • Fixed title changes to not occur while navigating within a page. #​46036 (Also in 34, 35)
  • Fixed web worker scripts failing to load for chrome extensions. #​45698 (Also in 32, 33, 34, 35)
  • Improved webContents loading time when resolving fonts for uncommon scripts. #​45919 (Also in 34, 35)
  • Microtasks are no longer (incorrectly) run by serializing values, including when sending IPC. #​46682 (Also in 34, 35)
  • Optimized webFrame.getZoomLevel and webFrame.getZoomFactor APIs. #​45499 (Also in 35)
  • Re-enables the MacWebContentsOcclusion feature flag for Mac, with plans to make it enabled by default in a future release. #​45775 (Also in 35)
  • Reverts a change that greyed out disabled menu items on macOS (#​46307). #​46523 (Also in 34, 35)
  • When a menu item on macOS is disabled (enabled = false), it is now greyed out. #​46342 (Also in 34, 35)

Other Changes

  • Added NSPrefersDisplaySafeAreaCompatibilityMode = false to Info.plist to remove "Scale to fit below built-in camera." from app options. #​45318 (Also in 33, 34, 35)
  • Added more helpful logging if Node.js fails to initialize. #​45286 (Also in 35)
  • Backported fix for 3872580,383070811. #​45495
  • Backported fix for 4010597. #​45937
  • Backported fix for 4010597. #​45942

Documentation

Notices

End of Support for 33.x.y

Electron 33.x.y has reached end-of-support as per the project's support policy. Developers and applications are encouraged to upgrade to a newer version of Electron.

v35.7.5: electron v35.7.5

Compare Source

Release Notes for v35.7.5

[!WARNING]
Electron 35.x.y has reached end-of-support as per the project's support policy. Developers and applications are encouraged to upgrade to a newer version of Electron.

Fixes

  • Fixed an issue where shell.openPath was not non-blocking as expected. #​48079 (Also in 36, 37, 38)

v35.7.4: electron v35.7.4

Compare Source

Release Notes for v35.7.4

  • Fix ffmpeg generation on Windows non-x64

v35.7.2: electron v35.7.2

Compare Source

Release Notes for v35.7.2

Fixes

  • Fixed an issue where printing PDFs with webContents.print({ silent: true }) would fail. #​47645 (Also in 36, 37)

v35.7.0: electron v35.7.0

Compare Source

Release Notes for v35.7.0

Other Changes

v35.6.0: electron v35.6.0

Compare Source

Release Notes for v35.6.0

Features

  • Added support for --no-experimental-global-navigator flag. #​47416 (Also in 36, 37)
  • Added support for customizing system accent color and highlighting of active window border. #​47539 (Also in 36, 37)

Fixes

  • Fixed a potential crash using session.clearData in some circumstances. #​47410 (Also in 36, 37)
  • Fixed an error when importing electron for the first time from an ESM module loaded by a CJS module in a packaged app. #​47344 (Also in 36, 37)
  • Fixed an issue where calling Fetch.continueResponse via debugger with WebContentsView could cause a crash. #​47443 (Also in 36, 37)
  • Fixed an issue where utility processes could leak file handles. #​47542 (Also in 36, 37)
  • Partially fixes an issue with printing a PDF via webContents.print() where the callback would not be called. #​47399 (Also in 36, 37)

Other Changes

v35.5.1: electron v35.5.1

Compare Source

Release Notes for v35.5.1

Fixes

  • Fixed addChildView() crashes when adding a closed WebContentsView. #​47339
  • Fixed crash in autoUpdater on macOS when zip extraction failed. #​47299 (Also in 34, 36, 37)
  • Fixed crash when pausing in loops due to missing context when desugared. #​47286

Other Changes

  • Security: backported fix for CVE-2025-5419. #​47354

v35.5.0: electron v35.5.0

Compare Source

Release Notes for v35.5.0

Features

  • Added innerWidth and innerHeight options for window.open. #​47045 (Also in 36, 37)
  • Added sublabel functionality for menus on macOS >= 14.4. #​47041 (Also in 36, 37)
  • Added support for screen.dipToScreenPoint(point) and screen.screenToDipPoint(point) on Linux X11. #​47124 (Also in 36, 37)
  • Added support for node option --experimental-network-inspection. #​47029 (Also in 36, 37)

Fixes

  • Fixed a possible crash in shell.readShortcutLink. #​47226 (Also in 36)
  • Fixed an issue where protected transparent windows inappropriately showed a titlebar after visibility change. #​47265 (Also in 36, 37)
  • Fixed an issue where the 'suspend' and 'resume' events could be emitted in duplicate. #​47190 (Also in 36, 37)
  • Fixed an issue where the backgroundMaterial feature did not work in a frameless window on initial window creation. #​47236 (Also in 36)
  • Fixed opening package paths as directory when treatPackageAsDirectory is enabled on macOS. #​47110 (Also in 36, 37)
  • Fixed regression with directory selection in macOS dialogs. #​47276 (Also in 36, 37)

Other Changes

  • Security: backported fix for 4033643. #​47069
  • Security: backported fix for CVE-2025-4609.
    • Security: backported fix for CVE-2025-4664. #​47175
  • Updated Node.js to v22.15.1. #​47102

v35.4.0: electron v35.4.0

Compare Source

Release Notes for v35.4.0

Features

  • Added support for system-context-menu on Linux. #​46977 (Also in 36)

Fixes

  • Fixed a possible crash using the WebView tag and calling focus. #​47035 (Also in 36, 37)
  • Fixed an issue where the window flickers with either a light or dark color before loading the desired background color. #​47052 (Also in 36, 37)
  • Fixed crash in xdg portal version detection on startup. #​47025 (Also in 36, 37)
  • Restored previous window-hiding behavior of win.setContentProtected() on Windows. #​47034 (Also in 36, 37)

Other Changes

v35.3.0: electron v35.3.0

Compare Source

Release Notes for v35.3.0

Fixes

  • Fixed a crash that could occur when opening some dialogs as windows are closing on macOS. #​46953 (Also in 36, 37)
  • Fixed an issue where transparent child windows on macOS were rendering a grey block as opposed to their correct contents. #​46889 (Also in 36, 37)
  • Fixed display id validation errors on certain versions of windows 10. #​46873
  • Fixed log files written to the current working directory on Windows. #​46911 (Also in 36, 37)
  • Fixed xdg portal version detection for file dialogs on linux. #​46936 (Also in 36, 37)

Other Changes

  • Added support for --js-flags=--perf-prof on macOS. #​46877 (Also in 36)

v35.2.2: electron v35.2.2

Compare Source

Release Notes for v35.2.2

Fixes

  • Fixed electron.shell.openExternal and electron.shell.openPath to honor user-defined system defaults on Linux. #​46789 (Also in 33, 34, 36)
  • Fixed a possible crash when using navigator.bluetooth.requestDevice and the select-bluetooth-device event. #​46784 (Also in 34, 36)
  • Fixed a potential crash when closing a window with child windows. #​46774 (Also in 34, 36)
  • Fixed build error with enable_electron_extensions=false. #​46840 (Also in 34, 36)
  • Fixed crash when renderer process crashes while webview is reloading. #​46769 (Also in 34, 36)
  • Fixed documentation to mark Window.autoHideMenuBar as supported on Linux and Windows. #​46829 (Also in 34, 36)
  • Fixed the visibleOnAllWorkspaces property on Linux. #​46861
  • Fixed the border style of windows with vibrancy on macOS. #​46772 (Also in 36)
  • Fixed the issue where maximizing and restoring the window does not respect the corner radius settings, and the corner radius is incorrect in fullscreen mode. #​46847 (Also in 36)

v35.2.1: electron v35.2.1

Compare Source

Release Notes for v35.2.1

Fixes

  • Fixed Minimize menu button to follow set window minimizability on Windows. #​46715 (Also in 34, 36)
  • Fixed a potential crash in utilityProcess.postMessage when calling with an invalid transferable. #​46666 (Also in 36)
  • Fixed case where file dialog filters would get mixed up, if a * filter was included. #​46721 (Also in 34, 36)
  • Fixed crash on reconversion with google IME and editcontext on macOS. #​46700 (Also in 34, 36)
  • Microtasks are no longer (incorrectly) run by serializing values, including when sending IPC. #​46684 (Also in 34, 36)

v35.2.0: electron v35.2.0

Compare Source

Release Notes for v35.2.0

Features

  • Added nativeTheme.shouldUseDarkColorsForSystemIntegratedUI to distinguish system and app theme. #​46599 (Also in 36)

Fixes

  • Fixed ElectronAccessibilityUI bug. #​46591 (Also in 33, 34, 36)
  • Fixed a possible BrowserWindow crash caused by closing a parent window with focus or blur events. #​46581 (Also in 34, 36)
  • Fixed an error when calling window.emit('close') after toggling fullscreen mode. #​46620 (Also in 36)
  • Fixed an inverted conditional in the above PR that caused broken window borders in some circumstances on Wayland. #​46644 (Also in 33, 34, 36)
  • Fixed an issue where badly formatted switches could cause crashes in app.commandLine functions. #​46631 (Also in 36)
  • Fixed an issue with --inspect-brk failing in packaged apps. #​46583 (Also in 36)
  • Fixed an issue with the assert Node.js module in the renderer process. #​46632 (Also in 36)
  • Fixed several paint and white flash issues on macOS. #​46628 (Also in 36)

Other Changes

  • Fixed an issue where printing from the renderer process crashes the main process when no printers are installed in the system or there's not a default printer. #​46616 (Also in 34, 36)
  • Updated Chromium to 134.0.6998.205. #​46655

v35.1.5: electron v35.1.5

Compare Source

Release Notes for v35.1.5

Fixes

  • Fixed a potential crash in parentPort. #​46495 (Also in 34, 36)

Unknown

v35.1.4: electron v35.1.4

Compare Source

Release Notes for v35.1.4

Fixes

  • Fix: don't copy 'package.json's out of ASAR file. #​46478 (Also in 36)
  • Fixed a bug that could cause some maximized windows on Linux to report an incorrect window state. #​46464 (Also in 34, 36)
  • Fixed a possible crash using Node.js on some arm32 devices. #​46461 (Also in 36)
  • Fixed crash on application exit with pending app.getGPUInfo promise. #​46470 (Also in 34, 36)

v35.1.3: electron v35.1.3

Compare Source

Release Notes for v35.1.3

Fixes

  • Fixed a crash that could occur when dragging and dropping files into the browser. #​46311 (Also in 36)
  • Fixed an issue where context-menu event weren't emitted as expected on Windows in draggable regions. #​46334 (Also in 34, 36)
  • Fixed an issue where calling UtilityProcess.fork prior to the app ready event would cause a crash. #​46403 (Also in 34, 36)
  • Fixed flickering and ghosting artifacts in transparent windows on macOS. #​46392 (Also in 36)
  • Fixed memory leak in AutofillPopupView. #​46413 (Also in 34, 36)
  • Fixed the issue where rounded corners disappear momentarily when closing on Windows 11. #​46408 (Also in 36)
  • When a menu item on macOS is disabled (enabled = false), it is now greyed out. #​46341 (Also in 34, 36)

Other Changes

  • Updated Chromium to 134.0.6998.179. #​46313

v35.1.2: electron v35.1.2

Compare Source

Release Notes for v35.1.2

Fixes

  • Fixed an issue where navigationHistory.restore() failed to restore the userAgent if it was overridden. #​46300 (Also in 34, 36)

Other Changes

  • Security: backported fix for CVE-2025-2783. #​46303
  • Updated Chromium to 134.0.6998.178. #​46287

v35.1.1: electron v35.1.1

Compare Source

Release Notes for v35.1.1

Fixes

  • Fixed build failure when building with printing disabled. #​46285 (Also in 34, 36)

v35.1.0: electron v35.1.0

Compare Source

Release Notes for v35.1.0

Features

  • Added ffmpeg.dll to delay load configuration. #​46172 (Also in 34, 36)

Fixes

  • Fixed NODE_OPTIONS parsing for child processes on macOS. #​46244 (Also in 34, 36)
  • Fixed a crash seen on Linux when calling webContents.print(). #​46147 (Also in 36)
  • Fixed an issue where system-context-menu incorrectly fired for all regions in frameless windows. #​46178 (Also in 33, 34, 36)
  • Fixed an issue where webContents.printToPDF() didn't work as expected with cross-process subframes. #​46257 (Also in 34, 36)
  • Fixed an issue where the resizing border didn't work as expected on Wayland windows. #​46224 (Also in 33, 34, 36)
  • Fixed an issue with token formatting for tokens received after calling pushNotifications.registerForAPNSNotifications(). #​46148 (Also in 34, 36)
  • Fixed crash on Linux when PipeWire screenshare source selection is cancelled. #​46234 (Also in 36)
  • Fixed crash with out-of-bounds string read when parsing NODE_OPTIONS. #​46248 (Also in 34, 36)

Other Changes

  • Improved performance of desktopCapturer.getSources when not requesting thumbnails on macOS. #​46249 (Also in 34, 36)
  • Updated Chromium to 134.0.6998.165. #​46196

v35.0.3: electron v35.0.3

Compare Source

Release Notes for v35.0.3

Fixes

  • Fixed an issue where snapped windows in Windows may sometimes be improperly restored. #​46040 (Also in 33, 34, 36)
  • Fixed incorrect titlebar in file save dialogs. #​46074 (Also in 33, 34, 36)

Documentation

v35.0.2: electron v35.0.2

Compare Source

Release Notes for v35.0.2

Fixes

  • Fixed an issue where Web Workers crashed on unhandled rejections. #​46020 (Also in 34, 36)
  • Fixed an issue where packages could be mistakenly not found in asar. #​46022 (Also in 36)
  • Fixed title changes to not occur while navigating within a page. #​46035 (Also in 34, 36)

Other Changes

  • Fixed an issue where Electron could fail to load on some older Linux distributions. #​45983 (Also in 34, 36)
  • Updated Chromium to 134.0.6998.88. #​45972

v35.0.1: electron v35.0.1

Compare Source

Release Notes for v35.0.1

Fixes

  • Fixed an issue where Node.js OOM errors terminate the process directly without raising an OOM exception. #​45911 (Also in 36)
  • Fixed an issue where setContentProtection(true) was reverted when a given window was hidden. #​45889 (Also in 34)
  • Fixed invalid memory access in pdf viewer which lead to random crashes. #​45879 (Also in 34)
  • Improved webContents loading time when resolving fonts for uncommon scripts. #​45918 (Also in 34, 36)

Other Changes

v35.0.0: electron v35.0.0

Compare Source

Release Notes for v35.0.0

Stack Upgrades

Breaking Changes

  • Added excludeUrls to webRequest filter and deprecated the use of empty arrays in urls property. #​45678
  • Added fromVersionID on ServiceWorkers to get an instance of ServiceWorkerMain. #​45341
  • Deprecated getPreloads and setPreloads on Session. #​45329
  • Fixed file chooser dialogs for flaptak applications. #​44426 (Also in 34)
  • Moved 'console-message' arguments into event object. #​43617
  • The systemPreferences.isAeroGlassEnabled() API has been deprecated and will be removed without replacement. #​45554

Features

Additions
  • Added APIs to manage shared dictionaries for compression efficiency using Brotli or ZStandard. The new APIs are session.getSharedDictionaryUsageInfo(), session.getSharedDictionaryInfo(options), session.clearSharedDictionaryCache(), and session.clearSharedDictionaryCacheForIsolationKey(options). #​44750 (Also in 33, 34)
  • Added NSPrefersDisplaySafeAreaCompatibilityMode = false to Info.plist to remove "Scale to fit below built-in camera." from app options. #​45357 (Also in 33, 34)
  • Added ServiceWorkerMain class to interact with service workers in the main process. #​45341
    • Added running-status-changed event on ServiceWorkers to indicate when a service worker's running status has changed.
    • Added startWorkerForScope on ServiceWorkers to start a worker that may have been previously stopped.
  • Added WebFrameMain.collectJavaScriptCallStack() for accessing the JavaScript call stack of unresponsive renderers. #​44204 (Also in 33, 34)
  • Added contextBridge.executeInMainWorld to safely execute code across world boundaries. #​45330
  • Added frame to 'console-message' event. #​43617
  • Added query-session-end event and improved session-end events on Windows. #​44598
  • Added view.getVisible(). #​45409 (Also in 34)
  • Added webContents.navigationHistory.restore(index, entries) API that allows restoration of navigation history. #​45583 (Also in 34)
  • Added optional animation parameter to BrowserWindow.setVibrancy. #​35987
  • Added permission support for document.executeCommand("paste"). #​45471 (Also in 33, 34)
  • Added support for roundedCorners BrowserWindow constructor option on Windows. #​45740 (Also in 34)
  • Added support for service worker preload scripts. #​45408
  • Support Portal's globalShortcuts. Electron must be run with --enable-features=GlobalShortcutsPortal in order to have the feature working. #​45297
Improvements
  • Performance improvements when processing microtasks. #​44439 (Also in 32, 33, 34)
  • Redesigned preload script APIs by introducing registerPreloadScript, unregisterPreloadScript, getPreloadScripts on Session.#​45329
Removed/Deprecated
  • Removed 240 FPS limit when use shared texture OSR. #​45781

Fixes

  • Fixed webContents.print() after switch to OOP printing on macOS and Linux. #​45285
  • Fixed an issue where the renderer process crashed when loading about:blank in subframes. #​45758
  • Fixed broken OOP window.print() on macOS/Linux. #​45259
  • Fixed desktopCapturer.getSources not returning electron windows on Windows. #​45000
  • Fixed spellcheck suggestions not correctly populating on Windows. #​45763
  • Optimized webFrame.getZoomLevel and webFrame.getZoomFactor APIs. #​45557
  • Re-enables the MacWebContentsOcclusion feature flag for Mac, with plans to make it enabled by default in a future release. #​45801
Also in earlier versions...
  • Addressed two possible crashes in the File System Access API. #​45261 (Also in 34)
  • Backported fix for a upstream bug that cause Offscreen Rendering to stutter. #​45660 (Also in 32, 33, 34)
  • Fixed WebFrameMain crash related to accessing speculative frames that have been destroyed. #​45686 (Also in 33, 34)
  • Fixed chrome.i18n extension API being unavailable in service workers. #​45031 (Also in 31, 32, 33, 34)
  • Fixed trace-startup not working on macOS. #​44257 (Also in 32, 33, 34)
  • Fixed v8.setHeapSnapshotNearHeapLimit api in main and utility process, along with support for --diagnostic-dir Node.js cli flag to specify the directory to save the heap snapshots. #​45632 (Also in 33, 34)
  • Fixed a bug where the default path didn't always correctly fill the Name field in KDialogs on Linux. #​45420 (Also in 34)
  • Fixed a crash that could occur in OSR on window close. #​45630 (Also in 34)
  • Fixed a crash that could occur when calling shell.readShortcutLink on Windows. #​44784 (Also in 33, 34)
  • Fixed a crash when calling shell.readShortcutLink caused by PKEY_AppUserModel_ToastActivatorCLSID sometimes being represented by a string uuid. #​45348 (Also in 33, 34)
  • Fixed a potential crash in chrome.tabs.update(). #​45302 (Also in 33, 34)
  • Fixed a potential crash when calling legacy getUserMedia with an invalid chromeMediaSourceId. #​45755 (Also in 34)
  • Fixed a potential issues permissions in the Pointer Lock API after focus loss and regain. #​45628 (Also in 34)
  • Fixed an issue where RTL tooltips could be incorrect when using WCO on Windows. #​45425 (Also in 33, 34)
  • Fixed an issue where Windows Control Overlay didn't work with some window configurations. #​45477 (Also in 33, 34)
  • Fixed an issue where EventSource was undefined in both renderer and worker processes when Node.js integration was enabled. #​44475 (Also in 32, 33, 34)
  • Fixed an issue where WebContentsViews were being improperly removed. #​44656 (Also in 31, 32, 33, 34)
  • Fixed an issue where contextmenu events wouldn't be correctly dispatched in draggable regions on Linux. #​45841 (Also in 34)
  • Fixed an issue where resize wasn't being emitted for single-pixel resizes on Windows. #​44700 (Also in 32, 33, 34)
  • Fixed an issue where a utilityProcess pid would not be undefined after exit. #​44677 (Also in 32, 33, 34)
  • Fixed an issue where buttons shown under the Window Controls Overlay API were missing tooltips. #​44721 (Also in 32, 33, 34)
  • Fixed an issue where closing a window after printing on Linux triggered a crash. #​44246 (Also in 31, 32, 33, 34)
  • Fixed an issue where drag-dropping two directories would cause getAsFileSystemHandle to never resolve. #​45256 (Also in 33, 34)
  • Fixed an issue where print scaling could be too small during silent print. #​45262 (Also in 34)
  • Fixed an issue where selection of multiple directories with the dialog module didn't work on Linux. #​45394 (Also in 34)
  • Fixed an issue where the exit event could be emitted twice from the utilityProcess. #​44243 (Also in 31, 32, 33, 34)
  • Fixed an issue where the webContents context-menu event was not emitted when using -webkit-app-region: drag. #​44761 (Also in 32, 33, 34)
  • Fixed an issue where the windows control overlay was unexpectedly visible in fullscreen on Linux. #​44621 (Also in 31, 32, 33, 34)
  • Fixed an issue where windows on Windows with backgroundMaterial lost effect on maximization. #​45525 (Also in 34)
  • Fixed an possible crash when using draggable regions and BaseWindows to get the context-menu event. #​44940 (Also in 32, 33, 34)
  • Fixed build failure when the PDF viewer is disabled. #​44960 (Also in 33, 34)
  • Fixed calling setAlwaysOnTop on a hidden window which is then shown with showInactive on Linux under X11. #​44078 (Also in 31, 32, 33, 34)
  • Fixed crash in gin::wrappable::secondweakcallback. #​45378 (Also in 33, 34)
  • Fixed crash in net api when utility process exits. #​44574 (Also in 32, 33, 34)
  • Fixed crash on startup with asan build on macOS. #​45569 (Also in 33, 34)
  • Fixed crash when accessing WebFrameMain frames and name attributes on destroyed frames. #​45508 (Also in 33, 34)
  • Fixed crash when network process terminates while a net log is running. #​44406 (Also in 31, 32, 33, 34)
  • Fixed crash when rendering super menu accelerator on linux. #​44341 (Also in 32, 33, 34)
  • Fixed custom spell checker getting stuck in infinite loop using 100% CPU. #​45001 (Also in 31, 32, 33, 34)
  • Fixed drag and drop icons not showing on Windows. #​45777 (Also in 34)
  • Fixed external window focus when using shell.openExternal. #​44408 (Also in 33, 34)
  • Fixed file preview window reappearing when calling win.closeFilePreview twice on macOS. #​45664 (Also in 32, 33, 34)
  • Fixed issue where 'contextmenu' event is emitted twice on macOS. #​44978 (Also in 34)
  • Fixed issue with missing index arg for webContents.canGoToOffset. #​44989 (Also in 32, 33, 34)
  • Fixed race condition in which WebContents appears as white screen on VDI machines without hardware acceleration capabilities. #​44318 (Also in 32, 33, 34)
  • Fixed regression with dynamic dependency on libgdk_pixbuf. #​44423 (Also in 32, 33, 34)
  • Fixed segfault when moving WebContentsView between BrowserWindows. #​44599 (Also in 31, 32, 33, 34)
  • Fixed the path for a needed library used for mksnapshot. #​45546 (Also in 32, 33, 34)
  • Fixed theme does not work in DevTools. #​44114 (Also in 32, 33, 34)
  • Fixed update file extension bug. #​44296 (Also in 33, 34)
  • Fixed web worker scripts failing to load for chrome extensions. #​45708 (Also in 32, 33, 34)
  • Return 0 exit code for normal termination of the utility process. #​44726 (Also in 32, 33, 34)
  • The avoidClosingConnections option for session.clearData now properly defaults to false when the dataTypes option is not set. #​45187 (Also in 33, 34)

Other Changes

  • Added more helpful logging if Node.js fails to initialize. #​45317
  • Backported fix for 3872580,383070811. #​45496
  • Fixed all -Wunsafe-buffer-usage Clang warnings and enabled the compiler warning in new builds. #​44056
  • Fixed an issue where a deprecation warning was being incorrectly emitted for frameless windows on macOS. #​44728 (Also in 33, 34)

Documentation

Notices

End of Support for 32.x.y

Electron 32.x.y has reached end-of-support as per the project's support policy. Developers and applications are encouraged to upgrade to a newer version of Electron.

v34.5.8: electron v34.5.8

Compare Source

Release Notes for v34.5.8

[!WARNING]
Electron 34.x.y has reached end-of-support as per the project's support policy. Developers and applications are encouraged to upgrade to a newer version of Electron.

Fixes

  • Fixed crash in autoUpdater on macOS when zip extraction failed. #​47301 (Also in 35, 36, 37)

Other Changes

  • Security: backported fix for CVE-2025-5419. #​47355

v34.5.7: electron v34.5.7

Compare Source

Release Notes for v34.5.7

Other Changes

  • Security: backported fix for 4033643. #​47070
  • Security: backported fix for CVE-2025-4609.
    • Security: backported fix for CVE-2025-4664. #​47176

v34.5.6: electron v34.5.6

Compare Source

Release Notes for v34.5.6

Other Changes

v34.5.5: electron v34.5.5

Compare Source

Release Notes for v34.5.5

Fixes

  • Fixed the visibleOnAllWorkspaces property on Linux. #​46862 (Also in 35)

Other Changes

v34.5.4: electron v34.5.4

Compare Source

Release Notes for v34.5.4

Fixes

  • Fixed electron.shell.openExternal and electron.shell.openPath to honor user-defined system defaults on Linux. #​46791 (Also in 33, 35, 36)
  • Fixed a possible crash when using navigator.bluetooth.requestDevice and the select-bluetooth-device event. #​46783 (Also in 35, 36)
  • Fixed a potential crash when closing a window with child windows. #​46775 (Also in 35, 36)
  • Fixed build error with enable_electron_extensions=false. #​46841 (Also in 35, 36)
  • Fixed crash when renderer process crashes while webview is reloading. #​46770 (Also in 35, 36)
  • Fixed documentation to mark Window.autoHideMenuBar as supported on Linux and Windows. #​46831 (Also in 35, 36)

v34.5.3: electron v34.5.3

Compare Source

Release Notes for v34.5.3

Fixes

  • Fixed Minimize menu button to follow set window minimizability on Windows. #​46716 (Also in 35, 36)
  • Fixed case where file dialog filters would get mixed up, if a * filter was included. #​46720 (Also in 35, 36)
  • Fixed crash on reconversion with google IME and editcontext on macOS. #​46701 (Also in 35, 36)
  • Microtasks are no longer (incorrectly) run by serializing values, including when sending IPC. #​46683 (Also in 35, 36)

Other Changes

v34.5.2: electron v34.5.2

Compare Source

Release Notes for v34.5.2

Fixes

  • Fixed ElectronAccessibilityUI bug. #​46588 (Also in 33, 35, 36)
  • Fixed a possible BrowserWindow crash caused by closing a parent window with focus or blur events. #​46582 (Also in 35, 36)
  • Fixed an inverted conditional in the above PR that caused broken window borders in some circumstances on Wayland. #​46643 (Also in 33, 35, 36)

Other Changes

  • Fixed an issue where printing from the renderer process crashes the main process when no printers are installed in the system or there's not a default printer. #​46618 (Also in 35, 36)

v34.5.1: electron v34.5.1

Compare Source

Release Notes for v34.5.1

Fixes

  • Fixed a Linux-only issue where the context menu runs the action under the cursor when opened and should not. #​46436
  • Fixed a bug that could cause some maximized windows on Linux to report an incorrect window state. #​46462 (Also in 35, 36)
  • Fixed a potential crash in parentPort. #​46494 (Also in 35, 36)
  • Fixed crash on application exit with pending app.getGPUInfo promise. #​46472 (Also in 35, 36)

Unknown

v34.5.0: electron v34.5.0

Compare Source

Release Notes for v34.5.0

Fixes

  • Fixed an issue where context-menu event weren't emitted as expected on Windows in draggable regions. #​46328 (Also in 35, 36)
  • Fixed an issue where calling UtilityProcess.fork prior to the app ready event would cause a crash. #​46405 (Also in 35, 36)
  • Fixed memory leak in AutofillPopupView. #​46411 (Also in 35, 36)
  • When a menu item on macOS is disabled (enabled = false), it is now greyed out. #​46340 (Also in 35, 36)

Other Changes

v34.4.1: electron v34.4.1

Compare Source

Release Notes for v34.4.1

Fixes

  • Fixed an issue where navigationHistory.restore() failed to restore the userAgent if it was overridden. #​46298 (Also in 35, 36)

Other Changes

  • Security: backported fix for CVE-2025-2783. #​46304

v34.4.0: electron v34.4.0

Compare Source

Release Notes for v34.4.0

Features

  • Added ffmpeg.dll to delay load configuration. #​46174 (Also in 35, 36)

Fixes

  • Fixed NODE_OPTIONS parsing for child processes on macOS. #​46242 (Also in 35, 36)
  • Fixed an issue where system-context-menu incorrectly fired for all regions in frameless windows. #​46175 (Also in 33, 35, 36)
  • Fixed an issue where webContents.printToPDF() didn't work as expected with cross-process subframes. #​46258 (Also in 35, 36)
  • Fixed an issue where the resizing border didn't work as expected on Wayland windows. #​46223 (Also in 33, 35, 36)
  • Fixed an issue with token formatting for tokens received after calling pushNotifications.registerForAPNSNotifications(). #​46150 (Also in 35, 36)
  • Fixed build failure when building with printing disabled. #​46286 (Also in 35, 36)
  • Fixed crash with out-of-bounds string read when parsing NODE_OPTIONS. #​46246 (Also in 35, 36)

Other Changes

  • Improved performance of desktopCapturer.getSources when not requesting thumbnails on macOS. #​46250 (Also in 35, 36)

v34.3.4: electron v34.3.4

Compare Source

Release Notes for v34.3.4

Fixes

  • Fixed an issue where Web Workers crashed on unhandled rejections. #​46019 (Also in 35, 36)
  • Fixed an issue where snapped windows in Windows may sometimes be improperly restored. #​46039 (Also in 33, 35, 36)
  • Fixed incorrect titlebar in file save dialogs. #​46076 (Also in 33, 35, 36)
  • Fixed title changes to not occur while navigating within a page. #​46034 (Also in 35, 36)

Other Changes

v34.3.3: electron v34.3.3

Compare Source

Release Notes for v34.3.3

Fixes

Other Changes

  • Fixed an issue where Electron could fail to load on some older Linux distributions. #​45982 (Also in 35, 36)

v34.3.2: electron v34.3.2

Compare Source

Release Notes for v34.3.2

Fixes

  • Improved webContents loading time when resolving fonts for uncommon scripts. #​45917 (Also in 35, 36)

Other Changes

v34.3.1: electron v34.3.1

Compare Source

Release Notes for v34.3.1

Fixes

  • Fixed an issue where contextmenu events wouldn't be correctly dispatched in draggable regions on Linux. #​45840 (Also in 35)
  • Fixed an issue where setContentProtection(true) was reverted when a given window was hidden. #​45890 (Also in 35)
  • Fixed invalid memory access in pdf viewer which lead to random crashes. #​45880 (Also in 35)

Other Changes

  • Fixed an issue where native Node.js addons including uv.h before node.h don't compile as expected. #​45870

v34.3.0: electron v34.3.0

Compare Source

Release Notes for v34.3.0

Features

  • Added support for roundedCorners BrowserWindow constructor option on Windows. #​45739 (Also in 35)

Fixes

  • Backported fix for a upstream bug that cause Offscreen Rendering to stutter. #​45659 (Also in 32, 33, 35)
  • Fixed WebFrameMain crash related to accessing speculative frames that have been destroyed. #​45687 (Also in 33, 35)
  • Fixed v8.setHeapSnapshotNearHeapLimit api in main and utility process, along with support for --diagnostic-dir Node.js cli flag to specify the directory to save the heap snapshots. #​45644 (Also in 33, 35)
  • Fixed a crash that could occur in OSR on window close. #​45629 (Also in 35)
  • Fixed a potential crash when calling legacy getUserMedia with an invalid chromeMediaSourceId. #​45756 (Also in 35)
  • Fixed a potential issues permissions in the Pointer Lock API after focus loss and regain. #​45627 (Also in 35)
  • Fixed an issue where Electron may experience crashes on Linux with 16KiB pages. #​45571 (Also in 33)
  • Fixed crash on startup with asan build on macOS. #​45567 (Also in 33, 35)
  • Fixed drag and drop icons not showing on Windows. #​45778 (Also in 35)
  • Fixed file preview window reappearing when calling win.closeFilePreview twice on macOS. #​45662 (Also in 32, 33, 35)
  • Fixed web worker scripts failing to load for chrome extensions. #​45710 (Also in 32, 33, 35)

Other Changes

v34.2.0: electron v34.2.0

Compare Source

Release Notes for v34.2.0

Features

  • Added webContents.navigationHistory.restore(index, entries) API that allows restoration of navigation history. #​45584

Fixes

  • Fixed an issue where windows on Windows with backgroundMaterial lost effect on maximization. #​45526 (Also in 35)
  • Fixed crash when accessing WebFrameMain frames and name attributes on destroyed frames. #​45510 (Also in 33, 35)
  • Fixed the path for a needed library used for mksnapshot. #​45544 (Also in 32, 33, 35)

Other Changes

v34.1.1: electron v34.1.1

Compare Source

Release Notes for v34.1.1

Other Changes

v34.1.0: electron v34.1.0

Compare Source

Release Notes for v34.1.0

Features

  • Added view.getVisible(). #​45410 (Also in 35)
  • Added permission support for document.executeCommand("paste"). #​45472 (Also in 33, 35)

Fixes

  • Fixed a bug where the default path didn't always correctly fill the Name field in KDialogs on Linux. #​45419 (Also in 35)
  • Fixed an issue where RTL tooltips could be incorrect when using WCO on Windows. #​45426 (Also in 33, 35)
  • Fixed an issue where Windows Control Overlay didn't work with some window configurations. #​45478
  • Fixed an issue where selection of multiple directories with the dialog module didn't work on Linux. #​45395 (Also in 35)

Other Changes

  • Added NSPrefersDisplaySafeAreaCompatibilityMode = false to Info.plist to remove "Scale to fit below built-in camera." from app options. #​45469 (Also in 33, 35)
  • Updated Chromium to 132.0.6834.194. #​45480

v34.0.2: electron v34.0.2

Compare Source

Release Notes for v34.0.2

Fixes

  • Fixed a crash when calling shell.readShortcutLink caused by PKEY_AppUserModel_ToastActivatorCLSID sometimes being represented by a string uuid. #​45350 (Also in 33)
  • Fixed a potential crash in chrome.tabs.update(). #​45304 (Also in 33, 35)
  • Fixed an issue where print scaling could be too small during silent print. #​45283 (Also in 35)
  • Fixed crash in gin::wrappable::secondweakcallback. #​45376

Other Changes

  • Updated Chromium to 132.0.6834.159. #​45313

v34.0.1: electron v34.0.1

Compare Source

Release Notes for v34.0.1

Fixes

  • Addressed two possible crashes in the File System Access API. #​45260 (Also in 35)
  • Fixed an issue where drag-dropping two directories would cause getAsFileSystemHandle to never resolve. #​45258 (Also in 33, 35)
  • The avoidClosingConnections option for session.clearData now properly defaults to false when the dataTypes option is not set. #​45208 (Also in 33)

v34.0.0: electron v34.0.0

Compare Source

Release Notes for v34.0.0

Stack Upgrades

Breaking Changes

  • Made menu bar hidden on fullscreen in Windows. #​43402

Features

Additions
  • Added APIs to manage shared dictionaries for compression efficiency using Brotli or ZStandard. The new APIs are session.getSharedDictionaryUsageInfo(), session.getSharedDictionaryInfo(options), session.clearSharedDictionaryCache(), and session.clearSharedDictionaryCacheForIsolationKey(options). #​44950 (Also in 33)
  • Added WebFrameMain.collectJavaScriptCallStack() for accessing the JavaScript call stack of unresponsive renderers. #​44938 (Also in 33)
  • Added WebFrameMain.detached for frames in an unloading state.
    • Added WebFrameMain.isDestroyed() to determine if a frame has been destroyed.
    • Fixed webFrameMain.fromId(processId, frameId) returning a WebFrameMain instance which doesn't match the given parameters when the frame is unloading. #​43473 (Also in 33)
  • Added error event in utility process to support diagnostic reports on V8 fatal errors. #​43774 (Also in 33)
  • Added support for the macOS system picker in desktopCapturer and setDisplayMediaRequestHandler. #​43581 (Also in 32, 33)
  • Feat: GPU accelerated shared texture offscreen rendering. #​42953 (Also in 33)
Improvements
  • Performance improvements when processing microtasks. #​44471 (Also in 32, 33)

Fixes

  • Fixed file chooser dialogs for flaptak applications. #​44681
  • Fixed issue where 'contextmenu' event is emitted twice on macOS. #​44997
Also in earlier versions...
  • Fixed BrowserView auto resize issue. #​43463 (Also in 31, 32, 33)
  • Fixed MenuItem.click handler not setting focusedWindow parameter when focused window is a BaseWindow. #​43404 (Also in 31, 32, 33)
  • Fixed chrome.i18n extension API being unavailable in service workers. #​45036 (Also in 31, 32, 33)
  • Fixed trace-startup not working on macOS. #​44275 (Also in 32, 33)
  • Fixed a build failure when the enable_plugins build flag is false. #​44003 (Also in 33)
  • Fixed a crash that could occur when calling shell.readShortcutLink on Windows. #​44804 (Also in 33)
  • Fixed a crash when calling focus on a WebView's webContents. #​43921 (Also in 31, 32, 33)
  • Fixed a potential issue accessing a child window document when overriding browserWindow creation via setWindowOpenHandler. #​43775 (Also in 31, 32, 33)
  • Fixed a potential issue with fillable PDF forms saving correctly in some circumstances. #​43667 (Also in 31, 32, 33)
  • Fixed an issue when dragging to resize when using Window Controls Overlay on Linux. #​43724 (Also in 31, 32, 33)
  • Fixed an issue where BaseWindow.setTouchBar didn't work as expected. #​43353 (Also in 30, 31, 32, 33)
  • Fixed an issue where EventSource was undefined in both renderer and worker processes when Node.js integration was enabled. #​44495 (Also in 32, 33)
  • Fixed an issue where WebContentsViews did not show correctly in some circumstances on macOS after being added as child views. #​43638 (Also in 31, 32, 33)
  • Fixed an issue where WebContentsViews were being improperly removed. #​44670 (Also in 31, 32, 33)
  • Fixed an issue where defaultPath did not work for all users on Linux when creating an open file dialog. #​43570 (Also in 30, 31, 32, 33)
  • Fixed an issue where resize wasn't being emitted for single-pixel resizes on Windows. #​44722 (Also in 32, 33)
  • Fixed an issue where a utilityProcess pid would not be undefined after exit. #​44695 (Also in 32, 33)
  • Fixed an issue where an exception could be thrown on BrowserView after its owner BrowserWindow was closed. #​43972 (Also in 31, 32, 33)
  • Fixed an issue where buttons shown under the Window Controls Overlay API were missing tooltips. #​44759 (Also in 32, 33)
  • Fixed an issue where clicking the eyedropper icon did nothing instead of opening an eyedropper for color selection as expected. #​43685 (Also in 32, 33)
  • Fixed an issue where closing a window after printing on Linux triggered a crash. #​44284 (Also in 31, 32, 33)
  • Fixed an issue where the exit event could be emitted twice from the utilityProcess. #​44265 (Also in 31, 32, 33)
  • Fixed an issue where the webContents context-menu event was not emitted when using -webkit-app-region: drag. #​44799 (Also in 32, 33)
  • Fixed an issue where the windows control overlay was unexpectedly visible in fullscreen on Linux. #​44641 (Also in 31, 32, 33)
  • Fixed an issue with resize events being emitted on Windows when the window was moved but not resized. #​43431 (Also in 32, 33)
  • Fixed an possible crash when using draggable regions and BaseWindows to get the context-menu event. #​44952 (Also in 32, 33)
  • Fixed bug where camera permissions affected screen sharing. #​43517 (Also in 32, 33)
  • Fixed build failure when the PDF viewer is disabled. #​44964 (Also in 33)
  • Fixed calling setAlwaysOnTop on a hidden window which is then shown with showInactive on Linux under X11. #​44322 (Also in 31, 32, 33)
  • Fixed closing a window with more than one attached sheet on macOS. #​43706 (Also in 31, 32, 33)
  • Fixed crash in net api when utility process exits. #​44731 (Also in 32, 33)
  • Fixed crash when network process terminates while a net log is running. #​44418 (Also in 31, 32, 33)
  • Fixed crash when rendering super menu accelerator on linux. #​44346 (Also in 32, 33)
  • Fixed crash when running getDisplayMedia from multiple iframes. #​43905 (Also in 33)
  • Fixed custom spell checker getting stuck in infinite loop using 100% CPU. #​45020 (Also in 31, 32, 33)
  • Fixed devtools to allow restoring saved dock state on Linux when WCO is enabled. #​43490 (Also in 31, 32, 33)
  • Fixed electron app in ozone/wayland not bein

❗ Important

✂ PR body was truncated to here.

> ℹ️ **Note** > > This PR body was truncated due to platform limits. This PR contains the following updates: | Package | Change | [Age](https://docs.renovatebot.com/merge-confidence/) | [Confidence](https://docs.renovatebot.com/merge-confidence/) | |---|---|---|---| | [electron](https://github.com/electron/electron) | [`^25.9.8` → `^45.0.0`](https://renovatebot.com/diffs/npm/electron/25.9.8/45.2.1) | ![age](https://developer.mend.io/api/mc/badges/age/npm/electron/45.2.1?slim=true) | ![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/electron/25.9.8/45.2.1?slim=true) | --- ### Electron vulnerable to Heap Buffer Overflow in NativeImage [CVE-2024-46993](https://nvd.nist.gov/vuln/detail/CVE-2024-46993) / [GHSA-6r2x-8pq8-9489](https://github.com/advisories/GHSA-6r2x-8pq8-9489) <details> <summary>More information</summary> #### Details ##### Impact The `nativeImage.createFromPath()` and `nativeImage.createFromBuffer()` functions call a function downstream that is vulnerable to a heap buffer overflow. An Electron program that uses either of the affected functions is vulnerable to a buffer overflow if an attacker is in control of the image's height, width, and contents. ##### Workaround There are no app-side workarounds for this issue. You must update your Electron version to be protected. ##### Patches - `v28.3.2` - `v29.3.3` - `v30.0.3` ##### For More Information If you have any questions or comments about this advisory, email us at [security@electronjs.org](mailto:security@electronjs.org). #### Severity - CVSS Score: 4.4 / 10 (Medium) - Vector String: `CVSS:4.0/AV:L/AC:H/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/E:U` #### References - [https://github.com/electron/electron/security/advisories/GHSA-6r2x-8pq8-9489](https://github.com/electron/electron/security/advisories/GHSA-6r2x-8pq8-9489) - [https://nvd.nist.gov/vuln/detail/CVE-2024-46993](https://nvd.nist.gov/vuln/detail/CVE-2024-46993) - [https://github.com/electron/electron](https://github.com/electron/electron) This data is provided by [OSV](https://osv.dev/vulnerability/GHSA-6r2x-8pq8-9489) and the [GitHub Advisory Database](https://github.com/github/advisory-database) ([CC-BY 4.0](https://github.com/github/advisory-database/blob/main/LICENSE.md)). </details> --- ### Electron has ASAR Integrity Bypass via resource modification [CVE-2025-55305](https://nvd.nist.gov/vuln/detail/CVE-2025-55305) / [GHSA-vmqv-hx8q-j7mg](https://github.com/advisories/GHSA-vmqv-hx8q-j7mg) <details> <summary>More information</summary> #### Details ##### Impact This only impacts apps that have the `embeddedAsarIntegrityValidation` and `onlyLoadAppFromAsar` [fuses](https://www.electronjs.org/docs/latest/tutorial/fuses) enabled. Apps without these fuses enabled are not impacted. Specifically this issue can only be exploited if your app is launched from a filesystem the attacker has write access too. i.e. the ability to edit files inside the `resources` folder in your app installation on Windows which these fuses are supposed to protect against. ##### Workarounds There are no app side workarounds, you must update to a patched version of Electron. ##### Fixed Versions * `38.0.0-beta.6` * `37.3.1` * `36.8.1` * `35.7.5` ##### For more information If you have any questions or comments about this advisory, email us at [security@electronjs.org](mailto:security@electronjs.org) #### Severity - CVSS Score: 6.1 / 10 (Medium) - Vector String: `CVSS:3.1/AV:L/AC:L/PR:L/UI:R/S:U/C:L/I:H/A:L` #### References - [https://github.com/electron/electron/security/advisories/GHSA-vmqv-hx8q-j7mg](https://github.com/electron/electron/security/advisories/GHSA-vmqv-hx8q-j7mg) - [https://nvd.nist.gov/vuln/detail/CVE-2025-55305](https://nvd.nist.gov/vuln/detail/CVE-2025-55305) - [https://github.com/electron/electron/pull/48101](https://github.com/electron/electron/pull/48101) - [https://github.com/electron/electron/pull/48102](https://github.com/electron/electron/pull/48102) - [https://github.com/electron/electron/pull/48103](https://github.com/electron/electron/pull/48103) - [https://github.com/electron/electron/pull/48104](https://github.com/electron/electron/pull/48104) - [https://github.com/electron/electron/commit/23a02934510fcf951428e14573d9b2d2a3c4f28b](https://github.com/electron/electron/commit/23a02934510fcf951428e14573d9b2d2a3c4f28b) - [https://github.com/electron/electron/commit/2e5a0b7220ebf955c6785cc5adb2e2b1cf77dac1](https://github.com/electron/electron/commit/2e5a0b7220ebf955c6785cc5adb2e2b1cf77dac1) - [https://github.com/electron/electron/commit/3f92511cdecc39f46b0e86cce40a0c691e301c9d](https://github.com/electron/electron/commit/3f92511cdecc39f46b0e86cce40a0c691e301c9d) - [https://github.com/electron/electron/commit/fdf29ce83870109d403f5c23ae529dbd0e8f4fee](https://github.com/electron/electron/commit/fdf29ce83870109d403f5c23ae529dbd0e8f4fee) - [https://github.com/electron/electron](https://github.com/electron/electron) This data is provided by [OSV](https://osv.dev/vulnerability/GHSA-vmqv-hx8q-j7mg) and the [GitHub Advisory Database](https://github.com/github/advisory-database) ([CC-BY 4.0](https://github.com/github/advisory-database/blob/main/LICENSE.md)). </details> --- ### Electron: Out-of-bounds read in second-instance IPC on macOS and Linux [CVE-2026-34776](https://nvd.nist.gov/vuln/detail/CVE-2026-34776) / [GHSA-3c8v-cfp5-9885](https://github.com/advisories/GHSA-3c8v-cfp5-9885) <details> <summary>More information</summary> #### Details ##### Impact On macOS and Linux, apps that call `app.requestSingleInstanceLock()` were vulnerable to an out-of-bounds heap read when parsing a crafted second-instance message. Leaked memory could be delivered to the app's `second-instance` event handler. This issue is limited to processes running as the same user as the Electron app. Apps that do not call `app.requestSingleInstanceLock()` are not affected. Windows is not affected by this issue. ##### Workarounds There are no app side workarounds, developers must update to a patched version of Electron. ##### Fixed Versions * `41.0.0` * `40.8.1` * `39.8.1` * `38.8.6` ##### For more information If there are any questions or comments about this advisory, please email [security@electronjs.org](mailto:security@electronjs.org) #### Severity - CVSS Score: 5.3 / 10 (Medium) - Vector String: `CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:N/A:L` #### References - [https://github.com/electron/electron/security/advisories/GHSA-3c8v-cfp5-9885](https://github.com/electron/electron/security/advisories/GHSA-3c8v-cfp5-9885) - [https://nvd.nist.gov/vuln/detail/CVE-2026-34776](https://nvd.nist.gov/vuln/detail/CVE-2026-34776) - [https://github.com/electron/electron](https://github.com/electron/electron) This data is provided by [OSV](https://osv.dev/vulnerability/GHSA-3c8v-cfp5-9885) and the [GitHub Advisory Database](https://github.com/github/advisory-database) ([CC-BY 4.0](https://github.com/github/advisory-database/blob/main/LICENSE.md)). </details> --- ### Electron: HTTP Response Header Injection in custom protocol handlers and webRequest [CVE-2026-34767](https://nvd.nist.gov/vuln/detail/CVE-2026-34767) / [GHSA-4p4r-m79c-wq3v](https://github.com/advisories/GHSA-4p4r-m79c-wq3v) <details> <summary>More information</summary> #### Details ##### Impact Apps that register custom protocol handlers via `protocol.handle()` / `protocol.registerSchemesAsPrivileged()` or modify response headers via `webRequest.onHeadersReceived` may be vulnerable to HTTP response header injection if attacker-controlled input is reflected into a response header name or value. An attacker who can influence a header value may be able to inject additional response headers, affecting cookies, content security policy, or cross-origin access controls. Apps that do not reflect external input into response headers are not affected. ##### Workarounds Validate or sanitize any untrusted input before including it in a response header name or value. ##### Fixed Versions * `41.0.3` * `40.8.3` * `39.8.3` * `38.8.6` ##### For more information If there are any questions or comments about this advisory, send an email to [security@electronjs.org](mailto:security@electronjs.org) #### Severity - CVSS Score: 5.9 / 10 (Medium) - Vector String: `CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:L/I:H/A:N` #### References - [https://github.com/electron/electron/security/advisories/GHSA-4p4r-m79c-wq3v](https://github.com/electron/electron/security/advisories/GHSA-4p4r-m79c-wq3v) - [https://nvd.nist.gov/vuln/detail/CVE-2026-34767](https://nvd.nist.gov/vuln/detail/CVE-2026-34767) - [https://github.com/electron/electron](https://github.com/electron/electron) This data is provided by [OSV](https://osv.dev/vulnerability/GHSA-4p4r-m79c-wq3v) and the [GitHub Advisory Database](https://github.com/github/advisory-database) ([CC-BY 4.0](https://github.com/github/advisory-database/blob/main/LICENSE.md)). </details> --- ### Electron: AppleScript injection in app.moveToApplicationsFolder on macOS [CVE-2026-34779](https://nvd.nist.gov/vuln/detail/CVE-2026-34779) / [GHSA-5rqw-r77c-jp79](https://github.com/advisories/GHSA-5rqw-r77c-jp79) <details> <summary>More information</summary> #### Details ##### Impact On macOS, `app.moveToApplicationsFolder()` used an AppleScript fallback path that did not properly handle certain characters in the application bundle path. Under specific conditions, a crafted launch path could lead to arbitrary AppleScript execution when the user accepted the move-to-Applications prompt. Apps are only affected if they call `app.moveToApplicationsFolder()`. Apps that do not use this API are not affected. ##### Workarounds There are no app side workarounds, developers must update to a patched version of Electron. ##### Fixed Versions * `41.0.0-beta.8` * `40.8.0` * `39.8.1` * `38.8.6` ##### For more information If there are any questions or comments about this advisory, please email [security@electronjs.org](mailto:security@electronjs.org) #### Severity - CVSS Score: 6.5 / 10 (Medium) - Vector String: `CVSS:3.1/AV:L/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:L` #### References - [https://github.com/electron/electron/security/advisories/GHSA-5rqw-r77c-jp79](https://github.com/electron/electron/security/advisories/GHSA-5rqw-r77c-jp79) - [https://nvd.nist.gov/vuln/detail/CVE-2026-34779](https://nvd.nist.gov/vuln/detail/CVE-2026-34779) - [https://github.com/electron/electron](https://github.com/electron/electron) This data is provided by [OSV](https://osv.dev/vulnerability/GHSA-5rqw-r77c-jp79) and the [GitHub Advisory Database](https://github.com/github/advisory-database) ([CC-BY 4.0](https://github.com/github/advisory-database/blob/main/LICENSE.md)). </details> --- ### Electron: Use-after-free in WebContents fullscreen, pointer-lock, and keyboard-lock permission callbacks [CVE-2026-34771](https://nvd.nist.gov/vuln/detail/CVE-2026-34771) / [GHSA-8337-3p73-46f4](https://github.com/advisories/GHSA-8337-3p73-46f4) <details> <summary>More information</summary> #### Details ##### Impact Apps that register an asynchronous `session.setPermissionRequestHandler()` may be vulnerable to a use-after-free when handling fullscreen, pointer-lock, or keyboard-lock permission requests. If the requesting frame navigates or the window closes while the permission handler is pending, invoking the stored callback dereferences freed memory, which may lead to a crash or memory corruption. Apps that do not set a permission request handler, or whose handler responds synchronously, are not affected. ##### Workarounds Respond to permission requests synchronously, or deny fullscreen, pointer-lock, and keyboard-lock requests if an asynchronous flow is required. ##### Fixed Versions * `41.0.0-beta.8` * `40.7.0` * `39.8.0` * `38.8.6` ##### For more information If there are any questions or comments about this advisory, please email [security@electronjs.org](mailto:security@electronjs.org) #### Severity - CVSS Score: 7.5 / 10 (High) - Vector String: `CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:H` #### References - [https://github.com/electron/electron/security/advisories/GHSA-8337-3p73-46f4](https://github.com/electron/electron/security/advisories/GHSA-8337-3p73-46f4) - [https://nvd.nist.gov/vuln/detail/CVE-2026-34771](https://nvd.nist.gov/vuln/detail/CVE-2026-34771) - [https://github.com/electron/electron](https://github.com/electron/electron) This data is provided by [OSV](https://osv.dev/vulnerability/GHSA-8337-3p73-46f4) and the [GitHub Advisory Database](https://github.com/github/advisory-database) ([CC-BY 4.0](https://github.com/github/advisory-database/blob/main/LICENSE.md)). </details> --- ### Electron: USB device selection not validated against filtered device list [CVE-2026-34766](https://nvd.nist.gov/vuln/detail/CVE-2026-34766) / [GHSA-9899-m83m-qhpj](https://github.com/advisories/GHSA-9899-m83m-qhpj) <details> <summary>More information</summary> #### Details ##### Impact The `select-usb-device` event callback did not validate the chosen device ID against the filtered list that was presented to the handler. An app whose handler could be influenced to select a device ID outside the filtered set would grant access to a device that did not match the renderer's requested `filters` or was listed in `exclusionFilters`. The WebUSB security blocklist remained enforced regardless, so security-sensitive devices on the blocklist were not affected. The practical impact is limited to apps with unusual device-selection logic. ##### Workarounds There are no app side workarounds, you must update to a patched version of Electron. ##### Fixed Versions * `41.0.0-beta.8` * `40.7.0` * `39.8.0` * `38.8.6` ##### For more information If there are any questions or comments about this advisory, send an email to [security@electronjs.org](mailto:security@electronjs.org) #### Severity - CVSS Score: 3.3 / 10 (Low) - Vector String: `CVSS:3.1/AV:L/AC:H/PR:L/UI:R/S:U/C:L/I:L/A:N` #### References - [https://github.com/electron/electron/security/advisories/GHSA-9899-m83m-qhpj](https://github.com/electron/electron/security/advisories/GHSA-9899-m83m-qhpj) - [https://nvd.nist.gov/vuln/detail/CVE-2026-34766](https://nvd.nist.gov/vuln/detail/CVE-2026-34766) - [https://github.com/electron/electron](https://github.com/electron/electron) This data is provided by [OSV](https://osv.dev/vulnerability/GHSA-9899-m83m-qhpj) and the [GitHub Advisory Database](https://github.com/github/advisory-database) ([CC-BY 4.0](https://github.com/github/advisory-database/blob/main/LICENSE.md)). </details> --- ### Electron: Use-after-free in download save dialog callback [CVE-2026-34772](https://nvd.nist.gov/vuln/detail/CVE-2026-34772) / [GHSA-9w97-2464-8783](https://github.com/advisories/GHSA-9w97-2464-8783) <details> <summary>More information</summary> #### Details ##### Impact Apps that allow downloads and programmatically destroy sessions may be vulnerable to a use-after-free. If a session is torn down while a native save-file dialog is open for a download, dismissing the dialog dereferences freed memory, which may lead to a crash or memory corruption. Apps that do not destroy sessions at runtime, or that do not permit downloads, are not affected. ##### Workarounds Avoid destroying sessions while a download save dialog may be open. Cancel pending downloads before session teardown. ##### Fixed Versions * `41.0.0-beta.7` * `40.7.0` * `39.8.0` * `38.8.6` ##### For more information If there are any questions or comments about this advisory, please email [security@electronjs.org](mailto:security@electronjs.org) #### Severity - CVSS Score: 5.8 / 10 (Medium) - Vector String: `CVSS:3.1/AV:L/AC:H/PR:N/UI:R/S:U/C:H/I:L/A:L` #### References - [https://github.com/electron/electron/security/advisories/GHSA-9w97-2464-8783](https://github.com/electron/electron/security/advisories/GHSA-9w97-2464-8783) - [https://nvd.nist.gov/vuln/detail/CVE-2026-34772](https://nvd.nist.gov/vuln/detail/CVE-2026-34772) - [https://github.com/electron/electron](https://github.com/electron/electron) This data is provided by [OSV](https://osv.dev/vulnerability/GHSA-9w97-2464-8783) and the [GitHub Advisory Database](https://github.com/github/advisory-database) ([CC-BY 4.0](https://github.com/github/advisory-database/blob/main/LICENSE.md)). </details> --- ### Electron: Renderer command-line switch injection via undocumented commandLineSwitches webPreference [CVE-2026-34769](https://nvd.nist.gov/vuln/detail/CVE-2026-34769) / [GHSA-9wfr-w7mm-pc7f](https://github.com/advisories/GHSA-9wfr-w7mm-pc7f) <details> <summary>More information</summary> #### Details ##### Impact An undocumented `commandLineSwitches` webPreference allowed arbitrary switches to be appended to the renderer process command line. Apps that construct `webPreferences` by spreading untrusted configuration objects may inadvertently allow an attacker to inject switches that disable renderer sandboxing or web security controls. Apps are only affected if they construct `webPreferences` from external or untrusted input without an allowlist. Apps that use a fixed, hardcoded `webPreferences` object are not affected. ##### Workarounds Do not spread untrusted input into `webPreferences`. Use an explicit allowlist of permitted preference keys when constructing `BrowserWindow` or `webContents` options from external configuration. ##### Fixed Versions * `41.0.0-beta.8` * `40.7.0` * `39.8.0` * `38.8.6` ##### For more information If there are any questions or comments about this advisory, send an email to [security@electronjs.org](mailto:security@electronjs.org) #### Severity - CVSS Score: 7.7 / 10 (High) - Vector String: `CVSS:3.1/AV:L/AC:H/PR:N/UI:R/S:C/C:H/I:H/A:H` #### References - [https://github.com/electron/electron/security/advisories/GHSA-9wfr-w7mm-pc7f](https://github.com/electron/electron/security/advisories/GHSA-9wfr-w7mm-pc7f) - [https://nvd.nist.gov/vuln/detail/CVE-2026-34769](https://nvd.nist.gov/vuln/detail/CVE-2026-34769) - [https://github.com/electron/electron](https://github.com/electron/electron) This data is provided by [OSV](https://osv.dev/vulnerability/GHSA-9wfr-w7mm-pc7f) and the [GitHub Advisory Database](https://github.com/github/advisory-database) ([CC-BY 4.0](https://github.com/github/advisory-database/blob/main/LICENSE.md)). </details> --- ### Electron: Unquoted executable path in app.setLoginItemSettings on Windows [CVE-2026-34768](https://nvd.nist.gov/vuln/detail/CVE-2026-34768) / [GHSA-jfqx-fxh3-c62j](https://github.com/advisories/GHSA-jfqx-fxh3-c62j) <details> <summary>More information</summary> #### Details ##### Impact On Windows, `app.setLoginItemSettings({openAtLogin: true})` wrote the executable path to the `Run` registry key without quoting. If the app is installed to a path containing spaces, an attacker with write access to an ancestor directory may be able to cause a different executable to run at login instead of the intended app. On a default Windows install, standard system directories are protected against writes by standard users, so exploitation typically requires a non-standard install location. ##### Workarounds Install the application to a path without spaces, or to a location where all ancestor directories are protected against unauthorized writes. ##### Fixed Versions * `41.0.0-beta.8` * `40.8.0` * `39.8.1` * `38.8.6` ##### For more information If there are any questions or comments about this advisory, send an email to [security@electronjs.org](mailto:security@electronjs.org) #### Severity - CVSS Score: 3.9 / 10 (Low) - Vector String: `CVSS:3.1/AV:L/AC:H/PR:H/UI:N/S:U/C:L/I:L/A:L` #### References - [https://github.com/electron/electron/security/advisories/GHSA-jfqx-fxh3-c62j](https://github.com/electron/electron/security/advisories/GHSA-jfqx-fxh3-c62j) - [https://nvd.nist.gov/vuln/detail/CVE-2026-34768](https://nvd.nist.gov/vuln/detail/CVE-2026-34768) - [https://github.com/electron/electron](https://github.com/electron/electron) This data is provided by [OSV](https://osv.dev/vulnerability/GHSA-jfqx-fxh3-c62j) and the [GitHub Advisory Database](https://github.com/github/advisory-database) ([CC-BY 4.0](https://github.com/github/advisory-database/blob/main/LICENSE.md)). </details> --- ### Electron: Use-after-free in PowerMonitor on Windows and macOS [CVE-2026-34770](https://nvd.nist.gov/vuln/detail/CVE-2026-34770) / [GHSA-jjp3-mq3x-295m](https://github.com/advisories/GHSA-jjp3-mq3x-295m) <details> <summary>More information</summary> #### Details ##### Impact Apps that use the `powerMonitor` module may be vulnerable to a use-after-free. After the native `PowerMonitor` object is garbage-collected, the associated OS-level resources (a message window on Windows, a shutdown handler on macOS) retain dangling references. A subsequent session-change event (Windows) or system shutdown (macOS) dereferences freed memory, which may lead to a crash or memory corruption. All apps that access `powerMonitor` events (`suspend`, `resume`, `lock-screen`, etc.) are potentially affected. The issue is not directly renderer-controllable. ##### Workarounds There are no app side workarounds, you must update to a patched version of Electron. ##### Fixed Versions * `41.0.0-beta.8` * `40.8.0` * `39.8.1` * `38.8.6` ##### For more information If there are any questions or comments about this advisory, please email [security@electronjs.org](mailto:security@electronjs.org) #### Severity - CVSS Score: 7.0 / 10 (High) - Vector String: `CVSS:3.1/AV:L/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:H` #### References - [https://github.com/electron/electron/security/advisories/GHSA-jjp3-mq3x-295m](https://github.com/electron/electron/security/advisories/GHSA-jjp3-mq3x-295m) - [https://nvd.nist.gov/vuln/detail/CVE-2026-34770](https://nvd.nist.gov/vuln/detail/CVE-2026-34770) - [https://github.com/electron/electron](https://github.com/electron/electron) This data is provided by [OSV](https://osv.dev/vulnerability/GHSA-jjp3-mq3x-295m) and the [GitHub Advisory Database](https://github.com/github/advisory-database) ([CC-BY 4.0](https://github.com/github/advisory-database/blob/main/LICENSE.md)). </details> --- ### Electron: Registry key path injection in app.setAsDefaultProtocolClient on Windows [CVE-2026-34773](https://nvd.nist.gov/vuln/detail/CVE-2026-34773) / [GHSA-mwmh-mq4g-g6gr](https://github.com/advisories/GHSA-mwmh-mq4g-g6gr) <details> <summary>More information</summary> #### Details ##### Impact On Windows, `app.setAsDefaultProtocolClient(protocol)` did not validate the protocol name before writing to the registry. Apps that pass untrusted input as the protocol name may allow an attacker to write to arbitrary subkeys under `HKCU\Software\Classes\`, potentially hijacking existing protocol handlers. Apps are only affected if they call `app.setAsDefaultProtocolClient()` with a protocol name derived from external or untrusted input. Apps that use a hardcoded protocol name are not affected. ##### Workarounds Validate the protocol name matches `/^[a-zA-Z][a-zA-Z0-9+.-]*$/` before passing it to `app.setAsDefaultProtocolClient()`. ##### Fixed Versions * `41.0.0` * `40.8.1` * `39.8.1` * `38.8.6` ##### For more information If there are any questions or comments about this advisory, please email [security@electronjs.org](mailto:security@electronjs.org) #### Severity - CVSS Score: 4.7 / 10 (Medium) - Vector String: `CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:H/A:N` #### References - [https://github.com/electron/electron/security/advisories/GHSA-mwmh-mq4g-g6gr](https://github.com/electron/electron/security/advisories/GHSA-mwmh-mq4g-g6gr) - [https://nvd.nist.gov/vuln/detail/CVE-2026-34773](https://nvd.nist.gov/vuln/detail/CVE-2026-34773) - [https://github.com/electron/electron](https://github.com/electron/electron) This data is provided by [OSV](https://osv.dev/vulnerability/GHSA-mwmh-mq4g-g6gr) and the [GitHub Advisory Database](https://github.com/github/advisory-database) ([CC-BY 4.0](https://github.com/github/advisory-database/blob/main/LICENSE.md)). </details> --- ### Electron: Incorrect origin passed to permission request handler for iframe requests [CVE-2026-34777](https://nvd.nist.gov/vuln/detail/CVE-2026-34777) / [GHSA-r5p7-gp4j-qhrx](https://github.com/advisories/GHSA-r5p7-gp4j-qhrx) <details> <summary>More information</summary> #### Details ##### Impact When an iframe requests `fullscreen`, `pointerLock`, `keyboardLock`, `openExternal`, or `media` permissions, the origin passed to `session.setPermissionRequestHandler()` was the top-level page's origin rather than the requesting iframe's origin. Apps that grant permissions based on the origin parameter or `webContents.getURL()` may inadvertently grant permissions to embedded third-party content. The correct requesting URL remains available via `details.requestingUrl`. Apps that already check `details.requestingUrl` are not affected. ##### Workarounds In your `setPermissionRequestHandler`, inspect `details.requestingUrl` rather than the origin parameter or `webContents.getURL()` when deciding whether to grant `fullscreen`, `pointerLock`, `keyboardLock`, `openExternal`, or `media` permissions. ##### Fixed Versions * `41.0.0` * `40.8.1` * `39.8.1` * `38.8.6` ##### For more information If there are any questions or comments about this advisory, please email [security@electronjs.org](mailto:security@electronjs.org) #### Severity - CVSS Score: 5.4 / 10 (Medium) - Vector String: `CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:L/A:N` #### References - [https://github.com/electron/electron/security/advisories/GHSA-r5p7-gp4j-qhrx](https://github.com/electron/electron/security/advisories/GHSA-r5p7-gp4j-qhrx) - [https://nvd.nist.gov/vuln/detail/CVE-2026-34777](https://nvd.nist.gov/vuln/detail/CVE-2026-34777) - [https://github.com/electron/electron](https://github.com/electron/electron) This data is provided by [OSV](https://osv.dev/vulnerability/GHSA-r5p7-gp4j-qhrx) and the [GitHub Advisory Database](https://github.com/github/advisory-database) ([CC-BY 4.0](https://github.com/github/advisory-database/blob/main/LICENSE.md)). </details> --- ### Electron: Service worker can spoof executeJavaScript IPC replies [CVE-2026-34778](https://nvd.nist.gov/vuln/detail/CVE-2026-34778) / [GHSA-xj5x-m3f3-5x3h](https://github.com/advisories/GHSA-xj5x-m3f3-5x3h) <details> <summary>More information</summary> #### Details ##### Impact A service worker running in a session could spoof reply messages on the internal IPC channel used by `webContents.executeJavaScript()` and related methods, causing the main-process promise to resolve with attacker-controlled data. Apps are only affected if they have service workers registered and use the result of `webContents.executeJavaScript()` (or `webFrameMain.executeJavaScript()`) in security-sensitive decisions. ##### Workarounds Do not trust the return value of `webContents.executeJavaScript()` for security decisions. Use dedicated, validated IPC channels for security-relevant communication with renderers. ##### Fixed Versions * `41.0.0` * `40.8.1` * `39.8.1` * `38.8.6` ##### For more information If there are any questions or comments about this advisory, please email [security@electronjs.org](mailto:security@electronjs.org) #### Severity - CVSS Score: 5.9 / 10 (Medium) - Vector String: `CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:L/I:H/A:N` #### References - [https://github.com/electron/electron/security/advisories/GHSA-xj5x-m3f3-5x3h](https://github.com/electron/electron/security/advisories/GHSA-xj5x-m3f3-5x3h) - [https://nvd.nist.gov/vuln/detail/CVE-2026-34778](https://nvd.nist.gov/vuln/detail/CVE-2026-34778) - [https://github.com/electron/electron](https://github.com/electron/electron) This data is provided by [OSV](https://osv.dev/vulnerability/GHSA-xj5x-m3f3-5x3h) and the [GitHub Advisory Database](https://github.com/github/advisory-database) ([CC-BY 4.0](https://github.com/github/advisory-database/blob/main/LICENSE.md)). </details> --- ### Electron: nodeIntegrationInWorker not correctly scoped in shared renderer processes [CVE-2026-34775](https://nvd.nist.gov/vuln/detail/CVE-2026-34775) / [GHSA-xwr5-m59h-vwqr](https://github.com/advisories/GHSA-xwr5-m59h-vwqr) <details> <summary>More information</summary> #### Details ##### Impact The `nodeIntegrationInWorker` webPreference was not correctly scoped in all configurations. In certain process-sharing scenarios, workers spawned in frames configured with `nodeIntegrationInWorker: false` could still receive Node.js integration. Apps are only affected if they enable `nodeIntegrationInWorker`. Apps that do not use `nodeIntegrationInWorker` are not affected. ##### Workarounds Avoid enabling `nodeIntegrationInWorker` in apps that also open child windows or embed content with differing webPreferences. ##### Fixed Versions * `41.0.0` * `40.8.4` * `39.8.4` * `38.8.6` ##### For more information If there are any questions or comments about this advisory, please email [security@electronjs.org](mailto:security@electronjs.org) #### Severity - CVSS Score: 6.8 / 10 (Medium) - Vector String: `CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:N` #### References - [https://github.com/electron/electron/security/advisories/GHSA-xwr5-m59h-vwqr](https://github.com/electron/electron/security/advisories/GHSA-xwr5-m59h-vwqr) - [https://nvd.nist.gov/vuln/detail/CVE-2026-34775](https://nvd.nist.gov/vuln/detail/CVE-2026-34775) - [https://github.com/electron/electron](https://github.com/electron/electron) This data is provided by [OSV](https://osv.dev/vulnerability/GHSA-xwr5-m59h-vwqr) and the [GitHub Advisory Database](https://github.com/github/advisory-database) ([CC-BY 4.0](https://github.com/github/advisory-database/blob/main/LICENSE.md)). </details> --- ### Electron: Use-after-free in offscreen child window paint callback [CVE-2026-34774](https://nvd.nist.gov/vuln/detail/CVE-2026-34774) / [GHSA-532v-xpq5-8h95](https://github.com/advisories/GHSA-532v-xpq5-8h95) <details> <summary>More information</summary> #### Details ##### Impact Apps that use offscreen rendering and allow child windows via `window.open()` may be vulnerable to a use-after-free. If the parent offscreen `WebContents` is destroyed while a child window remains open, subsequent paint frames on the child dereference freed memory, which may lead to a crash or memory corruption. Apps are only affected if they use offscreen rendering (`webPreferences.offscreen: true`) and their `setWindowOpenHandler` permits child windows. Apps that do not use offscreen rendering, or that deny child windows, are not affected. ##### Workarounds Deny child window creation from offscreen renderers in your `setWindowOpenHandler`, or ensure child windows are closed before the parent is destroyed. ##### Fixed Versions * `41.0.0` * `40.7.0` * `39.8.1` ##### For more information If there are any questions or comments about this advisory, please email [security@electronjs.org](mailto:security@electronjs.org) #### Severity - CVSS Score: 8.1 / 10 (High) - Vector String: `CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H` #### References - [https://github.com/electron/electron/security/advisories/GHSA-532v-xpq5-8h95](https://github.com/electron/electron/security/advisories/GHSA-532v-xpq5-8h95) - [https://nvd.nist.gov/vuln/detail/CVE-2026-34774](https://nvd.nist.gov/vuln/detail/CVE-2026-34774) - [https://github.com/electron/electron](https://github.com/electron/electron) This data is provided by [OSV](https://osv.dev/vulnerability/GHSA-532v-xpq5-8h95) and the [GitHub Advisory Database](https://github.com/github/advisory-database) ([CC-BY 4.0](https://github.com/github/advisory-database/blob/main/LICENSE.md)). </details> --- ### Electron: Crash in clipboard.readImage() on malformed clipboard image data [CVE-2026-34781](https://nvd.nist.gov/vuln/detail/CVE-2026-34781) / [GHSA-f37v-82c4-4x64](https://github.com/advisories/GHSA-f37v-82c4-4x64) <details> <summary>More information</summary> #### Details ##### Impact Apps that call `clipboard.readImage()` may be vulnerable to a denial of service. If the system clipboard contains image data that fails to decode, the resulting null bitmap is passed unchecked to image construction, triggering a controlled abort and crashing the process. Apps are only affected if they call `clipboard.readImage()`. Apps that do not read images from the clipboard are not affected. This issue does not allow memory corruption or code execution. ##### Workarounds Validate that the clipboard contains image data via `clipboard.availableFormats()` before calling `clipboard.readImage()`. Note this only narrows the window — upgrading to a fixed version is recommended. ##### Fixed Versions * `42.0.0-alpha.5` * `41.1.0` * `40.8.5` * `39.8.5` ##### For more information If you have any questions or comments about this advisory, email us at [security@electronjs.org](mailto:security@electronjs.org) #### Severity - CVSS Score: 2.8 / 10 (Low) - Vector String: `CVSS:3.1/AV:L/AC:L/PR:L/UI:R/S:U/C:N/I:N/A:L` #### References - [https://github.com/electron/electron/security/advisories/GHSA-f37v-82c4-4x64](https://github.com/electron/electron/security/advisories/GHSA-f37v-82c4-4x64) - [https://nvd.nist.gov/vuln/detail/CVE-2026-34781](https://nvd.nist.gov/vuln/detail/CVE-2026-34781) - [https://github.com/electron/electron/pull/50475](https://github.com/electron/electron/pull/50475) - [https://github.com/electron/electron/commit/a48f03fb8d03933547281ddb2dbb6c6b9e705287](https://github.com/electron/electron/commit/a48f03fb8d03933547281ddb2dbb6c6b9e705287) - [https://github.com/electron/electron](https://github.com/electron/electron) - [https://github.com/electron/electron/releases/tag/v39.8.5](https://github.com/electron/electron/releases/tag/v39.8.5) - [https://github.com/electron/electron/releases/tag/v40.8.5](https://github.com/electron/electron/releases/tag/v40.8.5) - [https://github.com/electron/electron/releases/tag/v41.1.0](https://github.com/electron/electron/releases/tag/v41.1.0) - [https://github.com/electron/electron/releases/tag/v42.0.0-alpha.5](https://github.com/electron/electron/releases/tag/v42.0.0-alpha.5) This data is provided by [OSV](https://osv.dev/vulnerability/GHSA-f37v-82c4-4x64) and the [GitHub Advisory Database](https://github.com/github/advisory-database) ([CC-BY 4.0](https://github.com/github/advisory-database/blob/main/LICENSE.md)). </details> --- ### Electron: Named window.open targets not scoped to the opener's browsing context [CVE-2026-34765](https://nvd.nist.gov/vuln/detail/CVE-2026-34765) / [GHSA-f3pv-wv63-48x8](https://github.com/advisories/GHSA-f3pv-wv63-48x8) <details> <summary>More information</summary> #### Details ##### Impact When a renderer calls `window.open()` with a target name, Electron did not correctly scope the named-window lookup to the opener's browsing context group. A renderer could navigate an existing child window that was opened by a different, unrelated renderer if both used the same target name. If that existing child was created with more permissive `webPreferences` (via `setWindowOpenHandler`'s `overrideBrowserWindowOptions`), content loaded by the second renderer inherits those permissions. Apps are only affected if they open multiple top-level windows with differing trust levels **and** use `setWindowOpenHandler` to grant child windows elevated `webPreferences` such as a privileged preload script. Apps that do not elevate child window privileges, or that use a single top-level window, are not affected. Apps that additionally grant `nodeIntegration: true` or `sandbox: false` to child windows (contrary to the [security recommendations](https://www.electronjs.org/docs/latest/tutorial/security)) may be exposed to arbitrary code execution. ##### Workarounds Deny `window.open()` in renderers that load untrusted content by returning `{ action: 'deny' }` from `setWindowOpenHandler`. Avoid granting child windows more permissive `webPreferences` than their opener. ##### Fixed Versions * `42.0.0-alpha.5` * `41.1.0` * `40.8.5` * `39.8.5` ##### For more information If you have any questions or comments about this advisory, email us at [security@electronjs.org](mailto:security@electronjs.org) #### Severity - CVSS Score: 6.0 / 10 (Medium) - Vector String: `CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:C/C:L/I:L/A:L` #### References - [https://github.com/electron/electron/security/advisories/GHSA-f3pv-wv63-48x8](https://github.com/electron/electron/security/advisories/GHSA-f3pv-wv63-48x8) - [https://nvd.nist.gov/vuln/detail/CVE-2026-34765](https://nvd.nist.gov/vuln/detail/CVE-2026-34765) - [https://github.com/electron/electron](https://github.com/electron/electron) - [https://github.com/electron/electron/releases/tag/v39.8.5](https://github.com/electron/electron/releases/tag/v39.8.5) - [https://github.com/electron/electron/releases/tag/v40.8.5](https://github.com/electron/electron/releases/tag/v40.8.5) - [https://github.com/electron/electron/releases/tag/v41.1.0](https://github.com/electron/electron/releases/tag/v41.1.0) - [https://github.com/electron/electron/releases/tag/v42.0.0-alpha.5](https://github.com/electron/electron/releases/tag/v42.0.0-alpha.5) This data is provided by [OSV](https://osv.dev/vulnerability/GHSA-f3pv-wv63-48x8) and the [GitHub Advisory Database](https://github.com/github/advisory-database) ([CC-BY 4.0](https://github.com/github/advisory-database/blob/main/LICENSE.md)). </details> --- ### Electron: shell.openPath path validation bypass via embedded null byte [CVE-2026-70603](https://nvd.nist.gov/vuln/detail/CVE-2026-70603) / [GHSA-5c9j-mhmv-5xgx](https://github.com/advisories/GHSA-5c9j-mhmv-5xgx) <details> <summary>More information</summary> #### Details ##### Impact `shell.openPath()` did not reject paths containing embedded null bytes. Apps that perform string-only validation of file paths (for example, checking the file extension) before passing them to `shell.openPath()` could be bypassed, allowing an attacker-controlled path to open a different file than the one that passed validation. Apps are only affected if they pass paths derived from untrusted input to `shell.openPath()` and rely on string-based validation without a filesystem check. Node's `fs` APIs already reject paths containing null bytes, so apps that call `fs.existsSync()`, `fs.stat()`, or similar before `shell.openPath()` are not affected. Apps that do not call `shell.openPath()` with untrusted input are not affected. ##### Workarounds Reject any path containing a null byte before passing it to `shell.openPath()`: ```js if (filePath.includes('\0')) throw new Error('invalid path'); ``` ##### Fixed Versions * `42.0.0-beta.1` * `41.1.1` * `40.9.0` * `39.8.6` ##### For more information If you have any questions or comments about this advisory, email us at [security@electronjs.org](mailto:security@electronjs.org) #### Severity - CVSS Score: 6.0 / 10 (Medium) - Vector String: `CVSS:3.1/AV:L/AC:H/PR:L/UI:R/S:U/C:H/I:H/A:N` #### References - [https://github.com/electron/electron/security/advisories/GHSA-5c9j-mhmv-5xgx](https://github.com/electron/electron/security/advisories/GHSA-5c9j-mhmv-5xgx) - [https://github.com/electron/electron](https://github.com/electron/electron) This data is provided by [OSV](https://osv.dev/vulnerability/GHSA-5c9j-mhmv-5xgx) and the [GitHub Advisory Database](https://github.com/github/advisory-database) ([CC-BY 4.0](https://github.com/github/advisory-database/blob/main/LICENSE.md)). </details> --- ### Electron: DevTools JavaScript Injection via Unsanitized Dock State Parameter [CVE-2026-70609](https://nvd.nist.gov/vuln/detail/CVE-2026-70609) / [GHSA-4f78-qhmw-8j8m](https://github.com/advisories/GHSA-4f78-qhmw-8j8m) <details> <summary>More information</summary> #### Details ##### Impact The `mode` option of `webContents.openDevTools()` was not sanitized before use by the DevTools frontend. If an attacker can influence this value, script under their control may run in the DevTools context, which in unsandboxed configurations has access to Node.js. Apps are only affected if untrusted input can reach the `mode` argument of `openDevTools()`, or if untrusted content can call `openDevTools()` on a `<webview>` it embeds. Apps that only ever pass a fixed dock mode are not affected. ##### Workarounds Only pass fixed, allowlisted values (`right`, `bottom`, `undocked`, `detach`) as the DevTools `mode`, and do not expose `openDevTools` to untrusted content. ##### Fixed Versions * `42.0.0-beta.1` * `41.2.0` * `40.9.0` * `39.8.7` ##### For more information If you have any questions or comments about this advisory, email Electron at [security@electronjs.org](mailto:security@electronjs.org) #### Severity - CVSS Score: 5.7 / 10 (Medium) - Vector String: `CVSS:3.1/AV:N/AC:H/PR:H/UI:R/S:U/C:H/I:H/A:N` #### References - [https://github.com/electron/electron/security/advisories/GHSA-4f78-qhmw-8j8m](https://github.com/electron/electron/security/advisories/GHSA-4f78-qhmw-8j8m) - [https://github.com/electron/electron/pull/50665](https://github.com/electron/electron/pull/50665) - [https://github.com/electron/electron/pull/50666](https://github.com/electron/electron/pull/50666) - [https://github.com/electron/electron/pull/50667](https://github.com/electron/electron/pull/50667) - [https://github.com/electron/electron/pull/50668](https://github.com/electron/electron/pull/50668) - [https://github.com/electron/electron/commit/04614eed17986bddc43eb509ec870424ee6a47d1](https://github.com/electron/electron/commit/04614eed17986bddc43eb509ec870424ee6a47d1) - [https://github.com/electron/electron/commit/2046ae87731d80a7b535512ae19acb529e10e33b](https://github.com/electron/electron/commit/2046ae87731d80a7b535512ae19acb529e10e33b) - [https://github.com/electron/electron/commit/969741f9f847c5c583f6bbc63ca22549dbd954ce](https://github.com/electron/electron/commit/969741f9f847c5c583f6bbc63ca22549dbd954ce) - [https://github.com/electron/electron/commit/efc4d3c6b6f1c04f658ca0d9d2512dcfe78eb7ba](https://github.com/electron/electron/commit/efc4d3c6b6f1c04f658ca0d9d2512dcfe78eb7ba) - [https://github.com/electron/electron](https://github.com/electron/electron) - [https://github.com/electron/electron/releases/tag/v39.8.7](https://github.com/electron/electron/releases/tag/v39.8.7) - [https://github.com/electron/electron/releases/tag/v40.9.0](https://github.com/electron/electron/releases/tag/v40.9.0) - [https://github.com/electron/electron/releases/tag/v41.2.0](https://github.com/electron/electron/releases/tag/v41.2.0) - [https://github.com/electron/electron/releases/tag/v42.0.0-beta.1](https://github.com/electron/electron/releases/tag/v42.0.0-beta.1) This data is provided by [OSV](https://osv.dev/vulnerability/GHSA-4f78-qhmw-8j8m) and the [GitHub Advisory Database](https://github.com/github/advisory-database) ([CC-BY 4.0](https://github.com/github/advisory-database/blob/main/LICENSE.md)). </details> --- ### Electron: Permission Check Handler Receives Main Frame Origin Instead of Requesting Iframe Origin [CVE-2026-70599](https://nvd.nist.gov/vuln/detail/CVE-2026-70599) / [GHSA-9pf5-hg6p-4pwp](https://github.com/advisories/GHSA-9pf5-hg6p-4pwp) <details> <summary>More information</summary> #### Details ##### Impact For serial-port and media (camera / microphone) permission checks made from an iframe, the `requestingOrigin` passed to `session.setPermissionCheckHandler` was the top-level frame's origin rather than the requesting frame's. Origin-based handler logic could therefore grant a cross-origin iframe device access intended only for the top-level origin. Apps are only affected if they use `setPermissionCheckHandler` with origin-based logic and embed cross-origin iframes with delegated device permissions. Apps that base the decision on `details.securityOrigin`, or that do not embed such iframes, are not affected. ##### Workarounds Check `details.securityOrigin` instead of `requestingOrigin` for these permissions, or do not delegate device permissions to untrusted iframes. ##### Fixed Versions * `42.0.0-beta.1` * `41.2.0` * `40.9.0` * `39.8.7` ##### For more information If you have any questions or comments about this advisory, email Electron at [security@electronjs.org](mailto:security@electronjs.org) #### Severity - CVSS Score: 5.9 / 10 (Medium) - Vector String: `CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N` #### References - [https://github.com/electron/electron/security/advisories/GHSA-9pf5-hg6p-4pwp](https://github.com/electron/electron/security/advisories/GHSA-9pf5-hg6p-4pwp) - [https://github.com/electron/electron/commit/0cbdf2f0375466d701aa393c92e0ec29eb89ea6c](https://github.com/electron/electron/commit/0cbdf2f0375466d701aa393c92e0ec29eb89ea6c) - [https://github.com/electron/electron](https://github.com/electron/electron) This data is provided by [OSV](https://osv.dev/vulnerability/GHSA-9pf5-hg6p-4pwp) and the [GitHub Advisory Database](https://github.com/github/advisory-database) ([CC-BY 4.0](https://github.com/github/advisory-database/blob/main/LICENSE.md)). </details> --- ### Electron: Parent process code-sign check is spoofable [CVE-2026-70597](https://nvd.nist.gov/vuln/detail/CVE-2026-70597) / [GHSA-jm7p-cc5g-qwxx](https://github.com/advisories/GHSA-jm7p-cc5g-qwxx) <details> <summary>More information</summary> #### Details ##### Impact On macOS, the check Electron uses to confirm it was launched by a same-signed parent process could be bypassed by a local process. Apps that enable the fuse-based hardening restricting `ELECTRON_RUN_AS_NODE` and `NODE_OPTIONS` to same-signed parents rely on this check; a local attacker could bypass it and run their own code inside the signed app, inheriting its TCC permissions and keychain access. Apps are only affected if they enable those macOS fuse-based restrictions. Apps that do not enable them are not affected. ##### Workarounds There are no app side workarounds, you must update to a patched version of Electron. ##### Fixed Versions * `42.0.0-beta.3` * `41.2.1` * `40.9.0` * `39.8.8` ##### For more information If you have any questions or comments about this advisory, email us at [security@electronjs.org](mailto:security@electronjs.org) #### Severity - CVSS Score: 6.3 / 10 (Medium) - Vector String: `CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:N` #### References - [https://github.com/electron/electron/security/advisories/GHSA-jm7p-cc5g-qwxx](https://github.com/electron/electron/security/advisories/GHSA-jm7p-cc5g-qwxx) - [https://github.com/electron/electron/commit/0a6291a97d210db3733689e70a51f5711e38ed35](https://github.com/electron/electron/commit/0a6291a97d210db3733689e70a51f5711e38ed35) - [https://github.com/electron/electron](https://github.com/electron/electron) This data is provided by [OSV](https://osv.dev/vulnerability/GHSA-jm7p-cc5g-qwxx) and the [GitHub Advisory Database](https://github.com/github/advisory-database) ([CC-BY 4.0](https://github.com/github/advisory-database/blob/main/LICENSE.md)). </details> --- ### Electron: Extension tab APIs operate across session boundaries [CVE-2026-70602](https://nvd.nist.gov/vuln/detail/CVE-2026-70602) / [GHSA-m55f-7gqj-fr98](https://github.com/advisories/GHSA-m55f-7gqj-fr98) <details> <summary>More information</summary> #### Details ##### Impact Extension tab and scripting APIs were not scoped to the extension's own `session`. A malicious or compromised extension loaded into one session could navigate, script, and read from windows belonging to a different session. Apps are only affected if they load Chrome extensions via `session.loadExtension` and rely on separate sessions to isolate that extension from other content. Apps that do not load extensions, or that use a single session, are not affected. ##### Workarounds Only load extensions from sources you trust; do not rely on session separation alone to contain an extension. ##### Fixed Versions * `42.0.0-beta.3` * `41.2.1` * `40.9.0` * `39.8.8` ##### For more information If you have any questions or comments about this advisory, email Electron at [security@electronjs.org](mailto:security@electronjs.org) #### Severity - CVSS Score: 6.6 / 10 (Medium) - Vector String: `CVSS:3.1/AV:N/AC:H/PR:H/UI:N/S:C/C:H/I:L/A:N` #### References - [https://github.com/electron/electron/security/advisories/GHSA-m55f-7gqj-fr98](https://github.com/electron/electron/security/advisories/GHSA-m55f-7gqj-fr98) - [https://github.com/electron/electron](https://github.com/electron/electron) This data is provided by [OSV](https://osv.dev/vulnerability/GHSA-m55f-7gqj-fr98) and the [GitHub Advisory Database](https://github.com/github/advisory-database) ([CC-BY 4.0](https://github.com/github/advisory-database/blob/main/LICENSE.md)). </details> --- ### Electron: Sandboxed iframes can launch external protocol handlers [CVE-2026-70612](https://nvd.nist.gov/vuln/detail/CVE-2026-70612) / [GHSA-p2rr-rvmm-c5fp](https://github.com/advisories/GHSA-p2rr-rvmm-c5fp) <details> <summary>More information</summary> #### Details ##### Impact Requests to open external protocol URLs from web content did not take iframe sandbox restrictions into account, so a sandboxed iframe could cause an OS-registered external application to be launched. The frame's sandbox state was also not made available to the app's permission handlers. Apps are only affected if they render untrusted content in sandboxed iframes and grant the `openExternal` permission (granted by default when no `setPermissionRequestHandler` is installed). Apps whose permission handler denies `openExternal` for untrusted content are not affected. ##### Workarounds Install a `setPermissionRequestHandler` that denies the `openExternal` permission for untrusted content. ##### Fixed Versions * `42.0.0-beta.3` * `41.2.1` * `40.9.0` * `39.8.8` ##### For more information If you have any questions or comments about this advisory, email Electron at [security@electronjs.org](mailto:security@electronjs.org) #### Severity - CVSS Score: 5.4 / 10 (Medium) - Vector String: `CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:L/I:L/A:N` #### References - [https://github.com/electron/electron/security/advisories/GHSA-p2rr-rvmm-c5fp](https://github.com/electron/electron/security/advisories/GHSA-p2rr-rvmm-c5fp) - [https://github.com/electron/electron/pull/50961](https://github.com/electron/electron/pull/50961) - [https://github.com/electron/electron/pull/50962](https://github.com/electron/electron/pull/50962) - [https://github.com/electron/electron/pull/50963](https://github.com/electron/electron/pull/50963) - [https://github.com/electron/electron/pull/50964](https://github.com/electron/electron/pull/50964) - [https://github.com/electron/electron/commit/08b9d0a220e267d1a2402a44bdd01a2e9aa320b5](https://github.com/electron/electron/commit/08b9d0a220e267d1a2402a44bdd01a2e9aa320b5) - [https://github.com/electron/electron/commit/2764e4c35168855f614876051823db4f58a3714a](https://github.com/electron/electron/commit/2764e4c35168855f614876051823db4f58a3714a) - [https://github.com/electron/electron/commit/477dcf7afc6550715f9ec5e6f39ee38e5dd7bf39](https://github.com/electron/electron/commit/477dcf7afc6550715f9ec5e6f39ee38e5dd7bf39) - [https://github.com/electron/electron/commit/c39e3d5687d57434c8d5fe814c5152efd2f631c3](https://github.com/electron/electron/commit/c39e3d5687d57434c8d5fe814c5152efd2f631c3) - [https://github.com/electron/electron](https://github.com/electron/electron) - [https://github.com/electron/electron/releases/tag/v39.8.8](https://github.com/electron/electron/releases/tag/v39.8.8) - [https://github.com/electron/electron/releases/tag/v40.9.0](https://github.com/electron/electron/releases/tag/v40.9.0) - [https://github.com/electron/electron/releases/tag/v41.2.1](https://github.com/electron/electron/releases/tag/v41.2.1) - [https://github.com/electron/electron/releases/tag/v42.0.0-beta.3](https://github.com/electron/electron/releases/tag/v42.0.0-beta.3) This data is provided by [OSV](https://osv.dev/vulnerability/GHSA-p2rr-rvmm-c5fp) and the [GitHub Advisory Database](https://github.com/github/advisory-database) ([CC-BY 4.0](https://github.com/github/advisory-database/blob/main/LICENSE.md)). </details> --- ### Electron: HTTP redirect followed into local file loader [CVE-2026-70605](https://nvd.nist.gov/vuln/detail/CVE-2026-70605) / [GHSA-v64r-4m7r-3mvq](https://github.com/advisories/GHSA-v64r-4m7r-3mvq) <details> <summary>More information</summary> #### Details ##### Impact When following HTTP redirects, `net.fetch()` and `net.request()` did not restrict which schemes a redirect could target. A remote server could redirect a request to a local resource, and if the app returns or forwards the response body, local file contents could be disclosed. Apps are only affected if they make `net` requests to attacker-influenced URLs with redirects followed (the default) and expose the response body. Apps that only request fixed, trusted URLs are not affected. ##### Workarounds Set `redirect: 'error'` or `redirect: 'manual'` on requests to untrusted URLs and validate any redirect target before following it. ##### Fixed Versions * `42.0.0-beta.3` * `41.2.1` * `40.9.0` * `39.8.8` ##### For more information If you have any questions or comments about this advisory, email Electron at [security@electronjs.org](mailto:security@electronjs.org) #### Severity - CVSS Score: 5.9 / 10 (Medium) - Vector String: `CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N` #### References - [https://github.com/electron/electron/security/advisories/GHSA-v64r-4m7r-3mvq](https://github.com/electron/electron/security/advisories/GHSA-v64r-4m7r-3mvq) - [https://github.com/electron/electron](https://github.com/electron/electron) This data is provided by [OSV](https://osv.dev/vulnerability/GHSA-v64r-4m7r-3mvq) and the [GitHub Advisory Database](https://github.com/github/advisory-database) ([CC-BY 4.0](https://github.com/github/advisory-database/blob/main/LICENSE.md)). </details> --- ### Electron: window.open features string controls some window options considered privileged [CVE-2026-70607](https://nvd.nist.gov/vuln/detail/CVE-2026-70607) / [GHSA-v93f-fgjr-hjrj](https://github.com/advisories/GHSA-v93f-fgjr-hjrj) <details> <summary>More information</summary> #### Details ##### Impact Some window options supplied by web content in the `window.open()` features string were applied to the new `BrowserWindow` without an allowlist. Untrusted content could set window options it should not control, including options that cause the main process to access attacker-chosen file or network paths. Apps are only affected if untrusted content can call `window.open()` and the app does not override child window options via `setWindowOpenHandler`. Apps that deny `window.open()` for untrusted content, or set `overrideBrowserWindowOptions` explicitly, are not affected. ##### Workarounds Return `{ action: 'deny' }` from `setWindowOpenHandler` for untrusted content, or supply `overrideBrowserWindowOptions` so every window option is set explicitly. ##### Fixed Versions * `42.0.0-beta.3` * `41.2.1` * `40.9.0` * `39.8.8` ##### For more information If you have any questions or comments about this advisory, email Electron at [security@electronjs.org](mailto:security@electronjs.org) #### Severity - CVSS Score: 5.3 / 10 (Medium) - Vector String: `CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N` #### References - [https://github.com/electron/electron/security/advisories/GHSA-v93f-fgjr-hjrj](https://github.com/electron/electron/security/advisories/GHSA-v93f-fgjr-hjrj) - [https://github.com/electron/electron/pull/50946](https://github.com/electron/electron/pull/50946) - [https://github.com/electron/electron/pull/50947](https://github.com/electron/electron/pull/50947) - [https://github.com/electron/electron/pull/50948](https://github.com/electron/electron/pull/50948) - [https://github.com/electron/electron/pull/50949](https://github.com/electron/electron/pull/50949) - [https://github.com/electron/electron/commit/30cf3882de75ee651bd4e5f27002f13fd3d3163a](https://github.com/electron/electron/commit/30cf3882de75ee651bd4e5f27002f13fd3d3163a) - [https://github.com/electron/electron/commit/4eff3dc09e4d1e62d649c5ce9902f532bb7469c7](https://github.com/electron/electron/commit/4eff3dc09e4d1e62d649c5ce9902f532bb7469c7) - [https://github.com/electron/electron/commit/615d62500fc7732d068274b796c49487e652e90b](https://github.com/electron/electron/commit/615d62500fc7732d068274b796c49487e652e90b) - [https://github.com/electron/electron/commit/fe2e7d0073949b4593b624b93abf1788f5377e55](https://github.com/electron/electron/commit/fe2e7d0073949b4593b624b93abf1788f5377e55) - [https://github.com/electron/electron](https://github.com/electron/electron) - [https://github.com/electron/electron/releases/tag/v39.8.8](https://github.com/electron/electron/releases/tag/v39.8.8) - [https://github.com/electron/electron/releases/tag/v40.9.0](https://github.com/electron/electron/releases/tag/v40.9.0) - [https://github.com/electron/electron/releases/tag/v41.2.1](https://github.com/electron/electron/releases/tag/v41.2.1) - [https://github.com/electron/electron/releases/tag/v42.0.0-beta.3](https://github.com/electron/electron/releases/tag/v42.0.0-beta.3) This data is provided by [OSV](https://osv.dev/vulnerability/GHSA-v93f-fgjr-hjrj) and the [GitHub Advisory Database](https://github.com/github/advisory-database) ([CC-BY 4.0](https://github.com/github/advisory-database/blob/main/LICENSE.md)). </details> --- ### Electron: Cross-origin iframe can position native autofill popup [CVE-2026-70600](https://nvd.nist.gov/vuln/detail/CVE-2026-70600) / [GHSA-x8rc-wpg4-grpf](https://github.com/advisories/GHSA-x8rc-wpg4-grpf) <details> <summary>More information</summary> #### Details ##### Impact The native autofill popup could be positioned by a cross-origin iframe outside that iframe's bounds, over the embedding page's UI, enabling clickjacking or spoofing of trusted UI. Apps are only affected if they embed untrusted content in iframes within windows that also display trusted UI. Apps that do not embed untrusted third-party content are not affected. ##### Workarounds Do not embed untrusted content in iframes inside windows that display trusted UI. ##### Fixed Versions * `42.0.0-beta.3` * `41.2.1` * `40.9.0` * `39.8.8` ##### For more information If you have any questions or comments about this advisory, email Electron at [security@electronjs.org](mailto:security@electronjs.org) #### Severity - CVSS Score: 3.1 / 10 (Low) - Vector String: `CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:N/I:L/A:N` #### References - [https://github.com/electron/electron/security/advisories/GHSA-x8rc-wpg4-grpf](https://github.com/electron/electron/security/advisories/GHSA-x8rc-wpg4-grpf) - [https://github.com/electron/electron](https://github.com/electron/electron) This data is provided by [OSV](https://osv.dev/vulnerability/GHSA-x8rc-wpg4-grpf) and the [GitHub Advisory Database](https://github.com/github/advisory-database) ([CC-BY 4.0](https://github.com/github/advisory-database/blob/main/LICENSE.md)). </details> --- ### Electron: DevTools embedder handler executes arbitrary files via shell open [CVE-2026-70611](https://nvd.nist.gov/vuln/detail/CVE-2026-70611) / [GHSA-f2r8-jv7c-xqmp](https://github.com/advisories/GHSA-f2r8-jv7c-xqmp) <details> <summary>More information</summary> #### Details ##### Impact The DevTools "reveal in file manager" action could launch the target file rather than reveal it. An attacker with a separate means of running script inside the DevTools frontend (such as a malicious DevTools extension) could use this to execute native code outside the sandbox. Apps are only affected if DevTools is opened for windows exposed to untrusted content or untrusted DevTools extensions. Apps that do not open DevTools in that context are not affected. ##### Workarounds Do not open DevTools for windows that load untrusted content, and do not load untrusted DevTools extensions. ##### Fixed Versions * `42.0.0-beta.3` * `41.2.1` * `40.9.2` * `39.8.9` ##### For more information If you have any questions or comments about this advisory, email Electron at [security@electronjs.org](mailto:security@electronjs.org) #### Severity - CVSS Score: 6.9 / 10 (Medium) - Vector String: `CVSS:3.1/AV:L/AC:H/PR:H/UI:R/S:C/C:H/I:H/A:N` #### References - [https://github.com/electron/electron/security/advisories/GHSA-f2r8-jv7c-xqmp](https://github.com/electron/electron/security/advisories/GHSA-f2r8-jv7c-xqmp) - [https://github.com/electron/electron/pull/50937](https://github.com/electron/electron/pull/50937) - [https://github.com/electron/electron/pull/50938](https://github.com/electron/electron/pull/50938) - [https://github.com/electron/electron/pull/51114](https://github.com/electron/electron/pull/51114) - [https://github.com/electron/electron/pull/51115](https://github.com/electron/electron/pull/51115) - [https://github.com/electron/electron/commit/10fb5b39c5287f70c4bbcab4c24197f3871ec322](https://github.com/electron/electron/commit/10fb5b39c5287f70c4bbcab4c24197f3871ec322) - [https://github.com/electron/electron/commit/27bf1cae9274d5025684c7268496f435b7e06b44](https://github.com/electron/electron/commit/27bf1cae9274d5025684c7268496f435b7e06b44) - [https://github.com/electron/electron/commit/7a1eb7e5585991b3726cedb890a6244f327f43de](https://github.com/electron/electron/commit/7a1eb7e5585991b3726cedb890a6244f327f43de) - [https://github.com/electron/electron](https://github.com/electron/electron) - [https://github.com/electron/electron/releases/tag/v39.8.9](https://github.com/electron/electron/releases/tag/v39.8.9) - [https://github.com/electron/electron/releases/tag/v40.9.2](https://github.com/electron/electron/releases/tag/v40.9.2) - [https://github.com/electron/electron/releases/tag/v41.2.1](https://github.com/electron/electron/releases/tag/v41.2.1) - [https://github.com/electron/electron/releases/tag/v42.0.0-beta.3](https://github.com/electron/electron/releases/tag/v42.0.0-beta.3) This data is provided by [OSV](https://osv.dev/vulnerability/GHSA-f2r8-jv7c-xqmp) and the [GitHub Advisory Database](https://github.com/github/advisory-database) ([CC-BY 4.0](https://github.com/github/advisory-database/blob/main/LICENSE.md)). </details> --- ### Electron: contextBridge object copy honors prototype setters [CVE-2026-70610](https://nvd.nist.gov/vuln/detail/CVE-2026-70610) / [GHSA-ff2p-hmqr-hxm4](https://github.com/advisories/GHSA-ff2p-hmqr-hxm4) <details> <summary>More information</summary> #### Details ##### Impact Objects copied across the `contextBridge` boundary from untrusted content could carry an attacker-influenced prototype, enabling prototype-pollution-style attacks against preload code despite context isolation being enabled. Apps are only affected if their preload code accepts object arguments from untrusted content and reads properties from them without own-property checks. Apps that only accept primitive arguments, or that validate object arguments, are not affected. ##### Workarounds Validate objects received from untrusted content with own-property checks (`Object.hasOwn`), or copy them onto a null-prototype object before use. ##### Fixed Versions * `42.0.0-beta.4` * `41.2.2` * `40.9.2` * `39.8.9` ##### For more information If you have any questions or comments about this advisory, email Electron at [security@electronjs.org](mailto:security@electronjs.org) #### Severity - CVSS Score: 5.4 / 10 (Medium) - Vector String: `CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:L/I:L/A:N` #### References - [https://github.com/electron/electron/security/advisories/GHSA-ff2p-hmqr-hxm4](https://github.com/electron/electron/security/advisories/GHSA-ff2p-hmqr-hxm4) - [https://github.com/electron/electron/pull/51083](https://github.com/electron/electron/pull/51083) - [https://github.com/electron/electron/pull/51084](https://github.com/electron/electron/pull/51084) - [https://github.com/electron/electron/pull/51085](https://github.com/electron/electron/pull/51085) - [https://github.com/electron/electron/pull/51086](https://github.com/electron/electron/pull/51086) - [https://github.com/electron/electron/commit/17d5d26499cd279fab48f5f26527f8edc02a7713](https://github.com/electron/electron/commit/17d5d26499cd279fab48f5f26527f8edc02a7713) - [https://github.com/electron/electron/commit/23a6efb714dec80e2cf45d3054d18d701162e4dd](https://github.com/electron/electron/commit/23a6efb714dec80e2cf45d3054d18d701162e4dd) - [https://github.com/electron/electron/commit/4ac50292d552fb510eb778392620c85308770a55](https://github.com/electron/electron/commit/4ac50292d552fb510eb778392620c85308770a55) - [https://github.com/electron/electron/commit/5b699544cbbed51bedb7c60d75c8c42be5825737](https://github.com/electron/electron/commit/5b699544cbbed51bedb7c60d75c8c42be5825737) - [https://github.com/electron/electron](https://github.com/electron/electron) - [https://github.com/electron/electron/releases/tag/v39.8.9](https://github.com/electron/electron/releases/tag/v39.8.9) - [https://github.com/electron/electron/releases/tag/v40.9.2](https://github.com/electron/electron/releases/tag/v40.9.2) - [https://github.com/electron/electron/releases/tag/v41.2.2](https://github.com/electron/electron/releases/tag/v41.2.2) - [https://github.com/electron/electron/releases/tag/v42.0.0-beta.4](https://github.com/electron/electron/releases/tag/v42.0.0-beta.4) This data is provided by [OSV](https://osv.dev/vulnerability/GHSA-ff2p-hmqr-hxm4) and the [GitHub Advisory Database](https://github.com/github/advisory-database) ([CC-BY 4.0](https://github.com/github/advisory-database/blob/main/LICENSE.md)). </details> --- ### Electron: Context isolation bypass via Function.prototype.bind hijack [CVE-2026-70601](https://nvd.nist.gov/vuln/detail/CVE-2026-70601) / [GHSA-h7rp-cf8h-j98x](https://github.com/advisories/GHSA-h7rp-cf8h-j98x) <details> <summary>More information</summary> #### Details ##### Impact Apps that expose Promise-returning functions to web content via `contextBridge` may be vulnerable to a context isolation bypass. Untrusted web content could obtain access to the isolated preload world and, through it, every capability the preload script has. In renderers without a sandbox, or with `nodeIntegration` enabled, this may escalate to Node.js access. Apps are affected if they expose Promise-returning functions via `contextBridge` — the standard pattern for wrapping `ipcRenderer.invoke` — in windows that load untrusted content. Apps that never load untrusted content in those windows are not affected. ##### Workarounds There are no app side workarounds, you must update to a patched version of Electron. ##### Fixed Versions * `42.0.0-beta.5` * `41.2.2` * `40.9.2` * `39.8.9` ##### For more information If you have any questions or comments about this advisory, email Electron at [security@electronjs.org](mailto:security@electronjs.org) #### Severity - CVSS Score: 7.5 / 10 (High) - Vector String: `CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:H/I:L/A:N` #### References - [https://github.com/electron/electron/security/advisories/GHSA-h7rp-cf8h-j98x](https://github.com/electron/electron/security/advisories/GHSA-h7rp-cf8h-j98x) - [https://github.com/electron/electron](https://github.com/electron/electron) This data is provided by [OSV](https://osv.dev/vulnerability/GHSA-h7rp-cf8h-j98x) and the [GitHub Advisory Database](https://github.com/github/advisory-database) ([CC-BY 4.0](https://github.com/github/advisory-database/blob/main/LICENSE.md)). </details> --- ### Electron: Sandboxed iframe can bypass the allow-popups restriction via the OpenURL navigation path [CVE-2026-70608](https://nvd.nist.gov/vuln/detail/CVE-2026-70608) / [GHSA-9f4c-93c8-jc8g](https://github.com/advisories/GHSA-9f4c-93c8-jc8g) <details> <summary>More information</summary> #### Details ##### Impact A sandboxed iframe without the `allow-popups` keyword could still open a new window (or trigger `setWindowOpenHandler`) with no user interaction, because new-window navigations taking the OpenURL path did not apply the iframe sandbox popup restriction. Apps that embed untrusted content in sandboxed iframes and rely on the absence of `allow-popups` to prevent window creation are affected. Apps that deny window creation in `setWindowOpenHandler`, or that do not embed untrusted content in sandboxed iframes, are not affected. ##### Workarounds Return `{ action: 'deny' }` from `setWindowOpenHandler` for any content you do not trust, rather than relying on the iframe sandbox alone. ##### Fixed Versions * `42.0.1` * `41.10.3` * `39.8.10` ##### For more information If you have any questions or comments about this advisory, email Electron at [security@electronjs.org](mailto:security@electronjs.org) #### Severity - CVSS Score: 7.2 / 10 (High) - Vector String: `CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:L/A:N` #### References - [https://github.com/electron/electron/security/advisories/GHSA-9f4c-93c8-jc8g](https://github.com/electron/electron/security/advisories/GHSA-9f4c-93c8-jc8g) - [https://github.com/electron/electron/pull/51437](https://github.com/electron/electron/pull/51437) - [https://github.com/electron/electron/pull/51438](https://github.com/electron/electron/pull/51438) - [https://github.com/electron/electron/pull/51439](https://github.com/electron/electron/pull/51439) - [https://github.com/electron/electron/commit/3ff23c52ab364a0afc6ab5bd7851291d3159de57](https://github.com/electron/electron/commit/3ff23c52ab364a0afc6ab5bd7851291d3159de57) - [https://github.com/electron/electron/commit/57cbe329c4ae8aab5ac5ebdcb588adc9a11de0d3](https://github.com/electron/electron/commit/57cbe329c4ae8aab5ac5ebdcb588adc9a11de0d3) - [https://github.com/electron/electron/commit/68cf8b7d9122260f6b534a69a82c701a56cf159f](https://github.com/electron/electron/commit/68cf8b7d9122260f6b534a69a82c701a56cf159f) - [https://github.com/electron/electron](https://github.com/electron/electron) - [https://github.com/electron/electron/releases/tag/v39.8.10](https://github.com/electron/electron/releases/tag/v39.8.10) - [https://github.com/electron/electron/releases/tag/v41.10.3](https://github.com/electron/electron/releases/tag/v41.10.3) - [https://github.com/electron/electron/releases/tag/v42.0.1](https://github.com/electron/electron/releases/tag/v42.0.1) This data is provided by [OSV](https://osv.dev/vulnerability/GHSA-9f4c-93c8-jc8g) and the [GitHub Advisory Database](https://github.com/github/advisory-database) ([CC-BY 4.0](https://github.com/github/advisory-database/blob/main/LICENSE.md)). </details> --- ### Electron: Off-screen rendering trusts GPU-supplied geometry over shared-memory size [CVE-2026-70598](https://nvd.nist.gov/vuln/detail/CVE-2026-70598) / [GHSA-pfmc-3mgc-p6fp](https://github.com/advisories/GHSA-pfmc-3mgc-p6fp) <details> <summary>More information</summary> #### Details ##### Impact In offscreen rendering mode, frame data received from the GPU process was not fully validated by the main process. A compromised GPU process could cause the main process to read out-of-bounds memory while producing `paint` event images, disclosing memory or crashing the app. Apps are only affected if they use offscreen rendering (`webPreferences.offscreen`) and an attacker has separately gained code execution in the GPU process. Apps that do not use offscreen rendering are not affected. ##### Workarounds There are no app side workarounds, you must update to a patched version of Electron. ##### Fixed Versions * `42.0.0-beta.3` * `41.2.1` * `40.9.0` * `39.8.10` ##### For more information If you have any questions or comments about this advisory, email us at [security@electronjs.org](mailto:security@electronjs.org) #### Severity - CVSS Score: 3.9 / 10 (Low) - Vector String: `CVSS:3.1/AV:L/AC:H/PR:H/UI:N/S:C/C:L/I:N/A:L` #### References - [https://github.com/electron/electron/security/advisories/GHSA-pfmc-3mgc-p6fp](https://github.com/electron/electron/security/advisories/GHSA-pfmc-3mgc-p6fp) - [https://github.com/electron/electron/commit/2c24640e7b0b9c74fe9f44bce0fde138340ff4fb](https://github.com/electron/electron/commit/2c24640e7b0b9c74fe9f44bce0fde138340ff4fb) - [https://github.com/electron/electron](https://github.com/electron/electron) This data is provided by [OSV](https://osv.dev/vulnerability/GHSA-pfmc-3mgc-p6fp) and the [GitHub Advisory Database](https://github.com/github/advisory-database) ([CC-BY 4.0](https://github.com/github/advisory-database/blob/main/LICENSE.md)). </details> --- ### Electron: Custom protocol with supportFetchAPI but not corsEnabled allows cross-origin reads [CVE-2026-70604](https://nvd.nist.gov/vuln/detail/CVE-2026-70604) / [GHSA-v3j7-r9gq-3gjw](https://github.com/advisories/GHSA-v3j7-r9gq-3gjw) <details> <summary>More information</summary> #### Details ##### Impact A custom scheme registered with `supportFetchAPI: true` but without `corsEnabled: true` was not subject to CORS enforcement. A page loaded from a remote origin could therefore `fetch()` or `XMLHttpRequest` that scheme cross-origin and read the full response body, rather than the read being blocked. Apps that serve sensitive data from such a scheme and load remote or untrusted content in a renderer are affected. Apps that set `corsEnabled: true`, or that do not load untrusted content, are not affected. ##### Workarounds Set `corsEnabled: true` on schemes that must enforce CORS, and validate the request `Origin` in your protocol handler before returning sensitive data. ##### Fixed Versions * `42.0.0` * `41.4.0` * `40.9.3` * `39.8.10` ##### For more information If you have any questions or comments about this advisory, email Electron at [security@electronjs.org](mailto:security@electronjs.org) #### Severity - CVSS Score: 7.4 / 10 (High) - Vector String: `CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:N/A:N` #### References - [https://github.com/electron/electron/security/advisories/GHSA-v3j7-r9gq-3gjw](https://github.com/electron/electron/security/advisories/GHSA-v3j7-r9gq-3gjw) - [https://github.com/electron/electron](https://github.com/electron/electron) This data is provided by [OSV](https://osv.dev/vulnerability/GHSA-v3j7-r9gq-3gjw) and the [GitHub Advisory Database](https://github.com/github/advisory-database) ([CC-BY 4.0](https://github.com/github/advisory-database/blob/main/LICENSE.md)). </details> --- ### Electron: Local race condition in Squirrel.Mac update installation on macOS [CVE-2026-102672](https://nvd.nist.gov/vuln/detail/CVE-2026-102672) / [GHSA-vv43-5jgx-7qv8](https://github.com/advisories/GHSA-vv43-5jgx-7qv8) <details> <summary>More information</summary> #### Details ##### Impact On macOS, Electron bundles the Squirrel.Mac auto-update framework, whose privileged `ShipIt` helper performs the final step of an update as root. A local attacker could cause that helper to overwrite a different application's files, as root, instead of the app that started the update. Exploitation requires local access to the machine. Apps are only affected on macOS if they ship Squirrel.Mac-based auto-updates. Apps on other platforms, or that do not use Squirrel.Mac auto-updates, are not affected. ##### Workarounds There are no app side workarounds, you must update to a patched version of Electron. ##### Fixed Versions * `42.0.0-beta.2` * `41.10.5` * `39.8.10` ##### For more information If you have any questions or comments about this advisory, email us at [security@electronjs.org](mailto:security@electronjs.org) #### Severity - CVSS Score: 6.7 / 10 (Medium) - Vector String: `CVSS:3.1/AV:L/AC:H/PR:L/UI:R/S:U/C:H/I:H/A:H` #### References - [https://github.com/electron/electron/security/advisories/GHSA-vv43-5jgx-7qv8](https://github.com/electron/electron/security/advisories/GHSA-vv43-5jgx-7qv8) - [https://github.com/electron/electron/pull/50745](https://github.com/electron/electron/pull/50745) - [https://github.com/electron/electron/commit/01faabfc250801a980fc94d64608046c67fc1cd9](https://github.com/electron/electron/commit/01faabfc250801a980fc94d64608046c67fc1cd9) - [https://github.com/electron/electron/commit/15e2928a5c5f01759107b414010e220d90d59cef](https://github.com/electron/electron/commit/15e2928a5c5f01759107b414010e220d90d59cef) - [https://github.com/electron/electron/commit/a0f9ff4cc0340545008424232d49caadd9c0c767](https://github.com/electron/electron/commit/a0f9ff4cc0340545008424232d49caadd9c0c767) - [https://github.com/electron/electron/commit/b8f25c4cedb2e0f5f475912b709aba19c57c26be](https://github.com/electron/electron/commit/b8f25c4cedb2e0f5f475912b709aba19c57c26be) - [https://github.com/electron/electron](https://github.com/electron/electron) - [https://github.com/electron/electron/releases/tag/v39.8.10](https://github.com/electron/electron/releases/tag/v39.8.10) - [https://github.com/electron/electron/releases/tag/v41.10.5](https://github.com/electron/electron/releases/tag/v41.10.5) - [https://github.com/electron/electron/releases/tag/v42.0.0-beta.2](https://github.com/electron/electron/releases/tag/v42.0.0-beta.2) This data is provided by [OSV](https://osv.dev/vulnerability/GHSA-vv43-5jgx-7qv8) and the [GitHub Advisory Database](https://github.com/github/advisory-database) ([CC-BY 4.0](https://github.com/github/advisory-database/blob/main/LICENSE.md)). </details> --- ### Electron drops inherited HTML sandbox restrictions for popups opened through OpenURLFromTab [CVE-2026-102673](https://nvd.nist.gov/vuln/detail/CVE-2026-102673) / [GHSA-hq2x-r82h-9wj4](https://github.com/advisories/GHSA-hq2x-r82h-9wj4) <details> <summary>More information</summary> #### Details ##### Impact Popups opened from a sandboxed iframe through a link (for example `target="_blank"` or a middle-click) did not inherit the iframe's HTML `sandbox` restrictions. Content that was meant to run sandboxed could open a popup with the embedding app's full origin, gaining access to that origin's cookies, storage, and same-origin scripting. Apps are only affected if they embed untrusted content in iframes sandboxed with `allow-scripts allow-popups`. Apps that do not embed untrusted content in sandboxed iframes are not affected. ##### Workarounds Use `setWindowOpenHandler` on the parent `WebContents` to deny or constrain popups opened from sandboxed frames, or do not apply `allow-popups` to sandboxed iframes that render untrusted content. ##### Fixed Versions * `43.0.0` * `42.5.2` * `41.10.4` ##### For more information If you have any questions or comments about this advisory, email us at [security@electronjs.org](mailto:security@electronjs.org) #### Severity - CVSS Score: 8.2 / 10 (High) - Vector String: `CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:L/A:N` #### References - [https://github.com/electron/electron/security/advisories/GHSA-hq2x-r82h-9wj4](https://github.com/electron/electron/security/advisories/GHSA-hq2x-r82h-9wj4) - [https://github.com/electron/electron/pull/52133](https://github.com/electron/electron/pull/52133) - [https://github.com/electron/electron/commit/7ea14d5f55ecb11a30447701ddca16b3feee0bba](https://github.com/electron/electron/commit/7ea14d5f55ecb11a30447701ddca16b3feee0bba) - [https://github.com/electron/electron/commit/e26b2640e7795c42bfb111b76009cbb4327c9a69](https://github.com/electron/electron/commit/e26b2640e7795c42bfb111b76009cbb4327c9a69) - [https://github.com/electron/electron/commit/ebe1165ee2b05c203c26dd2244ef1c5b9b1c04da](https://github.com/electron/electron/commit/ebe1165ee2b05c203c26dd2244ef1c5b9b1c04da) - [https://github.com/electron/electron](https://github.com/electron/electron) - [https://github.com/electron/electron/releases/tag/v41.10.4](https://github.com/electron/electron/releases/tag/v41.10.4) - [https://github.com/electron/electron/releases/tag/v42.5.2](https://github.com/electron/electron/releases/tag/v42.5.2) - [https://github.com/electron/electron/releases/tag/v43.0.0](https://github.com/electron/electron/releases/tag/v43.0.0) This data is provided by [OSV](https://osv.dev/vulnerability/GHSA-hq2x-r82h-9wj4) and the [GitHub Advisory Database](https://github.com/github/advisory-database) ([CC-BY 4.0](https://github.com/github/advisory-database/blob/main/LICENSE.md)). </details> --- ### Electron: <webview> can enable Node.js integration in Web Workers despite embedder restrictions [CVE-2026-102676](https://nvd.nist.gov/vuln/detail/CVE-2026-102676) / [GHSA-9qh4-3jw8-366w](https://github.com/advisories/GHSA-9qh4-3jw8-366w) <details> <summary>More information</summary> #### Details ##### Impact A `<webview>` could enable Node.js integration in its Web Workers even when its embedder had Node.js integration disabled, giving guest content more privilege than the embedder allowed. Apps are only affected if they enable the `<webview>` tag and the embedder is unsandboxed. Apps that do not use `<webview>`, or that keep the embedder sandboxed, are not affected. ##### Workarounds Remove `nodeIntegrationInWorker` from the guest preferences in a `will-attach-webview` handler, or do not enable the `<webview>` tag when loading untrusted content. ##### Fixed Versions * `44.0.0-beta.5` * `43.4.1` * `42.9.2` * `41.10.6` ##### For more information If you have any questions or comments about this advisory, email us at [security@electronjs.org](mailto:security@electronjs.org) #### Severity - CVSS Score: 8.3 / 10 (High) - Vector String: `CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:C/C:H/I:H/A:H` #### References - [https://github.com/electron/electron/security/advisories/GHSA-9qh4-3jw8-366w](https://github.com/electron/electron/security/advisories/GHSA-9qh4-3jw8-366w) - [https://github.com/electron/electron/commit/6462a2e1dc4e6adffd3b7d9b9be1474c45dcbbe2](https://github.com/electron/electron/commit/6462a2e1dc4e6adffd3b7d9b9be1474c45dcbbe2) - [https://github.com/electron/electron/commit/9a675aef8822bae4088567822969f900b3a37671](https://github.com/electron/electron/commit/9a675aef8822bae4088567822969f900b3a37671) - [https://github.com/electron/electron/commit/b3ae0aab5cf81c2ed03d04df1ae8e69ecfab7886](https://github.com/electron/electron/commit/b3ae0aab5cf81c2ed03d04df1ae8e69ecfab7886) - [https://github.com/electron/electron/commit/cd34f335c8664613db5b6e61ae51e2e1846233ae](https://github.com/electron/electron/commit/cd34f335c8664613db5b6e61ae51e2e1846233ae) - [https://github.com/electron/electron](https://github.com/electron/electron) - [https://github.com/electron/electron/releases/tag/v41.10.6](https://github.com/electron/electron/releases/tag/v41.10.6) - [https://github.com/electron/electron/releases/tag/v42.9.2](https://github.com/electron/electron/releases/tag/v42.9.2) - [https://github.com/electron/electron/releases/tag/v43.4.1](https://github.com/electron/electron/releases/tag/v43.4.1) - [https://github.com/electron/electron/releases/tag/v44.0.0-beta.5](https://github.com/electron/electron/releases/tag/v44.0.0-beta.5) This data is provided by [OSV](https://osv.dev/vulnerability/GHSA-9qh4-3jw8-366w) and the [GitHub Advisory Database](https://github.com/github/advisory-database) ([CC-BY 4.0](https://github.com/github/advisory-database/blob/main/LICENSE.md)). </details> --- ### Electron: Windows opened from a sandboxed top-level document do not inherit its sandbox restrictions [CVE-2026-102674](https://nvd.nist.gov/vuln/detail/CVE-2026-102674) / [GHSA-gr2m-v5gq-v685](https://github.com/advisories/GHSA-gr2m-v5gq-v685) <details> <summary>More information</summary> #### Details ##### Impact Windows opened from a sandboxed top-level document did not inherit that document's HTML `sandbox` restrictions, so content that was meant to run sandboxed could open a window with the app's full origin. GHSA-hq2x-r82h-9wj4 covers the same issue for sandboxed iframes. Apps are only affected if they render untrusted content in a sandboxed top-level document that allows popups. Apps that deny popups from untrusted content with `setWindowOpenHandler` are not affected. ##### Workarounds Return `{ action: 'deny' }` from `setWindowOpenHandler` for windows opened by untrusted content. ##### Fixed Versions * `44.0.0-beta.5` * `43.4.1` * `42.9.2` * `41.10.6` ##### For more information If you have any questions or comments about this advisory, email us at [security@electronjs.org](mailto:security@electronjs.org) #### Severity - CVSS Score: 8.2 / 10 (High) - Vector String: `CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:L/A:N` #### References - [https://github.com/electron/electron/security/advisories/GHSA-gr2m-v5gq-v685](https://github.com/electron/electron/security/advisories/GHSA-gr2m-v5gq-v685) - [https://github.com/electron/electron/commit/29fc130569f970e91e355383821a4af0f25724a2](https://github.com/electron/electron/commit/29fc130569f970e91e355383821a4af0f25724a2) - [https://github.com/electron/electron/commit/3ecf3e74f4be6e2360644679b0b4698742be0e1d](https://github.com/electron/electron/commit/3ecf3e74f4be6e2360644679b0b4698742be0e1d) - [https://github.com/electron/electron/commit/6594d5a5b074cf501da084dc7908d3df0d68a886](https://github.com/electron/electron/commit/6594d5a5b074cf501da084dc7908d3df0d68a886) - [https://github.com/electron/electron/commit/e9c4d3cbe912e18d7c63af78e63e98ae7a48cd3a](https://github.com/electron/electron/commit/e9c4d3cbe912e18d7c63af78e63e98ae7a48cd3a) - [https://github.com/electron/electron](https://github.com/electron/electron) - [https://github.com/electron/electron/releases/tag/v41.10.6](https://github.com/electron/electron/releases/tag/v41.10.6) - [https://github.com/electron/electron/releases/tag/v42.9.2](https://github.com/electron/electron/releases/tag/v42.9.2) - [https://github.com/electron/electron/releases/tag/v43.4.1](https://github.com/electron/electron/releases/tag/v43.4.1) - [https://github.com/electron/electron/releases/tag/v44.0.0-beta.5](https://github.com/electron/electron/releases/tag/v44.0.0-beta.5) This data is provided by [OSV](https://osv.dev/vulnerability/GHSA-gr2m-v5gq-v685) and the [GitHub Advisory Database](https://github.com/github/advisory-database) ([CC-BY 4.0](https://github.com/github/advisory-database/blob/main/LICENSE.md)). </details> --- ### Electron: File and HTTP protocol handlers allow cross-origin reads without corsEnabled [CVE-2026-102675](https://nvd.nist.gov/vuln/detail/CVE-2026-102675) / [GHSA-j84w-jfhq-vhvj](https://github.com/advisories/GHSA-j84w-jfhq-vhvj) <details> <summary>More information</summary> #### Details ##### Impact Responses served through `protocol.registerFileProtocol` or `protocol.registerHttpProtocol` for a custom scheme registered with `supportFetchAPI: true` but without `corsEnabled: true` could be read cross-origin by web content. This completes the fix for CVE-2026-70604. Apps are only affected if they register such a scheme, serve it through one of those handlers, and load untrusted content. Apps that set `corsEnabled: true`, or that do not load untrusted content, are not affected. ##### Workarounds Set `corsEnabled: true` on the scheme, or do not load untrusted content in windows that can reach it. ##### Fixed Versions * `44.0.0-beta.5` * `43.4.1` * `42.9.2` * `41.10.6` ##### For more information If you have any questions or comments about this advisory, email us at [security@electronjs.org](mailto:security@electronjs.org) #### Severity - CVSS Score: 7.4 / 10 (High) - Vector String: `CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:N/A:N` #### References - [https://github.com/electron/electron/security/advisories/GHSA-j84w-jfhq-vhvj](https://github.com/electron/electron/security/advisories/GHSA-j84w-jfhq-vhvj) - [https://github.com/electron/electron/commit/4d2784cc8592471ee2276235b8c2a03efddf937d](https://github.com/electron/electron/commit/4d2784cc8592471ee2276235b8c2a03efddf937d) - [https://github.com/electron/electron/commit/80178e4631cb2f6a5e42f8e793b2ae9624e78a0d](https://github.com/electron/electron/commit/80178e4631cb2f6a5e42f8e793b2ae9624e78a0d) - [https://github.com/electron/electron/commit/c595b05976e7a885465b043d17e00a92fc3c3397](https://github.com/electron/electron/commit/c595b05976e7a885465b043d17e00a92fc3c3397) - [https://github.com/electron/electron/commit/ef75c4b98caaa3ebc615f1eba302027028ee04d2](https://github.com/electron/electron/commit/ef75c4b98caaa3ebc615f1eba302027028ee04d2) - [https://github.com/electron/electron](https://github.com/electron/electron) - [https://github.com/electron/electron/releases/tag/v41.10.6](https://github.com/electron/electron/releases/tag/v41.10.6) - [https://github.com/electron/electron/releases/tag/v42.9.2](https://github.com/electron/electron/releases/tag/v42.9.2) - [https://github.com/electron/electron/releases/tag/v43.4.1](https://github.com/electron/electron/releases/tag/v43.4.1) - [https://github.com/electron/electron/releases/tag/v44.0.0-beta.5](https://github.com/electron/electron/releases/tag/v44.0.0-beta.5) This data is provided by [OSV](https://osv.dev/vulnerability/GHSA-j84w-jfhq-vhvj) and the [GitHub Advisory Database](https://github.com/github/advisory-database) ([CC-BY 4.0](https://github.com/github/advisory-database/blob/main/LICENSE.md)). </details> --- ### Electron: Extension tabs.query returns tab URLs and titles without the tabs permission [CVE-2026-113797](https://nvd.nist.gov/vuln/detail/CVE-2026-113797) / [GHSA-98mx-cjp9-gchm](https://github.com/advisories/GHSA-98mx-cjp9-gchm) <details> <summary>More information</summary> #### Details ##### Impact `chrome.tabs.query()` returned each tab's `url` and `title` to extensions that held neither the `tabs` permission nor matching host permissions, so any loaded extension could read the URL and title of every webContents in its session. Apps are only affected if they load extensions (`session.extensions.loadExtension`) that they do not fully trust. Apps that load no extensions, or only trusted ones, are not affected. ##### Workarounds Do not load untrusted or unvalidated extensions. In general you should only load trusted extensions. ##### Fixed Versions * `45.0.0-alpha.4` * `44.1.1` * `43.5.1` * `42.11.1` ##### For more information If you have any questions or comments about this advisory, email us at [security@electronjs.org](mailto:security@electronjs.org) #### Severity - CVSS Score: 3.1 / 10 (Low) - Vector String: `CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:L/I:N/A:N` #### References - [https://github.com/electron/electron/security/advisories/GHSA-98mx-cjp9-gchm](https://github.com/electron/electron/security/advisories/GHSA-98mx-cjp9-gchm) - [https://nvd.nist.gov/vuln/detail/CVE-2026-113797](https://nvd.nist.gov/vuln/detail/CVE-2026-113797) - [https://github.com/electron/electron/pull/53356](https://github.com/electron/electron/pull/53356) - [https://github.com/electron/electron/pull/53355](https://github.com/electron/electron/pull/53355) - [https://github.com/electron/electron/pull/53354](https://github.com/electron/electron/pull/53354) - [https://github.com/electron/electron/pull/53353](https://github.com/electron/electron/pull/53353) - [https://github.com/electron/electron/pull/52597](https://github.com/electron/electron/pull/52597) - [https://github.com/electron/electron/commit/f3ae30fab9aabfd445eedff4dd7a2f003eb1ff2f](https://github.com/electron/electron/commit/f3ae30fab9aabfd445eedff4dd7a2f003eb1ff2f) - [https://github.com/electron/electron/commit/d6529d65e5f096cd45bbb2828febb2c6baa53921](https://github.com/electron/electron/commit/d6529d65e5f096cd45bbb2828febb2c6baa53921) - [https://github.com/electron/electron/commit/b1eb86ca8f6fa39fe9d5fee21bb9a0bf591a6a3f](https://github.com/electron/electron/commit/b1eb86ca8f6fa39fe9d5fee21bb9a0bf591a6a3f) - [https://github.com/electron/electron/commit/5acc76667d32ff310d04f965b47983412ab6553c](https://github.com/electron/electron/commit/5acc76667d32ff310d04f965b47983412ab6553c) - [https://github.com/electron/electron/commit/16e6103c1d84cd1c46336647b55e96414da501a4](https://github.com/electron/electron/commit/16e6103c1d84cd1c46336647b55e96414da501a4) - [https://github.com/electron/electron/releases/tag/v42.11.1](https://github.com/electron/electron/releases/tag/v42.11.1) - [https://github.com/electron/electron/releases/tag/v43.5.1](https://github.com/electron/electron/releases/tag/v43.5.1) - [https://github.com/electron/electron/releases/tag/v44.1.1](https://github.com/electron/electron/releases/tag/v44.1.1) - [https://github.com/electron/electron/releases/tag/v45.0.0-alpha.4](https://github.com/electron/electron/releases/tag/v45.0.0-alpha.4) - [https://github.com/electron/electron](https://github.com/electron/electron) This data is provided by [OSV](https://osv.dev/vulnerability/GHSA-98mx-cjp9-gchm) and the [GitHub Advisory Database](https://github.com/github/advisory-database) ([CC-BY 4.0](https://github.com/github/advisory-database/blob/main/LICENSE.md)). </details> --- ### Electron: SameSite cookie restrictions are not applied to windows opened from links [CVE-2026-113796](https://nvd.nist.gov/vuln/detail/CVE-2026-113796) / [GHSA-2p8c-gr87-2676](https://github.com/advisories/GHSA-2p8c-gr87-2676) <details> <summary>More information</summary> #### Details ##### Impact Pages opened into a new window from a link were loaded as if the app itself had navigated there rather than the page that contained the link, so the request was treated as same-site: `SameSite=Strict` cookies were sent and `Sec-Fetch-Site` did not identify the initiating page. Content shown in the app could use this to make a credentialed top-level request to another site that relies on SameSite cookies as a CSRF defence. Apps are only affected if they load untrusted content and allow it to open new windows. Apps that deny new windows from untrusted content with `setWindowOpenHandler` are not affected. ##### Workarounds Return `{ action: 'deny' }` from `setWindowOpenHandler` for windows opened by untrusted content. ##### Fixed Versions * `45.0.0-alpha.6` * `44.3.0` * `43.7.0` * `42.11.3` ##### For more information If you have any questions or comments about this advisory, email us at [security@electronjs.org](mailto:security@electronjs.org) #### Severity - CVSS Score: 4.2 / 10 (Medium) - Vector String: `CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:L/I:L/A:N` #### References - [https://github.com/electron/electron/security/advisories/GHSA-2p8c-gr87-2676](https://github.com/electron/electron/security/advisories/GHSA-2p8c-gr87-2676) - [https://nvd.nist.gov/vuln/detail/CVE-2026-113796](https://nvd.nist.gov/vuln/detail/CVE-2026-113796) - [https://github.com/electron/electron/pull/53721](https://github.com/electron/electron/pull/53721) - [https://github.com/electron/electron/pull/53719](https://github.com/electron/electron/pull/53719) - [https://github.com/electron/electron/pull/53718](https://github.com/electron/electron/pull/53718) - [https://github.com/electron/electron/pull/53717](https://github.com/electron/electron/pull/53717) - [https://github.com/electron/electron/pull/53683](https://github.com/electron/electron/pull/53683) - [https://github.com/electron/electron/commit/a86ae4205ba2ba7ae60a6caa9d5d3a44321f2f9b](https://github.com/electron/electron/commit/a86ae4205ba2ba7ae60a6caa9d5d3a44321f2f9b) - [https://github.com/electron/electron/commit/98940cb274bb6adcb7cdb2da2d4495ac83119670](https://github.com/electron/electron/commit/98940cb274bb6adcb7cdb2da2d4495ac83119670) - [https://github.com/electron/electron/commit/652ef79ac79c6767b31e59b2f28d0d46114645e5](https://github.com/electron/electron/commit/652ef79ac79c6767b31e59b2f28d0d46114645e5) - [https://github.com/electron/electron/commit/0e6aca0618eeae50a18cfd50548b8688820629ed](https://github.com/electron/electron/commit/0e6aca0618eeae50a18cfd50548b8688820629ed) - [https://github.com/electron/electron/commit/079b9b1594ee62c336adc3aa430d4c1cf62bd51e](https://github.com/electron/electron/commit/079b9b1594ee62c336adc3aa430d4c1cf62bd51e) - [https://github.com/electron/electron/releases/tag/v42.11.3](https://github.com/electron/electron/releases/tag/v42.11.3) - [https://github.com/electron/electron/releases/tag/v43.7.0](https://github.com/electron/electron/releases/tag/v43.7.0) - [https://github.com/electron/electron/releases/tag/v44.3.0](https://github.com/electron/electron/releases/tag/v44.3.0) - [https://github.com/electron/electron/releases/tag/v45.0.0-alpha.6](https://github.com/electron/electron/releases/tag/v45.0.0-alpha.6) - [https://github.com/electron/electron](https://github.com/electron/electron) This data is provided by [OSV](https://osv.dev/vulnerability/GHSA-2p8c-gr87-2676) and the [GitHub Advisory Database](https://github.com/github/advisory-database) ([CC-BY 4.0](https://github.com/github/advisory-database/blob/main/LICENSE.md)). </details> --- ### Electron: openExternal permission requests can be attributed to the wrong origin [CVE-2026-114121](https://nvd.nist.gov/vuln/detail/CVE-2026-114121) / [GHSA-997q-gvvc-jwmx](https://github.com/advisories/GHSA-997q-gvvc-jwmx) <details> <summary>More information</summary> #### Details ##### Impact Requests to open external protocol URLs could be attributed to a document other than the one that asked for them, so the `requestingUrl` passed to `session.setPermissionRequestHandler` was a trusted origin for a launch untrusted content had requested. An origin-based handler could therefore let untrusted content launch an OS-registered external application. Apps are only affected if they grant `openExternal` based on the requesting origin and let untrusted content open or navigate windows. Apps whose permission handler denies `openExternal` for untrusted content are not affected. ##### Workarounds Deny the `openExternal` permission for untrusted content, or deny the windows it opens with `setWindowOpenHandler`. ##### Fixed Versions * `45.0.0-alpha.5` * `44.3.0` * `43.7.0` * `42.11.3` ##### For more information If you have any questions or comments about this advisory, email us at [security@electronjs.org](mailto:security@electronjs.org) #### Severity - CVSS Score: 5.4 / 10 (Medium) - Vector String: `CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:L/I:L/A:N` #### References - [https://github.com/electron/electron/security/advisories/GHSA-997q-gvvc-jwmx](https://github.com/electron/electron/security/advisories/GHSA-997q-gvvc-jwmx) - [https://nvd.nist.gov/vuln/detail/CVE-2026-114121](https://nvd.nist.gov/vuln/detail/CVE-2026-114121) - [https://github.com/electron/electron/pull/53699](https://github.com/electron/electron/pull/53699) - [https://github.com/electron/electron/pull/53698](https://github.com/electron/electron/pull/53698) - [https://github.com/electron/electron/pull/53697](https://github.com/electron/electron/pull/53697) - [https://github.com/electron/electron/pull/53696](https://github.com/electron/electron/pull/53696) - [https://github.com/electron/electron/pull/53682](https://github.com/electron/electron/pull/53682) - [https://github.com/electron/electron/commit/e3a400911084537bce7380ffea8af939572ce8dd](https://github.com/electron/electron/commit/e3a400911084537bce7380ffea8af939572ce8dd) - [https://github.com/electron/electron/commit/e0a20d5277b567aea8603f8e9852a4341407a586](https://github.com/electron/electron/commit/e0a20d5277b567aea8603f8e9852a4341407a586) - [https://github.com/electron/electron/commit/92a783952891805f2f82f344c40a6917b98a7d98](https://github.com/electron/electron/commit/92a783952891805f2f82f344c40a6917b98a7d98) - [https://github.com/electron/electron/commit/8aa5414f73792ed3b2e3f9ab6391b1832e6dc2c3](https://github.com/electron/electron/commit/8aa5414f73792ed3b2e3f9ab6391b1832e6dc2c3) - [https://github.com/electron/electron/commit/25057643bf6d9a20bad69e45707551ccf546f5ce](https://github.com/electron/electron/commit/25057643bf6d9a20bad69e45707551ccf546f5ce) - [https://github.com/electron/electron/releases/tag/v42.11.3](https://github.com/electron/electron/releases/tag/v42.11.3) - [https://github.com/electron/electron/releases/tag/v43.7.0](https://github.com/electron/electron/releases/tag/v43.7.0) - [https://github.com/electron/electron/releases/tag/v44.3.0](https://github.com/electron/electron/releases/tag/v44.3.0) - [https://github.com/electron/electron/releases/tag/v45.0.0-alpha.5](https://github.com/electron/electron/releases/tag/v45.0.0-alpha.5) - [https://github.com/electron/electron](https://github.com/electron/electron) This data is provided by [OSV](https://osv.dev/vulnerability/GHSA-997q-gvvc-jwmx) and the [GitHub Advisory Database](https://github.com/github/advisory-database) ([CC-BY 4.0](https://github.com/github/advisory-database/blob/main/LICENSE.md)). </details> --- ### Electron: HID and USB permission checks can be attributed to the wrong origin [CVE-2026-113800](https://nvd.nist.gov/vuln/detail/CVE-2026-113800) / [GHSA-fw47-9c62-h3vw](https://github.com/advisories/GHSA-fw47-9c62-h3vw) <details> <summary>More information</summary> #### Details ##### Impact For `hid` and `usb` permission checks made from an iframe, `session.setPermissionCheckHandler` was given the top-level frame's origin and details instead of the requesting frame's. Apps that allow these permissions based on origin could grant an embedded frame access intended for the top-level page. You're only affected if you use `setPermissionCheckHandler` with origin-based logic for `hid` or `usb` and embed cross-origin iframes with `allow="hid"` or `allow="usb"`. Apps that don't delegate those features to untrusted iframes are not affected. ##### Workarounds Don't add `allow="hid"` / `allow="usb"` to untrusted iframes, or make the decision in your `select-hid-device` / `select-usb-device` handler using `details.frame`. ##### Fixed Versions * `45.0.0-alpha.5` * `44.3.0` * `43.7.0` * `42.11.3` ##### For more information If you have any questions or comments about this advisory, email us at [security@electronjs.org](mailto:security@electronjs.org) #### Severity - CVSS Score: 5.4 / 10 (Medium) - Vector String: `CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:L/I:L/A:N` #### References - [https://github.com/electron/electron/security/advisories/GHSA-fw47-9c62-h3vw](https://github.com/electron/electron/security/advisories/GHSA-fw47-9c62-h3vw) - [https://github.com/electron/electron/pull/53656](https://github.com/electron/electron/pull/53656) - [https://github.com/electron/electron/pull/53679](https://github.com/electron/electron/pull/53679) - [https://github.com/electron/electron/pull/53688](https://github.com/electron/electron/pull/53688) - [https://github.com/electron/electron/pull/53689](https://github.com/electron/electron/pull/53689) - [https://github.com/electron/electron/pull/53736](https://github.com/electron/electron/pull/53736) - [https://github.com/electron/electron/commit/22de0a3a06cfd3174fc6c59c3810ab5e1c91bf1a](https://github.com/electron/electron/commit/22de0a3a06cfd3174fc6c59c3810ab5e1c91bf1a) - [https://github.com/electron/electron/commit/36042b2e1b1c60c67b05ba0e95d1a34f608b9742](https://github.com/electron/electron/commit/36042b2e1b1c60c67b05ba0e95d1a34f608b9742) - [https://github.com/electron/electron/commit/56cc43eb677d46b86b0d3f49b5fba71404ab1ff0](https://github.com/electron/electron/commit/56cc43eb677d46b86b0d3f49b5fba71404ab1ff0) - [https://github.com/electron/electron/commit/922073f8601479e93071f56f0745041291b206fd](https://github.com/electron/electron/commit/922073f8601479e93071f56f0745041291b206fd) - [https://github.com/electron/electron/commit/c965cee73284c4b230a81d51a7db6115e55da8c0](https://github.com/electron/electron/commit/c965cee73284c4b230a81d51a7db6115e55da8c0) - [https://github.com/electron/electron](https://github.com/electron/electron) - [https://github.com/electron/electron/releases/tag/v42.11.3](https://github.com/electron/electron/releases/tag/v42.11.3) - [https://github.com/electron/electron/releases/tag/v43.7.0](https://github.com/electron/electron/releases/tag/v43.7.0) - [https://github.com/electron/electron/releases/tag/v44.3.0](https://github.com/electron/electron/releases/tag/v44.3.0) - [https://github.com/electron/electron/releases/tag/v45.0.0-alpha.5](https://github.com/electron/electron/releases/tag/v45.0.0-alpha.5) This data is provided by [OSV](https://osv.dev/vulnerability/GHSA-fw47-9c62-h3vw) and the [GitHub Advisory Database](https://github.com/github/advisory-database) ([CC-BY 4.0](https://github.com/github/advisory-database/blob/main/LICENSE.md)). </details> --- ### Electron: Frame subscription trusts GPU-supplied frame geometry [CVE-2026-114122](https://nvd.nist.gov/vuln/detail/CVE-2026-114122) / [GHSA-3qxv-5xgr-q7w9](https://github.com/advisories/GHSA-3qxv-5xgr-q7w9) <details> <summary>More information</summary> #### Details ##### Impact Frame data received from the GPU process for `webContents.beginFrameSubscription` was not fully validated by the main process. A compromised GPU process could cause the main process to read out-of-bounds memory while producing the captured frame images, disclosing memory or crashing the app. Apps are only affected if they use `webContents.beginFrameSubscription` and an attacker has separately gained code execution in the GPU process. Apps that do not subscribe to captured frames are not affected. ##### Workarounds There are no app side workarounds, you must update to a patched version of Electron. ##### Fixed Versions * `45.0.0-alpha.9` * `44.4.3` * `43.7.3` * `42.11.6` ##### For more information If you have any questions or comments about this advisory, email us at [security@electronjs.org](mailto:security@electronjs.org) #### Severity - CVSS Score: 3.9 / 10 (Low) - Vector String: `CVSS:3.1/AV:L/AC:H/PR:H/UI:N/S:C/C:L/I:N/A:L` #### References - [https://github.com/electron/electron/security/advisories/GHSA-3qxv-5xgr-q7w9](https://github.com/electron/electron/security/advisories/GHSA-3qxv-5xgr-q7w9) - [https://nvd.nist.gov/vuln/detail/CVE-2026-114122](https://nvd.nist.gov/vuln/detail/CVE-2026-114122) - [https://github.com/electron/electron/pull/54047](https://github.com/electron/electron/pull/54047) - [https://github.com/electron/electron/pull/54038](https://github.com/electron/electron/pull/54038) - [https://github.com/electron/electron/pull/54037](https://github.com/electron/electron/pull/54037) - [https://github.com/electron/electron/pull/54036](https://github.com/electron/electron/pull/54036) - [https://github.com/electron/electron/pull/54033](https://github.com/electron/electron/pull/54033) - [https://github.com/electron/electron/commit/d7f87070a8d738e561245d1ade4d6fbb082db80a](https://github.com/electron/electron/commit/d7f87070a8d738e561245d1ade4d6fbb082db80a) - [https://github.com/electron/electron/commit/d496507ffa1693edaa704a4be130fbcb8ecb4ada](https://github.com/electron/electron/commit/d496507ffa1693edaa704a4be130fbcb8ecb4ada) - [https://github.com/electron/electron/commit/8d48be150c3fd53b0d02854124bdb7858598799c](https://github.com/electron/electron/commit/8d48be150c3fd53b0d02854124bdb7858598799c) - [https://github.com/electron/electron/commit/64ae597deda8956037387b439e6361f0fe936c86](https://github.com/electron/electron/commit/64ae597deda8956037387b439e6361f0fe936c86) - [https://github.com/electron/electron/commit/24d8dbc661c6a109476ae59e9a2740b35d005cf4](https://github.com/electron/electron/commit/24d8dbc661c6a109476ae59e9a2740b35d005cf4) - [https://github.com/electron/electron/releases/tag/v42.11.6](https://github.com/electron/electron/releases/tag/v42.11.6) - [https://github.com/electron/electron/releases/tag/v43.7.3](https://github.com/electron/electron/releases/tag/v43.7.3) - [https://github.com/electron/electron/releases/tag/v44.4.3](https://github.com/electron/electron/releases/tag/v44.4.3) - [https://github.com/electron/electron/releases/tag/v45.0.0-alpha.9](https://github.com/electron/electron/releases/tag/v45.0.0-alpha.9) - [https://github.com/electron/electron](https://github.com/electron/electron) This data is provided by [OSV](https://osv.dev/vulnerability/GHSA-3qxv-5xgr-q7w9) and the [GitHub Advisory Database](https://github.com/github/advisory-database) ([CC-BY 4.0](https://github.com/github/advisory-database/blob/main/LICENSE.md)). </details> --- ### Electron: Off-screen rendering on macOS trusts GPU-supplied frame geometry [CVE-2026-114124](https://nvd.nist.gov/vuln/detail/CVE-2026-114124) / [GHSA-h3v5-h239-pg29](https://github.com/advisories/GHSA-h3v5-h239-pg29) <details> <summary>More information</summary> #### Details ##### Impact In offscreen rendering mode on macOS, frame data received from the GPU process was not fully validated by the main process. A compromised GPU process could cause the main process to read out-of-bounds memory while producing `paint` event images, disclosing memory or crashing the app. GHSA-pfmc-3mgc-p6fp covers the same issue on the other capture paths. Apps are only affected if they use offscreen rendering (`webPreferences.offscreen`) on macOS and an attacker has separately gained code execution in the GPU process. Apps that do not use offscreen rendering are not affected. ##### Workarounds There are no app side workarounds, you must update to a patched version of Electron. ##### Fixed Versions * `45.0.0-alpha.9` * `44.4.3` * `43.7.3` * `42.11.6` ##### For more information If you have any questions or comments about this advisory, email us at [security@electronjs.org](mailto:security@electronjs.org) #### Severity - CVSS Score: 3.9 / 10 (Low) - Vector String: `CVSS:3.1/AV:L/AC:H/PR:H/UI:N/S:C/C:L/I:N/A:L` #### References - [https://github.com/electron/electron/security/advisories/GHSA-h3v5-h239-pg29](https://github.com/electron/electron/security/advisories/GHSA-h3v5-h239-pg29) - [https://nvd.nist.gov/vuln/detail/CVE-2026-114124](https://nvd.nist.gov/vuln/detail/CVE-2026-114124) - [https://github.com/electron/electron/pull/54047](https://github.com/electron/electron/pull/54047) - [https://github.com/electron/electron/pull/54038](https://github.com/electron/electron/pull/54038) - [https://github.com/electron/electron/pull/54037](https://github.com/electron/electron/pull/54037) - [https://github.com/electron/electron/pull/54036](https://github.com/electron/electron/pull/54036) - [https://github.com/electron/electron/pull/54033](https://github.com/electron/electron/pull/54033) - [https://github.com/electron/electron/commit/d7f87070a8d738e561245d1ade4d6fbb082db80a](https://github.com/electron/electron/commit/d7f87070a8d738e561245d1ade4d6fbb082db80a) - [https://github.com/electron/electron/commit/d496507ffa1693edaa704a4be130fbcb8ecb4ada](https://github.com/electron/electron/commit/d496507ffa1693edaa704a4be130fbcb8ecb4ada) - [https://github.com/electron/electron/commit/8d48be150c3fd53b0d02854124bdb7858598799c](https://github.com/electron/electron/commit/8d48be150c3fd53b0d02854124bdb7858598799c) - [https://github.com/electron/electron/commit/64ae597deda8956037387b439e6361f0fe936c86](https://github.com/electron/electron/commit/64ae597deda8956037387b439e6361f0fe936c86) - [https://github.com/electron/electron/commit/24d8dbc661c6a109476ae59e9a2740b35d005cf4](https://github.com/electron/electron/commit/24d8dbc661c6a109476ae59e9a2740b35d005cf4) - [https://github.com/electron/electron/releases/tag/v42.11.6](https://github.com/electron/electron/releases/tag/v42.11.6) - [https://github.com/electron/electron/releases/tag/v43.7.3](https://github.com/electron/electron/releases/tag/v43.7.3) - [https://github.com/electron/electron/releases/tag/v44.4.3](https://github.com/electron/electron/releases/tag/v44.4.3) - [https://github.com/electron/electron/releases/tag/v45.0.0-alpha.9](https://github.com/electron/electron/releases/tag/v45.0.0-alpha.9) - [https://github.com/electron/electron](https://github.com/electron/electron) This data is provided by [OSV](https://osv.dev/vulnerability/GHSA-h3v5-h239-pg29) and the [GitHub Advisory Database](https://github.com/github/advisory-database) ([CC-BY 4.0](https://github.com/github/advisory-database/blob/main/LICENSE.md)). </details> --- ### Electron: Pointer lock permission requests can be attributed to the wrong frame [CVE-2026-113798](https://nvd.nist.gov/vuln/detail/CVE-2026-113798) / [GHSA-x562-297c-g43g](https://github.com/advisories/GHSA-x562-297c-g43g) <details> <summary>More information</summary> #### Details ##### Impact For `pointerLock` permission requests made from some cross-origin iframes, `session.setPermissionRequestHandler()` was given the top-level frame's `requestingUrl` and `isMainFrame` instead of the requesting frame's. Apps that grant pointer lock based on the requesting origin could grant it to embedded content under the top-level page's identity. Apps are only affected if they embed untrusted content in iframes and decide `pointerLock` requests by origin in `setPermissionRequestHandler`. Apps that do not embed untrusted content, or that deny `pointerLock` for it, are not affected. ##### Workarounds Deny the `pointerLock` permission for web contents that embed untrusted frames. ##### Fixed Versions * `45.0.0-alpha.13` * `44.5.0` * `43.7.6` * `42.11.9` ##### For more information If you have any questions or comments about this advisory, email us at [security@electronjs.org](mailto:security@electronjs.org) #### Severity - CVSS Score: 5.4 / 10 (Medium) - Vector String: `CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:L/A:L` #### References - [https://github.com/electron/electron/security/advisories/GHSA-x562-297c-g43g](https://github.com/electron/electron/security/advisories/GHSA-x562-297c-g43g) - [https://nvd.nist.gov/vuln/detail/CVE-2026-113798](https://nvd.nist.gov/vuln/detail/CVE-2026-113798) - [https://github.com/electron/electron/pull/54466](https://github.com/electron/electron/pull/54466) - [https://github.com/electron/electron/pull/54465](https://github.com/electron/electron/pull/54465) - [https://github.com/electron/electron/pull/54464](https://github.com/electron/electron/pull/54464) - [https://github.com/electron/electron/pull/54463](https://github.com/electron/electron/pull/54463) - [https://github.com/electron/electron/pull/54432](https://github.com/electron/electron/pull/54432) - [https://github.com/electron/electron/commit/a48e6eaaafa85b6fc40f7431ceec4fd6ef4bb899](https://github.com/electron/electron/commit/a48e6eaaafa85b6fc40f7431ceec4fd6ef4bb899) - [https://github.com/electron/electron/commit/4073e9f4712f61e6b8abd5548673cc7638f6c1a1](https://github.com/electron/electron/commit/4073e9f4712f61e6b8abd5548673cc7638f6c1a1) - [https://github.com/electron/electron/commit/1755ee598697356959219beefee1e139bc3f8207](https://github.com/electron/electron/commit/1755ee598697356959219beefee1e139bc3f8207) - [https://github.com/electron/electron/commit/0b680cfa1ffa70a50282da53efde37a210d5223b](https://github.com/electron/electron/commit/0b680cfa1ffa70a50282da53efde37a210d5223b) - [https://github.com/electron/electron/commit/076c7496791a45968cf8d9e76e9657bc161ea979](https://github.com/electron/electron/commit/076c7496791a45968cf8d9e76e9657bc161ea979) - [https://github.com/electron/electron/releases/tag/v42.11.9](https://github.com/electron/electron/releases/tag/v42.11.9) - [https://github.com/electron/electron/releases/tag/v43.7.6](https://github.com/electron/electron/releases/tag/v43.7.6) - [https://github.com/electron/electron/releases/tag/v44.5.0](https://github.com/electron/electron/releases/tag/v44.5.0) - [https://github.com/electron/electron/releases/tag/v45.0.0-alpha.13](https://github.com/electron/electron/releases/tag/v45.0.0-alpha.13) - [https://github.com/electron/electron](https://github.com/electron/electron) This data is provided by [OSV](https://osv.dev/vulnerability/GHSA-x562-297c-g43g) and the [GitHub Advisory Database](https://github.com/github/advisory-database) ([CC-BY 4.0](https://github.com/github/advisory-database/blob/main/LICENSE.md)). </details> --- ### Electron: Mitigation for compromised eMudhra intermediate certificates [CVE-2026-115570](https://nvd.nist.gov/vuln/detail/CVE-2026-115570) / [GHSA-jr5w-w6x2-84p9](https://github.com/advisories/GHSA-jr5w-w6x2-84p9) <details> <summary>More information</summary> #### Details ##### Impact A set of eMudhra intermediate certificates were compromised and are being blocked by browsers and other TLS clients. This Electron update adds the same block to both Chromium networking and Node.js `tls`, `https` and `fetch`. On earlier versions, an attacker holding a certificate issued through these intermediates and able to intercept network traffic could impersonate a TLS server to an app. Apps are only affected if they make TLS connections over a network an attacker can intercept. Apps that make no network connections are not affected. Other software has shipped the same mitigation, including Go (CVE-2026-111943) and Firefox (CVE-2026-113470). ##### Workarounds There are no app side workarounds, you must update to a patched version of Electron. ##### Fixed Versions * `45.0.0-beta.6` * `44.9.1` * `43.8.1` * `42.11.16` ##### For more information If you have any questions or comments about this advisory, email us at [security@electronjs.org](mailto:security@electronjs.org) #### Severity - CVSS Score: 7.4 / 10 (High) - Vector String: `CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N` #### References - [https://github.com/electron/electron/security/advisories/GHSA-jr5w-w6x2-84p9](https://github.com/electron/electron/security/advisories/GHSA-jr5w-w6x2-84p9) - [https://github.com/electron/electron/pull/55127](https://github.com/electron/electron/pull/55127) - [https://github.com/electron/electron/pull/55128](https://github.com/electron/electron/pull/55128) - [https://github.com/electron/electron/pull/55129](https://github.com/electron/electron/pull/55129) - [https://github.com/electron/electron/pull/55130](https://github.com/electron/electron/pull/55130) - [https://github.com/electron/electron/commit/093583c71be71c85453e6e225137bf2af755fbcc](https://github.com/electron/electron/commit/093583c71be71c85453e6e225137bf2af755fbcc) - [https://github.com/electron/electron/commit/1d2f13b1985444a38abf389db38228ac42f5bcad](https://github.com/electron/electron/commit/1d2f13b1985444a38abf389db38228ac42f5bcad) - [https://github.com/electron/electron/commit/817c43f925677eb88034bfba4f0b8dfd28e7ad20](https://github.com/electron/electron/commit/817c43f925677eb88034bfba4f0b8dfd28e7ad20) - [https://github.com/electron/electron/commit/e02265be96c5e13ae43644ef482b718e1e800499](https://github.com/electron/electron/commit/e02265be96c5e13ae43644ef482b718e1e800499) - [https://github.com/electron/electron](https://github.com/electron/electron) - [https://github.com/electron/electron/releases/tag/v42.11.16](https://github.com/electron/electron/releases/tag/v42.11.16) - [https://github.com/electron/electron/releases/tag/v43.8.1](https://github.com/electron/electron/releases/tag/v43.8.1) - [https://github.com/electron/electron/releases/tag/v44.9.1](https://github.com/electron/electron/releases/tag/v44.9.1) - [https://github.com/electron/electron/releases/tag/v45.0.0-beta.6](https://github.com/electron/electron/releases/tag/v45.0.0-beta.6) This data is provided by [OSV](https://osv.dev/vulnerability/GHSA-jr5w-w6x2-84p9) and the [GitHub Advisory Database](https://github.com/github/advisory-database) ([CC-BY 4.0](https://github.com/github/advisory-database/blob/main/LICENSE.md)). </details> --- ### Release Notes <details> <summary>electron/electron (electron)</summary> ### [`v45.2.1`](https://github.com/electron/electron/releases/tag/v45.2.1): electron v45.2.1 [Compare Source](https://github.com/electron/electron/compare/v45.2.0...v45.2.1) ### Release Notes for v45.2.1 #### Other Changes - Backported fixes from upstream Chromium. [#&#8203;55523](https://github.com/electron/electron/pull/55523) - Updated Chromium to 156.0.8078.75. [#&#8203;55419](https://github.com/electron/electron/pull/55419) ### [`v45.2.0`](https://github.com/electron/electron/releases/tag/v45.2.0): electron v45.2.0 [Compare Source](https://github.com/electron/electron/compare/v45.1.0...v45.2.0) ### Release Notes for v45.2.0 #### Features - Added `Menu.setHighlightColors()` to set menu highlight colors on Windows. [#&#8203;55493](https://github.com/electron/electron/pull/55493) <sup>(Also in [46](https://github.com/electron/electron/pull/55494))</sup> - Added support for `chrome.storage.sync` in extensions. It behaves as a second local storage area with Chrome's sync quotas; there is no cross-device sync. [#&#8203;55253](https://github.com/electron/electron/pull/55253) #### Fixes - Fixed DevTools "Save" prompting for a location every time instead of reusing the previously chosen file. [#&#8203;55485](https://github.com/electron/electron/pull/55485) - Fixed DevTools "Save As" using the old file and Linux cancels treated as saved. - Fixed fractional opacity being truncated in `window.open` feature strings. [#&#8203;55499](https://github.com/electron/electron/pull/55499) <sup>(Also in [46](https://github.com/electron/electron/pull/55498))</sup> - Fixed `webContents.adjustSelection()` ignoring the `end` option. [#&#8203;55462](https://github.com/electron/electron/pull/55462) <sup>(Also in [44](https://github.com/electron/electron/pull/55461), [46](https://github.com/electron/electron/pull/55463))</sup> #### Performance Improvements - Improved performance of `net.fetch()` requests without a body. [#&#8203;55446](https://github.com/electron/electron/pull/55446) <sup>(Also in [43](https://github.com/electron/electron/pull/55447), [44](https://github.com/electron/electron/pull/55445), [46](https://github.com/electron/electron/pull/55444))</sup> - Improved performance of repeated `net.fetch()` calls for `file:` URLs. [#&#8203;55459](https://github.com/electron/electron/pull/55459) <sup>(Also in [44](https://github.com/electron/electron/pull/55458), [46](https://github.com/electron/electron/pull/55457))</sup> #### Other Changes - Backported fixes from upstream Chromium, Dawn, Skia and V8. [#&#8203;55491](https://github.com/electron/electron/pull/55491) ### [`v45.1.0`](https://github.com/electron/electron/releases/tag/v45.1.0): electron v45.1.0 [Compare Source](https://github.com/electron/electron/compare/v45.0.0...v45.1.0) ### Release Notes for v45.1.0 #### Features - Added filtering options to `session.registerPreloadScript` - `matches`, `excludeMatches`, `includeGlobs`, `excludeGlobs`, `matchOriginAsFallback`. [#&#8203;55181](https://github.com/electron/electron/pull/55181) <sup>(Also in [44](https://github.com/electron/electron/pull/55182))</sup> #### Fixes - Fixed a crash on Linux when a D-Bus method call was made on a disconnected bus. [#&#8203;55292](https://github.com/electron/electron/pull/55292) <sup>(Also in [44](https://github.com/electron/electron/pull/55290), [46](https://github.com/electron/electron/pull/55289))</sup> - Fixed a main process crash when `onSendHeaders` observed Blob uploads. [#&#8203;55169](https://github.com/electron/electron/pull/55169) <sup>(Also in [44](https://github.com/electron/electron/pull/55168))</sup> - Fixed extension `chrome.webRequest` events reporting a `tabId` of `-1` and `chrome.declarativeNetRequest` rules restricted to tabs never matching. [#&#8203;55283](https://github.com/electron/electron/pull/55283) <sup>(Also in [46](https://github.com/electron/electron/pull/55284))</sup> - Fixed `session.clearStorageData()` unregistering the service workers of loaded extensions. - Fixed `chrome.management` methods and events being unavailable to extensions with the `management` permission. - Fixed `__MSG_*__` placeholders not being localized in extension stylesheets. - Fixed extension service workers being stopped after 30 seconds while a WebSocket was active. - Fixed sandboxed extension pages being hosted in a process with extension API privileges. - Fixed extension service workers running an outdated script after an app restart when the extension's files changed without a version change. - Fixed `chrome.alarms` and content scripts registered with `persistAcrossSessions` not persisting across app restarts. - Fixed File System Access blocklist gaps for `.git/hooks` writes and hypervisor UNC shares. [#&#8203;55329](https://github.com/electron/electron/pull/55329) - Fixed handling of malformed asar archives whose size fields do not match the file length. [#&#8203;55175](https://github.com/electron/electron/pull/55175) <sup>(Also in [43](https://github.com/electron/electron/pull/55179), [44](https://github.com/electron/electron/pull/55176))</sup> - Fixed inconsistent handling of asar archive paths between the main process and child processes. [#&#8203;55184](https://github.com/electron/electron/pull/55184) <sup>(Also in [43](https://github.com/electron/electron/pull/55185), [44](https://github.com/electron/electron/pull/55183))</sup> - Fixed `Menu.popup()` on macOS sometimes not showing a menu after another closed. [#&#8203;55326](https://github.com/electron/electron/pull/55326) <sup>(Also in [44](https://github.com/electron/electron/pull/55325), [46](https://github.com/electron/electron/pull/55324))</sup> - Fixed MV3 extension events not arriving to background service workers. [#&#8203;55154](https://github.com/electron/electron/pull/55154) <sup>(Also in [43](https://github.com/electron/electron/pull/55153), [44](https://github.com/electron/electron/pull/55152))</sup> - Fixed `protocol.registerSource` schemes not applying the same fetch rules as `protocol.handle` schemes. [#&#8203;55178](https://github.com/electron/electron/pull/55178) <sup>(Also in [44](https://github.com/electron/electron/pull/55177))</sup> - Fixed requests stalling when an extension used a blocking `chrome.webRequest` listener. [#&#8203;55271](https://github.com/electron/electron/pull/55271) <sup>(Also in [46](https://github.com/electron/electron/pull/55263))</sup> - Fixed `utilityProcess` not emitting an `exit` event when the app quit while the process was still launching. [#&#8203;55274](https://github.com/electron/electron/pull/55274) <sup>(Also in [43](https://github.com/electron/electron/pull/55272), [44](https://github.com/electron/electron/pull/55273), [46](https://github.com/electron/electron/pull/55264))</sup> #### Other Changes - Updated Chromium to 156.0.8078.49. [#&#8203;55252](https://github.com/electron/electron/pull/55252) - Updated Node.js to v24.22.1. [#&#8203;55163](https://github.com/electron/electron/pull/55163) ### [`v45.0.0`](https://github.com/electron/electron/releases/tag/v45.0.0): electron v45.0.0 [Compare Source](https://github.com/electron/electron/compare/v44.10.1...v45.0.0) ### Release Notes for v45.0.0 #### Stack Upgrades - Chromium `156.0.8078.48` - [Chrome 156 Release Notes](https://chromestatus.com/release-notes/156) - [Chrome 155 Release Notes](https://chromestatus.com/release-notes/155) - [New in 154](https://developer.chrome.com/blog/new-in-chrome-154/) - [New in 153](https://developer.chrome.com/blog/new-in-chrome-153/) - Node `v24.22.0` - [Node 24.22.0 blog post](https://nodejs.org/en/blog/release/v24.22.0/) - V8 `15.6` #### Breaking Changes - Reduced sandboxed renderer startup work for preload scripts that do not use `Buffer`. [#&#8203;54048](https://github.com/electron/electron/pull/54048) - Removed the `events`, `timers` and `url` modules and the `Buffer`, `setImmediate` and `clearImmediate` globals from sandboxed preload scripts; use a polyfill. - Made sandboxed renderers without a preload script start faster. - Made sandboxed preload scripts start faster; Electron no longer evaluates a JavaScript bundle of its own in sandboxed renderers unless `webviewTag` is enabled. - With `nodeIntegrationInWorker: true`, a `Worker` created from an `<iframe>` in the same process as the main frame used to get Node.js integration even though the iframe itself had none. Workers now only get Node.js integration when the frame that creates them has it: the main frame, or any frame when `nodeIntegrationInSubFrames` is enabled. - A `chrome-extension://` document used to receive the window's preload script (and session preload scripts) wherever it was embedded. It now only does so when it is a top-level frame or is hosted inside the DevTools front-end (a `devtools_page` or panel); an extension frame embedded in an ordinary page is treated like any other subframe and follows `nodeIntegrationInSubFrames`. - The legacy `chromeMediaSource: 'desktop'` constraint now only accepts screen and window source ids from [`desktopCapturer.getSources`](https://github.com/electron/electron/blob/v45.0.0/docs/api/desktop-capturer.md#desktopcapturergetsourcesoptions). Passing a WebContents source id there now fails with an "Invalid state" error. To capture a WebContents, use `chromeMediaSource: 'tab'` with an id from [`webContents.getMediaSourceId()`](https://github.com/electron/electron/blob/v45.0.0/docs/api/web-contents.md#contentsgetmediasourceidrequestwebcontents), or use [`ses.setDisplayMediaRequestHandler`](https://github.com/electron/electron/blob/v45.0.0/docs/api/session.md#sessetdisplaymediarequesthandlerhandler-opts). - The experimental `contentTracing.enableHeapProfiling()` API has been removed. Chromium removed the memlog implementation that backed this API and replaced it with a Perfetto heap-profiling data source. Pass a `nativeHeapProfiling` option to `contentTracing.startRecording()` to enable heap profiling for the duration of a trace. Like all recordings, heap-enabled recordings use the [Perfetto protobuf format](https://perfetto.dev/docs/reference/trace-packet-proto). - Changed heap profiling in `contentTracing` recordings to now use a perfetto heap-profiling data source. [#&#8203;54863](https://github.com/electron/electron/pull/54863) - Screen, window and tab capture requests are now reported to `setPermissionRequestHandler` as `display-capture` instead of `media`; a handler that allows only `media` must also allow `display-capture` to keep screen sharing working. [#&#8203;52824](https://github.com/electron/electron/pull/52824) - Chromium has disabled `document.requestStorageAccessFor` by default ahead of its removal. The API can temporarily be restored with the [`enableBlinkFeatures`](https://github.com/electron/electron/blob/v45.0.0/docs/api/structures/web-preferences.md) web preference set to `RequestStorageAccessFor`. See [Chromium's intent to remove discussion](https://groups.google.com/a/chromium.org/g/blink-dev/c/bqHGZYHWxnQ) for more information. - `fs.open`, `fs.openSync` and `fs.promises.open` on a file inside an ASAR archive used to extract the file to a temporary copy and return a descriptor for that copy. They now return a descriptor that only identifies the entry to Node's `fs` module, which reads directly out of the archive with no temporary file (`fs.read`, `fs.readv`, `fs.fstat`, `fs.readFile(fd)`, `fs.createReadStream` and the `FileHandle` methods). The descriptor itself is not backed by the file's contents: code that reads the raw descriptor (a native addon, `child_process` `stdio`, `net.Socket({ fd })`, `http2stream.respondWithFile()` / `respondWithFD()`, a `FileHandle` transferred to a worker, ...) fails with `EBADF` and is not supported. Opening a file inside an archive with a flag that allows writing (`w`, `a`, `r+`, ...) now fails with `EACCES` instead of silently writing to the temporary copy, and `fs.fchmod`, `fs.fchown` and `fs.futimes` on these descriptors fail with `EACCES`. - A `window.open()` child whose `sandbox` state differs from its opener's renderer process is now created in its own process with no opener relationship instead of silently sharing the opener's process; set `sandbox: false` in `setWindowOpenHandler` to keep sharing an unsandboxed opener's process. [#&#8203;52472](https://github.com/electron/electron/pull/52472) - The synchronous `safeStorage` methods are deprecated and will be removed in Electron 46, following Chromium's removal of the synchronous OSCrypt backend they are built on. Use the asynchronous methods instead, which use the same per-platform key stores. Data encrypted with `safeStorage.encryptString()` can be decrypted with `safeStorage.decryptStringAsync()`. - Added `select-client-certificate` event support for `net.request` and `net.fetch`; requests to servers requesting a client certificate no longer fail with `ERR_SSL_CLIENT_AUTH_CERT_NEEDED`, and applications can now select a certificate to present. [#&#8203;52162](https://github.com/electron/electron/pull/52162) <sup>(Also in [44](https://github.com/electron/electron/pull/52397))</sup> - Clipboard module is now aligned with the W3C Clipboard API. [#&#8203;51707](https://github.com/electron/electron/pull/51707) <sup>(Also in [44](https://github.com/electron/electron/pull/52508))</sup> - Removed 32-bit builds (Windows ia32 and Linux armv7l). Electron is now published only for 64-bit (x64 and arm64) platforms. [#&#8203;51816](https://github.com/electron/electron/pull/51816) <sup>(Also in [44](https://github.com/electron/electron/pull/52326))</sup> - Removed `openAsHidden` option from `app.setLoginItemSettings()`. [#&#8203;52351](https://github.com/electron/electron/pull/52351) <sup>(Also in [44](https://github.com/electron/electron/pull/52667))</sup> - Removed `openAsHidden`, `wasOpenedAsHidden` and `restoreState` fields from return value of `app.getLoginItemSettings()`. - Fixed potential deadlock inside `app.getLoginItemSettings()` on macOS. - Updated the Linux support policy. [#&#8203;52429](https://github.com/electron/electron/pull/52429) <sup>(Also in [44](https://github.com/electron/electron/pull/52538))</sup> See the [Breaking Changes](https://github.com/electron/electron/blob/v45.0.0/docs/breaking-changes.md) doc for more details about these changes. #### Features - Added a `badge` property to `MenuItem` on macOS 14+ for showing a count or custom text badge next to a menu item's label. [#&#8203;50805](https://github.com/electron/electron/pull/50805) <sup>(Also in [43](https://github.com/electron/electron/pull/53045), [44](https://github.com/electron/electron/pull/53046))</sup> - Added a Save/Restore Window State API for cross-platform use. [#&#8203;51510](https://github.com/electron/electron/pull/51510) <sup>(Also in [44](https://github.com/electron/electron/pull/52270))</sup> - Added a Windows Error Reporting helper (`electron_wer.dll`, renamed to `<app>_wer.dll` alongside the executable) so `crashReporter` captures `__fastfail` and other crashes that bypass the in-process handler on Windows. [#&#8203;53851](https://github.com/electron/electron/pull/53851) - Added app shims on macOS to show windows under another app's Dock icon. [#&#8203;55072](https://github.com/electron/electron/pull/55072) <sup>(Also in [44](https://github.com/electron/electron/pull/55073))</sup> - Added `app.configureWebAuthn()` API to enable iCloud Keychain passkey support on macOS. When enabled, `navigator.credentials.create()` and `.get()` present Apple's native passkey UI via [`ASAuthorizationController`](https://developer.apple.com/documentation/authenticationservices/asauthorizationcontroller?language=objc). [#&#8203;51563](https://github.com/electron/electron/pull/51563) - Added `available` to `process.getSystemMemoryInfo()` on Linux, exposing `proc/meminfo` MemAvailable. [#&#8203;52299](https://github.com/electron/electron/pull/52299) <sup>(Also in [42](https://github.com/electron/electron/pull/52378), [43](https://github.com/electron/electron/pull/52379), [44](https://github.com/electron/electron/pull/52380))</sup> - Added `disableWakeLocks` option to WebPreferences. [#&#8203;52342](https://github.com/electron/electron/pull/52342) - Added `getIsolatedWorlds` method and `isolated-world-created` event for `webFrame` to enable discovery of isolated worlds. [#&#8203;50633](https://github.com/electron/electron/pull/50633) - Added `initiatorOrigin` to webRequest and protocol handler requests, `DownloadItem.getInitiatorOrigin()`, and a trailing `frame` argument to the `will-download` and `preconnect` session events. [#&#8203;53700](https://github.com/electron/electron/pull/53700) <sup>(Also in [43](https://github.com/electron/electron/pull/53704), [44](https://github.com/electron/electron/pull/53703))</sup> - Added launch-failure reporting with `systemErrorCode` to the `app` `child-process-gone` event. [#&#8203;54230](https://github.com/electron/electron/pull/54230) <sup>(Also in [44](https://github.com/electron/electron/pull/54231))</sup> - Added support for `Notification` action buttons on Linux. [#&#8203;54889](https://github.com/electron/electron/pull/54889) <sup>(Also in [44](https://github.com/electron/electron/pull/54890))</sup> - Added support for the Prompt API via the new `localAIHandler` module in UtilityProcess. [#&#8203;50659](https://github.com/electron/electron/pull/50659) - Added the `ELECTRON_DEBUG_DRAGGABLE_REGIONS` environment variable, which visualizes and logs draggable regions in unpackaged apps to help debug custom title bars. [#&#8203;53626](https://github.com/electron/electron/pull/53626) <sup>(Also in [43](https://github.com/electron/electron/pull/53633), [44](https://github.com/electron/electron/pull/53627))</sup> - Added the experimental `protocol.registerSource()` to serve a custom scheme from directories on disk without a JavaScript handler. [#&#8203;54521](https://github.com/electron/electron/pull/54521) <sup>(Also in [44](https://github.com/electron/electron/pull/54522))</sup> - Added webContents.caretBrowsingEnabled for toggling caret browsing in a WebContents. [#&#8203;52696](https://github.com/electron/electron/pull/52696) <sup>(Also in [43](https://github.com/electron/electron/pull/53034), [44](https://github.com/electron/electron/pull/53035))</sup> - Added `webFrameMain.printToPDF()` to allow printing individual frames to PDF from the main process. [#&#8203;52439](https://github.com/electron/electron/pull/52439) <sup>(Also in [42](https://github.com/electron/electron/pull/52626), [43](https://github.com/electron/electron/pull/52627), [44](https://github.com/electron/electron/pull/52625))</sup> - Fixed an issue where `getDisplayMedia({ audio: { restrictOwnAudio: true } })` was ignored in `setDisplayMediaRequestHandler`, causing loopback audio to include local app playback. [#&#8203;52455](https://github.com/electron/electron/pull/52455) <sup>(Also in [43](https://github.com/electron/electron/pull/52533), [44](https://github.com/electron/electron/pull/52534))</sup> - Frameless windows on Linux now use system-themed titlebar icons for Window Controls Overlay (WCO). [#&#8203;52461](https://github.com/electron/electron/pull/52461) <sup>(Also in [44](https://github.com/electron/electron/pull/52531))</sup> - `fs.open`, `fs.createReadStream`, `fs.copyFile`, `fs.cp` and friends now read files inside ASAR archives directly from the archive instead of extracting a temporary copy; `fs.opendir` and `fs.readlink` work on archives; opening a packed file for writing fails with `EACCES`. [#&#8203;52833](https://github.com/electron/electron/pull/52833) - Restored `app.setBadgeCount` and `win.setProgressBar` for Linux. These APIs now support any dock or taskbar which implements the LauncherEntry D-Bus API, and they no longer require `libunity`. [#&#8203;52739](https://github.com/electron/electron/pull/52739) <sup>(Also in [44](https://github.com/electron/electron/pull/52895))</sup> - The macOS `autoUpdater` now streams update downloads to disk, resumes an interrupted download on the next check instead of starting over, and applies a binary delta when the update feed offers one for the running version. [#&#8203;52820](https://github.com/electron/electron/pull/52820) <sup>(Also in [44](https://github.com/electron/electron/pull/54204))</sup> #### Fixes - `<webview>` and `window.open` now inherit `nodeIntegrationInWorker` from the embedder, consistent with the other Node and sandbox preferences. [#&#8203;52823](https://github.com/electron/electron/pull/52823) <sup>(Also in [41](https://github.com/electron/electron/pull/52829), [42](https://github.com/electron/electron/pull/52831), [43](https://github.com/electron/electron/pull/52830), [44](https://github.com/electron/electron/pull/52832))</sup> - `<webview>` without `allowpopups` also blocks links opened into a new window by modifier-click, and such windows navigate as the clicking document rather than as a browser-initiated load. [#&#8203;53717](https://github.com/electron/electron/pull/53717) <sup>(Also in [42](https://github.com/electron/electron/pull/53719), [43](https://github.com/electron/electron/pull/53718), [44](https://github.com/electron/electron/pull/53721))</sup> - Added validation to `protocol.registerSchemesAsPrivileged()` to reject protocol names that do not conform to RFC 3986 URI scheme grammar. [#&#8203;53742](https://github.com/electron/electron/pull/53742) <sup>(Also in [44](https://github.com/electron/electron/pull/53743))</sup> - Changed the default trash implementation on KDE Plasma 6 to `kioclient`. [#&#8203;54362](https://github.com/electron/electron/pull/54362) <sup>(Also in [44](https://github.com/electron/electron/pull/54361))</sup> - DevTools zoom in/out now uses the same zoom steps as Chromium. [#&#8203;54388](https://github.com/electron/electron/pull/54388) <sup>(Also in [44](https://github.com/electron/electron/pull/54387))</sup> - File System Access permission requests and the `file-system-access-restricted` event are scoped to the requesting document, grants are reset when the origin's last page closes, and write access works in in-memory sessions. [#&#8203;53690](https://github.com/electron/electron/pull/53690) <sup>(Also in [42](https://github.com/electron/electron/pull/53695), [43](https://github.com/electron/electron/pull/53694), [44](https://github.com/electron/electron/pull/53691))</sup> - Fixed `--xdg-portal-required-version` having no effect and a spurious portal warning being logged for file dialogs on Linux. [#&#8203;54302](https://github.com/electron/electron/pull/54302) <sup>(Also in [43](https://github.com/electron/electron/pull/54304), [44](https://github.com/electron/electron/pull/54303))</sup> - Fixed `<select>` dropdowns not rendering in offscreen windows on macOS. [#&#8203;53716](https://github.com/electron/electron/pull/53716) - Fixed a 1-in-200 chance per renderer process on Windows of scripts on the first page load being compiled without their V8 code cache. [#&#8203;52791](https://github.com/electron/electron/pull/52791) <sup>(Also in [42](https://github.com/electron/electron/pull/52988), [43](https://github.com/electron/electron/pull/52943), [44](https://github.com/electron/electron/pull/52792))</sup> - Fixed a browser process crash that could occur during Windows logoff, shutdown, or restart. [#&#8203;52604](https://github.com/electron/electron/pull/52604) <sup>(Also in [42](https://github.com/electron/electron/pull/52621), [43](https://github.com/electron/electron/pull/52620), [44](https://github.com/electron/electron/pull/52619))</sup> - Fixed a browser-process crash (`ValidateIntegrityOrDie`) and spurious preload `ENOENT` errors when an app's `app.asar` is replaced on disk (e.g. by an updater or MDM software) while the app is running. [#&#8203;52283](https://github.com/electron/electron/pull/52283) <sup>(Also in [42](https://github.com/electron/electron/pull/52294), [43](https://github.com/electron/electron/pull/52293), [44](https://github.com/electron/electron/pull/52292))</sup> - Fixed a bug where content-protected windows could temporarily appear in screen captures during picture-in-picture state changes. [#&#8203;54612](https://github.com/electron/electron/pull/54612) - Fixed a child `WebContentsView` losing focus when its window is reactivated. [#&#8203;54454](https://github.com/electron/electron/pull/54454) <sup>(Also in [43](https://github.com/electron/electron/pull/54456), [44](https://github.com/electron/electron/pull/54455))</sup> - Fixed a crash in `systemPreferences.promptTouchID(reason)` when an invalid reason value is passed. [#&#8203;52764](https://github.com/electron/electron/pull/52764) <sup>(Also in [42](https://github.com/electron/electron/pull/52780), [43](https://github.com/electron/electron/pull/52782), [44](https://github.com/electron/electron/pull/52781))</sup> - Fixed a crash on Linux at startup or on theme change with GTK modules loaded. [#&#8203;55017](https://github.com/electron/electron/pull/55017) - Fixed a crash on Linux when `process.env` was written while another thread was reading the environment, and a memory leak when a worker thread exits. [#&#8203;53508](https://github.com/electron/electron/pull/53508) <sup>(Also in [42](https://github.com/electron/electron/pull/53511), [43](https://github.com/electron/electron/pull/53510), [44](https://github.com/electron/electron/pull/53509))</sup> - Fixed a crash on Linux when the D-Bus session bus disconnected while the app was running, such as at logout or when dbus is restarted. [#&#8203;53022](https://github.com/electron/electron/pull/53022) <sup>(Also in [42](https://github.com/electron/electron/pull/53094), [43](https://github.com/electron/electron/pull/53095), [44](https://github.com/electron/electron/pull/53096))</sup> - Fixed a crash on macOS when a notification's icon could not be attached; the notification is now shown without the icon. [#&#8203;53131](https://github.com/electron/electron/pull/53131) <sup>(Also in [42](https://github.com/electron/electron/pull/53148), [43](https://github.com/electron/electron/pull/53147), [44](https://github.com/electron/electron/pull/53146))</sup> - Fixed a crash on macOS when a WebAuthn Touch ID prompt was requested while no locale resources were loaded. [#&#8203;53185](https://github.com/electron/electron/pull/53185) <sup>(Also in [43](https://github.com/electron/electron/pull/53195), [44](https://github.com/electron/electron/pull/53194))</sup> - Fixed a crash on `navigator.usb.requestDevice()` in in-memory sessions. [#&#8203;54615](https://github.com/electron/electron/pull/54615) <sup>(Also in [44](https://github.com/electron/electron/pull/54616))</sup> - Fixed a crash on Windows when V8 posted a delayed worker task during shutdown. [#&#8203;52956](https://github.com/electron/electron/pull/52956) <sup>(Also in [42](https://github.com/electron/electron/pull/53014), [43](https://github.com/electron/electron/pull/53013), [44](https://github.com/electron/electron/pull/53201))</sup> - Fixed a crash report when the X server or Wayland compositor exits while an app is running. [#&#8203;52603](https://github.com/electron/electron/pull/52603) <sup>(Also in [42](https://github.com/electron/electron/pull/52686), [43](https://github.com/electron/electron/pull/52685), [44](https://github.com/electron/electron/pull/52684))</sup> - Fixed a crash that could occur when closing DevTools while the host WebContents was being destroyed. [#&#8203;52166](https://github.com/electron/electron/pull/52166) <sup>(Also in [41](https://github.com/electron/electron/pull/52512), [42](https://github.com/electron/electron/pull/52511), [43](https://github.com/electron/electron/pull/52510), [44](https://github.com/electron/electron/pull/52509))</sup> - Fixed a crash when a WebAuthn request used a security key that required its PIN. [#&#8203;54371](https://github.com/electron/electron/pull/54371) <sup>(Also in [43](https://github.com/electron/electron/pull/54404), [44](https://github.com/electron/electron/pull/54403))</sup> - Fixed a crash when a webContents navigated to the Chrome Web Store and the page invoked the unsupported `chrome.webstorePrivate` API. [#&#8203;53775](https://github.com/electron/electron/pull/53775) <sup>(Also in [44](https://github.com/electron/electron/pull/53776))</sup> - Fixed a crash when accessing frame details during cross-origin navigation. [#&#8203;53102](https://github.com/electron/electron/pull/53102) <sup>(Also in [44](https://github.com/electron/electron/pull/53109))</sup> - Fixed a crash when calling `node:wasi` functions in optimized code. [#&#8203;53266](https://github.com/electron/electron/pull/53266) <sup>(Also in [42](https://github.com/electron/electron/pull/53267), [43](https://github.com/electron/electron/pull/53265), [44](https://github.com/electron/electron/pull/53268))</sup> - Fixed a crash when calling `setIgnoreMenuShortcuts()` on DevTools. [#&#8203;54115](https://github.com/electron/electron/pull/54115) <sup>(Also in [43](https://github.com/electron/electron/pull/54117), [44](https://github.com/electron/electron/pull/54116))</sup> - Fixed a crash when calling `utilityProcess.postMessage()` after the utility process had exited. [#&#8203;53299](https://github.com/electron/electron/pull/53299) <sup>(Also in [43](https://github.com/electron/electron/pull/53301), [44](https://github.com/electron/electron/pull/53300))</sup> - Fixed a crash when creating a framed window on Wayland in environments where GTK could not initialize. [#&#8203;54399](https://github.com/electron/electron/pull/54399) <sup>(Also in [43](https://github.com/electron/electron/pull/54893), [44](https://github.com/electron/electron/pull/54420))</sup> - Fixed a crash when quickly switching menus while the app is under heavy load. [#&#8203;52598](https://github.com/electron/electron/pull/52598) <sup>(Also in [42](https://github.com/electron/electron/pull/52671), [43](https://github.com/electron/electron/pull/52673), [44](https://github.com/electron/electron/pull/52672))</sup> - Fixed a crash when resolving a path inside a malformed ASAR archive that contains cyclic link entries. [#&#8203;52825](https://github.com/electron/electron/pull/52825) <sup>(Also in [42](https://github.com/electron/electron/pull/52859), [43](https://github.com/electron/electron/pull/52857), [44](https://github.com/electron/electron/pull/52858))</sup> - Fixed a crash when sending a DevTools protocol command with a non-string value for an optional string parameter via `webContents.debugger`. [#&#8203;54444](https://github.com/electron/electron/pull/54444) <sup>(Also in [43](https://github.com/electron/electron/pull/54443), [44](https://github.com/electron/electron/pull/54445))</sup> - Fixed a crash when showing Linux message boxes while another Linux UI implementation was active. [#&#8203;52238](https://github.com/electron/electron/pull/52238) <sup>(Also in [42](https://github.com/electron/electron/pull/52408), [43](https://github.com/electron/electron/pull/52410), [44](https://github.com/electron/electron/pull/52409))</sup> - Fixed a crash when starting without an available display server on Linux. [#&#8203;54781](https://github.com/electron/electron/pull/54781) - Fixed a crash with `app.setLoginItemSettings` if a non-UTF8 service name is used. [#&#8203;52773](https://github.com/electron/electron/pull/52773) <sup>(Also in [42](https://github.com/electron/electron/pull/52989), [43](https://github.com/electron/electron/pull/52944), [44](https://github.com/electron/electron/pull/52801))</sup> - Fixed a graphical glitch on Linux where thin borders appeared past the drop shadows on frameless windows when multiple windows were created. [#&#8203;52584](https://github.com/electron/electron/pull/52584) <sup>(Also in [42](https://github.com/electron/electron/pull/52772), [43](https://github.com/electron/electron/pull/52607), [44](https://github.com/electron/electron/pull/52606))</sup> - Fixed a grey border around frameless windows on Linux WMs without compositing. [#&#8203;54392](https://github.com/electron/electron/pull/54392) <sup>(Also in [43](https://github.com/electron/electron/pull/54390), [44](https://github.com/electron/electron/pull/54391))</sup> - Fixed a Linux crash creating a window with a menu bar when GTK failed to load. [#&#8203;54846](https://github.com/electron/electron/pull/54846) <sup>(Also in [43](https://github.com/electron/electron/pull/54884), [44](https://github.com/electron/electron/pull/54859))</sup> - Fixed a macOS File System Access blocklist bypass via `/System/Volumes/Data` paths. [#&#8203;54678](https://github.com/electron/electron/pull/54678) - Fixed a main process crash when a native API method was called with a `this` value of a different native type; it now throws a `TypeError`. [#&#8203;54313](https://github.com/electron/electron/pull/54313) <sup>(Also in [43](https://github.com/electron/electron/pull/54316), [44](https://github.com/electron/electron/pull/54315))</sup> - Fixed a main-process crash when an app called `loadURL()` again right after a load failed because the renderer process exited before the page committed. [#&#8203;53942](https://github.com/electron/electron/pull/53942) <sup>(Also in [43](https://github.com/electron/electron/pull/53944), [44](https://github.com/electron/electron/pull/53943))</sup> - Fixed a memory leak on Windows when `app.getPreferredSystemLanguages()` was called. [#&#8203;53869](https://github.com/electron/electron/pull/53869) <sup>(Also in [43](https://github.com/electron/electron/pull/53867), [44](https://github.com/electron/electron/pull/53868))</sup> - Fixed a memory leak when creating BrowserWindows. [#&#8203;52092](https://github.com/electron/electron/pull/52092) <sup>(Also in [42](https://github.com/electron/electron/pull/52893), [43](https://github.com/electron/electron/pull/52892), [44](https://github.com/electron/electron/pull/52894))</sup> - Fixed a pending read on a `net.request` chunked upload stream inside a protocol handler never settling when the request failed or was aborted. [#&#8203;53368](https://github.com/electron/electron/pull/53368) <sup>(Also in [43](https://github.com/electron/electron/pull/53374), [44](https://github.com/electron/electron/pull/53373))</sup> - Fixed a possible crash (SIGABRT) during process exit when the process had loaded `tls`/`https` shortly before exiting, affecting `app.exit()` before `ready` and short-lived `ELECTRON_RUN_AS_NODE` / `child_process.fork()` scripts. [#&#8203;52856](https://github.com/electron/electron/pull/52856) <sup>(Also in [42](https://github.com/electron/electron/pull/52992), [43](https://github.com/electron/electron/pull/52870), [44](https://github.com/electron/electron/pull/52871))</sup> - Fixed a possible crash during process exit when `vm.Script` or `vm` contexts created in the main process had been garbage collected shortly before quitting. [#&#8203;54267](https://github.com/electron/electron/pull/54267) <sup>(Also in [43](https://github.com/electron/electron/pull/54268), [44](https://github.com/electron/electron/pull/54266))</sup> - Fixed a possible crash on Windows on ARM when `powerMonitor` is torn down. [#&#8203;54384](https://github.com/electron/electron/pull/54384) <sup>(Also in [44](https://github.com/electron/electron/pull/54408))</sup> - Fixed a possible crash on Windows when a file dialog was shown for a window that was being closed at the same time. [#&#8203;53586](https://github.com/electron/electron/pull/53586) <sup>(Also in [42](https://github.com/electron/electron/pull/53585), [43](https://github.com/electron/electron/pull/53584), [44](https://github.com/electron/electron/pull/53583))</sup> - Fixed a possible hang when pressing Esc while a `<webview>` is fullscreen. [#&#8203;53744](https://github.com/electron/electron/pull/53744) - Fixed a possible main process crash at quit when a session was created from JavaScript that runs during shutdown. [#&#8203;52836](https://github.com/electron/electron/pull/52836) <sup>(Also in [42](https://github.com/electron/electron/pull/53132), [43](https://github.com/electron/electron/pull/52925), [44](https://github.com/electron/electron/pull/52924))</sup> - Fixed a potential crash during application shutdown. [#&#8203;54526](https://github.com/electron/electron/pull/54526) - Fixed a potential crash in `contentTracing.stopRecording()` when the trace file could not be written to the requested path. [#&#8203;52793](https://github.com/electron/electron/pull/52793) <sup>(Also in [42](https://github.com/electron/electron/pull/52796), [43](https://github.com/electron/electron/pull/52795), [44](https://github.com/electron/electron/pull/52794))</sup> - Fixed a potential crash when cleaning up download items. [#&#8203;54517](https://github.com/electron/electron/pull/54517) - Fixed a potential crash when closing detached DevTools. [#&#8203;54538](https://github.com/electron/electron/pull/54538) - Fixed a potential crash when notifying user activation before the primary main frame was live. [#&#8203;52215](https://github.com/electron/electron/pull/52215) <sup>(Also in [42](https://github.com/electron/electron/pull/52699), [43](https://github.com/electron/electron/pull/52697), [44](https://github.com/electron/electron/pull/52698))</sup> - Fixed a potential crash when using `menu.popup` with a frame from an offscreen rendered window. [#&#8203;53242](https://github.com/electron/electron/pull/53242) <sup>(Also in [43](https://github.com/electron/electron/pull/53432), [44](https://github.com/electron/electron/pull/53362))</sup> - Fixed a potential UAF in `app.getPreferredSystemLanguages()` on Windows. [#&#8203;53864](https://github.com/electron/electron/pull/53864) <sup>(Also in [43](https://github.com/electron/electron/pull/53866), [44](https://github.com/electron/electron/pull/53865))</sup> - Fixed a potential UAF when a `select-usb-device` handler destroys the requesting `webContents`. [#&#8203;54008](https://github.com/electron/electron/pull/54008) <sup>(Also in [43](https://github.com/electron/electron/pull/54007), [44](https://github.com/electron/electron/pull/54009))</sup> - Fixed a rare crash in the main process when DevTools were opened and a garbage collection ran before the DevTools frontend finished loading. [#&#8203;52847](https://github.com/electron/electron/pull/52847) <sup>(Also in [42](https://github.com/electron/electron/pull/52994), [43](https://github.com/electron/electron/pull/52903), [44](https://github.com/electron/electron/pull/52904))</sup> - Fixed a regression preventing from transparent frameless windows from being resized on Linux. [#&#8203;52740](https://github.com/electron/electron/pull/52740) <sup>(Also in [43](https://github.com/electron/electron/pull/52947), [44](https://github.com/electron/electron/pull/52891))</sup> - Fixed a regression where a window created with a custom title can show an empty title after using back/forward navigation. [#&#8203;53180](https://github.com/electron/electron/pull/53180) <sup>(Also in [42](https://github.com/electron/electron/pull/53217), [43](https://github.com/electron/electron/pull/53219), [44](https://github.com/electron/electron/pull/53218))</sup> - Fixed a renderer crash calling `image.toPNG()` from a sandboxed preload script. [#&#8203;54501](https://github.com/electron/electron/pull/54501) <sup>(Also in [43](https://github.com/electron/electron/pull/54503), [44](https://github.com/electron/electron/pull/54502))</sup> - Fixed a renderer crash that could occur when printing from an iframe. [#&#8203;53763](https://github.com/electron/electron/pull/53763) <sup>(Also in [43](https://github.com/electron/electron/pull/53761), [44](https://github.com/electron/electron/pull/53762))</sup> - Fixed a renderer crash when a page calls `SpeechRecognition.available()` or `SpeechRecognition.install()` with `processLocally`. [#&#8203;52955](https://github.com/electron/electron/pull/52955) <sup>(Also in [42](https://github.com/electron/electron/pull/53016), [43](https://github.com/electron/electron/pull/53015), [44](https://github.com/electron/electron/pull/53021))</sup> - Fixed a renderer crash when a `ResizeObserver` loop-limit error handler modified layout. [#&#8203;54289](https://github.com/electron/electron/pull/54289) <sup>(Also in [42](https://github.com/electron/electron/pull/54610), [43](https://github.com/electron/electron/pull/54611), [44](https://github.com/electron/electron/pull/54290))</sup> - Fixed a renderer crash when an array with a throwing property getter is passed across `contextBridge`, and several main/utility-process crashes when option objects passed to Electron APIs contain throwing accessors or Proxy traps. [#&#8203;53069](https://github.com/electron/electron/pull/53069) <sup>(Also in [42](https://github.com/electron/electron/pull/53329), [43](https://github.com/electron/electron/pull/53330), [44](https://github.com/electron/electron/pull/53331))</sup> - Fixed a renderer crash when an iframe was removed right after loading with `nodeIntegrationInSubFrames` enabled and `sandbox` disabled, e.g. on pages that embed Meta Pixel. [#&#8203;53883](https://github.com/electron/electron/pull/53883) <sup>(Also in [42](https://github.com/electron/electron/pull/53886), [43](https://github.com/electron/electron/pull/53884), [44](https://github.com/electron/electron/pull/53885))</sup> - Fixed a renderer crash when the main process sent IPC to, or a page navigated, a same-process `window.open()` child whose `contextIsolation` differed from its opener's. [#&#8203;53538](https://github.com/electron/electron/pull/53538) <sup>(Also in [42](https://github.com/electron/electron/pull/53541), [43](https://github.com/electron/electron/pull/53540), [44](https://github.com/electron/electron/pull/53539))</sup> - Fixed a spurious `node_init` error being logged when creating a `ShadowRealm` with Node.js integration enabled. [#&#8203;53578](https://github.com/electron/electron/pull/53578) <sup>(Also in [44](https://github.com/electron/electron/pull/53579))</sup> - Fixed a stale `nativeTheme.shouldUseDarkColors` after resetting `themeSource`. [#&#8203;54648](https://github.com/electron/electron/pull/54648) - Fixed a UAF with `protocol.registerStreamProtocol` when an error is emitted during a read. [#&#8203;52474](https://github.com/electron/electron/pull/52474) <sup>(Also in [41](https://github.com/electron/electron/pull/52513), [42](https://github.com/electron/electron/pull/52516), [43](https://github.com/electron/electron/pull/52514), [44](https://github.com/electron/electron/pull/52515))</sup> - Fixed a `WebContentsView` staying blank after its window is shown when `setBackgroundThrottling(false)` was called while the window was hidden. [#&#8203;52844](https://github.com/electron/electron/pull/52844) <sup>(Also in [42](https://github.com/electron/electron/pull/52865), [43](https://github.com/electron/electron/pull/52864), [44](https://github.com/electron/electron/pull/52863))</sup> - Fixed a window being marked hidden and background-throttled on macOS when covered by a transparent or click-through window. [#&#8203;52365](https://github.com/electron/electron/pull/52365) <sup>(Also in [42](https://github.com/electron/electron/pull/52390), [43](https://github.com/electron/electron/pull/52389), [44](https://github.com/electron/electron/pull/52391))</sup> - Fixed `accent-color-changed` on Windows reporting a colour that differed from `systemPreferences.getAccentColor()`. [#&#8203;54405](https://github.com/electron/electron/pull/54405) <sup>(Also in [44](https://github.com/electron/electron/pull/54409))</sup> - Fixed alignment of the text label and popup menu in the macOS save dialog. [#&#8203;54144](https://github.com/electron/electron/pull/54144) <sup>(Also in [44](https://github.com/electron/electron/pull/54143))</sup> - Fixed an "Invalid `guestInstanceId`" error when removing a loaded `<webview>` from the DOM. [#&#8203;54096](https://github.com/electron/electron/pull/54096) <sup>(Also in [42](https://github.com/electron/electron/pull/54098), [43](https://github.com/electron/electron/pull/54097), [44](https://github.com/electron/electron/pull/54099))</sup> - Fixed an intermittent crash (access violation) on Windows when an ASAR integrity violation is detected, so the process now exits with code 1 as intended. [#&#8203;53438](https://github.com/electron/electron/pull/53438) <sup>(Also in [43](https://github.com/electron/electron/pull/53456), [44](https://github.com/electron/electron/pull/53455))</sup> - Fixed an intermittent crash at startup on Linux caused by a race between Pango and the main thread initializing fontconfig. [#&#8203;53338](https://github.com/electron/electron/pull/53338) <sup>(Also in [43](https://github.com/electron/electron/pull/53339), [44](https://github.com/electron/electron/pull/53340))</sup> - Fixed an issue on Windows where the app process could fail to exit after `app.quit()` while a `shell.openExternal()` or `shell.openPath()` call was still waiting on a system "Open with" dialog. [#&#8203;52888](https://github.com/electron/electron/pull/52888) <sup>(Also in [41](https://github.com/electron/electron/pull/52899), [43](https://github.com/electron/electron/pull/52897), [44](https://github.com/electron/electron/pull/52898))</sup> - Fixed an issue where a JavaScript out-of-memory crash could be reported from inside the crash-key handler instead of at the out-of-memory site. [#&#8203;52591](https://github.com/electron/electron/pull/52591) <sup>(Also in [42](https://github.com/electron/electron/pull/52723), [43](https://github.com/electron/electron/pull/52725), [44](https://github.com/electron/electron/pull/52724))</sup> - Fixed an issue where an exception thrown by a property getter on an object passed through `contextBridge` was swallowed instead of being thrown back to the caller. [#&#8203;53297](https://github.com/electron/electron/pull/53297) <sup>(Also in [43](https://github.com/electron/electron/pull/53334), [44](https://github.com/electron/electron/pull/53335))</sup> - Fixed an issue where clicks posted to a background app were dropped on macOS. [#&#8203;54818](https://github.com/electron/electron/pull/54818) <sup>(Also in [42](https://github.com/electron/electron/pull/54906), [43](https://github.com/electron/electron/pull/54905), [44](https://github.com/electron/electron/pull/54819))</sup> - Fixed an issue where `crashReporter.setUploadToServer()` had no effect after `crashReporter.start()` was called. [#&#8203;54519](https://github.com/electron/electron/pull/54519) <sup>(Also in [44](https://github.com/electron/electron/pull/54518))</sup> - Fixed an issue where loading ICO files from ASAR archives on Windows left temporary icon files behind. [#&#8203;52424](https://github.com/electron/electron/pull/52424) <sup>(Also in [42](https://github.com/electron/electron/pull/52479), [43](https://github.com/electron/electron/pull/52478), [44](https://github.com/electron/electron/pull/52477))</sup> - Fixed an issue where notifications would sometimes not appear from certain long domains on Windows. [#&#8203;54348](https://github.com/electron/electron/pull/54348) - Fixed an issue where pages loaded in a detached `WebContentsView` wouldn't see the correct window size. [#&#8203;53031](https://github.com/electron/electron/pull/53031) <sup>(Also in [42](https://github.com/electron/electron/pull/53151), [43](https://github.com/electron/electron/pull/53152), [44](https://github.com/electron/electron/pull/53153))</sup> - Fixed an issue where some values passed into `requestSingleInstanceLock` could result in a crash. [#&#8203;52025](https://github.com/electron/electron/pull/52025) <sup>(Also in [42](https://github.com/electron/electron/pull/52982), [43](https://github.com/electron/electron/pull/52471), [44](https://github.com/electron/electron/pull/52470))</sup> - Fixed an issue where the browser-side check that blocks drag and drop between cross-site frames of the same page was disabled. [#&#8203;53748](https://github.com/electron/electron/pull/53748) <sup>(Also in [43](https://github.com/electron/electron/pull/53750), [44](https://github.com/electron/electron/pull/53749))</sup> - Fixed an `npm install` failure with no recovery path when the OS blocked the native zip extractor from loading (for example, Windows Smart App Control). [#&#8203;52748](https://github.com/electron/electron/pull/52748) <sup>(Also in [43](https://github.com/electron/electron/pull/52845), [44](https://github.com/electron/electron/pull/52846))</sup> - Fixed an uncatchable TypeError in `net.fetch` when receiving response headers with non-ASCII characters, and preserved multiple Set-Cookie headers. [#&#8203;54671](https://github.com/electron/electron/pull/54671) <sup>(Also in [44](https://github.com/electron/electron/pull/54672))</sup> - Fixed `app.disableHardwareAcceleration()` not fully disabling GPU hardware usage on Windows starting from Electron 38. [#&#8203;51817](https://github.com/electron/electron/pull/51817) <sup>(Also in [41](https://github.com/electron/electron/pull/52368), [42](https://github.com/electron/electron/pull/52371), [43](https://github.com/electron/electron/pull/52369), [44](https://github.com/electron/electron/pull/52370))</sup> - Fixed `app.getGPUInfo('complete')` stalling the GPU process for several seconds on some Windows systems. [#&#8203;53645](https://github.com/electron/electron/pull/53645) <sup>(Also in [44](https://github.com/electron/electron/pull/53644))</sup> - Fixed `app.getLoginItemSettings()` not finding login items on Windows when the executable path contains spaces. [#&#8203;54419](https://github.com/electron/electron/pull/54419) - Fixed `app.getRecentDocuments()` omitting documents with non-ASCII paths on Windows. [#&#8203;54385](https://github.com/electron/electron/pull/54385) <sup>(Also in [44](https://github.com/electron/electron/pull/54407))</sup> - Fixed application crash after a large number of IPC messages from renderers. [#&#8203;53418](https://github.com/electron/electron/pull/53418) <sup>(Also in [42](https://github.com/electron/electron/pull/53419), [43](https://github.com/electron/electron/pull/53420), [44](https://github.com/electron/electron/pull/53417))</sup> - Fixed asar archives in non-ASCII folders failing to load on Linux. [#&#8203;54848](https://github.com/electron/electron/pull/54848) <sup>(Also in [44](https://github.com/electron/electron/pull/54849))</sup> - Fixed `BrowserWindow` size corruption on Windows when created with explicit `x`/`y` on a secondary monitor whose DPI differs from the primary. [#&#8203;51603](https://github.com/electron/electron/pull/51603) <sup>(Also in [42](https://github.com/electron/electron/pull/52500), [43](https://github.com/electron/electron/pull/52501), [44](https://github.com/electron/electron/pull/52499))</sup> - Fixed `BrowserWindow.unmaximize()` and `restore()` having no effect on Wayland when the window was maximized immediately after creation. [#&#8203;53063](https://github.com/electron/electron/pull/53063) <sup>(Also in [42](https://github.com/electron/electron/pull/53126), [43](https://github.com/electron/electron/pull/53125), [44](https://github.com/electron/electron/pull/53124))</sup> - Fixed `chrome.tabs.query()` returning tab `url` and `title` to extensions without the `tabs` permission or host access, aligning with `tabs.get`. [#&#8203;53353](https://github.com/electron/electron/pull/53353) <sup>(Also in [42](https://github.com/electron/electron/pull/53355), [43](https://github.com/electron/electron/pull/53356), [44](https://github.com/electron/electron/pull/53354))</sup> - Fixed `clipboard.read()`, `readText()` and `has()` resolving seconds late on Linux while the app was idle. [#&#8203;54307](https://github.com/electron/electron/pull/54307) <sup>(Also in [42](https://github.com/electron/electron/pull/54310), [43](https://github.com/electron/electron/pull/54309), [44](https://github.com/electron/electron/pull/54308))</sup> - Fixed crash in sharedTexture module when GPU context becomes unavailable. [#&#8203;49518](https://github.com/electron/electron/pull/49518) <sup>(Also in [42](https://github.com/electron/electron/pull/52983), [43](https://github.com/electron/electron/pull/52938), [44](https://github.com/electron/electron/pull/52926))</sup> - Fixed crash triggered by replacing an open application menu. [#&#8203;52248](https://github.com/electron/electron/pull/52248) <sup>(Also in [41](https://github.com/electron/electron/pull/52278), [42](https://github.com/electron/electron/pull/52275), [43](https://github.com/electron/electron/pull/52276), [44](https://github.com/electron/electron/pull/52277))</sup> - Fixed crashes in `setDisplayMediaRequestHandler` when the granted frame had been destroyed or another tab was granted by id. [#&#8203;53673](https://github.com/electron/electron/pull/53673) <sup>(Also in [42](https://github.com/electron/electron/pull/53674), [43](https://github.com/electron/electron/pull/53671), [44](https://github.com/electron/electron/pull/53672))</sup> - Fixed crashes in sharedTexture, service-worker ipcRenderer and utilityProcess.fork() caused by object lifetime bugs. [#&#8203;53280](https://github.com/electron/electron/pull/53280) <sup>(Also in [43](https://github.com/electron/electron/pull/53278), [44](https://github.com/electron/electron/pull/53279))</sup> - Fixed crashes in the main process when a `webRequest.onBeforeRequest` listener redirected a CORS preflight request, and when calling `net.fetch()` with a `webRequest`-permission extension loaded. [#&#8203;53302](https://github.com/electron/electron/pull/53302) <sup>(Also in [43](https://github.com/electron/electron/pull/53304), [44](https://github.com/electron/electron/pull/53303))</sup> - Fixed crashes when a webContents or parent window is destroyed while other APIs still reference it. [#&#8203;53281](https://github.com/electron/electron/pull/53281) <sup>(Also in [43](https://github.com/electron/electron/pull/53288), [44](https://github.com/electron/electron/pull/53287))</sup> - Fixed crashes when certain app event handlers call back into Electron synchronously. [#&#8203;53269](https://github.com/electron/electron/pull/53269) <sup>(Also in [43](https://github.com/electron/electron/pull/53276), [44](https://github.com/electron/electron/pull/53275))</sup> - Fixed Ctrl+Y not yanking text killed with Ctrl+K in text fields on macOS. [#&#8203;53715](https://github.com/electron/electron/pull/53715) <sup>(Also in [44](https://github.com/electron/electron/pull/53714))</sup> - Fixed custom V8 snapshots (`electron-mksnapshot`, and the `loadBrowserProcessSpecificV8Snapshot` fuse) having no effect in the main process on macOS arm64, Linux x64 and Windows x64. [#&#8203;52872](https://github.com/electron/electron/pull/52872) <sup>(Also in [42](https://github.com/electron/electron/pull/52876), [43](https://github.com/electron/electron/pull/52877), [44](https://github.com/electron/electron/pull/52878))</sup> - Fixed default protocol client APIs falsely returning `true` on Windows. [#&#8203;53958](https://github.com/electron/electron/pull/53958) <sup>(Also in [43](https://github.com/electron/electron/pull/53960), [44](https://github.com/electron/electron/pull/53959))</sup> - Fixed `desktopCapturer.getSources()` leaving non-resizable windows resizable on macOS. [#&#8203;54398](https://github.com/electron/electron/pull/54398) <sup>(Also in [43](https://github.com/electron/electron/pull/54396), [44](https://github.com/electron/electron/pull/54397))</sup> - Fixed DevTools device metrics overrides persisting indefinitely when a remote debugging client disconnected without clearing them. [#&#8203;52254](https://github.com/electron/electron/pull/52254) <sup>(Also in [42](https://github.com/electron/electron/pull/53133), [43](https://github.com/electron/electron/pull/52946), [44](https://github.com/electron/electron/pull/52930))</sup> - Fixed DevTools popup and context menus not appearing when DevTools is hosted in a custom window via `webContents.setDevToolsWebContents()`. [#&#8203;52205](https://github.com/electron/electron/pull/52205) <sup>(Also in [42](https://github.com/electron/electron/pull/52981), [43](https://github.com/electron/electron/pull/52937), [44](https://github.com/electron/electron/pull/52434))</sup> - Fixed `dialog.showOpenDialog`/`dialog.showSaveDialog` opening at an unusable location on Linux when `defaultPath` is a bare filename without a directory. [#&#8203;52243](https://github.com/electron/electron/pull/52243) <sup>(Also in [42](https://github.com/electron/electron/pull/52980), [43](https://github.com/electron/electron/pull/52401), [44](https://github.com/electron/electron/pull/52402))</sup> - Fixed `Dirent.parentPath` being `undefined` for `fs.readdir`, `fs.readdirSync`, `fs.glob`, and `fs.globSync` with `withFileTypes: true` inside asar archives. [#&#8203;51845](https://github.com/electron/electron/pull/51845) <sup>(Also in [42](https://github.com/electron/electron/pull/52506), [43](https://github.com/electron/electron/pull/52505), [44](https://github.com/electron/electron/pull/52507))</sup> - Fixed downloading files that live inside an asar archive, including saving a packed PDF from the built-in PDF viewer. [#&#8203;52808](https://github.com/electron/electron/pull/52808) <sup>(Also in [42](https://github.com/electron/electron/pull/52828), [43](https://github.com/electron/electron/pull/52826), [44](https://github.com/electron/electron/pull/52827))</sup> - Fixed `fs.constants.O_DIRECTORY`, `O_NOFOLLOW` and `O_DIRECT` holding x86 values on Linux arm64 and armv7l, which made opening a directory fail with `EINVAL`, and made `require('trace_events')` behave the same on cross-compiled builds as on native ones. [#&#8203;53321](https://github.com/electron/electron/pull/53321) <sup>(Also in [42](https://github.com/electron/electron/pull/53318), [43](https://github.com/electron/electron/pull/53319), [44](https://github.com/electron/electron/pull/53320))</sup> - Fixed `fs.rmSync` failing to remove read-only files on Windows. [#&#8203;54190](https://github.com/electron/electron/pull/54190) <sup>(Also in [42](https://github.com/electron/electron/pull/54257), [43](https://github.com/electron/electron/pull/54256), [44](https://github.com/electron/electron/pull/54255))</sup> - Fixed `GDK_BACKEND` leaking into processes spawned by Electron apps on Linux. [#&#8203;54424](https://github.com/electron/electron/pull/54424) <sup>(Also in [43](https://github.com/electron/electron/pull/54426), [44](https://github.com/electron/electron/pull/54425))</sup> - Fixed `globalShortcut` not working on GNOME Wayland by enabling Chromium's `GlobalShortcutsPortalPreferredTrigger` feature by default on Linux. [#&#8203;52221](https://github.com/electron/electron/pull/52221) <sup>(Also in [43](https://github.com/electron/electron/pull/52228))</sup> - Fixed GPU shaders compiled by Skia not being cached between launches. [#&#8203;54156](https://github.com/electron/electron/pull/54156) <sup>(Also in [44](https://github.com/electron/electron/pull/54161))</sup> - Fixed helper executables on macOS starting a second app instance when launched without a process type, for example through `child_process.fork()` with the `runAsNode` fuse disabled; `fork()` now throws in that configuration. [#&#8203;53839](https://github.com/electron/electron/pull/53839) <sup>(Also in [44](https://github.com/electron/electron/pull/53840))</sup> - Fixed hidden windows continuing to render at full frame rate after `setBackgroundThrottling(false)` followed by `setBackgroundThrottling(true)`. [#&#8203;54339](https://github.com/electron/electron/pull/54339) <sup>(Also in [44](https://github.com/electron/electron/pull/54341))</sup> - Fixed interrupted macOS updates leaving a broken app behind. [#&#8203;54843](https://github.com/electron/electron/pull/54843) <sup>(Also in [44](https://github.com/electron/electron/pull/54844))</sup> - Fixed link-opened windows not using the opener's session and `webPreferences`. [#&#8203;55051](https://github.com/electron/electron/pull/55051) <sup>(Also in [42](https://github.com/electron/electron/pull/55050), [43](https://github.com/electron/electron/pull/55049), [44](https://github.com/electron/electron/pull/55048))</sup> - Fixed main process crashes when navigating to `http://accessibility/` or `http://devtools/`, when using the `LanguageModel` API from a Worker with a local AI handler registered, when an extension background page used `navigator.mediaDevices`, and when calling `SerialPort.forget()` for a disconnected device. [#&#8203;53325](https://github.com/electron/electron/pull/53325) <sup>(Also in [43](https://github.com/electron/electron/pull/53332), [44](https://github.com/electron/electron/pull/53333))</sup> - Fixed `matchMedia('(display-mode: ...)')` returning `browser` for window-controls-overlay, frameless, and fullscreen BrowserWindows. [#&#8203;51396](https://github.com/electron/electron/pull/51396) - Fixed mouse cursor missing over native dialogs in certain scenarios on Windows. [#&#8203;54878](https://github.com/electron/electron/pull/54878) <sup>(Also in [44](https://github.com/electron/electron/pull/54987))</sup> - Fixed native addons deriving from `node::ObjectWrap` aborting during garbage collection on Node.js 24.19.0 and later. [#&#8203;53391](https://github.com/electron/electron/pull/53391) <sup>(Also in [42](https://github.com/electron/electron/pull/53394), [43](https://github.com/electron/electron/pull/53393), [44](https://github.com/electron/electron/pull/53392))</sup> - Fixed `net.fetch` and `session.fetch` failing permanently with `net::ERR_FAILED` after the Network Service process restarts. [#&#8203;54910](https://github.com/electron/electron/pull/54910) <sup>(Also in [42](https://github.com/electron/electron/pull/54925), [43](https://github.com/electron/electron/pull/54908), [44](https://github.com/electron/electron/pull/54909))</sup> - Fixed `net.fetch()` / `net.request()` spending seconds of main-process time buffering large streamed request bodies. [#&#8203;54062](https://github.com/electron/electron/pull/54062) <sup>(Also in [44](https://github.com/electron/electron/pull/54061))</sup> - Fixed paste hanging indefinitely on Linux X11 until the app was restarted. [#&#8203;54912](https://github.com/electron/electron/pull/54912) - Fixed `pointerLock` permission requests from some iframes reporting the parent frame. [#&#8203;54463](https://github.com/electron/electron/pull/54463) <sup>(Also in [42](https://github.com/electron/electron/pull/54466), [43](https://github.com/electron/electron/pull/54465), [44](https://github.com/electron/electron/pull/54464))</sup> - Fixed `process.nextTick` and promise callbacks queued in `protocol`/`webRequest` handlers running at the wrong time. [#&#8203;54301](https://github.com/electron/electron/pull/54301) - Fixed `ready-to-show` never firing for some hidden windows on Windows and Linux. [#&#8203;54110](https://github.com/electron/electron/pull/54110) <sup>(Also in [43](https://github.com/electron/electron/pull/54119), [44](https://github.com/electron/electron/pull/54118))</sup> - Fixed region-qualified `--lang` values such as `de-DE` loading no locale resources on macOS, which left localized strings empty and could crash WebAuthn Touch ID prompts. [#&#8203;53184](https://github.com/electron/electron/pull/53184) <sup>(Also in [42](https://github.com/electron/electron/pull/53187), [43](https://github.com/electron/electron/pull/53186), [44](https://github.com/electron/electron/pull/53188))</sup> - Fixed `registerFileProtocol` and `registerHttpProtocol` returning readable responses to cross-origin `no-cors` fetches; they now return opaque responses like `protocol.handle`. [#&#8203;52822](https://github.com/electron/electron/pull/52822) <sup>(Also in [41](https://github.com/electron/electron/pull/52854), [42](https://github.com/electron/electron/pull/52855), [43](https://github.com/electron/electron/pull/52853), [44](https://github.com/electron/electron/pull/52852))</sup> - Fixed renderer crashes during garbage collection inside ShadowRealms. [#&#8203;54864](https://github.com/electron/electron/pull/54864) <sup>(Also in [44](https://github.com/electron/electron/pull/54865))</sup> - Fixed `select-hid-device` presenting HID devices that could not be granted, which caused `navigator.hid.requestDevice()` to resolve with no device. [#&#8203;52467](https://github.com/electron/electron/pull/52467) <sup>(Also in [44](https://github.com/electron/electron/pull/52497))</sup> - Fixed `session.setPermissionCheckHandler` receiving the top-level origin and a null `webContents` for `hid` and `usb` checks made from a subframe. [#&#8203;53679](https://github.com/electron/electron/pull/53679) <sup>(Also in [42](https://github.com/electron/electron/pull/53736), [43](https://github.com/electron/electron/pull/53689), [44](https://github.com/electron/electron/pull/53688))</sup> - Fixed `setCertificateVerifyProc` occasionally not being applied to a request issued concurrently with the first request to a host. [#&#8203;55045](https://github.com/electron/electron/pull/55045) <sup>(Also in [42](https://github.com/electron/electron/pull/55054), [43](https://github.com/electron/electron/pull/55047), [44](https://github.com/electron/electron/pull/55046))</sup> - Fixed `setContentProtection(true)` having no effect in Windows remote sessions. [#&#8203;54499](https://github.com/electron/electron/pull/54499) <sup>(Also in [44](https://github.com/electron/electron/pull/54500))</sup> - Fixed `setIgnoreMouseEvents()` taking effect late on X11. [#&#8203;54496](https://github.com/electron/electron/pull/54496) <sup>(Also in [43](https://github.com/electron/electron/pull/54498), [44](https://github.com/electron/electron/pull/54497))</sup> - Fixed `setIgnoreMouseEvents(true)` being undone by the next resize on X11. [#&#8203;54394](https://github.com/electron/electron/pull/54394) <sup>(Also in [43](https://github.com/electron/electron/pull/54423), [44](https://github.com/electron/electron/pull/54393))</sup> - Added `setIgnoreMouseEvents` support on Wayland. - Fixed several non-functional DevTools integrations: the Security panel's "View certificate" button, Ctrl+wheel zooming inside DevTools, and DevTools keyboard shortcuts (e.g. F8) while the inspected page has focus. [#&#8203;53471](https://github.com/electron/electron/pull/53471) <sup>(Also in [43](https://github.com/electron/electron/pull/53631), [44](https://github.com/electron/electron/pull/53630))</sup> - Fixed several object lifetime issues in `Debugger`, `Menu`, `Tray`, `Notification`, `globalShortcut`, `utilityProcess`, `ServiceWorkerMain`, `WebFrameMain`, `webFrame`, `sharedTexture`, `systemPreferences`, `netLog`, `MessagePortMain`, `net.request` and `shell.openPath()`. [#&#8203;53805](https://github.com/electron/electron/pull/53805) <sup>(Also in [44](https://github.com/electron/electron/pull/53968))</sup> - Fixed `shell.showItemInFolder()` on Linux for paths containing `#`, `?` or `%` when the file manager is reached over D-Bus. [#&#8203;54386](https://github.com/electron/electron/pull/54386) <sup>(Also in [44](https://github.com/electron/electron/pull/54406))</sup> - Fixed spellcheck not initializing on Linux when the dictionary was already cached from a previous run. [#&#8203;52712](https://github.com/electron/electron/pull/52712) <sup>(Also in [43](https://github.com/electron/electron/pull/52717), [44](https://github.com/electron/electron/pull/52716))</sup> - Fixed the built-in PDF viewer not rendering documents in in-memory sessions (partitions without the `persist:` prefix). [#&#8203;52810](https://github.com/electron/electron/pull/52810) <sup>(Also in [42](https://github.com/electron/electron/pull/52990), [43](https://github.com/electron/electron/pull/52835), [44](https://github.com/electron/electron/pull/52834))</sup> - Fixed the default action label on Linux notifications not being localized. [#&#8203;54402](https://github.com/electron/electron/pull/54402) <sup>(Also in [43](https://github.com/electron/electron/pull/54400), [44](https://github.com/electron/electron/pull/54401))</sup> - Fixed the GPU process being terminated in AppX/MSIX packaged apps on Windows when WebGPU fell back to SwiftShader. [#&#8203;53174](https://github.com/electron/electron/pull/53174) <sup>(Also in [42](https://github.com/electron/electron/pull/53199), [43](https://github.com/electron/electron/pull/53197), [44](https://github.com/electron/electron/pull/53198))</sup> - Fixed the GPU process crash-looping on Windows when the sandbox cannot read the install folder; the folder is now reported instead. [#&#8203;54483](https://github.com/electron/electron/pull/54483) <sup>(Also in [43](https://github.com/electron/electron/pull/54485), [44](https://github.com/electron/electron/pull/54484))</sup> - Fixed the PDF viewer failing to save an edited PDF with `NotAllowedError: Third party iframes are not allowed to show a file picker`. [#&#8203;53326](https://github.com/electron/electron/pull/53326) <sup>(Also in [43](https://github.com/electron/electron/pull/53327), [44](https://github.com/electron/electron/pull/53328))</sup> - Fixed the primary instance being killed or receiving truncated arguments when a second instance passed a very long command line or large `additionalData` to `app.requestSingleInstanceLock()`. [#&#8203;52628](https://github.com/electron/electron/pull/52628) <sup>(Also in [42](https://github.com/electron/electron/pull/53157), [43](https://github.com/electron/electron/pull/53156), [44](https://github.com/electron/electron/pull/52950))</sup> - Fixed the tray context menu not working for snap-confined apps because AppArmor blocked the `/org/chromium/DbusMenu` path. [#&#8203;54102](https://github.com/electron/electron/pull/54102) <sup>(Also in [44](https://github.com/electron/electron/pull/54103))</sup> - Fixed the zoom level resetting on `file:` and other host-less pages after a `location.hash` change. [#&#8203;54441](https://github.com/electron/electron/pull/54441) <sup>(Also in [43](https://github.com/electron/electron/pull/54440), [44](https://github.com/electron/electron/pull/54442))</sup> - Fixed `Tray` icons not appearing when running inside Flatpak or Snap sandboxes on Linux. [#&#8203;53654](https://github.com/electron/electron/pull/53654) <sup>(Also in [44](https://github.com/electron/electron/pull/53653))</sup> - Fixed typing not working after closing an `alert()` or `confirm()` on Windows. [#&#8203;54460](https://github.com/electron/electron/pull/54460) <sup>(Also in [43](https://github.com/electron/electron/pull/54462), [44](https://github.com/electron/electron/pull/54461))</sup> - Fixed `Uncaught illegal access` errors and renderer crashes when closing a same-process child window or removing an iframe with `nodeIntegrationInSubFrames` enabled, and when native modules use napi async work or thread-safe functions from such windows and frames. [#&#8203;52964](https://github.com/electron/electron/pull/52964) <sup>(Also in [42](https://github.com/electron/electron/pull/53042), [43](https://github.com/electron/electron/pull/53041), [44](https://github.com/electron/electron/pull/53040))</sup> - Fixed unnecessary autofill popup creation for fields without datalist suggestions, which could cause input latency on macOS. [#&#8203;52262](https://github.com/electron/electron/pull/52262) <sup>(Also in [41](https://github.com/electron/electron/pull/52320), [42](https://github.com/electron/electron/pull/52319), [43](https://github.com/electron/electron/pull/52321), [44](https://github.com/electron/electron/pull/52318))</sup> - Fixed utility process crashes at exit on Windows 11 24H2 and later. [#&#8203;53038](https://github.com/electron/electron/pull/53038) <sup>(Also in [42](https://github.com/electron/electron/pull/53091), [43](https://github.com/electron/electron/pull/53092), [44](https://github.com/electron/electron/pull/53093))</sup> - Fixed `utilityProcess` dropping messages posted with `process.parentPort.postMessage()` right before the process exits. [#&#8203;54956](https://github.com/electron/electron/pull/54956) <sup>(Also in [42](https://github.com/electron/electron/pull/55000), [43](https://github.com/electron/electron/pull/54962))</sup> - Fixed `utilityProcess` dropping `stdout`/`stderr` output that the child wrote immediately before exiting. [#&#8203;54335](https://github.com/electron/electron/pull/54335) <sup>(Also in [42](https://github.com/electron/electron/pull/54332), [43](https://github.com/electron/electron/pull/54279), [44](https://github.com/electron/electron/pull/54278))</sup> - Fixed V8 code caching for https scripts loaded by `file://` and custom-scheme pages. [#&#8203;53746](https://github.com/electron/electron/pull/53746) <sup>(Also in [44](https://github.com/electron/electron/pull/53745))</sup> - Fixed visual zoom limits resetting on navigation and not applying to webviews. [#&#8203;54438](https://github.com/electron/electron/pull/54438) <sup>(Also in [43](https://github.com/electron/electron/pull/54450), [44](https://github.com/electron/electron/pull/54449))</sup> - Fixed WebAssembly modules loaded from the code cache crashing or throwing `RuntimeError: unreachable` after updating between certain patch releases. [#&#8203;54237](https://github.com/electron/electron/pull/54237) <sup>(Also in [42](https://github.com/electron/electron/pull/54239), [43](https://github.com/electron/electron/pull/54238), [44](https://github.com/electron/electron/pull/54246))</sup> - Fixed WebAuthn platform passkey requests on macOS hanging until the request timeout when an operation failed, and a potential crash when selecting between Touch ID and platform passkeys. [#&#8203;52682](https://github.com/electron/electron/pull/52682) - Fixed `webContents` emitting `unresponsive` right after the system wakes from sleep on Windows, and emitting `responsive` when a hung window was hidden rather than when it recovered. [#&#8203;53760](https://github.com/electron/electron/pull/53760) <sup>(Also in [44](https://github.com/electron/electron/pull/53764))</sup> - Fixed `webContents.capturePage()` on offscreen windows returning an image resampled to the display's scale factor instead of rendered at the window's `offscreen.deviceScaleFactor`. [#&#8203;53817](https://github.com/electron/electron/pull/53817) <sup>(Also in [43](https://github.com/electron/electron/pull/53818), [44](https://github.com/electron/electron/pull/53816))</sup> - Fixed `webContents.executeJavaScript()` with `userGesture` set not granting browser-side user activation, which could make activation-gated APIs fail. [#&#8203;54959](https://github.com/electron/electron/pull/54959) - Fixed `webContents.executeJavaScriptInIsolatedWorld` resolving with `undefined` when `worldId` was not an integer. [#&#8203;53205](https://github.com/electron/electron/pull/53205) <sup>(Also in [43](https://github.com/electron/electron/pull/53237), [44](https://github.com/electron/electron/pull/53238))</sup> - Fixed `webContents.on()`, `removeListener()` and `removeAllListeners()` throwing "Object has been destroyed" for `console-message` listeners after the WebContents was destroyed. [#&#8203;53495](https://github.com/electron/electron/pull/53495) <sup>(Also in [42](https://github.com/electron/electron/pull/53497), [43](https://github.com/electron/electron/pull/53496), [44](https://github.com/electron/electron/pull/53494))</sup> - Fixed `webContents.print()` honoring `printBackground`, `duplexMode`, and printer default duplex settings. [#&#8203;52279](https://github.com/electron/electron/pull/52279) <sup>(Also in [42](https://github.com/electron/electron/pull/53158), [43](https://github.com/electron/electron/pull/53160), [44](https://github.com/electron/electron/pull/53159))</sup> - Fixed `webview.findInPage()` hanging when the host page also has an iframe. [#&#8203;54585](https://github.com/electron/electron/pull/54585) <sup>(Also in [43](https://github.com/electron/electron/pull/54584), [44](https://github.com/electron/electron/pull/54586))</sup> - Fixed `win.isFullScreen()` being stale in fullscreen events on Windows. [#&#8203;55008](https://github.com/electron/electron/pull/55008) <sup>(Also in [44](https://github.com/electron/electron/pull/55009))</sup> - Fixed `win.setEnabled(false)` and modal child windows not blocking input on Wayland. [#&#8203;54448](https://github.com/electron/electron/pull/54448) <sup>(Also in [43](https://github.com/electron/electron/pull/54446), [44](https://github.com/electron/electron/pull/54447))</sup> - Fixed Window Controls Overlay caption buttons not rendering on Linux. [#&#8203;52577](https://github.com/electron/electron/pull/52577) <sup>(Also in [44](https://github.com/electron/electron/pull/52580))</sup> - Fixed Window Controls Overlay CSS environment variables and `navigator.windowControlsOverlay` not being populated for `WebContentsView`s in a `BaseWindow`. [#&#8203;53811](https://github.com/electron/electron/pull/53811) <sup>(Also in [44](https://github.com/electron/electron/pull/53812))</sup> - Fixed window state not being persisted when a window entered or left fullscreen, or was maximized or unmaximized, without also being moved or resized. [#&#8203;53577](https://github.com/electron/electron/pull/53577) <sup>(Also in [44](https://github.com/electron/electron/pull/53576))</sup> - Fixed windows native message boxes being dismissed by other applications using invalid button ID. [#&#8203;52812](https://github.com/electron/electron/pull/52812) <sup>(Also in [43](https://github.com/electron/electron/pull/53155), [44](https://github.com/electron/electron/pull/53154))</sup> - Fixed windows opened by a sandboxed top-level frame not inheriting the opener's sandbox restrictions. [#&#8203;52841](https://github.com/electron/electron/pull/52841) <sup>(Also in [41](https://github.com/electron/electron/pull/52849), [42](https://github.com/electron/electron/pull/52850), [43](https://github.com/electron/electron/pull/52848), [44](https://github.com/electron/electron/pull/52851))</sup> - Fixed zoom in/out getting stuck after zooming past the 25%-500% range. [#&#8203;54395](https://github.com/electron/electron/pull/54395) <sup>(Also in [43](https://github.com/electron/electron/pull/54422), [44](https://github.com/electron/electron/pull/54421))</sup> - Fixed `setVisualZoomLevelLimits()` shrinking pages when the minimum is under 1. - Fixed webContents.print() returning "Invalid printer settings" when print options are provided. [#&#8203;52367](https://github.com/electron/electron/pull/52367) <sup>(Also in [43](https://github.com/electron/electron/pull/52381), [44](https://github.com/electron/electron/pull/52382))</sup> - Fixeed document title updates when using back/forward navigation using the same document without utilizing `browserWindow.setTitle()`. [#&#8203;52089](https://github.com/electron/electron/pull/52089) <sup>(Also in [42](https://github.com/electron/electron/pull/53099), [43](https://github.com/electron/electron/pull/53023), [44](https://github.com/electron/electron/pull/52968))</sup> - `getUserMedia` with `chromeMediaSource: 'desktop'` no longer accepts WebContents source ids; use `chromeMediaSource: 'tab'` with `webContents.getMediaSourceId()` or `setDisplayMediaRequestHandler` to capture a WebContents. [#&#8203;53708](https://github.com/electron/electron/pull/53708) <sup>(Also in [42](https://github.com/electron/electron/pull/53710), [43](https://github.com/electron/electron/pull/53707), [44](https://github.com/electron/electron/pull/53709))</sup> - Internal `<webview>`, `window.close()` and `executeJavaScript` reply IPCs are validated against the sending frame. [#&#8203;53724](https://github.com/electron/electron/pull/53724) <sup>(Also in [42](https://github.com/electron/electron/pull/53727), [43](https://github.com/electron/electron/pull/53726), [44](https://github.com/electron/electron/pull/53723))</sup> - `nodeIntegrationInWorker` now applies only to workers created by frames that themselves have Node integration; enable `nodeIntegrationInSubFrames` to keep Node in workers created by subframes. [#&#8203;53706](https://github.com/electron/electron/pull/53706) <sup>(Also in [42](https://github.com/electron/electron/pull/53713), [43](https://github.com/electron/electron/pull/53712), [44](https://github.com/electron/electron/pull/53711))</sup> - `openExternal` permission requests started by a frame that has since gone away are attributed to that frame's origin rather than to the navigating page. [#&#8203;53696](https://github.com/electron/electron/pull/53696) <sup>(Also in [42](https://github.com/electron/electron/pull/53697), [43](https://github.com/electron/electron/pull/53698), [44](https://github.com/electron/electron/pull/53699))</sup> - `pointerLock` and `keyboardLock` permission requests now report the requesting frame, and `execCommand('paste')` requires user activation in the frame that calls it. [#&#8203;53692](https://github.com/electron/electron/pull/53692) <sup>(Also in [42](https://github.com/electron/electron/pull/53702), [43](https://github.com/electron/electron/pull/53701), [44](https://github.com/electron/electron/pull/53693))</sup> - Reduced the cost of calling native methods and properties on `BrowserWindow`, `BaseWindow`, `WebContents`, `WebFrameMain` and `View` from JavaScript. [#&#8203;54359](https://github.com/electron/electron/pull/54359) - Fixed `BaseWindow.setBounds()` throwing when given a partial bounds object. - Improved the performance of `app.getName()`, `app.name`, `app.getVersion()` and `app.getAppPath()`. #### Performance Improvements - Fixed a stall of tens of milliseconds while creating the first `BrowserWindow` on Linux. [#&#8203;52923](https://github.com/electron/electron/pull/52923) <sup>(Also in [42](https://github.com/electron/electron/pull/53019), [43](https://github.com/electron/electron/pull/53018), [44](https://github.com/electron/electron/pull/53017))</sup> - Improved the performance of file lookups inside ASAR archives and of large files served from them to the renderer. - Improved the performance of calls through `contextBridge`-exposed APIs. - Improved the performance of `Buffer.allocUnsafe()` and of large file reads in the main and utility processes. - Reduced the main-thread cost of sending large values through `ipcRenderer`, `ipcMain` handlers and `webContents.send`. - Fixed the app becoming unresponsive when a page has a very large number of `app-region` draggable elements. [#&#8203;53596](https://github.com/electron/electron/pull/53596) <sup>(Also in [43](https://github.com/electron/electron/pull/53632), [44](https://github.com/electron/electron/pull/53597))</sup> - Improved application startup time on Linux by skipping GDK's OpenGL probe and loading FontConfig off the main thread during toolkit initialization. [#&#8203;53070](https://github.com/electron/electron/pull/53070) <sup>(Also in [43](https://github.com/electron/electron/pull/53108), [44](https://github.com/electron/electron/pull/53107))</sup> - Improved cold-launch time on macOS by prefetching Electron's framework files. [#&#8203;54528](https://github.com/electron/electron/pull/54528) - Improved startup time of `utilityProcess.fork()`, `child_process.fork()` / `ELECTRON_RUN_AS_NODE` child processes and Node.js-enabled renderers. [#&#8203;52873](https://github.com/electron/electron/pull/52873) <sup>(Also in [42](https://github.com/electron/electron/pull/53136), [43](https://github.com/electron/electron/pull/53135), [44](https://github.com/electron/electron/pull/53134))</sup> - Improved the error message when an asar integrity check fails to name the entry that failed. [#&#8203;52600](https://github.com/electron/electron/pull/52600) <sup>(Also in [42](https://github.com/electron/electron/pull/52623), [43](https://github.com/electron/electron/pull/52622), [44](https://github.com/electron/electron/pull/52624))</sup> - Improved the performance of APIs that return rectangles, sizes, points and display objects. [#&#8203;54213](https://github.com/electron/electron/pull/54213) <sup>(Also in [44](https://github.com/electron/electron/pull/54215))</sup> - Improved the performance of building and showing menus. [#&#8203;53914](https://github.com/electron/electron/pull/53914) - Improved the performance of `fs` operations and `require()` on files inside asar archives. [#&#8203;53919](https://github.com/electron/electron/pull/53919) <sup>(Also in [44](https://github.com/electron/electron/pull/54051))</sup> - Improved the performance of `session.getUserAgent()`. [#&#8203;54245](https://github.com/electron/electron/pull/54245) <sup>(Also in [44](https://github.com/electron/electron/pull/54244))</sup> - Improved throughput of responses that `protocol.handle` handlers return straight from `net.fetch`. [#&#8203;53379](https://github.com/electron/electron/pull/53379) <sup>(Also in [44](https://github.com/electron/electron/pull/53378))</sup> - Page resources, `fetch()` calls and file:// loads in renderers no longer wait for the main process to be idle when no `webRequest` listeners or protocol interceptors are registered. [#&#8203;53115](https://github.com/electron/electron/pull/53115) <sup>(Also in [42](https://github.com/electron/electron/pull/53143), [43](https://github.com/electron/electron/pull/53142), [44](https://github.com/electron/electron/pull/53141))</sup> - Reduced idle main-process CPU wakeups caused by Node.js timers and immediates. [#&#8203;52862](https://github.com/electron/electron/pull/52862) <sup>(Also in [43](https://github.com/electron/electron/pull/52905), [44](https://github.com/electron/electron/pull/52906))</sup> - Reduced the macOS distribution size by shipping only the locale strings that Electron can actually use. [#&#8203;52290](https://github.com/electron/electron/pull/52290) - Renderer network requests no longer waited on the main process when the session's `webRequest` listeners only observe requests (`onCompleted`, `onErrorOccurred`, `onSendHeaders`, `onBeforeRedirect`, `onResponseStarted`) or are filtered to other resource types. [#&#8203;53204](https://github.com/electron/electron/pull/53204) <sup>(Also in [44](https://github.com/electron/electron/pull/53240))</sup> - The first sandboxed `BrowserWindow` now starts in a renderer process launched ahead of time when the default session already exists, shortening the time from window creation to the page's first script; apps that open many windows can keep a spare renderer warm at all times with `--enable-features=SpareRendererForSitePerProcess`. [#&#8203;53116](https://github.com/electron/electron/pull/53116) <sup>(Also in [44](https://github.com/electron/electron/pull/53144))</sup> #### Other Changes - Backported fix from upstream V8. [#&#8203;53987](https://github.com/electron/electron/pull/53987) - Backported fixes from upstream ANGLE, Chromium, PDFium and V8. [#&#8203;54220](https://github.com/electron/electron/pull/54220) - Backported fixes from upstream ANGLE, Chromium, PDFium and V8. [#&#8203;54897](https://github.com/electron/electron/pull/54897) - Backported fixes from upstream ANGLE, Chromium, Skia and V8. [#&#8203;53983](https://github.com/electron/electron/pull/53983) - Backported fixes from upstream Chromium and V8. [#&#8203;53765](https://github.com/electron/electron/pull/53765) - Backported fixes from upstream Chromium and WebRTC. [#&#8203;54656](https://github.com/electron/electron/pull/54656) - Backported fixes from upstream Chromium, PDFium and V8. [#&#8203;54084](https://github.com/electron/electron/pull/54084) - Backported fixes from upstream Chromium, PDFium, Skia and V8. [#&#8203;55145](https://github.com/electron/electron/pull/55145) - Backported fixes from upstream Chromium, V8 and WebRTC. [#&#8203;54664](https://github.com/electron/electron/pull/54664) - Backported fixes from upstream Chromium. [#&#8203;55031](https://github.com/electron/electron/pull/55031) - Deprecated the synchronous `safeStorage.isEncryptionAvailable()`, `safeStorage.encryptString()` and `safeStorage.decryptString()` in favor of `isAsyncEncryptionAvailable()`, `encryptStringAsync()` and `decryptStringAsync()`. [#&#8203;53850](https://github.com/electron/electron/pull/53850) - Electron's internal JavaScript bundles are no longer listed in `require('module').builtinModules` or loadable through `process.getBuiltinModule()`. [#&#8203;53624](https://github.com/electron/electron/pull/53624) - Linux arm64, Windows arm64 and macOS x64 builds now start the main process from the embedded Node.js startup snapshot like the other platforms, improving startup time. [#&#8203;52874](https://github.com/electron/electron/pull/52874) <sup>(Also in [42](https://github.com/electron/electron/pull/52880), [43](https://github.com/electron/electron/pull/52881), [44](https://github.com/electron/electron/pull/52879))</sup> - None (reverts an unreleased change). [#&#8203;52323](https://github.com/electron/electron/pull/52323) - Refactored mouse forwarding on Windows to fix `setIgnoreMouseEvents(true, { forward: true })` related issues. [#&#8203;54803](https://github.com/electron/electron/pull/54803) <sup>(Also in [44](https://github.com/electron/electron/pull/54802))</sup> - The non-functional dummy libEGL.so and libGLESv2.so files are no longer included in the Linux distribution, now that ANGLE is statically linked. [#&#8203;52226](https://github.com/electron/electron/pull/52226) <sup>(Also in [44](https://github.com/electron/electron/pull/52227))</sup> #### Documentation - Documentation changes: [#&#8203;52337](https://github.com/electron/electron/pull/52337), [#&#8203;53170](https://github.com/electron/electron/pull/53170), [#&#8203;53202](https://github.com/electron/electron/pull/53202), [#&#8203;54343](https://github.com/electron/electron/pull/54343), [#&#8203;54588](https://github.com/electron/electron/pull/54588), [#&#8203;54882](https://github.com/electron/electron/pull/54882) #### Notices ##### End of Support for 42.x.y Electron 42.x.y has reached end-of-support as per the project's [support policy](https://www.electronjs.org/docs/latest/tutorial/electron-timelines#version-support-policy). Developers and applications are encouraged to upgrade to a newer version of Electron. ### [`v44.10.1`](https://github.com/electron/electron/releases/tag/v44.10.1): electron v44.10.1 [Compare Source](https://github.com/electron/electron/compare/v44.10.0...v44.10.1) ### Release Notes for v44.10.1 #### Fixes - Fixed DevTools "Save" prompting for a location every time instead of reusing the previously chosen file. [#&#8203;55484](https://github.com/electron/electron/pull/55484) - Fixed DevTools "Save As" using the old file and Linux cancels treated as saved. - Fixed `webContents.adjustSelection()` ignoring the `end` option. [#&#8203;55461](https://github.com/electron/electron/pull/55461) <sup>(Also in [45](https://github.com/electron/electron/pull/55462), [46](https://github.com/electron/electron/pull/55463))</sup> #### Performance Improvements - Improved performance of `net.fetch()` requests without a body. [#&#8203;55445](https://github.com/electron/electron/pull/55445) <sup>(Also in [43](https://github.com/electron/electron/pull/55447), [45](https://github.com/electron/electron/pull/55446), [46](https://github.com/electron/electron/pull/55444))</sup> - Improved performance of repeated `net.fetch()` calls for `file:` URLs. [#&#8203;55458](https://github.com/electron/electron/pull/55458) <sup>(Also in [45](https://github.com/electron/electron/pull/55459), [46](https://github.com/electron/electron/pull/55457))</sup> #### Other Changes - Backported fixes from upstream Chromium, Dawn, Skia and V8. [#&#8203;55492](https://github.com/electron/electron/pull/55492) ### [`v44.10.0`](https://github.com/electron/electron/releases/tag/v44.10.0): electron v44.10.0 [Compare Source](https://github.com/electron/electron/compare/v44.9.3...v44.10.0) ### Release Notes for v44.10.0 #### Features - Added filtering options to `session.registerPreloadScript` - `matches`, `excludeMatches`, `includeGlobs`, `excludeGlobs`, `matchOriginAsFallback`. [#&#8203;55182](https://github.com/electron/electron/pull/55182) <sup>(Also in [45](https://github.com/electron/electron/pull/55181))</sup> #### Fixes - Fixed a crash on Linux when a D-Bus method call was made on a disconnected bus. [#&#8203;55290](https://github.com/electron/electron/pull/55290) <sup>(Also in [45](https://github.com/electron/electron/pull/55292), [46](https://github.com/electron/electron/pull/55289))</sup> - Fixed a main process crash when `onSendHeaders` observed Blob uploads. [#&#8203;55168](https://github.com/electron/electron/pull/55168) <sup>(Also in [45](https://github.com/electron/electron/pull/55169))</sup> - Fixed `app.getLoginItemSettings()` not finding login items on Windows when the executable path contains spaces. [#&#8203;55207](https://github.com/electron/electron/pull/55207) <sup>(Also in [45](https://github.com/electron/electron/pull/54419))</sup> - Fixed Europe/London and Europe/Dublin time zone names showing as "GMT+00:00" in winter by updating ICU to tzdata 2026e. [#&#8203;55335](https://github.com/electron/electron/pull/55335) - Fixed File System Access blocklist gaps for `.git/hooks` writes and hypervisor UNC shares. [#&#8203;55330](https://github.com/electron/electron/pull/55330) - Fixed handling of malformed asar archives whose size fields do not match the file length. [#&#8203;55176](https://github.com/electron/electron/pull/55176) <sup>(Also in [43](https://github.com/electron/electron/pull/55179), [45](https://github.com/electron/electron/pull/55175))</sup> - Fixed inconsistent handling of asar archive paths between the main process and child processes. [#&#8203;55183](https://github.com/electron/electron/pull/55183) <sup>(Also in [43](https://github.com/electron/electron/pull/55185), [45](https://github.com/electron/electron/pull/55184))</sup> - Fixed `Menu.popup()` on macOS sometimes not showing a menu after another closed. [#&#8203;55325](https://github.com/electron/electron/pull/55325) <sup>(Also in [45](https://github.com/electron/electron/pull/55326), [46](https://github.com/electron/electron/pull/55324))</sup> - Fixed MV3 extension events not arriving to background service workers. [#&#8203;55152](https://github.com/electron/electron/pull/55152) <sup>(Also in [43](https://github.com/electron/electron/pull/55153), [45](https://github.com/electron/electron/pull/55154))</sup> - Fixed paste hanging indefinitely on Linux X11 until the app was restarted. [#&#8203;55327](https://github.com/electron/electron/pull/55327) - Fixed `protocol.registerSource` schemes not applying the same fetch rules as `protocol.handle` schemes. [#&#8203;55177](https://github.com/electron/electron/pull/55177) <sup>(Also in [45](https://github.com/electron/electron/pull/55178))</sup> - Fixed `utilityProcess` not emitting an `exit` event when the app quit while the process was still launching. [#&#8203;55273](https://github.com/electron/electron/pull/55273) <sup>(Also in [43](https://github.com/electron/electron/pull/55272), [45](https://github.com/electron/electron/pull/55274), [46](https://github.com/electron/electron/pull/55264))</sup> #### Other Changes - Updated Chromium to 152.0.7977.169. [#&#8203;55033](https://github.com/electron/electron/pull/55033) - Updated Node.js to v24.22.1. [#&#8203;55162](https://github.com/electron/electron/pull/55162) ### [`v44.9.3`](https://github.com/electron/electron/releases/tag/v44.9.3): electron v44.9.3 [Compare Source](https://github.com/electron/electron/compare/v44.9.2...v44.9.3) ### Release Notes for v44.9.3 #### Other Changes - Backported fixes from upstream ANGLE, Chromium, PDFium, Skia and V8. [#&#8203;55149](https://github.com/electron/electron/pull/55149) ### [`v44.9.2`](https://github.com/electron/electron/releases/tag/v44.9.2): electron v44.9.2 [Compare Source](https://github.com/electron/electron/compare/v44.9.1...v44.9.2) ### Release Notes for v44.9.2 ### [`v44.9.1`](https://github.com/electron/electron/releases/tag/v44.9.1): electron v44.9.1 [Compare Source](https://github.com/electron/electron/compare/v44.9.0...v44.9.1) ### Release Notes for v44.9.1 > \[!NOTE] > This release contains the fix for <https://github.com/electron/electron/security/advisories/GHSA-jr5w-w6x2-84p9>, the mitigation for compromised eMudhra intermediate certificates ### [`v44.9.0`](https://github.com/electron/electron/releases/tag/v44.9.0): electron v44.9.0 [Compare Source](https://github.com/electron/electron/compare/v44.8.0...v44.9.0) ### Release Notes for v44.9.0 #### Features - Added app shims on macOS to show windows under another app's Dock icon. [#&#8203;55073](https://github.com/electron/electron/pull/55073) <sup>(Also in [45](https://github.com/electron/electron/pull/55072))</sup> #### Fixes - Fixed link-opened windows not using the opener's session and `webPreferences`. [#&#8203;55048](https://github.com/electron/electron/pull/55048) <sup>(Also in [42](https://github.com/electron/electron/pull/55050), [43](https://github.com/electron/electron/pull/55049), [45](https://github.com/electron/electron/pull/55051))</sup> - Fixed `setCertificateVerifyProc` occasionally not being applied to a request issued concurrently with the first request to a host. [#&#8203;55046](https://github.com/electron/electron/pull/55046) <sup>(Also in [42](https://github.com/electron/electron/pull/55054), [43](https://github.com/electron/electron/pull/55047), [45](https://github.com/electron/electron/pull/55045))</sup> ### [`v44.8.0`](https://github.com/electron/electron/releases/tag/v44.8.0): electron v44.8.0 [Compare Source](https://github.com/electron/electron/compare/v44.7.2...v44.8.0) ### Release Notes for v44.8.0 #### Features - Added support for `Notification` action buttons on Linux. [#&#8203;54890](https://github.com/electron/electron/pull/54890) <sup>(Also in [45](https://github.com/electron/electron/pull/54889))</sup> #### Fixes - Fixed mouse cursor missing over native dialogs in certain scenarios on Windows. [#&#8203;54987](https://github.com/electron/electron/pull/54987) - Fixed `net.fetch` and `session.fetch` failing permanently with `net::ERR_FAILED` after the Network Service process restarts. [#&#8203;54909](https://github.com/electron/electron/pull/54909) <sup>(Also in [42](https://github.com/electron/electron/pull/54925), [43](https://github.com/electron/electron/pull/54908), [45](https://github.com/electron/electron/pull/54910))</sup> - Fixed `utilityProcess` dropping messages posted with `process.parentPort.postMessage()` right before the process exits. [#&#8203;54960](https://github.com/electron/electron/pull/54960) <sup>(Also in [42](https://github.com/electron/electron/pull/55000), [43](https://github.com/electron/electron/pull/54962), [45](https://github.com/electron/electron/pull/54956))</sup> - Fixed `win.isFullScreen()` being stale in fullscreen events on Windows. [#&#8203;55009](https://github.com/electron/electron/pull/55009) <sup>(Also in [45](https://github.com/electron/electron/pull/55008))</sup> #### Other Changes - Backported fixes from upstream Chromium and V8. [#&#8203;55034](https://github.com/electron/electron/pull/55034) - Updated Chromium to 152.0.7977.167. [#&#8203;54928](https://github.com/electron/electron/pull/54928) - Updated Node.js to v24.22.0. [#&#8203;55004](https://github.com/electron/electron/pull/55004) ### [`v44.7.2`](https://github.com/electron/electron/releases/tag/v44.7.2): electron v44.7.2 [Compare Source](https://github.com/electron/electron/compare/v44.7.1...v44.7.2) ### Release Notes for v44.7.2 #### Fixes - Fixed an issue where clicks posted to a background app were dropped on macOS. [#&#8203;54819](https://github.com/electron/electron/pull/54819) <sup>(Also in [45](https://github.com/electron/electron/pull/54818))</sup> - Fixed interrupted macOS updates leaving a broken app behind. [#&#8203;54844](https://github.com/electron/electron/pull/54844) <sup>(Also in [45](https://github.com/electron/electron/pull/54843))</sup> #### Other Changes - Backported fixes from upstream ANGLE, Chromium, PDFium and V8. [#&#8203;54898](https://github.com/electron/electron/pull/54898) #### Documentation - Documentation changes: [#&#8203;54880](https://github.com/electron/electron/pull/54880) ### [`v44.7.1`](https://github.com/electron/electron/releases/tag/v44.7.1): electron v44.7.1 [Compare Source](https://github.com/electron/electron/compare/v44.7.0...v44.7.1) ### Release Notes for v44.7.1 #### Fixes - Fixed a crash when starting without an available display server on Linux. [#&#8203;54794](https://github.com/electron/electron/pull/54794) <sup>(Also in [45](https://github.com/electron/electron/pull/54781))</sup> - Fixed a Linux crash creating a window with a menu bar when GTK failed to load. [#&#8203;54859](https://github.com/electron/electron/pull/54859) <sup>(Also in [45](https://github.com/electron/electron/pull/54846))</sup> - Fixed a `WebContentsView` that was removed with `removeChildView()` and re-added with `addChildView()` staying hidden behind its sibling views on Linux. [#&#8203;54798](https://github.com/electron/electron/pull/54798) - Fixed asar archives in non-ASCII folders failing to load on Linux. [#&#8203;54849](https://github.com/electron/electron/pull/54849) <sup>(Also in [45](https://github.com/electron/electron/pull/54848))</sup> - Fixed renderer crashes during garbage collection inside ShadowRealms. [#&#8203;54865](https://github.com/electron/electron/pull/54865) <sup>(Also in [45](https://github.com/electron/electron/pull/54864))</sup> #### Other Changes - Refactored mouse forwarding on Windows to fix `setIgnoreMouseEvents(true, { forward: true })` related issues. [#&#8203;54802](https://github.com/electron/electron/pull/54802) <sup>(Also in [45](https://github.com/electron/electron/pull/54803))</sup> - Updated Chromium to 152.0.7977.149. [#&#8203;54085](https://github.com/electron/electron/pull/54085) ### [`v44.7.0`](https://github.com/electron/electron/releases/tag/v44.7.0): electron v44.7.0 [Compare Source](https://github.com/electron/electron/compare/v44.6.0...v44.7.0) ### Release Notes for v44.7.0 #### Features - The macOS `autoUpdater` now streams update downloads to disk, resumes an interrupted download on the next check instead of starting over, and applies a binary delta when the update feed offers one for the running version. [#&#8203;54204](https://github.com/electron/electron/pull/54204) #### Fixes - Fixed an uncatchable TypeError in `net.fetch` when receiving response headers with non-ASCII characters, and preserved multiple Set-Cookie headers. [#&#8203;54672](https://github.com/electron/electron/pull/54672) #### Other Changes - Backported fixes from upstream ANGLE, Chromium, Dawn, fontconfig, Skia, V8 and WebRTC. [#&#8203;54666](https://github.com/electron/electron/pull/54666) - Backported fixes from upstream ANGLE, Chromium, Skia, V8 and WebRTC. [#&#8203;54657](https://github.com/electron/electron/pull/54657) ### [`v44.6.0`](https://github.com/electron/electron/releases/tag/v44.6.0): electron v44.6.0 [Compare Source](https://github.com/electron/electron/compare/v44.5.1...v44.6.0) ### Release Notes for v44.6.0 #### Features - Added the experimental `protocol.registerSource()` to serve a custom scheme from directories on disk without a JavaScript handler. [#&#8203;54522](https://github.com/electron/electron/pull/54522) <sup>(Also in [45](https://github.com/electron/electron/pull/54521))</sup> #### Fixes - Fixed a crash on launch on macOS when the system refused to register the app for sleep/wake notifications. [#&#8203;54596](https://github.com/electron/electron/pull/54596) - Fixed a crash on `navigator.usb.requestDevice()` in in-memory sessions. [#&#8203;54616](https://github.com/electron/electron/pull/54616) <sup>(Also in [45](https://github.com/electron/electron/pull/54615))</sup> - Fixed `webview.findInPage()` hanging when the host page also has an iframe. [#&#8203;54586](https://github.com/electron/electron/pull/54586) <sup>(Also in [43](https://github.com/electron/electron/pull/54584), [45](https://github.com/electron/electron/pull/54585))</sup> - Updated time zone data to tzdata 2026d, including British Columbia's move to permanent UTC-7. [#&#8203;54623](https://github.com/electron/electron/pull/54623) #### Documentation - Documentation changes: [#&#8203;54589](https://github.com/electron/electron/pull/54589) ### [`v44.5.1`](https://github.com/electron/electron/releases/tag/v44.5.1): electron v44.5.1 [Compare Source](https://github.com/electron/electron/compare/v44.5.0...v44.5.1) ### Release Notes for v44.5.1 #### Other Changes - Backported fixes from upstream ANGLE, Chromium, Dawn and V8. [#&#8203;54564](https://github.com/electron/electron/pull/54564) ### [`v44.5.0`](https://github.com/electron/electron/releases/tag/v44.5.0): electron v44.5.0 [Compare Source](https://github.com/electron/electron/compare/v44.4.5...v44.5.0) ### Release Notes for v44.5.0 #### Features - Added launch-failure reporting with `systemErrorCode` to the `app` `child-process-gone` event. [#&#8203;54231](https://github.com/electron/electron/pull/54231) <sup>(Also in [45](https://github.com/electron/electron/pull/54230))</sup> #### Fixes - Changed the default trash implementation on KDE Plasma 6 to `kioclient`. [#&#8203;54361](https://github.com/electron/electron/pull/54361) <sup>(Also in [45](https://github.com/electron/electron/pull/54362))</sup> - DevTools zoom in/out now uses the same zoom steps as Chromium. [#&#8203;54387](https://github.com/electron/electron/pull/54387) <sup>(Also in [45](https://github.com/electron/electron/pull/54388))</sup> - Fixed `--xdg-portal-required-version` having no effect and a spurious portal warning being logged for file dialogs on Linux. [#&#8203;54303](https://github.com/electron/electron/pull/54303) <sup>(Also in [43](https://github.com/electron/electron/pull/54304), [45](https://github.com/electron/electron/pull/54302))</sup> - Fixed a child `WebContentsView` losing focus when its window is reactivated. [#&#8203;54455](https://github.com/electron/electron/pull/54455) <sup>(Also in [43](https://github.com/electron/electron/pull/54456), [45](https://github.com/electron/electron/pull/54454))</sup> - Fixed a crash when a WebAuthn request used a security key that required its PIN. [#&#8203;54403](https://github.com/electron/electron/pull/54403) <sup>(Also in [45](https://github.com/electron/electron/pull/54389))</sup> - Fixed a crash when creating a framed window on Wayland in environments where GTK could not initialize. [#&#8203;54420](https://github.com/electron/electron/pull/54420) <sup>(Also in [45](https://github.com/electron/electron/pull/54399))</sup> - Fixed a crash when sending a DevTools protocol command with a non-string value for an optional string parameter via `webContents.debugger`. [#&#8203;54445](https://github.com/electron/electron/pull/54445) <sup>(Also in [43](https://github.com/electron/electron/pull/54443), [45](https://github.com/electron/electron/pull/54444))</sup> - Fixed a GPU process crash on startup when another instance of the app is using the same session data directory. [#&#8203;54469](https://github.com/electron/electron/pull/54469) - Fixed a grey border around frameless windows on Linux WMs without compositing. [#&#8203;54391](https://github.com/electron/electron/pull/54391) <sup>(Also in [43](https://github.com/electron/electron/pull/54390), [45](https://github.com/electron/electron/pull/54392))</sup> - Fixed a main process crash when a native API method was called with a `this` value of a different native type; it now throws a `TypeError`. [#&#8203;54315](https://github.com/electron/electron/pull/54315) <sup>(Also in [43](https://github.com/electron/electron/pull/54316))</sup> - Fixed a possible crash during process exit when `vm.Script` or `vm` contexts created in the main process had been garbage collected shortly before quitting. [#&#8203;54266](https://github.com/electron/electron/pull/54266) <sup>(Also in [43](https://github.com/electron/electron/pull/54268), [45](https://github.com/electron/electron/pull/54267))</sup> - Fixed a possible crash on Windows on ARM when `powerMonitor` is torn down. [#&#8203;54408](https://github.com/electron/electron/pull/54408) <sup>(Also in [45](https://github.com/electron/electron/pull/54384))</sup> - Fixed a renderer crash calling `image.toPNG()` from a sandboxed preload script. [#&#8203;54502](https://github.com/electron/electron/pull/54502) <sup>(Also in [43](https://github.com/electron/electron/pull/54503), [45](https://github.com/electron/electron/pull/54501))</sup> - Fixed a renderer crash when a `ResizeObserver` loop-limit error handler modified layout. [#&#8203;54290](https://github.com/electron/electron/pull/54290) <sup>(Also in [45](https://github.com/electron/electron/pull/54289))</sup> - Fixed `accent-color-changed` on Windows reporting a colour that differed from `systemPreferences.getAccentColor()`. [#&#8203;54409](https://github.com/electron/electron/pull/54409) <sup>(Also in [45](https://github.com/electron/electron/pull/54405))</sup> - Fixed an issue where `crashReporter.setUploadToServer()` had no effect after `crashReporter.start()` was called. [#&#8203;54518](https://github.com/electron/electron/pull/54518) <sup>(Also in [45](https://github.com/electron/electron/pull/54519))</sup> - Fixed `app.getRecentDocuments()` omitting documents with non-ASCII paths on Windows. [#&#8203;54407](https://github.com/electron/electron/pull/54407) <sup>(Also in [45](https://github.com/electron/electron/pull/54385))</sup> - Fixed `clipboard.read()`, `readText()` and `has()` resolving seconds late on Linux while the app was idle. [#&#8203;54308](https://github.com/electron/electron/pull/54308) <sup>(Also in [42](https://github.com/electron/electron/pull/54310), [43](https://github.com/electron/electron/pull/54309), [45](https://github.com/electron/electron/pull/54307))</sup> - Fixed `desktopCapturer.getSources()` leaving non-resizable windows resizable on macOS. [#&#8203;54397](https://github.com/electron/electron/pull/54397) <sup>(Also in [43](https://github.com/electron/electron/pull/54396), [45](https://github.com/electron/electron/pull/54398))</sup> - Fixed `fs.rmSync` failing to remove read-only files on Windows. [#&#8203;54255](https://github.com/electron/electron/pull/54255) <sup>(Also in [42](https://github.com/electron/electron/pull/54257), [43](https://github.com/electron/electron/pull/54256), [45](https://github.com/electron/electron/pull/54190))</sup> - Fixed `GDK_BACKEND` leaking into processes spawned by Electron apps on Linux. [#&#8203;54425](https://github.com/electron/electron/pull/54425) <sup>(Also in [43](https://github.com/electron/electron/pull/54426), [45](https://github.com/electron/electron/pull/54424))</sup> - Fixed hidden windows continuing to render at full frame rate after `setBackgroundThrottling(false)` followed by `setBackgroundThrottling(true)`. [#&#8203;54341](https://github.com/electron/electron/pull/54341) <sup>(Also in [45](https://github.com/electron/electron/pull/54339))</sup> - Fixed `pointerLock` permission requests from some iframes reporting the parent frame. [#&#8203;54464](https://github.com/electron/electron/pull/54464) <sup>(Also in [42](https://github.com/electron/electron/pull/54466), [43](https://github.com/electron/electron/pull/54465), [45](https://github.com/electron/electron/pull/54463))</sup> - Fixed `setContentProtection(true)` having no effect in Windows remote sessions. [#&#8203;54500](https://github.com/electron/electron/pull/54500) <sup>(Also in [45](https://github.com/electron/electron/pull/54499))</sup> - Fixed `setIgnoreMouseEvents()` taking effect late on X11. [#&#8203;54497](https://github.com/electron/electron/pull/54497) <sup>(Also in [43](https://github.com/electron/electron/pull/54498), [45](https://github.com/electron/electron/pull/54496))</sup> - Fixed `setIgnoreMouseEvents(true)` being undone by the next resize on X11. [#&#8203;54393](https://github.com/electron/electron/pull/54393) <sup>(Also in [43](https://github.com/electron/electron/pull/54423), [45](https://github.com/electron/electron/pull/54394))</sup> - Added `setIgnoreMouseEvents` support on Wayland. - Fixed `shell.showItemInFolder()` on Linux for paths containing `#`, `?` or `%` when the file manager is reached over D-Bus. [#&#8203;54406](https://github.com/electron/electron/pull/54406) <sup>(Also in [45](https://github.com/electron/electron/pull/54386))</sup> - Fixed the default action label on Linux notifications not being localized. [#&#8203;54401](https://github.com/electron/electron/pull/54401) <sup>(Also in [43](https://github.com/electron/electron/pull/54400), [45](https://github.com/electron/electron/pull/54402))</sup> - Fixed the GPU process crash-looping on Windows when the sandbox cannot read the install folder; the folder is now reported instead. [#&#8203;54484](https://github.com/electron/electron/pull/54484) <sup>(Also in [43](https://github.com/electron/electron/pull/54485), [45](https://github.com/electron/electron/pull/54483))</sup> - Fixed the zoom level resetting on `file:` and other host-less pages after a `location.hash` change. [#&#8203;54442](https://github.com/electron/electron/pull/54442) <sup>(Also in [43](https://github.com/electron/electron/pull/54440), [45](https://github.com/electron/electron/pull/54441))</sup> - Fixed typing not working after closing an `alert()` or `confirm()` on Windows. [#&#8203;54461](https://github.com/electron/electron/pull/54461) <sup>(Also in [43](https://github.com/electron/electron/pull/54462), [45](https://github.com/electron/electron/pull/54460))</sup> - Fixed `utilityProcess` dropping `stdout`/`stderr` output that the child wrote immediately before exiting. [#&#8203;54278](https://github.com/electron/electron/pull/54278) <sup>(Also in [42](https://github.com/electron/electron/pull/54332), [43](https://github.com/electron/electron/pull/54279), [45](https://github.com/electron/electron/pull/54335))</sup> - Fixed visual zoom limits resetting on navigation and not applying to webviews. [#&#8203;54449](https://github.com/electron/electron/pull/54449) <sup>(Also in [43](https://github.com/electron/electron/pull/54450), [45](https://github.com/electron/electron/pull/54438))</sup> - Fixed WebAssembly modules loaded from the code cache crashing or throwing `RuntimeError: unreachable` after updating between certain patch releases. [#&#8203;54246](https://github.com/electron/electron/pull/54246) <sup>(Also in [42](https://github.com/electron/electron/pull/54239), [43](https://github.com/electron/electron/pull/54238), [45](https://github.com/electron/electron/pull/54237))</sup> - Fixed `win.setEnabled(false)` and modal child windows not blocking input on Wayland. [#&#8203;54447](https://github.com/electron/electron/pull/54447) <sup>(Also in [43](https://github.com/electron/electron/pull/54446), [45](https://github.com/electron/electron/pull/54448))</sup> - Fixed zoom in/out getting stuck after zooming past the 25%-500% range. [#&#8203;54421](https://github.com/electron/electron/pull/54421) <sup>(Also in [43](https://github.com/electron/electron/pull/54422), [45](https://github.com/electron/electron/pull/54395))</sup> - Fixed `setVisualZoomLevelLimits()` shrinking pages when the minimum is under 1. #### Performance Improvements - Improved the performance of APIs that return rectangles, sizes, points and display objects. [#&#8203;54215](https://github.com/electron/electron/pull/54215) <sup>(Also in [45](https://github.com/electron/electron/pull/54213))</sup> - Improved the performance of `session.getUserAgent()`. [#&#8203;54244](https://github.com/electron/electron/pull/54244) <sup>(Also in [45](https://github.com/electron/electron/pull/54245))</sup> #### Documentation - Documentation changes: [#&#8203;54342](https://github.com/electron/electron/pull/54342) ### [`v44.4.5`](https://github.com/electron/electron/releases/tag/v44.4.5): electron v44.4.5 [Compare Source](https://github.com/electron/electron/compare/v44.4.4...v44.4.5) ### Release Notes for v44.4.5 #### Other Changes - Backported fixes from upstream ANGLE, Chromium, Dawn, PDFium and V8. [#&#8203;54222](https://github.com/electron/electron/pull/54222) ### [`v44.4.4`](https://github.com/electron/electron/releases/tag/v44.4.4): electron v44.4.4 [Compare Source](https://github.com/electron/electron/compare/v44.4.3...v44.4.4) ### Release Notes for v44.4.4 #### Fixes - Fixed a `Cannot read properties of undefined (reading 'startTime')` error thrown in pages while the DevTools Performance panel's live metrics were active. [#&#8203;54162](https://github.com/electron/electron/pull/54162) - Fixed a crash when calling `setIgnoreMenuShortcuts()` on DevTools. [#&#8203;54116](https://github.com/electron/electron/pull/54116) <sup>(Also in [43](https://github.com/electron/electron/pull/54117), [45](https://github.com/electron/electron/pull/54115))</sup> - Fixed a spurious "`sandboxed_renderer.bundle.js` script failed to run" console error when DevTools attached to a sandboxed frame before its first navigation. [#&#8203;54155](https://github.com/electron/electron/pull/54155) <sup>(Also in [42](https://github.com/electron/electron/pull/54175), [43](https://github.com/electron/electron/pull/54176))</sup> - Fixed alignment of the text label and popup menu in the macOS save dialog. [#&#8203;54143](https://github.com/electron/electron/pull/54143) <sup>(Also in [45](https://github.com/electron/electron/pull/54144))</sup> - Fixed an "Invalid `guestInstanceId`" error when removing a loaded `<webview>` from the DOM. [#&#8203;54099](https://github.com/electron/electron/pull/54099) <sup>(Also in [42](https://github.com/electron/electron/pull/54098), [43](https://github.com/electron/electron/pull/54097), [45](https://github.com/electron/electron/pull/54096))</sup> - Fixed GPU shaders compiled by Skia not being cached between launches. [#&#8203;54161](https://github.com/electron/electron/pull/54161) <sup>(Also in [45](https://github.com/electron/electron/pull/54156))</sup> - Fixed `ready-to-show` never firing for some hidden windows on Windows and Linux. [#&#8203;54118](https://github.com/electron/electron/pull/54118) <sup>(Also in [43](https://github.com/electron/electron/pull/54119), [45](https://github.com/electron/electron/pull/54110))</sup> - Fixed the tray context menu not working for snap-confined apps because AppArmor blocked the `/org/chromium/DbusMenu` path. [#&#8203;54103](https://github.com/electron/electron/pull/54103) <sup>(Also in [45](https://github.com/electron/electron/pull/54102))</sup> ### [`v44.4.3`](https://github.com/electron/electron/releases/tag/v44.4.3): electron v44.4.3 [Compare Source](https://github.com/electron/electron/compare/v44.4.2...v44.4.3) ### Release Notes for v44.4.3 #### Fixes - Fixed `net.fetch()` / `net.request()` spending seconds of main-process time buffering large streamed request bodies. [#&#8203;54061](https://github.com/electron/electron/pull/54061) <sup>(Also in [45](https://github.com/electron/electron/pull/54062))</sup> #### Performance Improvements - Improved the performance of `fs` operations and `require()` on files inside asar archives. [#&#8203;54051](https://github.com/electron/electron/pull/54051) <sup>(Also in [45](https://github.com/electron/electron/pull/53951))</sup> #### Other Changes - Backported fixes from upstream Chromium, PDFium, Skia and V8. [#&#8203;54081](https://github.com/electron/electron/pull/54081) ### [`v44.4.2`](https://github.com/electron/electron/releases/tag/v44.4.2): electron v44.4.2 [Compare Source](https://github.com/electron/electron/compare/v44.4.1...v44.4.2) ### Release Notes for v44.4.2 #### Fixes - Fixed a potential UAF when a `select-usb-device` handler destroys the requesting `webContents`. [#&#8203;54009](https://github.com/electron/electron/pull/54009) <sup>(Also in [43](https://github.com/electron/electron/pull/54007), [45](https://github.com/electron/electron/pull/54008))</sup> #### Other Changes - Backported fixes from upstream ANGLE, Chromium, Skia and V8. [#&#8203;53985](https://github.com/electron/electron/pull/53985) - Updated Chromium to 152.0.7977.130. [#&#8203;53778](https://github.com/electron/electron/pull/53778) ### [`v44.4.1`](https://github.com/electron/electron/releases/tag/v44.4.1): electron v44.4.1 [Compare Source](https://github.com/electron/electron/compare/v44.4.0...v44.4.1) ### Release Notes for v44.4.1 #### Fixes - Fixed default protocol client APIs falsely returning `true` on Windows. [#&#8203;53959](https://github.com/electron/electron/pull/53959) <sup>(Also in [43](https://github.com/electron/electron/pull/53960), [45](https://github.com/electron/electron/pull/53958))</sup> - Fixed several object lifetime issues in `Debugger`, `Menu`, `Tray`, `Notification`, `globalShortcut`, `utilityProcess`, `ServiceWorkerMain`, `WebFrameMain`, `webFrame`, `sharedTexture`, `systemPreferences`, `netLog`, `MessagePortMain`, `net.request` and `shell.openPath()`. [#&#8203;53968](https://github.com/electron/electron/pull/53968) <sup>(Also in [45](https://github.com/electron/electron/pull/53805))</sup> ### [`v44.4.0`](https://github.com/electron/electron/releases/tag/v44.4.0): electron v44.4.0 [Compare Source](https://github.com/electron/electron/compare/v44.3.0...v44.4.0) ### Release Notes for v44.4.0 #### Features - Added `initiatorOrigin` to webRequest and protocol handler requests, `DownloadItem.getInitiatorOrigin()`, and a trailing `frame` argument to the `will-download` and `preconnect` session events. [#&#8203;53703](https://github.com/electron/electron/pull/53703) <sup>(Also in [43](https://github.com/electron/electron/pull/53704), [45](https://github.com/electron/electron/pull/53700))</sup> #### Fixes - Added validation to `protocol.registerSchemesAsPrivileged()` to reject protocol names that do not conform to RFC 3986 URI scheme grammar. [#&#8203;53743](https://github.com/electron/electron/pull/53743) <sup>(Also in [45](https://github.com/electron/electron/pull/53742))</sup> - Fixed a crash when a webContents navigated to the Chrome Web Store and the page invoked the unsupported `chrome.webstorePrivate` API. [#&#8203;53776](https://github.com/electron/electron/pull/53776) <sup>(Also in [45](https://github.com/electron/electron/pull/53775))</sup> - Fixed a main-process crash when an app called `loadURL()` again right after a load failed because the renderer process exited before the page committed. [#&#8203;53943](https://github.com/electron/electron/pull/53943) <sup>(Also in [43](https://github.com/electron/electron/pull/53944), [45](https://github.com/electron/electron/pull/53942))</sup> - Fixed a memory leak on Windows when `app.getPreferredSystemLanguages()` was called. [#&#8203;53868](https://github.com/electron/electron/pull/53868) <sup>(Also in [43](https://github.com/electron/electron/pull/53867), [45](https://github.com/electron/electron/pull/53869))</sup> - Fixed a potential UAF in `app.getPreferredSystemLanguages()` on Windows. [#&#8203;53865](https://github.com/electron/electron/pull/53865) <sup>(Also in [43](https://github.com/electron/electron/pull/53866), [45](https://github.com/electron/electron/pull/53864))</sup> - Fixed a renderer crash that could occur when printing from an iframe. [#&#8203;53762](https://github.com/electron/electron/pull/53762) <sup>(Also in [43](https://github.com/electron/electron/pull/53761), [45](https://github.com/electron/electron/pull/53763))</sup> - Fixed a renderer crash when an iframe was removed right after loading with `nodeIntegrationInSubFrames` enabled and `sandbox` disabled, e.g. on pages that embed Meta Pixel. [#&#8203;53885](https://github.com/electron/electron/pull/53885) <sup>(Also in [42](https://github.com/electron/electron/pull/53886), [43](https://github.com/electron/electron/pull/53884), [45](https://github.com/electron/electron/pull/53883))</sup> - Fixed a Windows renderer crash when no default locale could be determined. [#&#8203;53947](https://github.com/electron/electron/pull/53947) - Fixed an issue where the browser-side check that blocks drag and drop between cross-site frames of the same page was disabled. [#&#8203;53749](https://github.com/electron/electron/pull/53749) <sup>(Also in [43](https://github.com/electron/electron/pull/53750), [45](https://github.com/electron/electron/pull/53748))</sup> - Fixed helper executables on macOS starting a second app instance when launched without a process type, for example through `child_process.fork()` with the `runAsNode` fuse disabled; `fork()` now throws in that configuration. [#&#8203;53840](https://github.com/electron/electron/pull/53840) <sup>(Also in [45](https://github.com/electron/electron/pull/53839))</sup> - Fixed V8 code caching for https scripts loaded by `file://` and custom-scheme pages. [#&#8203;53745](https://github.com/electron/electron/pull/53745) <sup>(Also in [45](https://github.com/electron/electron/pull/53746))</sup> - Fixed `webContents` emitting `unresponsive` right after the system wakes from sleep on Windows, and emitting `responsive` when a hung window was hidden rather than when it recovered. [#&#8203;53764](https://github.com/electron/electron/pull/53764) <sup>(Also in [45](https://github.com/electron/electron/pull/53760))</sup> - Fixed `webContents.capturePage()` on offscreen windows returning an image resampled to the display's scale factor instead of rendered at the window's `offscreen.deviceScaleFactor`. [#&#8203;53816](https://github.com/electron/electron/pull/53816) <sup>(Also in [43](https://github.com/electron/electron/pull/53818), [45](https://github.com/electron/electron/pull/53817))</sup> - Fixed Window Controls Overlay CSS environment variables and `navigator.windowControlsOverlay` not being populated for `WebContentsView`s in a `BaseWindow`. [#&#8203;53812](https://github.com/electron/electron/pull/53812) <sup>(Also in [45](https://github.com/electron/electron/pull/53811))</sup> #### Other Changes - Backported fixes from upstream ANGLE, Chromium, libyuv, PDFium and V8. [#&#8203;53769](https://github.com/electron/electron/pull/53769) - Updated Node.js to v24.21.0. [#&#8203;53779](https://github.com/electron/electron/pull/53779) ### [`v44.3.0`](https://github.com/electron/electron/releases/tag/v44.3.0): electron v44.3.0 [Compare Source](https://github.com/electron/electron/compare/v44.2.0...v44.3.0) ### Release Notes for v44.3.0 #### Features - Added the `ELECTRON_DEBUG_DRAGGABLE_REGIONS` environment variable, which visualizes and logs draggable regions in unpackaged apps to help debug custom title bars. [#&#8203;53627](https://github.com/electron/electron/pull/53627) <sup>(Also in [43](https://github.com/electron/electron/pull/53633), [45](https://github.com/electron/electron/pull/53626))</sup> #### Fixes - File System Access permission requests and the `file-system-access-restricted` event are scoped to the requesting document, grants are reset when the origin's last page closes, and write access works in in-memory sessions. [#&#8203;53691](https://github.com/electron/electron/pull/53691) <sup>(Also in [42](https://github.com/electron/electron/pull/53695), [43](https://github.com/electron/electron/pull/53694), [45](https://github.com/electron/electron/pull/53690))</sup> - Fixed Ctrl+Y not yanking text killed with Ctrl+K in text fields on macOS. [#&#8203;53714](https://github.com/electron/electron/pull/53714) <sup>(Also in [45](https://github.com/electron/electron/pull/53715))</sup> - Fixed `Tray` icons not appearing when running inside Flatpak or Snap sandboxes on Linux. [#&#8203;53653](https://github.com/electron/electron/pull/53653) <sup>(Also in [45](https://github.com/electron/electron/pull/53654))</sup> - Fixed `app.getGPUInfo('complete')` stalling the GPU process for several seconds on some Windows systems. [#&#8203;53644](https://github.com/electron/electron/pull/53644) <sup>(Also in [45](https://github.com/electron/electron/pull/53645))</sup> - Fixed `session.setPermissionCheckHandler` receiving the top-level origin and a null `webContents` for `hid` and `usb` checks made from a subframe. [#&#8203;53688](https://github.com/electron/electron/pull/53688) <sup>(Also in [42](https://github.com/electron/electron/pull/53736), [43](https://github.com/electron/electron/pull/53689), [45](https://github.com/electron/electron/pull/53679))</sup> - Fixed `webContents.on()`, `removeListener()` and `removeAllListeners()` throwing "Object has been destroyed" for `console-message` listeners after the WebContents was destroyed. [#&#8203;53494](https://github.com/electron/electron/pull/53494) <sup>(Also in [42](https://github.com/electron/electron/pull/53497), [43](https://github.com/electron/electron/pull/53496), [45](https://github.com/electron/electron/pull/53495))</sup> - Fixed a crash on Linux when `process.env` was written while another thread was reading the environment, and a memory leak when a worker thread exits. [#&#8203;53509](https://github.com/electron/electron/pull/53509) <sup>(Also in [42](https://github.com/electron/electron/pull/53511), [43](https://github.com/electron/electron/pull/53510), [45](https://github.com/electron/electron/pull/53508))</sup> - Fixed a possible crash on Windows when a file dialog was shown for a window that was being closed at the same time. [#&#8203;53583](https://github.com/electron/electron/pull/53583) <sup>(Also in [42](https://github.com/electron/electron/pull/53585), [43](https://github.com/electron/electron/pull/53584), [45](https://github.com/electron/electron/pull/53586))</sup> - Fixed a renderer crash when the main process sent IPC to, or a page navigated, a same-process `window.open()` child whose `contextIsolation` differed from its opener's. [#&#8203;53539](https://github.com/electron/electron/pull/53539) <sup>(Also in [42](https://github.com/electron/electron/pull/53541), [43](https://github.com/electron/electron/pull/53540), [45](https://github.com/electron/electron/pull/53538))</sup> - Fixed a spurious `node_init` error being logged when creating a `ShadowRealm` with Node.js integration enabled. [#&#8203;53579](https://github.com/electron/electron/pull/53579) <sup>(Also in [45](https://github.com/electron/electron/pull/53578))</sup> - Fixed crashes in `setDisplayMediaRequestHandler` when the granted frame had been destroyed or another tab was granted by id. [#&#8203;53672](https://github.com/electron/electron/pull/53672) <sup>(Also in [42](https://github.com/electron/electron/pull/53674), [43](https://github.com/electron/electron/pull/53671), [45](https://github.com/electron/electron/pull/53673))</sup> - Fixed several non-functional DevTools integrations: the Security panel's "View certificate" button, Ctrl+wheel zooming inside DevTools, and DevTools keyboard shortcuts (e.g. F8) while the inspected page has focus. [#&#8203;53630](https://github.com/electron/electron/pull/53630) <sup>(Also in [43](https://github.com/electron/electron/pull/53631), [45](https://github.com/electron/electron/pull/53471))</sup> - Fixed window state not being persisted when a window entered or left fullscreen, or was maximized or unmaximized, without also being moved or resized. [#&#8203;53576](https://github.com/electron/electron/pull/53576) <sup>(Also in [45](https://github.com/electron/electron/pull/53577))</sup> - Internal `<webview>`, `window.close()` and `executeJavaScript` reply IPCs are validated against the sending frame. [#&#8203;53723](https://github.com/electron/electron/pull/53723) <sup>(Also in [42](https://github.com/electron/electron/pull/53727), [43](https://github.com/electron/electron/pull/53726), [45](https://github.com/electron/electron/pull/53724))</sup> - `<webview>` without `allowpopups` also blocks links opened into a new window by modifier-click, and such windows navigate as the clicking document rather than as a browser-initiated load. [#&#8203;53721](https://github.com/electron/electron/pull/53721) <sup>(Also in [42](https://github.com/electron/electron/pull/53719), [43](https://github.com/electron/electron/pull/53718), [45](https://github.com/electron/electron/pull/53717))</sup> - `getUserMedia` with `chromeMediaSource: 'desktop'` no longer accepts WebContents source ids; use `chromeMediaSource: 'tab'` with `webContents.getMediaSourceId()` or `setDisplayMediaRequestHandler` to capture a WebContents. [#&#8203;53709](https://github.com/electron/electron/pull/53709) <sup>(Also in [42](https://github.com/electron/electron/pull/53710), [43](https://github.com/electron/electron/pull/53707), [45](https://github.com/electron/electron/pull/53708))</sup> - `nodeIntegrationInWorker` now applies only to workers created by frames that themselves have Node integration; enable `nodeIntegrationInSubFrames` to keep Node in workers created by subframes. [#&#8203;53711](https://github.com/electron/electron/pull/53711) <sup>(Also in [42](https://github.com/electron/electron/pull/53713), [43](https://github.com/electron/electron/pull/53712), [45](https://github.com/electron/electron/pull/53706))</sup> - `openExternal` permission requests started by a frame that has since gone away are attributed to that frame's origin rather than to the navigating page. [#&#8203;53699](https://github.com/electron/electron/pull/53699) <sup>(Also in [42](https://github.com/electron/electron/pull/53697), [43](https://github.com/electron/electron/pull/53698), [45](https://github.com/electron/electron/pull/53696))</sup> - `pointerLock` and `keyboardLock` permission requests now report the requesting frame, and `execCommand('paste')` requires user activation in the frame that calls it. [#&#8203;53693](https://github.com/electron/electron/pull/53693) <sup>(Also in [42](https://github.com/electron/electron/pull/53702), [43](https://github.com/electron/electron/pull/53701), [45](https://github.com/electron/electron/pull/53692))</sup> #### Other Changes - Fixed the app becoming unresponsive when a page has a very large number of `app-region` draggable elements. [#&#8203;53597](https://github.com/electron/electron/pull/53597) <sup>(Also in [43](https://github.com/electron/electron/pull/53632), [45](https://github.com/electron/electron/pull/53596))</sup> - Updated Chromium to 152.0.7977.78. [#&#8203;53523](https://github.com/electron/electron/pull/53523) ### [`v44.2.0`](https://github.com/electron/electron/releases/tag/v44.2.0): electron v44.2.0 [Compare Source](https://github.com/electron/electron/compare/v44.1.1...v44.2.0) ### Release Notes for v44.2.0 #### Fixes - Fixed a pending read on a `net.request` chunked upload stream inside a protocol handler never settling when the request failed or was aborted. [#&#8203;53373](https://github.com/electron/electron/pull/53373) <sup>(Also in [43](https://github.com/electron/electron/pull/53374), [45](https://github.com/electron/electron/pull/53368))</sup> - Fixed a potential crash when using `menu.popup` with a frame from an offscreen rendered window. [#&#8203;53362](https://github.com/electron/electron/pull/53362) <sup>(Also in [43](https://github.com/electron/electron/pull/53432))</sup> - Fixed an intermittent crash (access violation) on Windows when an ASAR integrity violation is detected, so the process now exits with code 1 as intended. [#&#8203;53455](https://github.com/electron/electron/pull/53455) <sup>(Also in [43](https://github.com/electron/electron/pull/53456), [45](https://github.com/electron/electron/pull/53438))</sup> - Fixed application crash after a large number of IPC messages from renderers. [#&#8203;53417](https://github.com/electron/electron/pull/53417) <sup>(Also in [42](https://github.com/electron/electron/pull/53419), [43](https://github.com/electron/electron/pull/53420), [45](https://github.com/electron/electron/pull/53418))</sup> - Fixed native addons deriving from `node::ObjectWrap` aborting during garbage collection on Node.js 24.19.0 and later. [#&#8203;53392](https://github.com/electron/electron/pull/53392) <sup>(Also in [42](https://github.com/electron/electron/pull/53394), [43](https://github.com/electron/electron/pull/53393), [45](https://github.com/electron/electron/pull/53391))</sup> #### Other Changes - Backported fixes from upstream ANGLE, Chromium, Skia and V8. [#&#8203;53479](https://github.com/electron/electron/pull/53479) - Improved throughput of responses that `protocol.handle` handlers return straight from `net.fetch`. [#&#8203;53378](https://github.com/electron/electron/pull/53378) - Updated Chromium to 152.0.7977.76. [#&#8203;53382](https://github.com/electron/electron/pull/53382) - Updated Node.js to v24.20.0. [#&#8203;53250](https://github.com/electron/electron/pull/53250) ### [`v44.1.1`](https://github.com/electron/electron/releases/tag/v44.1.1): electron v44.1.1 [Compare Source](https://github.com/electron/electron/compare/v44.1.0...v44.1.1) ### Release Notes for v44.1.1 #### Fixes - Fixed `chrome.tabs.query()` returning tab `url` and `title` to extensions without the `tabs` permission or host access, aligning with `tabs.get`. [#&#8203;53354](https://github.com/electron/electron/pull/53354) <sup>(Also in [42](https://github.com/electron/electron/pull/53355), [43](https://github.com/electron/electron/pull/53356), [45](https://github.com/electron/electron/pull/53353))</sup> - Fixed a renderer crash when an array with a throwing property getter is passed across `contextBridge`, and several main/utility-process crashes when option objects passed to Electron APIs contain throwing accessors or Proxy traps. [#&#8203;53331](https://github.com/electron/electron/pull/53331) <sup>(Also in [42](https://github.com/electron/electron/pull/53329), [43](https://github.com/electron/electron/pull/53330))</sup> - Fixed an intermittent crash at startup on Linux caused by a race between Pango and the main thread initializing fontconfig. [#&#8203;53340](https://github.com/electron/electron/pull/53340) <sup>(Also in [43](https://github.com/electron/electron/pull/53339), [45](https://github.com/electron/electron/pull/53338))</sup> - Fixed an issue where an exception thrown by a property getter on an object passed through `contextBridge` was swallowed instead of being thrown back to the caller. [#&#8203;53335](https://github.com/electron/electron/pull/53335) <sup>(Also in [43](https://github.com/electron/electron/pull/53334), [45](https://github.com/electron/electron/pull/53297))</sup> - Fixed main process crashes when navigating to `http://accessibility/` or `http://devtools/`, when an extension background page used `navigator.mediaDevices`, and when calling `SerialPort.forget()` for a disconnected device. [#&#8203;53333](https://github.com/electron/electron/pull/53333) <sup>(Also in [43](https://github.com/electron/electron/pull/53332), [45](https://github.com/electron/electron/pull/53325))</sup> - Fixed the PDF viewer failing to save an edited PDF with `NotAllowedError: Third party iframes are not allowed to show a file picker`. [#&#8203;53328](https://github.com/electron/electron/pull/53328) <sup>(Also in [43](https://github.com/electron/electron/pull/53327), [45](https://github.com/electron/electron/pull/53326))</sup> ### [`v44.1.0`](https://github.com/electron/electron/releases/tag/v44.1.0): electron v44.1.0 [Compare Source](https://github.com/electron/electron/compare/v44.0.0...v44.1.0) ### Release Notes for v44.1.0 #### Fixes - Fixed `fs.constants.O_DIRECTORY`, `O_NOFOLLOW` and `O_DIRECT` holding x86 values on Linux arm64 and armv7l, which made opening a directory fail with `EINVAL`, and made `require('trace_events')` behave the same on cross-compiled builds as on native ones. [#&#8203;53320](https://github.com/electron/electron/pull/53320) <sup>(Also in [42](https://github.com/electron/electron/pull/53318), [43](https://github.com/electron/electron/pull/53319), [45](https://github.com/electron/electron/pull/53321))</sup> - Fixed `webContents.executeJavaScriptInIsolatedWorld` resolving with `undefined` when `worldId` was not an integer. [#&#8203;53238](https://github.com/electron/electron/pull/53238) <sup>(Also in [43](https://github.com/electron/electron/pull/53237))</sup> - Fixed `webContents.print()` honoring `printBackground`, `duplexMode`, and printer default duplex settings. [#&#8203;53159](https://github.com/electron/electron/pull/53159) <sup>(Also in [42](https://github.com/electron/electron/pull/53158), [43](https://github.com/electron/electron/pull/53160))</sup> - Fixed a crash on Windows when V8 posted a delayed worker task during shutdown. [#&#8203;53201](https://github.com/electron/electron/pull/53201) <sup>(Also in [42](https://github.com/electron/electron/pull/53014), [43](https://github.com/electron/electron/pull/53013))</sup> - Fixed a crash on macOS when a WebAuthn Touch ID prompt was requested while no locale resources were loaded. [#&#8203;53194](https://github.com/electron/electron/pull/53194) <sup>(Also in [43](https://github.com/electron/electron/pull/53195))</sup> - Fixed a crash on macOS when a notification's icon could not be attached; the notification is now shown without the icon. [#&#8203;53146](https://github.com/electron/electron/pull/53146) <sup>(Also in [42](https://github.com/electron/electron/pull/53148), [43](https://github.com/electron/electron/pull/53147))</sup> - Fixed a crash when calling `node:wasi` functions in optimized code. [#&#8203;53268](https://github.com/electron/electron/pull/53268) <sup>(Also in [42](https://github.com/electron/electron/pull/53267), [43](https://github.com/electron/electron/pull/53265), [45](https://github.com/electron/electron/pull/53266))</sup> - Fixed a crash when calling `utilityProcess.postMessage()` after the utility process had exited. [#&#8203;53300](https://github.com/electron/electron/pull/53300) <sup>(Also in [43](https://github.com/electron/electron/pull/53301), [45](https://github.com/electron/electron/pull/53299))</sup> - Fixed a regression where a window created with a custom title can show an empty title after using back/forward navigation. [#&#8203;53218](https://github.com/electron/electron/pull/53218) <sup>(Also in [42](https://github.com/electron/electron/pull/53217), [43](https://github.com/electron/electron/pull/53219))</sup> - Fixed an issue where pages loaded in a detached `WebContentsView` wouldn't see the correct window size. [#&#8203;53153](https://github.com/electron/electron/pull/53153) <sup>(Also in [42](https://github.com/electron/electron/pull/53151), [43](https://github.com/electron/electron/pull/53152))</sup> - Fixed crashes in sharedTexture, service-worker ipcRenderer and utilityProcess.fork() caused by object lifetime bugs. [#&#8203;53279](https://github.com/electron/electron/pull/53279) <sup>(Also in [43](https://github.com/electron/electron/pull/53278), [45](https://github.com/electron/electron/pull/53280))</sup> - Fixed crashes in the main process when a `webRequest.onBeforeRequest` listener redirected a CORS preflight request, and when calling `net.fetch()` with a `webRequest`-permission extension loaded. [#&#8203;53303](https://github.com/electron/electron/pull/53303) <sup>(Also in [43](https://github.com/electron/electron/pull/53304), [45](https://github.com/electron/electron/pull/53302))</sup> - Fixed crashes when a webContents or parent window is destroyed while other APIs still reference it. [#&#8203;53287](https://github.com/electron/electron/pull/53287) <sup>(Also in [43](https://github.com/electron/electron/pull/53288), [45](https://github.com/electron/electron/pull/53281))</sup> - Fixed crashes when certain app event handlers call back into Electron synchronously. [#&#8203;53275](https://github.com/electron/electron/pull/53275) <sup>(Also in [43](https://github.com/electron/electron/pull/53276), [45](https://github.com/electron/electron/pull/53269))</sup> - Fixed region-qualified `--lang` values such as `de-DE` loading no locale resources on macOS, which left localized strings empty and could crash WebAuthn Touch ID prompts. [#&#8203;53188](https://github.com/electron/electron/pull/53188) <sup>(Also in [42](https://github.com/electron/electron/pull/53187), [43](https://github.com/electron/electron/pull/53186))</sup> - Fixed the GPU process being terminated in AppX/MSIX packaged apps on Windows when WebGPU fell back to SwiftShader. [#&#8203;53198](https://github.com/electron/electron/pull/53198) <sup>(Also in [42](https://github.com/electron/electron/pull/53199), [43](https://github.com/electron/electron/pull/53197))</sup> - Fixed the tray icon not appearing on GNOME (and disappearing entirely on Wayland) since 44.0.0-beta.6. [#&#8203;53214](https://github.com/electron/electron/pull/53214) - Fixed windows native message boxes being dismissed by other applications using invalid button ID. [#&#8203;53154](https://github.com/electron/electron/pull/53154) <sup>(Also in [43](https://github.com/electron/electron/pull/53155))</sup> #### Other Changes - Backported fixes from upstream Chromium and V8. [#&#8203;53189](https://github.com/electron/electron/pull/53189) - Page resources, `fetch()` calls and file:// loads in renderers no longer wait for the main process to be idle when no `webRequest` listeners or protocol interceptors are registered. [#&#8203;53141](https://github.com/electron/electron/pull/53141) <sup>(Also in [42](https://github.com/electron/electron/pull/53143), [43](https://github.com/electron/electron/pull/53142))</sup> - Renderer network requests no longer waited on the main process when the session's `webRequest` listeners only observe requests (`onCompleted`, `onErrorOccurred`, `onSendHeaders`, `onBeforeRedirect`, `onResponseStarted`) or are filtered to other resource types. [#&#8203;53240](https://github.com/electron/electron/pull/53240) - Updated Chromium to 152.0.7977.65. [#&#8203;53203](https://github.com/electron/electron/pull/53203) - Updated Node.js to v24.19.0. [#&#8203;52636](https://github.com/electron/electron/pull/52636) #### Documentation - Documentation changes: [#&#8203;53212](https://github.com/electron/electron/pull/53212), [#&#8203;53248](https://github.com/electron/electron/pull/53248) ### [`v44.0.0`](https://github.com/electron/electron/releases/tag/v44.0.0): electron v44.0.0 [Compare Source](https://github.com/electron/electron/compare/v43.8.6...v44.0.0) ### Release Notes for v44.0.0 #### Stack Upgrades - Chromium `152.0.7977.54` - [New in 152](https://developer.chrome.com/blog/new-in-chrome-152/) - [New in 151](https://developer.chrome.com/blog/new-in-chrome-151/) - Node `v24.18.1` - [Node 24.18.1 blog post](https://nodejs.org/en/blog/release/v24.18.1/) - [Node 24.18.0 blog post](https://nodejs.org/en/blog/release/v24.18.0/) - V8 `15.2` #### Breaking Changes - Removed support for the Unity desktop environment on Linux. [#&#8203;51649](https://github.com/electron/electron/pull/51649) - Added `select-client-certificate` event support for `net.request` and `net.fetch`; requests to servers requesting a client certificate no longer fail with `ERR_SSL_CLIENT_AUTH_CERT_NEEDED`, and applications can now select a certificate to present. [#&#8203;52397](https://github.com/electron/electron/pull/52397) - macOS 12 (Monterey) is no longer supported by [Chromium](https://chromium-review.googlesource.com/c/chromium/src/+/7907086). Older versions of Electron will continue to run on Monterey, but macOS 13 (Ventura) or later will be required to run Electron v44.0.0 and higher. [#&#8203;51967](https://github.com/electron/electron/pull/51967) - ANGLE is now [statically linked](https://issues.chromium.org/issues/40268378) into the Electron binary on all platforms, matching upstream Chromium. The `libEGL.(so|dylib|dll)` and `libGLESv2.(so|dylib|dll)` libraries are no longer shipped in the distribution. [#&#8203;52288](https://github.com/electron/electron/pull/52288) - `net.request` now rejects requests where `Sec-Fetch-Dest` is `document`, `frame`, `iframe`, or `fencedframe` unless `Sec-Fetch-Mode` is also set to `navigate`. [#&#8203;52216](https://github.com/electron/electron/pull/52216) - Removed 32-bit builds (Windows ia32 and Linux armv7l). Electron is now published only for 64-bit (x64 and arm64) platforms. [#&#8203;52326](https://github.com/electron/electron/pull/52326) - The `clipboard` module is now aligned with the W3C Clipboard API and is no longer exposed to renderer processes. [#&#8203;52508](https://github.com/electron/electron/pull/52508) - Removed the `openAsHidden` option from `app.setLoginItemSettings()` and the `openAsHidden`, `wasOpenedAsHidden` and `restoreState` fields from the return value of `app.getLoginItemSettings()`. These only worked on macOS 12 and below, which are no longer supported. [#&#8203;52667](https://github.com/electron/electron/pull/52667) See the [Breaking Changes](https://github.com/electron/electron/blob/main/docs/breaking-changes.md) doc for more details about these changes. #### Features - Added `Notification.remove()`, `removeAll()`, and `removeGroup()` static methods for macOS. [#&#8203;51182](https://github.com/electron/electron/pull/51182) <sup>(Also in [42](https://github.com/electron/electron/pull/51691), [43](https://github.com/electron/electron/pull/51690))</sup> - Added `available` to `process.getSystemMemoryInfo()` on Linux, exposing `proc/meminfo` MemAvailable. [#&#8203;52380](https://github.com/electron/electron/pull/52380) <sup>(Also in [42](https://github.com/electron/electron/pull/52378), [43](https://github.com/electron/electron/pull/52379))</sup> - Added `net.WebSocket`, a WHATWG-compatible WebSocket client for the main process that routes through Chromium's network stack. [#&#8203;51593](https://github.com/electron/electron/pull/51593) <sup>(Also in [42](https://github.com/electron/electron/pull/52345), [43](https://github.com/electron/electron/pull/52344))</sup> - Added `webContents.setZoomMode(mode)`, `webContents.getZoomMode()`, and `webContents.zoomMode` for per-WebContents zoom control. [#&#8203;49962](https://github.com/electron/electron/pull/49962) - Added `webFrameMain.printToPDF()` to allow printing individual frames to PDF from the main process. [#&#8203;52625](https://github.com/electron/electron/pull/52625) <sup>(Also in [42](https://github.com/electron/electron/pull/52626), [43](https://github.com/electron/electron/pull/52627))</sup> - Added a Save/Restore Window State API for cross-platform use. [#&#8203;52270](https://github.com/electron/electron/pull/52270) - Added a `badge` property to `MenuItem` on macOS 14+ for showing a count or custom text badge next to a menu item's label. [#&#8203;53046](https://github.com/electron/electron/pull/53046) - Added support for `win.setOpacity(opacity)` on Linux. [#&#8203;51455](https://github.com/electron/electron/pull/51455) - Added `webContents.caretBrowsingEnabled` for toggling caret browsing in a WebContents. [#&#8203;53035](https://github.com/electron/electron/pull/53035) - Frameless windows on Linux now use system-themed titlebar icons for Window Controls Overlay (WCO). [#&#8203;52531](https://github.com/electron/electron/pull/52531) - Frameless windows on Linux now have rounded corners by default, just like on macOS and Windows. Rounded corners can be disabled on all platforms by setting `roundedCorners: false` on the window. [#&#8203;51459](https://github.com/electron/electron/pull/51459) <sup>(Also in [43](https://github.com/electron/electron/pull/52111))</sup> - Restored `app.setBadgeCount` and `win.setProgressBar` for Linux. These APIs now support any dock or taskbar which implements the LauncherEntry D-Bus API, and they no longer require `libunity`. [#&#8203;52895](https://github.com/electron/electron/pull/52895) #### Fixes - If a `nativeImage` was passed an image with a color profile, its pixel values will now be normalized to SRGB. This ensures that two visually identical images after color space application will receive similar pixel values when converted to a `nativeImage`. [#&#8203;48178](https://github.com/electron/electron/pull/48178) <sup>(Also in [43](https://github.com/electron/electron/pull/51565))</sup> - Fixed DevTools Network panel missing most requests after navigating when `webContents.debugger` is attached. [#&#8203;51959](https://github.com/electron/electron/pull/51959) <sup>(Also in [42](https://github.com/electron/electron/pull/51965), [43](https://github.com/electron/electron/pull/51964))</sup> - Fixed DevTools device metrics overrides persisting indefinitely when a remote debugging client disconnected without clearing them. [#&#8203;52930](https://github.com/electron/electron/pull/52930) <sup>(Also in [42](https://github.com/electron/electron/pull/53133), [43](https://github.com/electron/electron/pull/52946))</sup> - Fixed DevTools popup and context menus not appearing when DevTools is hosted in a custom window via `webContents.setDevToolsWebContents()`. [#&#8203;52434](https://github.com/electron/electron/pull/52434) <sup>(Also in [42](https://github.com/electron/electron/pull/52981), [43](https://github.com/electron/electron/pull/52937))</sup> - Fixed Window Controls Overlay caption buttons not rendering on Linux. [#&#8203;52580](https://github.com/electron/electron/pull/52580) - Fixed Windows edge case in `NativeWindowViews::MoveBehindTaskBarIfNeeded()`. [#&#8203;52000](https://github.com/electron/electron/pull/52000) <sup>(Also in [41](https://github.com/electron/electron/pull/52023), [42](https://github.com/electron/electron/pull/52022), [43](https://github.com/electron/electron/pull/52021))</sup> - Fixed `BrowserWindow.unmaximize()` and `restore()` having no effect on Wayland when the window was maximized immediately after creation. [#&#8203;53124](https://github.com/electron/electron/pull/53124) <sup>(Also in [42](https://github.com/electron/electron/pull/53126))</sup> - Fixed `BrowserWindow` size corruption on Windows when created with explicit `x`/`y` on a secondary monitor whose DPI differs from the primary. [#&#8203;52499](https://github.com/electron/electron/pull/52499) <sup>(Also in [42](https://github.com/electron/electron/pull/52500), [43](https://github.com/electron/electron/pull/52501))</sup> - Fixed `Dirent.parentPath` being `undefined` for `fs.readdir`, `fs.readdirSync`, `fs.glob`, and `fs.globSync` with `withFileTypes: true` inside asar archives. [#&#8203;52507](https://github.com/electron/electron/pull/52507) <sup>(Also in [42](https://github.com/electron/electron/pull/52506), [43](https://github.com/electron/electron/pull/52505))</sup> - Fixed `ProtocolResponse.url` requests being made through the default session instead of the session the protocol handler was registered on when `ProtocolResponse.session` was not set. [#&#8203;52113](https://github.com/electron/electron/pull/52113) <sup>(Also in [40](https://github.com/electron/electron/pull/52135), [41](https://github.com/electron/electron/pull/52134), [42](https://github.com/electron/electron/pull/52132), [43](https://github.com/electron/electron/pull/52131))</sup> - Fixed `Uncaught illegal access` errors and possible renderer crashes after closing a same-process child window or removing an iframe with `nodeIntegrationInSubFrames` enabled. [#&#8203;53040](https://github.com/electron/electron/pull/53040) <sup>(Also in [42](https://github.com/electron/electron/pull/53042))</sup> - Fixed `app.disableHardwareAcceleration()` not fully disabling GPU hardware usage on Windows starting from Electron 38. [#&#8203;52370](https://github.com/electron/electron/pull/52370) <sup>(Also in [41](https://github.com/electron/electron/pull/52368), [42](https://github.com/electron/electron/pull/52371), [43](https://github.com/electron/electron/pull/52369))</sup> - Fixed `dialog.showOpenDialog` and `dialog.showSaveDialog` opening at an unusable location on Linux when `defaultPath` is a bare filename without a directory. [#&#8203;52402](https://github.com/electron/electron/pull/52402) <sup>(Also in [42](https://github.com/electron/electron/pull/52980), [43](https://github.com/electron/electron/pull/52401))</sup> - Fixed `registerFileProtocol` and `registerHttpProtocol` returning readable responses to cross-origin `no-cors` fetches; they now return opaque responses like `protocol.handle`. [#&#8203;52852](https://github.com/electron/electron/pull/52852) <sup>(Also in [41](https://github.com/electron/electron/pull/52854), [42](https://github.com/electron/electron/pull/52855), [43](https://github.com/electron/electron/pull/52853))</sup> - Fixed `select-hid-device` presenting HID devices that could not be granted, which caused `navigator.hid.requestDevice()` to resolve with no device. [#&#8203;52497](https://github.com/electron/electron/pull/52497) - Fixed a use-after-free crash with `protocol.registerStreamProtocol` when an error is emitted during a read. [#&#8203;52515](https://github.com/electron/electron/pull/52515) <sup>(Also in [41](https://github.com/electron/electron/pull/52513), [42](https://github.com/electron/electron/pull/52516), [43](https://github.com/electron/electron/pull/52514))</sup> - Fixed a WebContentsView staying blank after its window is shown when `setBackgroundThrottling(false)` was called while the window was hidden. [#&#8203;52863](https://github.com/electron/electron/pull/52863) <sup>(Also in [42](https://github.com/electron/electron/pull/52865), [43](https://github.com/electron/electron/pull/52864))</sup> - Fixed a browser process crash that could occur during Windows logoff, shutdown, or restart. [#&#8203;52619](https://github.com/electron/electron/pull/52619) <sup>(Also in [42](https://github.com/electron/electron/pull/52621), [43](https://github.com/electron/electron/pull/52620))</sup> - Fixed a browser process crash when calling `webContents.reload()` or navigating synchronously from the `render-process-gone` event; the event is now emitted after the renderer's teardown notification has completed. [#&#8203;51900](https://github.com/electron/electron/pull/51900) <sup>(Also in [41](https://github.com/electron/electron/pull/51917), [42](https://github.com/electron/electron/pull/51916), [43](https://github.com/electron/electron/pull/51918))</sup> - Fixed a browser-process crash (`ValidateIntegrityOrDie`) and spurious preload `ENOENT` errors when an app's `app.asar` is replaced on disk (e.g., by an updater or MDM software) while the app is running. [#&#8203;52292](https://github.com/electron/electron/pull/52292) <sup>(Also in [42](https://github.com/electron/electron/pull/52294), [43](https://github.com/electron/electron/pull/52293))</sup> - Fixed a bug on Linux where a 1px line appeared at the top of a frameless window if the window and web contents had different background colors. [#&#8203;51458](https://github.com/electron/electron/pull/51458) <sup>(Also in [41](https://github.com/electron/electron/pull/52004), [42](https://github.com/electron/electron/pull/52005), [43](https://github.com/electron/electron/pull/51999))</sup> - Fixed a crash in `systemPreferences.promptTouchID(reason)` when an invalid reason value is passed. [#&#8203;52781](https://github.com/electron/electron/pull/52781) <sup>(Also in [42](https://github.com/electron/electron/pull/52780), [43](https://github.com/electron/electron/pull/52782))</sup> - Fixed a crash in the macOS Touch ID WebAuthn prompt caused by a missing string resource, and added `touchID.promptReason` to `app.configureWebAuthn()` to customize the prompt text. [#&#8203;51592](https://github.com/electron/electron/pull/51592) <sup>(Also in [41](https://github.com/electron/electron/pull/51604), [42](https://github.com/electron/electron/pull/51594), [43](https://github.com/electron/electron/pull/51595))</sup> - Fixed a crash on Linux when the D-Bus session bus disconnected while the app was running, such as at logout or when dbus is restarted. [#&#8203;53096](https://github.com/electron/electron/pull/53096) <sup>(Also in [42](https://github.com/electron/electron/pull/53094), [43](https://github.com/electron/electron/pull/53095))</sup> - Fixed a crash on MacOS when a user clicked into a title bar or top view. [#&#8203;51586](https://github.com/electron/electron/pull/51586) <sup>(Also in [42](https://github.com/electron/electron/pull/51605), [43](https://github.com/electron/electron/pull/51606))</sup> - Fixed a crash report when the X server or Wayland compositor exits while an app is running. [#&#8203;52684](https://github.com/electron/electron/pull/52684) <sup>(Also in [42](https://github.com/electron/electron/pull/52686), [43](https://github.com/electron/electron/pull/52685))</sup> - Fixed a crash that could occur when closing DevTools while the host WebContents was being destroyed. [#&#8203;52509](https://github.com/electron/electron/pull/52509) <sup>(Also in [41](https://github.com/electron/electron/pull/52512), [42](https://github.com/electron/electron/pull/52511), [43](https://github.com/electron/electron/pull/52510))</sup> - Fixed a crash when accessing frame details during cross-origin navigation. [#&#8203;53109](https://github.com/electron/electron/pull/53109) - Fixed a crash when quickly switching menus while the app is under heavy load. [#&#8203;52672](https://github.com/electron/electron/pull/52672) <sup>(Also in [42](https://github.com/electron/electron/pull/52671), [43](https://github.com/electron/electron/pull/52673))</sup> - Fixed a crash when resolving a path inside a malformed ASAR archive that contains cyclic link entries. [#&#8203;52858](https://github.com/electron/electron/pull/52858) <sup>(Also in [42](https://github.com/electron/electron/pull/52859), [43](https://github.com/electron/electron/pull/52857))</sup> - Fixed a crash when showing Linux message boxes while another Linux UI implementation was active. [#&#8203;52409](https://github.com/electron/electron/pull/52409) <sup>(Also in [42](https://github.com/electron/electron/pull/52408), [43](https://github.com/electron/electron/pull/52410))</sup> - Fixed a crash with `app.setLoginItemSettings` if a non-UTF8 service name is used. [#&#8203;52801](https://github.com/electron/electron/pull/52801) <sup>(Also in [42](https://github.com/electron/electron/pull/52989), [43](https://github.com/electron/electron/pull/52944))</sup> - Fixed a graphical glitch on Linux where thin borders appeared past the drop shadows on frameless windows when multiple windows were created. [#&#8203;52606](https://github.com/electron/electron/pull/52606) <sup>(Also in [42](https://github.com/electron/electron/pull/52772), [43](https://github.com/electron/electron/pull/52607))</sup> - Fixed a memory leak when creating BrowserWindows. [#&#8203;52894](https://github.com/electron/electron/pull/52894) <sup>(Also in [42](https://github.com/electron/electron/pull/52893), [43](https://github.com/electron/electron/pull/52892))</sup> - Fixed a possible crash (`SIGABRT`) during process exit when the process had loaded `tls`/`https` shortly before exiting, affecting `app.exit()` before `ready` and short-lived `ELECTRON_RUN_AS_NODE` / `child_process.fork()` scripts. [#&#8203;52871](https://github.com/electron/electron/pull/52871) <sup>(Also in [42](https://github.com/electron/electron/pull/52992), [43](https://github.com/electron/electron/pull/52870))</sup> - Fixed a possible main process crash at quit when a session was created from JavaScript running during shutdown. [#&#8203;52924](https://github.com/electron/electron/pull/52924) <sup>(Also in [42](https://github.com/electron/electron/pull/53132), [43](https://github.com/electron/electron/pull/52925))</sup> - Fixed a potential crash in `contentTracing.stopRecording()` when the trace file could not be written to the requested path. [#&#8203;52794](https://github.com/electron/electron/pull/52794) <sup>(Also in [42](https://github.com/electron/electron/pull/52796), [43](https://github.com/electron/electron/pull/52795))</sup> - Fixed a potential crash when notifying user activation before the primary main frame was live. [#&#8203;52698](https://github.com/electron/electron/pull/52698) <sup>(Also in [42](https://github.com/electron/electron/pull/52699), [43](https://github.com/electron/electron/pull/52697))</sup> - Fixed a rare crash in the main process when DevTools were opened and a garbage collection ran before the DevTools frontend finished loading. [#&#8203;52904](https://github.com/electron/electron/pull/52904) <sup>(Also in [42](https://github.com/electron/electron/pull/52994), [43](https://github.com/electron/electron/pull/52903))</sup> - Fixed a regression preventing transparent frameless windows from being resized on Linux. [#&#8203;52891](https://github.com/electron/electron/pull/52891) <sup>(Also in [43](https://github.com/electron/electron/pull/52947))</sup> - Fixed a renderer crash when a page calls `SpeechRecognition.available()` or `SpeechRecognition.install()` with `processLocally`. [#&#8203;53021](https://github.com/electron/electron/pull/53021) <sup>(Also in [42](https://github.com/electron/electron/pull/53016), [43](https://github.com/electron/electron/pull/53015))</sup> - Fixed a renderer crash when calling `WebAssembly.compileStreaming()` or `WebAssembly.instantiateStreaming()` with `nodeIntegration` enabled. [#&#8203;51953](https://github.com/electron/electron/pull/51953) <sup>(Also in [41](https://github.com/electron/electron/pull/52240), [42](https://github.com/electron/electron/pull/51956), [43](https://github.com/electron/electron/pull/51955))</sup> - Fixed a window being marked hidden and background-throttled on macOS when covered by a transparent or click-through window. [#&#8203;52391](https://github.com/electron/electron/pull/52391) <sup>(Also in [42](https://github.com/electron/electron/pull/52390), [43](https://github.com/electron/electron/pull/52389))</sup> - Fixed an `npm install` failure with no recovery path when the OS blocked the native zip extractor from loading (for example, Windows Smart App Control). [#&#8203;52846](https://github.com/electron/electron/pull/52846) <sup>(Also in [43](https://github.com/electron/electron/pull/52845))</sup> - Fixed an issue on Linux and Windows where frameless windows would shrink when calling `win.center()`. Additionally, fixed an issue where frameless windows would appear slightly off-center on Windows. [#&#8203;51732](https://github.com/electron/electron/pull/51732) <sup>(Also in [41](https://github.com/electron/electron/pull/51919), [42](https://github.com/electron/electron/pull/51921), [43](https://github.com/electron/electron/pull/51920))</sup> - Fixed an issue on Linux where the system theme color appeared at the top edge of frameless windows. [#&#8203;52062](https://github.com/electron/electron/pull/52062) <sup>(Also in [41](https://github.com/electron/electron/pull/53006), [42](https://github.com/electron/electron/pull/52978), [43](https://github.com/electron/electron/pull/52179))</sup> - Fixed an issue on Windows where the app process could fail to exit after `app.quit()` while a `shell.openExternal()` or `shell.openPath()` call was still waiting on a system "Open with" dialog. [#&#8203;52898](https://github.com/electron/electron/pull/52898) <sup>(Also in [41](https://github.com/electron/electron/pull/52899), [43](https://github.com/electron/electron/pull/52897))</sup> - Fixed an issue where `process` and other Node globals were undefined in ESM preload scripts when `contextIsolation` was disabled. [#&#8203;51693](https://github.com/electron/electron/pull/51693) <sup>(Also in [42](https://github.com/electron/electron/pull/51726), [43](https://github.com/electron/electron/pull/51723))</sup> - Fixed an issue where a JavaScript out-of-memory crash could be reported from inside the crash-key handler instead of at the out-of-memory site. [#&#8203;52724](https://github.com/electron/electron/pull/52724) <sup>(Also in [42](https://github.com/electron/electron/pull/52723), [43](https://github.com/electron/electron/pull/52725))</sup> - Fixed an issue where clicking the maximize button could progressively shrink the window in some Wayland environments. [#&#8203;52012](https://github.com/electron/electron/pull/52012) <sup>(Also in [42](https://github.com/electron/electron/pull/52045), [43](https://github.com/electron/electron/pull/52039))</sup> - Fixed an issue where frameless windows windows could shrink after applying constraints or toggling resizability on Windows. [#&#8203;51562](https://github.com/electron/electron/pull/51562) <sup>(Also in [42](https://github.com/electron/electron/pull/52366), [43](https://github.com/electron/electron/pull/51954))</sup> - Fixed an issue where loading ICO files from ASAR archives on Windows left temporary icon files behind. [#&#8203;52477](https://github.com/electron/electron/pull/52477) <sup>(Also in [42](https://github.com/electron/electron/pull/52479), [43](https://github.com/electron/electron/pull/52478))</sup> - Fixed an issue where some values passed into `requestSingleInstanceLock` could result in a crash. [#&#8203;52470](https://github.com/electron/electron/pull/52470) <sup>(Also in [42](https://github.com/electron/electron/pull/52982), [43](https://github.com/electron/electron/pull/52471))</sup> - Fixed an issue where the "Toggle Developer Tools" menu item failed to function correctly with BaseWindow. [#&#8203;49356](https://github.com/electron/electron/pull/49356) <sup>(Also in [41](https://github.com/electron/electron/pull/51902), [42](https://github.com/electron/electron/pull/51903), [43](https://github.com/electron/electron/pull/51901))</sup> - Fixed a crash when calling `close()` on a notification within a `close` event on macOS. [#&#8203;51597](https://github.com/electron/electron/pull/51597) <sup>(Also in [41](https://github.com/electron/electron/pull/51656), [42](https://github.com/electron/electron/pull/51657), [43](https://github.com/electron/electron/pull/51655))</sup> - Fixed a crash in the `sharedTexture` module when GPU context becomes unavailable. [#&#8203;52926](https://github.com/electron/electron/pull/52926) <sup>(Also in [42](https://github.com/electron/electron/pull/52983), [43](https://github.com/electron/electron/pull/52938))</sup> - Fixed a crash triggered by replacing an open application menu. [#&#8203;52277](https://github.com/electron/electron/pull/52277) <sup>(Also in [41](https://github.com/electron/electron/pull/52278), [42](https://github.com/electron/electron/pull/52275), [43](https://github.com/electron/electron/pull/52276))</sup> - Fixed custom V8 snapshots (`electron-mksnapshot`, and the `loadBrowserProcessSpecificV8Snapshot` fuse) having no effect in the main process on macOS arm64, Linux x64 and Windows x64. [#&#8203;52878](https://github.com/electron/electron/pull/52878) <sup>(Also in [42](https://github.com/electron/electron/pull/52876), [43](https://github.com/electron/electron/pull/52877))</sup> - Fixed `desktopCapturer` thumbnail generation and premature portal timeout on Linux with Wayland. [#&#8203;51674](https://github.com/electron/electron/pull/51674) <sup>(Also in [43](https://github.com/electron/electron/pull/51783))</sup> - Fixed downloading files that live inside an ASAR archive, including saving a packed PDF from the built-in PDF viewer. [#&#8203;52827](https://github.com/electron/electron/pull/52827) <sup>(Also in [42](https://github.com/electron/electron/pull/52828), [43](https://github.com/electron/electron/pull/52826))</sup> - Fixed native addon compilation failure with undefined MSVC intrinsic from v8 headers. [#&#8203;51695](https://github.com/electron/electron/pull/51695) <sup>(Also in [42](https://github.com/electron/electron/pull/51706), [43](https://github.com/electron/electron/pull/51705))</sup> - Fixed running under `tsx` import transpilation. [#&#8203;51947](https://github.com/electron/electron/pull/51947) <sup>(Also in [41](https://github.com/electron/electron/pull/53003), [42](https://github.com/electron/electron/pull/52046), [43](https://github.com/electron/electron/pull/51978))</sup> - Fixed sandboxed preload scripts running a stale cached version after the script was modified without its file size changing. [#&#8203;51930](https://github.com/electron/electron/pull/51930) <sup>(Also in [42](https://github.com/electron/electron/pull/51933), [43](https://github.com/electron/electron/pull/51932))</sup> - Fixed spellcheck not initializing on Linux when the dictionary was already cached from a previous run. [#&#8203;52716](https://github.com/electron/electron/pull/52716) - Fixed the Linux system accent color intermittently not being applied (`systemPreferences.getAccentColor()` returning an empty string on some launches). [#&#8203;52574](https://github.com/electron/electron/pull/52574) - Fixed the built-in PDF viewer not rendering documents in in-memory sessions (partitions without the `persist:` prefix). [#&#8203;52834](https://github.com/electron/electron/pull/52834) <sup>(Also in [42](https://github.com/electron/electron/pull/52990), [43](https://github.com/electron/electron/pull/52835))</sup> - Fixed the context menu in a detached DevTools window focusing the inspected page's window instead of the DevTools window. [#&#8203;51805](https://github.com/electron/electron/pull/51805) <sup>(Also in [41](https://github.com/electron/electron/pull/53002), [42](https://github.com/electron/electron/pull/51864), [43](https://github.com/electron/electron/pull/51863))</sup> - Fixed the primary instance being killed or receiving truncated arguments when a second instance passed a very long command line or large `additionalData` to `app.requestSingleInstanceLock()`. [#&#8203;52950](https://github.com/electron/electron/pull/52950) - Fixed titleBarOverlay.color set to `rgba(0,0,0,0)` failing back to default frame color. [#&#8203;51017](https://github.com/electron/electron/pull/51017) <sup>(Also in [41](https://github.com/electron/electron/pull/53004), [42](https://github.com/electron/electron/pull/52976), [43](https://github.com/electron/electron/pull/52010))</sup> - Fixed unnecessary autofill popup creation for fields without datalist suggestions, which could cause input latency on macOS. [#&#8203;52318](https://github.com/electron/electron/pull/52318) <sup>(Also in [41](https://github.com/electron/electron/pull/52320), [42](https://github.com/electron/electron/pull/52319), [43](https://github.com/electron/electron/pull/52321))</sup> - Fixed utility process crashes at exit on Windows 11 24H2 and later. [#&#8203;53093](https://github.com/electron/electron/pull/53093) <sup>(Also in [42](https://github.com/electron/electron/pull/53091), [43](https://github.com/electron/electron/pull/53092))</sup> - Fixed windows opened by a sandboxed top-level frame not inheriting the opener's sandbox restrictions. [#&#8203;52851](https://github.com/electron/electron/pull/52851) <sup>(Also in [41](https://github.com/electron/electron/pull/52849), [42](https://github.com/electron/electron/pull/52850), [43](https://github.com/electron/electron/pull/52848))</sup> - Fixed `webContents.print()` returning "Invalid printer settings" when print options are provided. [#&#8203;52382](https://github.com/electron/electron/pull/52382) <sup>(Also in [43](https://github.com/electron/electron/pull/52381))</sup> - Fixeed document title updates when using back/forward navigation using the same document without utilizing `browserWindow.setTitle()`. [#&#8203;52968](https://github.com/electron/electron/pull/52968) <sup>(Also in [42](https://github.com/electron/electron/pull/53099), [43](https://github.com/electron/electron/pull/53023))</sup> - Improved external resize band positioning and scaling for frameless windows on Windows. [#&#8203;51503](https://github.com/electron/electron/pull/51503) <sup>(Also in [41](https://github.com/electron/electron/pull/51560), [42](https://github.com/electron/electron/pull/51561), [43](https://github.com/electron/electron/pull/51552))</sup> - Made "reload" menu items work with BaseWindow. [#&#8203;51985](https://github.com/electron/electron/pull/51985) <sup>(Also in [41](https://github.com/electron/electron/pull/52118), [42](https://github.com/electron/electron/pull/52117), [43](https://github.com/electron/electron/pull/52119))</sup> - Windows opened from links inside a sandboxed iframe now inherit the iframe's sandbox restrictions unless `allow-popups-to-escape-sandbox` is set. [#&#8203;52133](https://github.com/electron/electron/pull/52133) <sup>(Also in [41](https://github.com/electron/electron/pull/52486), [42](https://github.com/electron/electron/pull/52190), [43](https://github.com/electron/electron/pull/52189))</sup> - Fixed an issue where `getDisplayMedia({ audio: { restrictOwnAudio: true } })` was ignored in `setDisplayMediaRequestHandler`, causing loopback audio to include local app playback. [#&#8203;52534](https://github.com/electron/electron/pull/52534) <sup>(Also in [43](https://github.com/electron/electron/pull/52533))</sup> - `<webview>` and `window.open` now inherit `nodeIntegrationInWorker` from the embedder, consistent with the other Node and sandbox preferences. [#&#8203;52832](https://github.com/electron/electron/pull/52832) <sup>(Also in [41](https://github.com/electron/electron/pull/52829), [42](https://github.com/electron/electron/pull/52831), [43](https://github.com/electron/electron/pull/52830))</sup> - Fixed potential deadlock inside `app.getLoginItemSettings()` on macOS. [#&#8203;52667](https://github.com/electron/electron/pull/52667) - Fixed `Tray` icons not appearing (and their menus not opening) on Linux desktops that address the StatusNotifierItem by its unique D-Bus name or via the `org.freedesktop.StatusNotifierItem` interface, such as GNOME with the AppIndicator extension, Cinnamon and XFCE. [#&#8203;52951](https://github.com/electron/electron/pull/52951) - Fixed a 1-in-200 chance per renderer process on Windows of scripts on the first page load being compiled without their V8 code cache. [#&#8203;52792](https://github.com/electron/electron/pull/52792) <sup>(Also in [42](https://github.com/electron/electron/pull/52988), [43](https://github.com/electron/electron/pull/52943))</sup> - On Linux, fixed runtime toggling of shadows for frameless windows and added support for system-configured button layouts in Window Controls Overlay on Linux. [#&#8203;51161](https://github.com/electron/electron/pull/51161) <sup>(Also in [43](https://github.com/electron/electron/pull/51658))</sup> - Fixed silent data truncation in `Buffer`/`TextEncoder` APIs and a crash in `fs.writeFileSync` with non-ASCII strings on Apple Silicon. [#&#8203;51848](https://github.com/electron/electron/pull/51848) <sup>(Also in [41](https://github.com/electron/electron/pull/51851), [42](https://github.com/electron/electron/pull/51849), [43](https://github.com/electron/electron/pull/51850))</sup> - Improved the error message when an asar integrity check fails to name the entry that failed. [#&#8203;52624](https://github.com/electron/electron/pull/52624) <sup>(Also in [42](https://github.com/electron/electron/pull/52623), [43](https://github.com/electron/electron/pull/52622))</sup> #### Performance Improvements - Enabled ThinLTO on macOS builds. [#&#8203;51669](https://github.com/electron/electron/pull/51669) <sup>(Also in [41](https://github.com/electron/electron/pull/53001), [42](https://github.com/electron/electron/pull/51823), [43](https://github.com/electron/electron/pull/51819))</sup> - Made various performance improvements related to initialization and IPC. [#&#8203;53017](https://github.com/electron/electron/pull/53017) <sup>(Also in [42](https://github.com/electron/electron/pull/53019), [43](https://github.com/electron/electron/pull/53018))</sup> - Improved app startup time by booting the main process from an embedded Node.js startup snapshot. [#&#8203;51703](https://github.com/electron/electron/pull/51703) <sup>(Also in [42](https://github.com/electron/electron/pull/51831), [43](https://github.com/electron/electron/pull/51792))</sup> - Improved application startup time on Linux by skipping GDK's OpenGL probe and loading FontConfig off the main thread during toolkit initialization. [#&#8203;53107](https://github.com/electron/electron/pull/53107) <sup>(Also in [43](https://github.com/electron/electron/pull/53108))</sup> - Improved performance of Linux and Windows release builds by enabling ThinLTO link-time optimization for the main Electron binary. [#&#8203;51809](https://github.com/electron/electron/pull/51809) <sup>(Also in [42](https://github.com/electron/electron/pull/51821), [43](https://github.com/electron/electron/pull/51820))</sup> - Improved performance of `webRequest` header conversions and several other gin converter hot paths. [#&#8203;51599](https://github.com/electron/electron/pull/51599) <sup>(Also in [42](https://github.com/electron/electron/pull/51607), [43](https://github.com/electron/electron/pull/51608))</sup> - Improved performance of native event emission, IPC dispatch, and option-dictionary parsing. [#&#8203;51596](https://github.com/electron/electron/pull/51596) <sup>(Also in [41](https://github.com/electron/electron/pull/51613), [42](https://github.com/electron/electron/pull/51614), [43](https://github.com/electron/electron/pull/51615))</sup> - Improved runtime performance by consuming Electron-generated PGO profiles instead of Chrome's published ones. [#&#8203;51815](https://github.com/electron/electron/pull/51815) <sup>(Also in [42](https://github.com/electron/electron/pull/51828), [43](https://github.com/electron/electron/pull/51829))</sup> - Improved sandboxed renderer startup performance — preload scripts and process info are now pushed ahead of navigation instead of fetched via blocking IPC, and preload compilation results are cached on disk. Preload stack traces now show the correct file path and line number. [#&#8203;51602](https://github.com/electron/electron/pull/51602) <sup>(Also in [42](https://github.com/electron/electron/pull/51831), [43](https://github.com/electron/electron/pull/51792))</sup> - Improved startup time of `utilityProcess.fork()`, `child_process.fork()` / `ELECTRON_RUN_AS_NODE` child processes and Node.js-enabled renderers. [#&#8203;53134](https://github.com/electron/electron/pull/53134) <sup>(Also in [42](https://github.com/electron/electron/pull/53136), [43](https://github.com/electron/electron/pull/53135))</sup> - Linux arm64, Windows arm64 and macOS x64 builds now start the main process from the embedded Node.js startup snapshot like the other platforms, improving startup time. [#&#8203;52879](https://github.com/electron/electron/pull/52879) <sup>(Also in [42](https://github.com/electron/electron/pull/52880), [43](https://github.com/electron/electron/pull/52881))</sup> - Reduced idle main-process CPU wakeups caused by Node.js timers and immediates. [#&#8203;52906](https://github.com/electron/electron/pull/52906) <sup>(Also in [43](https://github.com/electron/electron/pull/52905))</sup> - Reduced sandboxed renderer cold-start time (`DidClearWindowObject`) by \~35% by deserializing a build-time V8 code cache for Electron's framework bundles instead of parsing and compiling them from source on every launch. [#&#8203;51697](https://github.com/electron/electron/pull/51697) <sup>(Also in [42](https://github.com/electron/electron/pull/51831), [43](https://github.com/electron/electron/pull/51792))</sup> - Reduced the Linux distribution size by \~37 MB by only shipping locale strings and resources that Electron can actually use. [#&#8203;51804](https://github.com/electron/electron/pull/51804) - Removed `showHiddenFiles` support from the `dialog` API on Linux. [#&#8203;51704](https://github.com/electron/electron/pull/51704) <sup>(Also in [43](https://github.com/electron/electron/pull/51880))</sup> - The first sandboxed BrowserWindow now starts in a renderer process launched ahead of time when the default session already exists, shortening the time from window creation to the page's first script; apps that open many windows can keep a spare renderer warm at all times with `--enable-features=SpareRendererForSitePerProcess`. [#&#8203;53144](https://github.com/electron/electron/pull/53144) - The non-functional dummy `libEGL.so` and `libGLESv2.so` files are no longer included in the Linux distribution, now that ANGLE is statically linked. [#&#8203;52227](https://github.com/electron/electron/pull/52227) #### Other Changes - Updated the Squirrel.Mac autoUpdater backend on macOS to pick up upstream fixes, including correct version-string validation when downgrade prevention is enabled, fixes for stale launcher errors persisting across update checks, and forwarding of custom download request headers. [#&#8203;51584](https://github.com/electron/electron/pull/51584) - Backported fixes from upstream Chromium and V8. [#&#8203;52774](https://github.com/electron/electron/pull/52774) - Backported fixes from upstream Chromium. [#&#8203;52701](https://github.com/electron/electron/pull/52701) #### Documentation - Documentation changes: [#&#8203;50560](https://github.com/electron/electron/pull/50560), [#&#8203;51426](https://github.com/electron/electron/pull/51426), [#&#8203;51559](https://github.com/electron/electron/pull/51559), [#&#8203;52538](https://github.com/electron/electron/pull/52538), [#&#8203;52539](https://github.com/electron/electron/pull/52539) ### [`v43.8.6`](https://github.com/electron/electron/releases/tag/v43.8.6): electron v43.8.6 [Compare Source](https://github.com/electron/electron/compare/v43.8.5...v43.8.6) ### Release Notes for v43.8.6 #### Performance Improvements - Improved performance of repeated `net.fetch()` calls for `file:` URLs. [#&#8203;55481](https://github.com/electron/electron/pull/55481) <sup>(Also in [44](https://github.com/electron/electron/pull/55458), [45](https://github.com/electron/electron/pull/55459), [46](https://github.com/electron/electron/pull/55457))</sup> #### Other Changes - Backported fixes from upstream ANGLE, Chromium, libaom, libvpx, PDFium, Skia, V8 and WebRTC. [#&#8203;55517](https://github.com/electron/electron/pull/55517) ### [`v43.8.5`](https://github.com/electron/electron/releases/tag/v43.8.5): electron v43.8.5 [Compare Source](https://github.com/electron/electron/compare/v43.8.4...v43.8.5) ### Release Notes for v43.8.5 #### Fixes - Fixed a crash on Linux when a D-Bus method call was made on a disconnected bus. [#&#8203;55291](https://github.com/electron/electron/pull/55291) <sup>(Also in [44](https://github.com/electron/electron/pull/55290), [45](https://github.com/electron/electron/pull/55292), [46](https://github.com/electron/electron/pull/55289))</sup> #### Performance Improvements - Improved performance of `net.fetch()` requests without a body. [#&#8203;55447](https://github.com/electron/electron/pull/55447) <sup>(Also in [44](https://github.com/electron/electron/pull/55445), [45](https://github.com/electron/electron/pull/55446), [46](https://github.com/electron/electron/pull/55444))</sup> #### Other Changes - Backported fixes from upstream Chromium, Dawn, Skia and V8. [#&#8203;55495](https://github.com/electron/electron/pull/55495) ### [`v43.8.4`](https://github.com/electron/electron/releases/tag/v43.8.4): electron v43.8.4 [Compare Source](https://github.com/electron/electron/compare/v43.8.3...v43.8.4) ### Release Notes for v43.8.4 #### Fixes - Backported fix for a macOS File System Access blocklist bypass via `/System/Volumes/Data` paths. [#&#8203;54677](https://github.com/electron/electron/pull/54677) - Fixed Europe/London and Europe/Dublin time zone names showing as "GMT+00:00" in winter by updating ICU to tzdata 2026e. [#&#8203;55336](https://github.com/electron/electron/pull/55336) - Fixed File System Access blocklist gaps for `.git/hooks` writes and hypervisor UNC shares. [#&#8203;55331](https://github.com/electron/electron/pull/55331) - Fixed handling of malformed asar archives whose size fields do not match the file length. [#&#8203;55179](https://github.com/electron/electron/pull/55179) <sup>(Also in [44](https://github.com/electron/electron/pull/55176), [45](https://github.com/electron/electron/pull/55175))</sup> - Fixed inconsistent handling of asar archive paths between the main process and child processes. [#&#8203;55185](https://github.com/electron/electron/pull/55185) <sup>(Also in [44](https://github.com/electron/electron/pull/55183), [45](https://github.com/electron/electron/pull/55184))</sup> - Fixed MV3 extension events not arriving to background service workers. [#&#8203;55153](https://github.com/electron/electron/pull/55153) <sup>(Also in [44](https://github.com/electron/electron/pull/55152), [45](https://github.com/electron/electron/pull/55154))</sup> - Fixed `utilityProcess` not emitting an `exit` event when the app quit while the process was still launching. [#&#8203;55272](https://github.com/electron/electron/pull/55272) <sup>(Also in [44](https://github.com/electron/electron/pull/55273), [45](https://github.com/electron/electron/pull/55274), [46](https://github.com/electron/electron/pull/55264))</sup> #### Other Changes - Updated Node.js to v24.22.1. [#&#8203;55161](https://github.com/electron/electron/pull/55161) ### [`v43.8.3`](https://github.com/electron/electron/releases/tag/v43.8.3): electron v43.8.3 [Compare Source](https://github.com/electron/electron/compare/v43.8.2...v43.8.3) ### Release Notes for v43.8.3 #### Other Changes - Backported fixes from upstream ANGLE, Chromium, PDFium, Skia and V8. [#&#8203;55147](https://github.com/electron/electron/pull/55147) ### [`v43.8.2`](https://github.com/electron/electron/releases/tag/v43.8.2): electron v43.8.2 [Compare Source](https://github.com/electron/electron/compare/v43.8.1...v43.8.2) ### Release Notes for v43.8.2 ### [`v43.8.1`](https://github.com/electron/electron/releases/tag/v43.8.1): electron v43.8.1 [Compare Source](https://github.com/electron/electron/compare/v43.8.0...v43.8.1) ### Release Notes for v43.8.1 > \[!NOTE] > This release contains the fix for <https://github.com/electron/electron/security/advisories/GHSA-jr5w-w6x2-84p9>, the mitigation for compromised eMudhra intermediate certificates #### Fixes - Fixed link-opened windows not using the opener's session and `webPreferences`. [#&#8203;55049](https://github.com/electron/electron/pull/55049) <sup>(Also in [42](https://github.com/electron/electron/pull/55050), [44](https://github.com/electron/electron/pull/55048), [45](https://github.com/electron/electron/pull/55051))</sup> - Fixed `setCertificateVerifyProc` occasionally not being applied to a request issued concurrently with the first request to a host. [#&#8203;55047](https://github.com/electron/electron/pull/55047) <sup>(Also in [42](https://github.com/electron/electron/pull/55054), [44](https://github.com/electron/electron/pull/55046), [45](https://github.com/electron/electron/pull/55045))</sup> ### [`v43.8.0`](https://github.com/electron/electron/releases/tag/v43.8.0): electron v43.8.0 [Compare Source](https://github.com/electron/electron/compare/v43.7.11...v43.8.0) ### Release Notes for v43.8.0 #### Fixes - Fixed a crash on Linux at startup or on theme change with GTK modules loaded. [#&#8203;55016](https://github.com/electron/electron/pull/55016) - Fixed a crash when creating a framed window on Wayland in environments where GTK could not initialize. [#&#8203;54893](https://github.com/electron/electron/pull/54893) <sup>(Also in [44](https://github.com/electron/electron/pull/54420), [45](https://github.com/electron/electron/pull/54399))</sup> - Fixed a Linux crash creating a window with a menu bar when GTK failed to load. [#&#8203;54884](https://github.com/electron/electron/pull/54884) <sup>(Also in [44](https://github.com/electron/electron/pull/54859), [45](https://github.com/electron/electron/pull/54846))</sup> - Fixed an issue where clicks posted to a background app were dropped on macOS. [#&#8203;54905](https://github.com/electron/electron/pull/54905) <sup>(Also in [42](https://github.com/electron/electron/pull/54906), [44](https://github.com/electron/electron/pull/54819), [45](https://github.com/electron/electron/pull/54818))</sup> - Fixed `net.fetch` and `session.fetch` failing permanently with `net::ERR_FAILED` after the Network Service process restarts. [#&#8203;54908](https://github.com/electron/electron/pull/54908) <sup>(Also in [42](https://github.com/electron/electron/pull/54925), [44](https://github.com/electron/electron/pull/54909), [45](https://github.com/electron/electron/pull/54910))</sup> - Fixed `utilityProcess` dropping messages posted with `process.parentPort.postMessage()` right before the process exits. [#&#8203;54962](https://github.com/electron/electron/pull/54962) <sup>(Also in [42](https://github.com/electron/electron/pull/55000), [45](https://github.com/electron/electron/pull/54956))</sup> #### Other Changes - Backported fixes from upstream Chromium and V8. [#&#8203;55032](https://github.com/electron/electron/pull/55032) - Updated Node.js to v24.22.0. [#&#8203;55003](https://github.com/electron/electron/pull/55003) ### [`v43.7.11`](https://github.com/electron/electron/releases/tag/v43.7.11): electron v43.7.11 [Compare Source](https://github.com/electron/electron/compare/v43.7.10...v43.7.11) ### Release Notes for v43.7.11 #### Other Changes - Backported fixes from upstream ANGLE, Chromium, PDFium and V8. [#&#8203;54899](https://github.com/electron/electron/pull/54899) #### Documentation - Documentation changes: [#&#8203;54881](https://github.com/electron/electron/pull/54881) ### [`v43.7.10`](https://github.com/electron/electron/releases/tag/v43.7.10): electron v43.7.10 [Compare Source](https://github.com/electron/electron/compare/v43.7.9...v43.7.10) ### Release Notes for v43.7.10 #### Fixes - Fixed a crash when starting without an available display server on Linux. [#&#8203;54795](https://github.com/electron/electron/pull/54795) <sup>(Also in [45](https://github.com/electron/electron/pull/54781))</sup> - Fixed a renderer crash when a `ResizeObserver` loop-limit error handler modified layout. [#&#8203;54611](https://github.com/electron/electron/pull/54611) <sup>(Also in [42](https://github.com/electron/electron/pull/54610), [44](https://github.com/electron/electron/pull/54290), [45](https://github.com/electron/electron/pull/54289))</sup> ### [`v43.7.9`](https://github.com/electron/electron/releases/tag/v43.7.9): electron v43.7.9 [Compare Source](https://github.com/electron/electron/compare/v43.7.8...v43.7.9) ### Release Notes for v43.7.9 #### Other Changes - Backported fixes from upstream ANGLE, Chromium, Dawn, fontconfig, Skia, V8 and WebRTC. [#&#8203;54667](https://github.com/electron/electron/pull/54667) - Backported fixes from upstream ANGLE, Chromium, Skia, V8 and WebRTC. [#&#8203;54658](https://github.com/electron/electron/pull/54658) ### [`v43.7.8`](https://github.com/electron/electron/releases/tag/v43.7.8): electron v43.7.8 [Compare Source](https://github.com/electron/electron/compare/v43.7.7...v43.7.8) ### Release Notes for v43.7.8 #### Fixes - Fixed a crash on launch on macOS when the system refused to register the app for sleep/wake notifications. [#&#8203;54597](https://github.com/electron/electron/pull/54597) - Fixed `webview.findInPage()` hanging when the host page also has an iframe. [#&#8203;54584](https://github.com/electron/electron/pull/54584) <sup>(Also in [44](https://github.com/electron/electron/pull/54586), [45](https://github.com/electron/electron/pull/54585))</sup> - Updated time zone data to tzdata 2026d, including British Columbia's move to permanent UTC-7. [#&#8203;54622](https://github.com/electron/electron/pull/54622) ### [`v43.7.7`](https://github.com/electron/electron/releases/tag/v43.7.7): electron v43.7.7 [Compare Source](https://github.com/electron/electron/compare/v43.7.6...v43.7.7) ### Release Notes for v43.7.7 #### Other Changes - Backported fixes from upstream ANGLE, Chromium, Dawn and V8. [#&#8203;54569](https://github.com/electron/electron/pull/54569) ### [`v43.7.6`](https://github.com/electron/electron/releases/tag/v43.7.6): electron v43.7.6 [Compare Source](https://github.com/electron/electron/compare/v43.7.5...v43.7.6) ### Release Notes for v43.7.6 #### Fixes - Fixed `--xdg-portal-required-version` having no effect and a spurious portal warning being logged for file dialogs on Linux. [#&#8203;54304](https://github.com/electron/electron/pull/54304) <sup>(Also in [44](https://github.com/electron/electron/pull/54303), [45](https://github.com/electron/electron/pull/54302))</sup> - Fixed a child `WebContentsView` losing focus when its window is reactivated. [#&#8203;54456](https://github.com/electron/electron/pull/54456) <sup>(Also in [44](https://github.com/electron/electron/pull/54455), [45](https://github.com/electron/electron/pull/54454))</sup> - Fixed a crash when a WebAuthn request used a security key that required its PIN. [#&#8203;54404](https://github.com/electron/electron/pull/54404) <sup>(Also in [45](https://github.com/electron/electron/pull/54389))</sup> - Fixed a crash when sending a DevTools protocol command with a non-string value for an optional string parameter via `webContents.debugger`. [#&#8203;54443](https://github.com/electron/electron/pull/54443) <sup>(Also in [44](https://github.com/electron/electron/pull/54445), [45](https://github.com/electron/electron/pull/54444))</sup> - Fixed a grey border around frameless windows on Linux WMs without compositing. [#&#8203;54390](https://github.com/electron/electron/pull/54390) <sup>(Also in [44](https://github.com/electron/electron/pull/54391), [45](https://github.com/electron/electron/pull/54392))</sup> - Fixed a main process crash when a native API method was called with a `this` value of a different native type; it now throws a `TypeError`. [#&#8203;54316](https://github.com/electron/electron/pull/54316) <sup>(Also in [44](https://github.com/electron/electron/pull/54315))</sup> - Fixed a possible crash during process exit when `vm.Script` or `vm` contexts created in the main process had been garbage collected shortly before quitting. [#&#8203;54268](https://github.com/electron/electron/pull/54268) <sup>(Also in [44](https://github.com/electron/electron/pull/54266), [45](https://github.com/electron/electron/pull/54267))</sup> - Fixed a possible renderer crash in 32-bit Windows and Linux ARM builds caused by under-aligned Blink heap vector allocations. [#&#8203;54259](https://github.com/electron/electron/pull/54259) - Fixed a renderer crash calling `image.toPNG()` from a sandboxed preload script. [#&#8203;54503](https://github.com/electron/electron/pull/54503) <sup>(Also in [44](https://github.com/electron/electron/pull/54502), [45](https://github.com/electron/electron/pull/54501))</sup> - Fixed `clipboard.read()`, `readText()` and `has()` resolving seconds late on Linux while the app was idle. [#&#8203;54309](https://github.com/electron/electron/pull/54309) <sup>(Also in [42](https://github.com/electron/electron/pull/54310), [44](https://github.com/electron/electron/pull/54308), [45](https://github.com/electron/electron/pull/54307))</sup> - Fixed `desktopCapturer.getSources()` leaving non-resizable windows resizable on macOS. [#&#8203;54396](https://github.com/electron/electron/pull/54396) <sup>(Also in [44](https://github.com/electron/electron/pull/54397), [45](https://github.com/electron/electron/pull/54398))</sup> - Fixed `fs.rmSync` failing to remove read-only files on Windows. [#&#8203;54256](https://github.com/electron/electron/pull/54256) <sup>(Also in [42](https://github.com/electron/electron/pull/54257), [44](https://github.com/electron/electron/pull/54255), [45](https://github.com/electron/electron/pull/54190))</sup> - Fixed `GDK_BACKEND` leaking into processes spawned by Electron apps on Linux. [#&#8203;54426](https://github.com/electron/electron/pull/54426) <sup>(Also in [44](https://github.com/electron/electron/pull/54425), [45](https://github.com/electron/electron/pull/54424))</sup> - Fixed `pointerLock` permission requests from some iframes reporting the parent frame. [#&#8203;54465](https://github.com/electron/electron/pull/54465) <sup>(Also in [42](https://github.com/electron/electron/pull/54466), [44](https://github.com/electron/electron/pull/54464), [45](https://github.com/electron/electron/pull/54463))</sup> - Fixed `setIgnoreMouseEvents()` taking effect late on X11. [#&#8203;54498](https://github.com/electron/electron/pull/54498) <sup>(Also in [44](https://github.com/electron/electron/pull/54497), [45](https://github.com/electron/electron/pull/54496))</sup> - Fixed `setIgnoreMouseEvents(true)` being undone by the next resize on X11. [#&#8203;54423](https://github.com/electron/electron/pull/54423) <sup>(Also in [44](https://github.com/electron/electron/pull/54393), [45](https://github.com/electron/electron/pull/54394))</sup> - Added `setIgnoreMouseEvents` support on Wayland. - Fixed the default action label on Linux notifications not being localized. [#&#8203;54400](https://github.com/electron/electron/pull/54400) <sup>(Also in [44](https://github.com/electron/electron/pull/54401), [45](https://github.com/electron/electron/pull/54402))</sup> - Fixed the GPU process crash-looping on Windows when the sandbox cannot read the install folder; the folder is now reported instead. [#&#8203;54485](https://github.com/electron/electron/pull/54485) <sup>(Also in [44](https://github.com/electron/electron/pull/54484), [45](https://github.com/electron/electron/pull/54483))</sup> - Fixed the zoom level resetting on `file:` and other host-less pages after a `location.hash` change. [#&#8203;54440](https://github.com/electron/electron/pull/54440) <sup>(Also in [44](https://github.com/electron/electron/pull/54442), [45](https://github.com/electron/electron/pull/54441))</sup> - Fixed typing not working after closing an `alert()` or `confirm()` on Windows. [#&#8203;54462](https://github.com/electron/electron/pull/54462) <sup>(Also in [44](https://github.com/electron/electron/pull/54461), [45](https://github.com/electron/electron/pull/54460))</sup> - Fixed `utilityProcess` dropping `stdout`/`stderr` output that the child wrote immediately before exiting. [#&#8203;54279](https://github.com/electron/electron/pull/54279) <sup>(Also in [42](https://github.com/electron/electron/pull/54332), [44](https://github.com/electron/electron/pull/54278), [45](https://github.com/electron/electron/pull/54335))</sup> - Fixed visual zoom limits resetting on navigation and not applying to webviews. [#&#8203;54450](https://github.com/electron/electron/pull/54450) <sup>(Also in [44](https://github.com/electron/electron/pull/54449), [45](https://github.com/electron/electron/pull/54438))</sup> - Fixed WebAssembly exception handlers failing to catch, or crashing during tier-up, in modules using wasm exceptions. [#&#8203;54235](https://github.com/electron/electron/pull/54235) - Fixed WebAssembly modules loaded from the code cache crashing or throwing `RuntimeError: unreachable` after updating between certain patch releases. [#&#8203;54238](https://github.com/electron/electron/pull/54238) <sup>(Also in [42](https://github.com/electron/electron/pull/54239), [44](https://github.com/electron/electron/pull/54246), [45](https://github.com/electron/electron/pull/54237))</sup> - Fixed `win.setEnabled(false)` and modal child windows not blocking input on Wayland. [#&#8203;54446](https://github.com/electron/electron/pull/54446) <sup>(Also in [44](https://github.com/electron/electron/pull/54447), [45](https://github.com/electron/electron/pull/54448))</sup> - Fixed zoom in/out getting stuck after zooming past the 25%-500% range. [#&#8203;54422](https://github.com/electron/electron/pull/54422) <sup>(Also in [44](https://github.com/electron/electron/pull/54421), [45](https://github.com/electron/electron/pull/54395))</sup> - Fixed `setVisualZoomLevelLimits()` shrinking pages when the minimum is under 1. ### [`v43.7.5`](https://github.com/electron/electron/releases/tag/v43.7.5): electron v43.7.5 [Compare Source](https://github.com/electron/electron/compare/v43.7.4...v43.7.5) ### Release Notes for v43.7.5 #### Other Changes - Backported fixes from upstream ANGLE, Chromium, Dawn, PDFium and V8. [#&#8203;54221](https://github.com/electron/electron/pull/54221) ### [`v43.7.4`](https://github.com/electron/electron/releases/tag/v43.7.4): electron v43.7.4 [Compare Source](https://github.com/electron/electron/compare/v43.7.3...v43.7.4) ### Release Notes for v43.7.4 #### Fixes - Fixed a crash when calling `setIgnoreMenuShortcuts()` on DevTools. [#&#8203;54117](https://github.com/electron/electron/pull/54117) <sup>(Also in [44](https://github.com/electron/electron/pull/54116), [45](https://github.com/electron/electron/pull/54115))</sup> - Fixed a spurious "`sandboxed_renderer.bundle.js` script failed to run" console error when DevTools attached to a sandboxed frame before its first navigation. [#&#8203;54176](https://github.com/electron/electron/pull/54176) <sup>(Also in [42](https://github.com/electron/electron/pull/54175))</sup> - Fixed an "Invalid `guestInstanceId`" error when removing a loaded `<webview>` from the DOM. [#&#8203;54097](https://github.com/electron/electron/pull/54097) <sup>(Also in [42](https://github.com/electron/electron/pull/54098), [44](https://github.com/electron/electron/pull/54099), [45](https://github.com/electron/electron/pull/54096))</sup> - Fixed `ready-to-show` never firing for some hidden windows on Windows and Linux. [#&#8203;54119](https://github.com/electron/electron/pull/54119) <sup>(Also in [44](https://github.com/electron/electron/pull/54118), [45](https://github.com/electron/electron/pull/54110))</sup> ### [`v43.7.3`](https://github.com/electron/electron/releases/tag/v43.7.3): electron v43.7.3 [Compare Source](https://github.com/electron/electron/compare/v43.7.2...v43.7.3) ### Release Notes for v43.7.3 #### Other Changes - Backported fixes from upstream Chromium, Dawn, PDFium, Skia and V8. [#&#8203;54082](https://github.com/electron/electron/pull/54082) ### [`v43.7.2`](https://github.com/electron/electron/releases/tag/v43.7.2): electron v43.7.2 [Compare Source](https://github.com/electron/electron/compare/v43.7.1...v43.7.2) ### Release Notes for v43.7.2 #### Fixes - Fixed a potential UAF when a `select-usb-device` handler destroys the requesting `webContents`. [#&#8203;54007](https://github.com/electron/electron/pull/54007) <sup>(Also in [44](https://github.com/electron/electron/pull/54009), [45](https://github.com/electron/electron/pull/54008))</sup> - Fixed default protocol client APIs falsely returning `true` on Windows. [#&#8203;53960](https://github.com/electron/electron/pull/53960) <sup>(Also in [44](https://github.com/electron/electron/pull/53959), [45](https://github.com/electron/electron/pull/53958))</sup> #### Other Changes - Backported fix from upstream V8. [#&#8203;53988](https://github.com/electron/electron/pull/53988) - Backported fixes from upstream ANGLE, Chromium, Skia and V8. [#&#8203;53984](https://github.com/electron/electron/pull/53984) ### [`v43.7.1`](https://github.com/electron/electron/releases/tag/v43.7.1): electron v43.7.1 [Compare Source](https://github.com/electron/electron/compare/v43.7.0...v43.7.1) ### Release Notes for v43.7.1 #### Fixes - Fixed a main-process crash when an app called `loadURL()` again right after a load failed because the renderer process exited before the page committed. [#&#8203;53944](https://github.com/electron/electron/pull/53944) <sup>(Also in [44](https://github.com/electron/electron/pull/53943), [45](https://github.com/electron/electron/pull/53942))</sup> - Fixed a memory leak on Windows when `app.getPreferredSystemLanguages()` was called. [#&#8203;53867](https://github.com/electron/electron/pull/53867) <sup>(Also in [44](https://github.com/electron/electron/pull/53868), [45](https://github.com/electron/electron/pull/53869))</sup> - Fixed a potential UAF in `app.getPreferredSystemLanguages()` on Windows. [#&#8203;53866](https://github.com/electron/electron/pull/53866) <sup>(Also in [44](https://github.com/electron/electron/pull/53865), [45](https://github.com/electron/electron/pull/53864))</sup> - Fixed a renderer crash when an iframe was removed right after loading with `nodeIntegrationInSubFrames` enabled and `sandbox` disabled, e.g. on pages that embed Meta Pixel. [#&#8203;53884](https://github.com/electron/electron/pull/53884) <sup>(Also in [42](https://github.com/electron/electron/pull/53886), [44](https://github.com/electron/electron/pull/53885), [45](https://github.com/electron/electron/pull/53883))</sup> - Fixed a Windows renderer crash when no default locale could be determined. [#&#8203;53948](https://github.com/electron/electron/pull/53948) - Fixed `webContents.capturePage()` on offscreen windows returning an image resampled to the display's scale factor instead of rendered at the window's `offscreen.deviceScaleFactor`. [#&#8203;53818](https://github.com/electron/electron/pull/53818) <sup>(Also in [44](https://github.com/electron/electron/pull/53816), [45](https://github.com/electron/electron/pull/53817))</sup> ### [`v43.7.0`](https://github.com/electron/electron/releases/tag/v43.7.0): electron v43.7.0 [Compare Source](https://github.com/electron/electron/compare/v43.6.0...v43.7.0) ### Release Notes for v43.7.0 #### Features - Added `initiatorOrigin` to webRequest and protocol handler requests, `DownloadItem.getInitiatorOrigin()`, and a trailing `frame` argument to the `will-download` and `preconnect` session events. [#&#8203;53704](https://github.com/electron/electron/pull/53704) <sup>(Also in [44](https://github.com/electron/electron/pull/53703), [45](https://github.com/electron/electron/pull/53700))</sup> - Added the `ELECTRON_DEBUG_DRAGGABLE_REGIONS` environment variable, which visualizes and logs draggable regions in unpackaged apps to help debug custom title bars. [#&#8203;53633](https://github.com/electron/electron/pull/53633) <sup>(Also in [44](https://github.com/electron/electron/pull/53627), [45](https://github.com/electron/electron/pull/53626))</sup> #### Fixes - File System Access permission requests and the `file-system-access-restricted` event are scoped to the requesting document, grants are reset when the origin's last page closes, and write access works in in-memory sessions. [#&#8203;53694](https://github.com/electron/electron/pull/53694) <sup>(Also in [42](https://github.com/electron/electron/pull/53695), [44](https://github.com/electron/electron/pull/53691), [45](https://github.com/electron/electron/pull/53690))</sup> - Fixed `session.setPermissionCheckHandler` receiving the top-level origin and a null `webContents` for `hid` and `usb` checks made from a subframe. [#&#8203;53689](https://github.com/electron/electron/pull/53689) <sup>(Also in [42](https://github.com/electron/electron/pull/53736), [44](https://github.com/electron/electron/pull/53688), [45](https://github.com/electron/electron/pull/53679))</sup> - Fixed `webContents.on()`, `removeListener()` and `removeAllListeners()` throwing "Object has been destroyed" for `console-message` listeners after the WebContents was destroyed. [#&#8203;53496](https://github.com/electron/electron/pull/53496) <sup>(Also in [42](https://github.com/electron/electron/pull/53497), [44](https://github.com/electron/electron/pull/53494), [45](https://github.com/electron/electron/pull/53495))</sup> - Fixed a crash on Linux when `process.env` was written while another thread was reading the environment, and a memory leak when a worker thread exits. [#&#8203;53510](https://github.com/electron/electron/pull/53510) <sup>(Also in [42](https://github.com/electron/electron/pull/53511), [44](https://github.com/electron/electron/pull/53509), [45](https://github.com/electron/electron/pull/53508))</sup> - Fixed a possible crash on Windows when a file dialog was shown for a window that was being closed at the same time. [#&#8203;53584](https://github.com/electron/electron/pull/53584) <sup>(Also in [42](https://github.com/electron/electron/pull/53585), [44](https://github.com/electron/electron/pull/53583), [45](https://github.com/electron/electron/pull/53586))</sup> - Fixed a renderer crash when the main process sent IPC to, or a page navigated, a same-process `window.open()` child whose `contextIsolation` differed from its opener's. [#&#8203;53540](https://github.com/electron/electron/pull/53540) <sup>(Also in [42](https://github.com/electron/electron/pull/53541), [44](https://github.com/electron/electron/pull/53539), [45](https://github.com/electron/electron/pull/53538))</sup> - Fixed an issue where the browser-side check that blocks drag and drop between cross-site frames of the same page was disabled. [#&#8203;53750](https://github.com/electron/electron/pull/53750) <sup>(Also in [44](https://github.com/electron/electron/pull/53749), [45](https://github.com/electron/electron/pull/53748))</sup> - Fixed crashes in `setDisplayMediaRequestHandler` when the granted frame had been destroyed or another tab was granted by id. [#&#8203;53671](https://github.com/electron/electron/pull/53671) <sup>(Also in [42](https://github.com/electron/electron/pull/53674), [44](https://github.com/electron/electron/pull/53672), [45](https://github.com/electron/electron/pull/53673))</sup> - Fixed several non-functional DevTools integrations: the Security panel's "View certificate" button, Ctrl+wheel zooming inside DevTools, and DevTools keyboard shortcuts (e.g. F8) while the inspected page has focus. [#&#8203;53631](https://github.com/electron/electron/pull/53631) <sup>(Also in [44](https://github.com/electron/electron/pull/53630), [45](https://github.com/electron/electron/pull/53471))</sup> - Internal `<webview>`, `window.close()` and `executeJavaScript` reply IPCs are validated against the sending frame. [#&#8203;53726](https://github.com/electron/electron/pull/53726) <sup>(Also in [42](https://github.com/electron/electron/pull/53727), [44](https://github.com/electron/electron/pull/53723), [45](https://github.com/electron/electron/pull/53724))</sup> - `<webview>` without `allowpopups` also blocks links opened into a new window by modifier-click, and such windows navigate as the clicking document rather than as a browser-initiated load. [#&#8203;53718](https://github.com/electron/electron/pull/53718) <sup>(Also in [42](https://github.com/electron/electron/pull/53719), [44](https://github.com/electron/electron/pull/53721), [45](https://github.com/electron/electron/pull/53717))</sup> - `getUserMedia` with `chromeMediaSource: 'desktop'` no longer accepts WebContents source ids; use `chromeMediaSource: 'tab'` with `webContents.getMediaSourceId()` or `setDisplayMediaRequestHandler` to capture a WebContents. [#&#8203;53707](https://github.com/electron/electron/pull/53707) <sup>(Also in [42](https://github.com/electron/electron/pull/53710), [44](https://github.com/electron/electron/pull/53709), [45](https://github.com/electron/electron/pull/53708))</sup> - `nodeIntegrationInWorker` now applies only to workers created by frames that themselves have Node integration; enable `nodeIntegrationInSubFrames` to keep Node in workers created by subframes. [#&#8203;53712](https://github.com/electron/electron/pull/53712) <sup>(Also in [42](https://github.com/electron/electron/pull/53713), [44](https://github.com/electron/electron/pull/53711), [45](https://github.com/electron/electron/pull/53706))</sup> - `openExternal` permission requests started by a frame that has since gone away are attributed to that frame's origin rather than to the navigating page. [#&#8203;53698](https://github.com/electron/electron/pull/53698) <sup>(Also in [42](https://github.com/electron/electron/pull/53697), [44](https://github.com/electron/electron/pull/53699), [45](https://github.com/electron/electron/pull/53696))</sup> - `pointerLock` and `keyboardLock` permission requests now report the requesting frame, and `execCommand('paste')` requires user activation in the frame that calls it. [#&#8203;53701](https://github.com/electron/electron/pull/53701) <sup>(Also in [42](https://github.com/electron/electron/pull/53702), [44](https://github.com/electron/electron/pull/53693), [45](https://github.com/electron/electron/pull/53692))</sup> #### Other Changes - Backported fixes from upstream ANGLE, Chromium, libyuv, PDFium and V8. [#&#8203;53766](https://github.com/electron/electron/pull/53766) - Fixed a renderer crash that could occur when printing from an iframe. [#&#8203;53761](https://github.com/electron/electron/pull/53761) <sup>(Also in [44](https://github.com/electron/electron/pull/53762), [45](https://github.com/electron/electron/pull/53763))</sup> - Fixed the app becoming unresponsive when a page has a very large number of `app-region` draggable elements. [#&#8203;53632](https://github.com/electron/electron/pull/53632) <sup>(Also in [44](https://github.com/electron/electron/pull/53597), [45](https://github.com/electron/electron/pull/53596))</sup> - Updated Node.js to v24.21.0. [#&#8203;53777](https://github.com/electron/electron/pull/53777) ### [`v43.6.0`](https://github.com/electron/electron/releases/tag/v43.6.0): electron v43.6.0 [Compare Source](https://github.com/electron/electron/compare/v43.5.1...v43.6.0) ### Release Notes for v43.6.0 #### Features - Added a `badge` property to `MenuItem` on macOS 14+ for showing a count or custom text badge next to a menu item's label. [#&#8203;53045](https://github.com/electron/electron/pull/53045) <sup>(Also in [44](https://github.com/electron/electron/pull/53046))</sup> - Added webContents.caretBrowsingEnabled for toggling caret browsing in a WebContents. [#&#8203;53034](https://github.com/electron/electron/pull/53034) <sup>(Also in [44](https://github.com/electron/electron/pull/53035))</sup> #### Fixes - Fixed VoiceOver Braille displays showing the wrong line in multi-line text fields on macOS: `AXLineForIndex` and `AXRangeForLine` now return the line containing the caret. [#&#8203;53428](https://github.com/electron/electron/pull/53428) - Fixed a pending read on a `net.request` chunked upload stream inside a protocol handler never settling when the request failed or was aborted. [#&#8203;53374](https://github.com/electron/electron/pull/53374) <sup>(Also in [44](https://github.com/electron/electron/pull/53373), [45](https://github.com/electron/electron/pull/53368))</sup> - Fixed a potential crash when using `menu.popup` with a frame from an offscreen rendered window. [#&#8203;53432](https://github.com/electron/electron/pull/53432) <sup>(Also in [44](https://github.com/electron/electron/pull/53362))</sup> - Fixed an intermittent crash (access violation) on Windows when an ASAR integrity violation is detected, so the process now exits with code 1 as intended. [#&#8203;53456](https://github.com/electron/electron/pull/53456) <sup>(Also in [44](https://github.com/electron/electron/pull/53455), [45](https://github.com/electron/electron/pull/53438))</sup> - Fixed application crash after a large number of IPC messages from renderers. [#&#8203;53420](https://github.com/electron/electron/pull/53420) <sup>(Also in [42](https://github.com/electron/electron/pull/53419), [44](https://github.com/electron/electron/pull/53417), [45](https://github.com/electron/electron/pull/53418))</sup> - Fixed native addons deriving from `node::ObjectWrap` aborting during garbage collection on Node.js 24.19.0 and later. [#&#8203;53393](https://github.com/electron/electron/pull/53393) <sup>(Also in [42](https://github.com/electron/electron/pull/53394), [44](https://github.com/electron/electron/pull/53392), [45](https://github.com/electron/electron/pull/53391))</sup> #### Other Changes - Backported fixes from upstream ANGLE, Chromium, Skia and V8. [#&#8203;53485](https://github.com/electron/electron/pull/53485) - Backported fixes from upstream Chromium, Dawn and V8. [#&#8203;53396](https://github.com/electron/electron/pull/53396) - Updated Node.js to v24.20.0. [#&#8203;53249](https://github.com/electron/electron/pull/53249) ### [`v43.5.1`](https://github.com/electron/electron/releases/tag/v43.5.1): electron v43.5.1 [Compare Source](https://github.com/electron/electron/compare/v43.5.0...v43.5.1) ### Release Notes for v43.5.1 #### Fixes - Fixed `chrome.tabs.query()` returning tab `url` and `title` to extensions without the `tabs` permission or host access, aligning with `tabs.get`. [#&#8203;53356](https://github.com/electron/electron/pull/53356) <sup>(Also in [42](https://github.com/electron/electron/pull/53355), [44](https://github.com/electron/electron/pull/53354), [45](https://github.com/electron/electron/pull/53353))</sup> - Fixed a renderer crash when an array with a throwing property getter is passed across `contextBridge`, and several main/utility-process crashes when option objects passed to Electron APIs contain throwing accessors or Proxy traps. [#&#8203;53330](https://github.com/electron/electron/pull/53330) <sup>(Also in [42](https://github.com/electron/electron/pull/53329), [44](https://github.com/electron/electron/pull/53331))</sup> - Fixed an intermittent crash at startup on Linux caused by a race between Pango and the main thread initializing fontconfig. [#&#8203;53339](https://github.com/electron/electron/pull/53339) <sup>(Also in [44](https://github.com/electron/electron/pull/53340), [45](https://github.com/electron/electron/pull/53338))</sup> - Fixed an issue where an exception thrown by a property getter on an object passed through `contextBridge` was swallowed instead of being thrown back to the caller. [#&#8203;53334](https://github.com/electron/electron/pull/53334) <sup>(Also in [44](https://github.com/electron/electron/pull/53335), [45](https://github.com/electron/electron/pull/53297))</sup> - Fixed main process crashes when navigating to `http://accessibility/` or `http://devtools/`, when an extension background page used `navigator.mediaDevices`, and when calling `SerialPort.forget()` for a disconnected device. [#&#8203;53332](https://github.com/electron/electron/pull/53332) <sup>(Also in [44](https://github.com/electron/electron/pull/53333), [45](https://github.com/electron/electron/pull/53325))</sup> - Fixed the PDF viewer failing to save an edited PDF with `NotAllowedError: Third party iframes are not allowed to show a file picker`. [#&#8203;53327](https://github.com/electron/electron/pull/53327) <sup>(Also in [44](https://github.com/electron/electron/pull/53328), [45](https://github.com/electron/electron/pull/53326))</sup> - Fixed xdg-desktop-portal misidentifying Electron apps whose `desktopName` contains dashes, which broke `globalShortcut` and other portal-based APIs on Linux. [#&#8203;52722](https://github.com/electron/electron/pull/52722) ### [`v43.5.0`](https://github.com/electron/electron/releases/tag/v43.5.0): electron v43.5.0 [Compare Source](https://github.com/electron/electron/compare/v43.4.1...v43.5.0) ### Release Notes for v43.5.0 #### Fixes - Fixed DevTools device metrics overrides persisting indefinitely when a remote debugging client disconnected without clearing them. [#&#8203;52946](https://github.com/electron/electron/pull/52946) <sup>(Also in [42](https://github.com/electron/electron/pull/53133), [44](https://github.com/electron/electron/pull/52930))</sup> - Fixed `BrowserWindow.unmaximize()` and `restore()` having no effect on Wayland when the window was maximized immediately after creation. [#&#8203;53125](https://github.com/electron/electron/pull/53125) <sup>(Also in [42](https://github.com/electron/electron/pull/53126), [44](https://github.com/electron/electron/pull/53124))</sup> - Fixed `Uncaught illegal access` errors and possible renderer crashes after closing a same-process child window or removing an iframe with `nodeIntegrationInSubFrames` enabled. [#&#8203;53041](https://github.com/electron/electron/pull/53041) <sup>(Also in [42](https://github.com/electron/electron/pull/53042), [44](https://github.com/electron/electron/pull/53040))</sup> - Fixed `fs.constants.O_DIRECTORY`, `O_NOFOLLOW` and `O_DIRECT` holding x86 values on Linux arm64 and armv7l, which made opening a directory fail with `EINVAL`, and made `require('trace_events')` behave the same on cross-compiled builds as on native ones. [#&#8203;53319](https://github.com/electron/electron/pull/53319) <sup>(Also in [42](https://github.com/electron/electron/pull/53318), [44](https://github.com/electron/electron/pull/53320), [45](https://github.com/electron/electron/pull/53321))</sup> - Fixed `webContents.executeJavaScriptInIsolatedWorld` resolving with `undefined` when `worldId` was not an integer. [#&#8203;53237](https://github.com/electron/electron/pull/53237) <sup>(Also in [44](https://github.com/electron/electron/pull/53238))</sup> - Fixed `webContents.print()` honoring `printBackground`, `duplexMode`, and printer default duplex settings. [#&#8203;53160](https://github.com/electron/electron/pull/53160) <sup>(Also in [42](https://github.com/electron/electron/pull/53158), [44](https://github.com/electron/electron/pull/53159))</sup> - Fixed a crash on Linux when the D-Bus session bus disconnected while the app was running, such as at logout or when dbus is restarted. [#&#8203;53095](https://github.com/electron/electron/pull/53095) <sup>(Also in [42](https://github.com/electron/electron/pull/53094), [44](https://github.com/electron/electron/pull/53096))</sup> - Fixed a crash on Windows when V8 posted a delayed worker task during shutdown. [#&#8203;53013](https://github.com/electron/electron/pull/53013) <sup>(Also in [42](https://github.com/electron/electron/pull/53014), [44](https://github.com/electron/electron/pull/53201))</sup> - Fixed a crash on macOS when a WebAuthn Touch ID prompt was requested while no locale resources were loaded. [#&#8203;53195](https://github.com/electron/electron/pull/53195) <sup>(Also in [44](https://github.com/electron/electron/pull/53194))</sup> - Fixed a crash on macOS when a notification's icon could not be attached; the notification is now shown without the icon. [#&#8203;53147](https://github.com/electron/electron/pull/53147) <sup>(Also in [42](https://github.com/electron/electron/pull/53148), [44](https://github.com/electron/electron/pull/53146))</sup> - Fixed a crash when calling `node:wasi` functions in optimized code. [#&#8203;53265](https://github.com/electron/electron/pull/53265) <sup>(Also in [42](https://github.com/electron/electron/pull/53267), [44](https://github.com/electron/electron/pull/53268), [45](https://github.com/electron/electron/pull/53266))</sup> - Fixed a crash when calling `utilityProcess.postMessage()` after the utility process had exited. [#&#8203;53301](https://github.com/electron/electron/pull/53301) <sup>(Also in [44](https://github.com/electron/electron/pull/53300), [45](https://github.com/electron/electron/pull/53299))</sup> - Fixed a regression where a window created with a custom title can show an empty title after using back/forward navigation. [#&#8203;53219](https://github.com/electron/electron/pull/53219) <sup>(Also in [42](https://github.com/electron/electron/pull/53217), [44](https://github.com/electron/electron/pull/53218))</sup> - Fixed a renderer crash when a page calls `SpeechRecognition.available()` or `SpeechRecognition.install()` with `processLocally`. [#&#8203;53015](https://github.com/electron/electron/pull/53015) <sup>(Also in [42](https://github.com/electron/electron/pull/53016), [44](https://github.com/electron/electron/pull/53021))</sup> - Fixed an issue where pages loaded in a detached `WebContentsView` wouldn't see the correct window size. [#&#8203;53152](https://github.com/electron/electron/pull/53152) <sup>(Also in [42](https://github.com/electron/electron/pull/53151), [44](https://github.com/electron/electron/pull/53153))</sup> - Fixed crashes in sharedTexture, service-worker ipcRenderer and utilityProcess.fork() caused by object lifetime bugs. [#&#8203;53278](https://github.com/electron/electron/pull/53278) <sup>(Also in [44](https://github.com/electron/electron/pull/53279), [45](https://github.com/electron/electron/pull/53280))</sup> - Fixed crashes in the main process when a `webRequest.onBeforeRequest` listener redirected a CORS preflight request, and when calling `net.fetch()` with a `webRequest`-permission extension loaded. [#&#8203;53304](https://github.com/electron/electron/pull/53304) <sup>(Also in [44](https://github.com/electron/electron/pull/53303), [45](https://github.com/electron/electron/pull/53302))</sup> - Fixed crashes when a webContents or parent window is destroyed while other APIs still reference it. [#&#8203;53288](https://github.com/electron/electron/pull/53288) <sup>(Also in [44](https://github.com/electron/electron/pull/53287), [45](https://github.com/electron/electron/pull/53281))</sup> - Fixed crashes when certain app event handlers call back into Electron synchronously. [#&#8203;53276](https://github.com/electron/electron/pull/53276) <sup>(Also in [44](https://github.com/electron/electron/pull/53275), [45](https://github.com/electron/electron/pull/53269))</sup> - Fixed document title updates when using back/forward navigation using the same document without utilizing `browserWindow.setTitle()`. [#&#8203;53023](https://github.com/electron/electron/pull/53023) <sup>(Also in [42](https://github.com/electron/electron/pull/53099), [44](https://github.com/electron/electron/pull/52968))</sup> - Fixed region-qualified `--lang` values such as `de-DE` loading no locale resources on macOS, which left localized strings empty and could crash WebAuthn Touch ID prompts. [#&#8203;53186](https://github.com/electron/electron/pull/53186) <sup>(Also in [42](https://github.com/electron/electron/pull/53187), [44](https://github.com/electron/electron/pull/53188))</sup> - Fixed spellcheck not initializing on Linux when the dictionary was already cached from a previous run. [#&#8203;52717](https://github.com/electron/electron/pull/52717) <sup>(Also in [44](https://github.com/electron/electron/pull/52716))</sup> - Fixed the GPU process being terminated in AppX/MSIX packaged apps on Windows when WebGPU fell back to SwiftShader. [#&#8203;53197](https://github.com/electron/electron/pull/53197) <sup>(Also in [42](https://github.com/electron/electron/pull/53199), [44](https://github.com/electron/electron/pull/53198))</sup> - Fixed the primary instance being killed or receiving truncated arguments when a second instance passed a very long command line or large `additionalData` to `app.requestSingleInstanceLock()`. [#&#8203;53156](https://github.com/electron/electron/pull/53156) <sup>(Also in [42](https://github.com/electron/electron/pull/53157), [44](https://github.com/electron/electron/pull/52950))</sup> - Fixed the tray icon not appearing on GNOME (and disappearing entirely on Wayland) since 43.4.1. [#&#8203;53215](https://github.com/electron/electron/pull/53215) - Fixed utility process crashes at exit on Windows 11 24H2 and later. [#&#8203;53092](https://github.com/electron/electron/pull/53092) <sup>(Also in [42](https://github.com/electron/electron/pull/53091), [44](https://github.com/electron/electron/pull/53093))</sup> - Fixed windows native message boxes being dismissed by other applications using invalid button ID. [#&#8203;53155](https://github.com/electron/electron/pull/53155) <sup>(Also in [44](https://github.com/electron/electron/pull/53154))</sup> #### Other Changes - Backported fixes from upstream ANGLE, Chromium, Dawn, Skia and V8. [#&#8203;52969](https://github.com/electron/electron/pull/52969) - Backported fixes from upstream ANGLE, Chromium, Dawn, V8 and WebRTC. [#&#8203;53190](https://github.com/electron/electron/pull/53190) - Backported fixes from upstream Chromium and V8. [#&#8203;53055](https://github.com/electron/electron/pull/53055) - Fixed a 1-in-200 chance per renderer process on Windows of scripts on the first page load being compiled without their V8 code cache. [#&#8203;52943](https://github.com/electron/electron/pull/52943) <sup>(Also in [42](https://github.com/electron/electron/pull/52988), [44](https://github.com/electron/electron/pull/52792))</sup> - Fixed a stall of tens of milliseconds while creating the first `BrowserWindow` on Linux. - Improved the performance of file lookups inside ASAR archives and of large files served from them to the renderer. - Improved the performance of calls through `contextBridge`-exposed APIs. - Reduced the main-thread cost of sending large values through `ipcRenderer`, `ipcMain` handlers and `webContents.send`. [#&#8203;53018](https://github.com/electron/electron/pull/53018) <sup>(Also in [42](https://github.com/electron/electron/pull/53019), [44](https://github.com/electron/electron/pull/53017))</sup> - Improved application startup time on Linux by skipping GDK's OpenGL probe and loading FontConfig off the main thread during toolkit initialization. [#&#8203;53108](https://github.com/electron/electron/pull/53108) <sup>(Also in [44](https://github.com/electron/electron/pull/53107))</sup> - Improved startup time of `utilityProcess.fork()`, `child_process.fork()` / `ELECTRON_RUN_AS_NODE` child processes and Node.js-enabled renderers. [#&#8203;53135](https://github.com/electron/electron/pull/53135) <sup>(Also in [42](https://github.com/electron/electron/pull/53136), [44](https://github.com/electron/electron/pull/53134))</sup> - Linux arm64, Windows arm64 and macOS x64 builds now start the main process from the embedded Node.js startup snapshot like the other platforms, improving startup time. [#&#8203;52881](https://github.com/electron/electron/pull/52881) <sup>(Also in [42](https://github.com/electron/electron/pull/52880), [44](https://github.com/electron/electron/pull/52879))</sup> - Page resources, `fetch()` calls and file:// loads in renderers no longer wait for the main process to be idle when no `webRequest` listeners or protocol interceptors are registered. [#&#8203;53142](https://github.com/electron/electron/pull/53142) <sup>(Also in [42](https://github.com/electron/electron/pull/53143), [44](https://github.com/electron/electron/pull/53141))</sup> - Updated Chromium to 150.0.7871.250. [#&#8203;52787](https://github.com/electron/electron/pull/52787) - Updated Node.js to v24.19.0. [#&#8203;52635](https://github.com/electron/electron/pull/52635) ### [`v43.4.1`](https://github.com/electron/electron/releases/tag/v43.4.1): electron v43.4.1 [Compare Source](https://github.com/electron/electron/compare/v43.4.0...v43.4.1) ### Release Notes for v43.4.1 #### Fixes - Fixed DevTools popup and context menus not appearing when DevTools is hosted in a custom window via `webContents.setDevToolsWebContents()`. [#&#8203;52937](https://github.com/electron/electron/pull/52937) <sup>(Also in [44](https://github.com/electron/electron/pull/52434))</sup> - Fixed `registerFileProtocol` and `registerHttpProtocol` returning readable responses to cross-origin `no-cors` fetches; they now return opaque responses like `protocol.handle`. [#&#8203;52853](https://github.com/electron/electron/pull/52853) <sup>(Also in [41](https://github.com/electron/electron/pull/52854), [42](https://github.com/electron/electron/pull/52855), [44](https://github.com/electron/electron/pull/52852))</sup> - Fixed a `WebContentsView` staying blank after its window is shown when `setBackgroundThrottling(false)` was called while the window was hidden. [#&#8203;52864](https://github.com/electron/electron/pull/52864) <sup>(Also in [42](https://github.com/electron/electron/pull/52865), [44](https://github.com/electron/electron/pull/52863))</sup> - Fixed a crash in `systemPreferences.promptTouchID(reason)` when an invalid reason value is passed. [#&#8203;52782](https://github.com/electron/electron/pull/52782) <sup>(Also in [42](https://github.com/electron/electron/pull/52780), [44](https://github.com/electron/electron/pull/52781))</sup> - Fixed a crash when resolving a path inside a malformed ASAR archive that contains cyclic link entries. [#&#8203;52857](https://github.com/electron/electron/pull/52857) <sup>(Also in [42](https://github.com/electron/electron/pull/52859), [44](https://github.com/electron/electron/pull/52858))</sup> - Fixed a crash with `app.setLoginItemSettings` if a non-UTF8 service name is used. [#&#8203;52944](https://github.com/electron/electron/pull/52944) <sup>(Also in [44](https://github.com/electron/electron/pull/52801))</sup> - Fixed a memory leak when creating BrowserWindows. [#&#8203;52892](https://github.com/electron/electron/pull/52892) <sup>(Also in [42](https://github.com/electron/electron/pull/52893), [44](https://github.com/electron/electron/pull/52894))</sup> - Fixed a possible crash (SIGABRT) during process exit when the process had loaded `tls`/`https` shortly before exiting, affecting `app.exit()` before `ready` and short-lived `ELECTRON_RUN_AS_NODE` / `child_process.fork()` scripts. [#&#8203;52870](https://github.com/electron/electron/pull/52870) <sup>(Also in [44](https://github.com/electron/electron/pull/52871))</sup> - Fixed a possible main process crash at quit when a session was created from JavaScript that runs during shutdown. [#&#8203;52925](https://github.com/electron/electron/pull/52925) <sup>(Also in [44](https://github.com/electron/electron/pull/52924))</sup> - Fixed a potential crash in `contentTracing.stopRecording()` when the trace file could not be written to the requested path. [#&#8203;52795](https://github.com/electron/electron/pull/52795) <sup>(Also in [42](https://github.com/electron/electron/pull/52796), [44](https://github.com/electron/electron/pull/52794))</sup> - Fixed a rare crash in the main process when DevTools were opened and a garbage collection ran before the DevTools frontend finished loading. [#&#8203;52903](https://github.com/electron/electron/pull/52903) <sup>(Also in [44](https://github.com/electron/electron/pull/52904))</sup> - Fixed a regression preventing from transparent frameless windows from being resized on Linux. [#&#8203;52947](https://github.com/electron/electron/pull/52947) <sup>(Also in [44](https://github.com/electron/electron/pull/52891))</sup> - Fixed an `npm install` failure with no recovery path when the OS blocked the native zip extractor from loading (for example, Windows Smart App Control). [#&#8203;52845](https://github.com/electron/electron/pull/52845) <sup>(Also in [44](https://github.com/electron/electron/pull/52846))</sup> - Fixed an issue on Windows where the app process could fail to exit after `app.quit()` while a `shell.openExternal()` or `shell.openPath()` call was still waiting on a system "Open with" dialog. [#&#8203;52897](https://github.com/electron/electron/pull/52897) <sup>(Also in [41](https://github.com/electron/electron/pull/52899), [44](https://github.com/electron/electron/pull/52898))</sup> - Fixed crash in sharedTexture module when GPU context becomes unavailable. [#&#8203;52938](https://github.com/electron/electron/pull/52938) <sup>(Also in [44](https://github.com/electron/electron/pull/52926))</sup> - Fixed custom V8 snapshots (`electron-mksnapshot`, and the `loadBrowserProcessSpecificV8Snapshot` fuse) having no effect in the main process on macOS arm64, Linux x64 and Windows x64. [#&#8203;52877](https://github.com/electron/electron/pull/52877) <sup>(Also in [42](https://github.com/electron/electron/pull/52876), [44](https://github.com/electron/electron/pull/52878))</sup> - Fixed downloading files that live inside an asar archive, including saving a packed PDF from the built-in PDF viewer. [#&#8203;52826](https://github.com/electron/electron/pull/52826) <sup>(Also in [42](https://github.com/electron/electron/pull/52828), [44](https://github.com/electron/electron/pull/52827))</sup> - Fixed the built-in PDF viewer not rendering documents in in-memory sessions (partitions without the `persist:` prefix). [#&#8203;52835](https://github.com/electron/electron/pull/52835) <sup>(Also in [44](https://github.com/electron/electron/pull/52834))</sup> - Fixed windows opened by a sandboxed top-level frame not inheriting the opener's sandbox restrictions. [#&#8203;52848](https://github.com/electron/electron/pull/52848) <sup>(Also in [41](https://github.com/electron/electron/pull/52849), [42](https://github.com/electron/electron/pull/52850), [44](https://github.com/electron/electron/pull/52851))</sup> - `<webview>` and `window.open` now inherit `nodeIntegrationInWorker` from the embedder, consistent with the other Node and sandbox preferences. [#&#8203;52830](https://github.com/electron/electron/pull/52830) <sup>(Also in [41](https://github.com/electron/electron/pull/52829), [42](https://github.com/electron/electron/pull/52831), [44](https://github.com/electron/electron/pull/52832))</sup> #### Other Changes - Backported fix for [`5246282`](https://github.com/electron/electron/commit/524628213). [#&#8203;52868](https://github.com/electron/electron/pull/52868) - Backported fixes for [`5422242`](https://github.com/electron/electron/commit/542224257), [`5420251`](https://github.com/electron/electron/commit/542025190). [#&#8203;52842](https://github.com/electron/electron/pull/52842) - Backported fixes from upstream Chromium and V8. [#&#8203;52778](https://github.com/electron/electron/pull/52778) - Fixed `Tray` icons not appearing (and their menus not opening) on Linux desktops that address the StatusNotifierItem by its unique D-Bus name or via the `org.freedesktop.StatusNotifierItem` interface, such as GNOME with the AppIndicator extension, Cinnamon and XFCE. [#&#8203;52952](https://github.com/electron/electron/pull/52952) - Fixed an issue on macOS where a page's first use of `speechSynthesis` could block the main process for several hundred milliseconds. [#&#8203;52814](https://github.com/electron/electron/pull/52814) - Reduced idle main-process CPU wakeups caused by Node.js timers and immediates. [#&#8203;52905](https://github.com/electron/electron/pull/52905) <sup>(Also in [44](https://github.com/electron/electron/pull/52906))</sup> ### [`v43.4.0`](https://github.com/electron/electron/releases/tag/v43.4.0): electron v43.4.0 [Compare Source](https://github.com/electron/electron/compare/v43.3.0...v43.4.0) ### Release Notes for v43.4.0 #### Features - Added `webFrameMain.printToPDF()` to allow printing individual frames to PDF from the main process. [#&#8203;52627](https://github.com/electron/electron/pull/52627) <sup>(Also in [42](https://github.com/electron/electron/pull/52626), [44](https://github.com/electron/electron/pull/52625))</sup> - Fixed an issue where `getDisplayMedia({ audio: { restrictOwnAudio: true } })` was ignored in `setDisplayMediaRequestHandler`, causing loopback audio to include local app playback. [#&#8203;52533](https://github.com/electron/electron/pull/52533) <sup>(Also in [44](https://github.com/electron/electron/pull/52534))</sup> #### Fixes - Fixed a browser process crash that could occur during Windows logoff, shutdown, or restart. [#&#8203;52620](https://github.com/electron/electron/pull/52620) <sup>(Also in [42](https://github.com/electron/electron/pull/52621), [44](https://github.com/electron/electron/pull/52619))</sup> - Fixed a crash report when the X server or Wayland compositor exits while an app is running. [#&#8203;52685](https://github.com/electron/electron/pull/52685) <sup>(Also in [42](https://github.com/electron/electron/pull/52686), [44](https://github.com/electron/electron/pull/52684))</sup> - Fixed a crash when quickly switching menus while the app is under heavy load. [#&#8203;52673](https://github.com/electron/electron/pull/52673) <sup>(Also in [42](https://github.com/electron/electron/pull/52671), [44](https://github.com/electron/electron/pull/52672))</sup> - Fixed a potential crash when notifying user activation before the primary main frame was live. [#&#8203;52697](https://github.com/electron/electron/pull/52697) <sup>(Also in [42](https://github.com/electron/electron/pull/52699), [44](https://github.com/electron/electron/pull/52698))</sup> - Fixed an issue where a JavaScript out-of-memory crash could be reported from inside the crash-key handler instead of at the out-of-memory site. [#&#8203;52725](https://github.com/electron/electron/pull/52725) <sup>(Also in [42](https://github.com/electron/electron/pull/52723), [44](https://github.com/electron/electron/pull/52724))</sup> - Fixed the Linux system accent color intermittently not being applied (`systemPreferences.getAccentColor()` returning an empty string on some launches). [#&#8203;52575](https://github.com/electron/electron/pull/52575) #### Other Changes - Backported fixes from upstream ANGLE and Chromium. [#&#8203;52709](https://github.com/electron/electron/pull/52709) - Backported fixes from upstream ANGLE, Chromium and V8. [#&#8203;52663](https://github.com/electron/electron/pull/52663) - No user-facing change; semver/none. [#&#8203;52732](https://github.com/electron/electron/pull/52732) - Updated Chromium to 150.0.7871.224. [#&#8203;52693](https://github.com/electron/electron/pull/52693) ### [`v43.3.0`](https://github.com/electron/electron/releases/tag/v43.3.0): electron v43.3.0 [Compare Source](https://github.com/electron/electron/compare/v43.2.0...v43.3.0) ### Release Notes for v43.3.0 #### Features - Added `available` to `process.getSystemMemoryInfo()` on Linux, exposing `proc/meminfo` MemAvailable. [#&#8203;52379](https://github.com/electron/electron/pull/52379) <sup>(Also in [42](https://github.com/electron/electron/pull/52378), [44](https://github.com/electron/electron/pull/52380))</sup> #### Fixes - Fixed `BrowserWindow` size corruption on Windows when created with explicit `x`/`y` on a secondary monitor whose DPI differs from the primary. [#&#8203;52501](https://github.com/electron/electron/pull/52501) <sup>(Also in [42](https://github.com/electron/electron/pull/52500), [44](https://github.com/electron/electron/pull/52499))</sup> - Fixed `Dirent.parentPath` being `undefined` for `fs.readdir`, `fs.readdirSync`, `fs.glob`, and `fs.globSync` with `withFileTypes: true` inside asar archives. [#&#8203;52505](https://github.com/electron/electron/pull/52505) <sup>(Also in [42](https://github.com/electron/electron/pull/52506), [44](https://github.com/electron/electron/pull/52507))</sup> - Fixed `dialog.showOpenDialog`/`dialog.showSaveDialog` opening at an unusable location on Linux when `defaultPath` is a bare filename without a directory. [#&#8203;52401](https://github.com/electron/electron/pull/52401) <sup>(Also in [44](https://github.com/electron/electron/pull/52402))</sup> - Fixed a UAF with `protocol.registerStreamProtocol` when an error is emitted during a read. [#&#8203;52514](https://github.com/electron/electron/pull/52514) <sup>(Also in [41](https://github.com/electron/electron/pull/52513), [42](https://github.com/electron/electron/pull/52516), [44](https://github.com/electron/electron/pull/52515))</sup> - Fixed a crash that could occur when closing DevTools while the host WebContents was being destroyed. [#&#8203;52510](https://github.com/electron/electron/pull/52510) <sup>(Also in [41](https://github.com/electron/electron/pull/52512), [42](https://github.com/electron/electron/pull/52511), [44](https://github.com/electron/electron/pull/52509))</sup> - Fixed a graphical glitch on Linux where thin borders appeared past the drop shadows on frameless windows when multiple windows were created. [#&#8203;52607](https://github.com/electron/electron/pull/52607) <sup>(Also in [44](https://github.com/electron/electron/pull/52606))</sup> - Fixed an issue where loading ICO files from ASAR archives on Windows left temporary icon files behind. [#&#8203;52478](https://github.com/electron/electron/pull/52478) <sup>(Also in [42](https://github.com/electron/electron/pull/52479), [44](https://github.com/electron/electron/pull/52477))</sup> - Fixed an issue where some values passed into `requestSingleInstanceLock` could result in a crash. [#&#8203;52471](https://github.com/electron/electron/pull/52471) <sup>(Also in [44](https://github.com/electron/electron/pull/52470))</sup> #### Other Changes - Fixed bindings for MV3 service workers. [#&#8203;52503](https://github.com/electron/electron/pull/52503) - Improved the error message when an asar integrity check fails to name the entry that failed. [#&#8203;52622](https://github.com/electron/electron/pull/52622) <sup>(Also in [42](https://github.com/electron/electron/pull/52623), [44](https://github.com/electron/electron/pull/52624))</sup> - Updated Chromium to 150.0.7871.212. [#&#8203;52524](https://github.com/electron/electron/pull/52524) - Updated Node.js to v24.18.1. [#&#8203;52552](https://github.com/electron/electron/pull/52552) ### [`v43.2.0`](https://github.com/electron/electron/releases/tag/v43.2.0): electron v43.2.0 [Compare Source](https://github.com/electron/electron/compare/v43.1.1...v43.2.0) ### Release Notes for v43.2.0 #### Features - Added `net.WebSocket`, a WHATWG-compatible WebSocket client for the main process that routes through Chromium's network stack. [#&#8203;52344](https://github.com/electron/electron/pull/52344) <sup>(Also in [42](https://github.com/electron/electron/pull/52345))</sup> #### Fixes - Fixed `app.disableHardwareAcceleration()` not fully disabling GPU hardware usage on Windows starting from Electron 38. [#&#8203;52369](https://github.com/electron/electron/pull/52369) <sup>(Also in [41](https://github.com/electron/electron/pull/52368), [42](https://github.com/electron/electron/pull/52371), [44](https://github.com/electron/electron/pull/52370))</sup> - Fixed `globalShortcut` not working on GNOME Wayland by enabling Chromium's `GlobalShortcutsPortalPreferredTrigger` feature by default on Linux. [#&#8203;52228](https://github.com/electron/electron/pull/52228) - Fixed a crash when showing Linux message boxes while another Linux UI implementation was active. [#&#8203;52410](https://github.com/electron/electron/pull/52410) <sup>(Also in [42](https://github.com/electron/electron/pull/52408), [44](https://github.com/electron/electron/pull/52409))</sup> - Fixed a window being marked hidden and background-throttled on macOS when covered by a transparent or click-through window. [#&#8203;52389](https://github.com/electron/electron/pull/52389) <sup>(Also in [44](https://github.com/electron/electron/pull/52391))</sup> - Fixed unnecessary autofill popup creation for fields without datalist suggestions, which could cause input latency on macOS. [#&#8203;52321](https://github.com/electron/electron/pull/52321) <sup>(Also in [41](https://github.com/electron/electron/pull/52320), [42](https://github.com/electron/electron/pull/52319), [44](https://github.com/electron/electron/pull/52318))</sup> - Fixed webContents.print() returning "Invalid printer settings" when print options are provided. [#&#8203;52381](https://github.com/electron/electron/pull/52381) <sup>(Also in [44](https://github.com/electron/electron/pull/52382))</sup> #### Other Changes - Updated Chromium to 150.0.7871.129. [#&#8203;52355](https://github.com/electron/electron/pull/52355) ### [`v43.1.1`](https://github.com/electron/electron/releases/tag/v43.1.1): electron v43.1.1 [Compare Source](https://github.com/electron/electron/compare/v43.1.0...v43.1.1) ### Release Notes for v43.1.1 #### Fixes - Fixed a browser-process crash (`ValidateIntegrityOrDie`) and spurious preload `ENOENT` errors when an app's `app.asar` is replaced on disk (e.g. by an updater or MDM software) while the app is running. [#&#8203;52293](https://github.com/electron/electron/pull/52293) <sup>(Also in [42](https://github.com/electron/electron/pull/52294), [44](https://github.com/electron/electron/pull/52292))</sup> #### Other Changes - Updated Chromium to 150.0.7871.114. [#&#8203;52297](https://github.com/electron/electron/pull/52297) ### [`v43.1.0`](https://github.com/electron/electron/releases/tag/v43.1.0): electron v43.1.0 [Compare Source](https://github.com/electron/electron/compare/v43.0.0...v43.1.0) ### Release Notes for v43.1.0 #### Fixes - Fixed crash triggered by replacing an open application menu. [#&#8203;52276](https://github.com/electron/electron/pull/52276) <sup>(Also in [41](https://github.com/electron/electron/pull/52278), [42](https://github.com/electron/electron/pull/52275), [44](https://github.com/electron/electron/pull/52277))</sup> #### Other Changes - Updated Chromium to 150.0.7871.47. [#&#8203;52235](https://github.com/electron/electron/pull/52235) - Updated Node.js to v24.18.0. [#&#8203;52106](https://github.com/electron/electron/pull/52106) ### [`v43.0.0`](https://github.com/electron/electron/releases/tag/v43.0.0): electron v43.0.0 [Compare Source](https://github.com/electron/electron/compare/v42.11.18...v43.0.0) ### Release Notes for v43.0.0 #### Stack Upgrades - Chromium `150.0.7871.46` - [New in 150](https://developer.chrome.com/blog/new-in-chrome-146/) - [New in 149](https://developer.chrome.com/blog/new-in-chrome-145/) - Node `v24.147.0` - [Node 24.17.0 blog post](https://nodejs.org/en/blog/release/v24.17.0/) - V8 `15.0` #### Breaking Changes - File downloads will open by default in the user's Downloads folder (or Home directory if Downloads doesn't exist). [#&#8203;49868](https://github.com/electron/electron/pull/49868) - Fix: If a `nativeImage` was passed an image with a color profile, its pixel values will now be normalized to SRGB. This ensures that two visually identical images after color space application will receive similar pixel values when converted to a `nativeImage`. [#&#8203;51565](https://github.com/electron/electron/pull/51565) - On Linux, frameless windows now have rounded corners by default, just like on macOS and Windows. Rounded corners can be disabled on all platforms by setting `roundedCorners: false` on the window. [#&#8203;52111](https://github.com/electron/electron/pull/52111) - Removed `showHiddenFiles` support from the `dialog` API on Linux. [#&#8203;51880](https://github.com/electron/electron/pull/51880) #### Features ##### Additions - Added Clone method to WebContents. [#&#8203;49959](https://github.com/electron/electron/pull/49959) - Added JS stack trace to crash reports on renderer OOM. [#&#8203;50043](https://github.com/electron/electron/pull/50043) <sup>(Also in [42](https://github.com/electron/electron/pull/50911))</sup> - Added Linux support for `app.getApplicationInfoForProtocol()`. [#&#8203;51297](https://github.com/electron/electron/pull/51297) <sup>(Also in [42](https://github.com/electron/electron/pull/51680))</sup> - Added Notification.remove(), removeAll(), and removeGroup() static methods for macOS. [#&#8203;51690](https://github.com/electron/electron/pull/51690) <sup>(Also in [42](https://github.com/electron/electron/pull/51691))</sup> - Added `Notification.getHistory()` for macOS, allowing developers to restore all delivered notifications still present in Notification Center. [#&#8203;50325](https://github.com/electron/electron/pull/50325) <sup>(Also in [42](https://github.com/electron/electron/pull/51123))</sup> - Added `accessibilityLabel` property to `MenuItem` constructor options and properties for defining screen-reader-friendly labels. [#&#8203;50240](https://github.com/electron/electron/pull/50240) - Added `allowExtensions` privilege to `protocol.registerSchemesAsPrivileged()` to enable Chrome extensions on custom protocols. [#&#8203;49951](https://github.com/electron/electron/pull/49951) <sup>(Also in [40](https://github.com/electron/electron/pull/50588), [41](https://github.com/electron/electron/pull/50529), [42](https://github.com/electron/electron/pull/50530))</sup> - Added `app.configureWebAuthn()` to enable the Touch ID platform authenticator for WebAuthn on macOS, and a `select-webauthn-account` session event for choosing between multiple discoverable credentials. [#&#8203;51255](https://github.com/electron/electron/pull/51255) <sup>(Also in [41](https://github.com/electron/electron/pull/51412), [42](https://github.com/electron/electron/pull/51411))</sup> - Added `globalShortcut.setSuspended()` and `globalShortcut.isSuspended()` methods to temporarily suspend and resume global shortcut handling. [#&#8203;50425](https://github.com/electron/electron/pull/50425) <sup>(Also in [42](https://github.com/electron/electron/pull/50777))</sup> - Added `id` and `groupId` options to the Notification constructor on macOS. `id` allows custom identifiers for notifications, and `groupId` visually groups notifications together in Notification Center. [#&#8203;50097](https://github.com/electron/electron/pull/50097) <sup>(Also in [42](https://github.com/electron/electron/pull/50304))</sup> - Added `nv12` OSR pixel format support for professional use. [#&#8203;49799](https://github.com/electron/electron/pull/49799) - Added `view.setBackgroundBlur`. [#&#8203;51076](https://github.com/electron/electron/pull/51076) - Added `webContents.copyVideoFrameAt(x, y)` and `webContents.saveVideoFrameAs(x, y)` methods. [#&#8203;48149](https://github.com/electron/electron/pull/48149) - Added id, groupId, and groupTitle support for Windows notifications. [#&#8203;50328](https://github.com/electron/electron/pull/50328) <sup>(Also in [42](https://github.com/electron/electron/pull/50895))</sup> - Added nativeTheme.shouldDifferentiateWithoutColor on macOS. [#&#8203;49912](https://github.com/electron/electron/pull/49912) <sup>(Also in [41](https://github.com/electron/electron/pull/50408), [42](https://github.com/electron/electron/pull/50409))</sup> - Added session support to net module requests from utility process. [#&#8203;51279](https://github.com/electron/electron/pull/51279) <sup>(Also in [42](https://github.com/electron/electron/pull/51698))</sup> - Added support for heap profiling via `contentTracing.enableHeapProfiling()`. [#&#8203;50826](https://github.com/electron/electron/pull/50826) <sup>(Also in [41](https://github.com/electron/electron/pull/51178), [42](https://github.com/electron/electron/pull/51162))</sup> - Added support for importing shared textures using the nv16 pixel format. [#&#8203;50728](https://github.com/electron/electron/pull/50728) <sup>(Also in [42](https://github.com/electron/electron/pull/51187))</sup> - Added support for the `urgency` option in Notifications on Windows. [#&#8203;50225](https://github.com/electron/electron/pull/50225) <sup>(Also in [41](https://github.com/electron/electron/pull/50382), [42](https://github.com/electron/electron/pull/50383))</sup> - Added support for using a proxy during yarn install. [#&#8203;50322](https://github.com/electron/electron/pull/50322) <sup>(Also in [39](https://github.com/electron/electron/pull/50349), [40](https://github.com/electron/electron/pull/50352), [41](https://github.com/electron/electron/pull/50350), [42](https://github.com/electron/electron/pull/50351))</sup> - Allowed the `--experimental-inspector-network-resource` Node.js flag to be passed through Electron. [#&#8203;49689](https://github.com/electron/electron/pull/49689) <sup>(Also in [41](https://github.com/electron/electron/pull/51377), [42](https://github.com/electron/electron/pull/51378))</sup> - Enabled ThinLTO on macOS builds. [#&#8203;51819](https://github.com/electron/electron/pull/51819) <sup>(Also in [42](https://github.com/electron/electron/pull/51823))</sup> - Enabled profile-guided optimization for V8 builtins in release builds, improving JavaScript builtin performance (Array, String, RegExp, etc.). [#&#8203;50416](https://github.com/electron/electron/pull/50416) <sup>(Also in [40](https://github.com/electron/electron/pull/50575), [41](https://github.com/electron/electron/pull/50574), [42](https://github.com/electron/electron/pull/50573))</sup> - Feat: SF Symbol customisation. [#&#8203;48911](https://github.com/electron/electron/pull/48911) - Fixed contentTracing module to capture Node.js trace categories. [#&#8203;50591](https://github.com/electron/electron/pull/50591) ##### Improvements - Improved app startup performance — the main process now boots from an embedded Node.js startup snapshot, framework bundles and preload scripts are cached as compiled V8 bytecode, and sandboxed renderer startup data is pushed ahead of navigation instead of fetched via blocking IPC. Preload stack traces now show the correct file path and line number. [#&#8203;51792](https://github.com/electron/electron/pull/51792) <sup>(Also in [42](https://github.com/electron/electron/pull/51831))</sup> - Improved performance of Linux and Windows release builds by enabling ThinLTO link-time optimization for the main Electron binary. [#&#8203;51820](https://github.com/electron/electron/pull/51820) <sup>(Also in [42](https://github.com/electron/electron/pull/51821))</sup> - Improved performance of `app.getApplicationNameForProtocol()` on Linux. [#&#8203;51251](https://github.com/electron/electron/pull/51251) <sup>(Also in [42](https://github.com/electron/electron/pull/51628))</sup> - Improved performance of `app.isDefaultProtocolClient()` and `app.setAsDefaultProtocolClient()` on Linux. [#&#8203;51316](https://github.com/electron/electron/pull/51316) <sup>(Also in [42](https://github.com/electron/electron/pull/51627))</sup> - Improved performance of `webRequest` header conversions and several other gin converter hot paths. [#&#8203;51608](https://github.com/electron/electron/pull/51608) <sup>(Also in [42](https://github.com/electron/electron/pull/51607))</sup> - Improved performance of native event emission, IPC dispatch, and option-dictionary parsing. [#&#8203;51615](https://github.com/electron/electron/pull/51615) <sup>(Also in [41](https://github.com/electron/electron/pull/51613), [42](https://github.com/electron/electron/pull/51614))</sup> - Improved runtime performance. [#&#8203;51829](https://github.com/electron/electron/pull/51829) <sup>(Also in [42](https://github.com/electron/electron/pull/51828))</sup> #### Fixes - Fixed `desktopCapturer.getSources()` hanging on macOS. [#&#8203;51128](https://github.com/electron/electron/pull/51128) - Fixed an issue on Linux where the system theme color appeared at the top edge of frameless windows. [#&#8203;52179](https://github.com/electron/electron/pull/52179) - Fixed an issue where frameless windows windows could shrink after applying constraints or toggling resizability on Windows. [#&#8203;51954](https://github.com/electron/electron/pull/51954) - Fixed an issue with the main process where `process.exit()` with no argument did not exit with `process.exitCode` - Fixed handling of string value arguments to `process.exit()` in the main process. [#&#8203;51428](https://github.com/electron/electron/pull/51428) - Fixed desktopCapturer thumbnail generation and premature portal timeout on Linux with Wayland. [#&#8203;51783](https://github.com/electron/electron/pull/51783) - Fixed running under tsx import transpilation. [#&#8203;51978](https://github.com/electron/electron/pull/51978) - Fixed runtime toggling of shadows for frameless windows on Linux. - Added support for system-configured button layouts in Window Controls Overlay on Linux. [#&#8203;51658](https://github.com/electron/electron/pull/51658) - Fixed titleBarOverlay.color set to `rgba(0,0,0,0)` failing back to default frame color. [#&#8203;52010](https://github.com/electron/electron/pull/52010) - On Linux, apps should now display their names and icons in audio managers instead of all being labeled as Chromium. [#&#8203;49270](https://github.com/electron/electron/pull/49270) ##### Also in earlier versions... - Added additional ASAR support to additional `fs` copy methods. [#&#8203;50226](https://github.com/electron/electron/pull/50226) <sup>(Also in [39](https://github.com/electron/electron/pull/50284), [40](https://github.com/electron/electron/pull/50287), [41](https://github.com/electron/electron/pull/50286), [42](https://github.com/electron/electron/pull/50285))</sup> - Added crash keys to diagnose power monitor shutdown crash on arm64 windows. [#&#8203;51198](https://github.com/electron/electron/pull/51198) <sup>(Also in [42](https://github.com/electron/electron/pull/51205))</sup> - Added missing `metadata` fields to `contentTracing` traces. [#&#8203;50892](https://github.com/electron/electron/pull/50892) <sup>(Also in [41](https://github.com/electron/electron/pull/51021), [42](https://github.com/electron/electron/pull/51007))</sup> - BrowserWindow now enforces min/max size constraints on window creation, even if they conflict with the requested width and height. [#&#8203;49906](https://github.com/electron/electron/pull/49906) <sup>(Also in [41](https://github.com/electron/electron/pull/50753), [42](https://github.com/electron/electron/pull/50754))</sup> - Changed the `kResizeThreshold` to trigger the resize on corners. [#&#8203;50637](https://github.com/electron/electron/pull/50637) <sup>(Also in [41](https://github.com/electron/electron/pull/51002), [42](https://github.com/electron/electron/pull/51001))</sup> - Ensured cross-origin `fetch()` and XHR are blocked for custom protocols registered with `supportFetchAPI: true` unless `corsEnabled: true` is also set; cross-origin `mode: 'no-cors'` requests now receive an opaque response. [#&#8203;51152](https://github.com/electron/electron/pull/51152) <sup>(Also in [39](https://github.com/electron/electron/pull/51272), [40](https://github.com/electron/electron/pull/51271), [41](https://github.com/electron/electron/pull/51270), [42](https://github.com/electron/electron/pull/51269))</sup> - Fixed DesktopCapturer crash on macOS. [#&#8203;50960](https://github.com/electron/electron/pull/50960) <sup>(Also in [42](https://github.com/electron/electron/pull/51506))</sup> - Fixed DevTools Network panel missing most requests after navigating when webContents.debugger is attached. [#&#8203;51964](https://github.com/electron/electron/pull/51964) <sup>(Also in [42](https://github.com/electron/electron/pull/51965))</sup> - Fixed Electron child process titles on Linux so they show their types (render, gpu, etc.) and complete command-line arguments and flags in `ps aux`. [#&#8203;50509](https://github.com/electron/electron/pull/50509) <sup>(Also in [42](https://github.com/electron/electron/pull/50533))</sup> - Fixed Windows edge case in `NativeWindowViews::MoveBehindTaskBarIfNeeded()`. [#&#8203;52021](https://github.com/electron/electron/pull/52021) <sup>(Also in [41](https://github.com/electron/electron/pull/52023), [42](https://github.com/electron/electron/pull/52022))</sup> - Fixed `ELECTRON_INSTALL_PLATFORM` being ignored when resolving the Electron executable path during postinstall, which caused `path.txt` to be written for the host platform instead of the requested target and made `isInstalled()` always re-download on subsequent installs. [#&#8203;51029](https://github.com/electron/electron/pull/51029) <sup>(Also in [42](https://github.com/electron/electron/pull/51370))</sup> - Fixed `ProtocolResponse.url` requests being made through the default session instead of the session the protocol handler was registered on when `ProtocolResponse.session` was not set. [#&#8203;52131](https://github.com/electron/electron/pull/52131) <sup>(Also in [40](https://github.com/electron/electron/pull/52135), [41](https://github.com/electron/electron/pull/52134), [42](https://github.com/electron/electron/pull/52132))</sup> - Fixed `app.getLoginItemSettings()` returning `undefined` for `executableWillLaunchAtLogin` on macOS; the property is now always a boolean. [#&#8203;51416](https://github.com/electron/electron/pull/51416) <sup>(Also in [40](https://github.com/electron/electron/pull/51509), [41](https://github.com/electron/electron/pull/51508), [42](https://github.com/electron/electron/pull/51507))</sup> - Fixed `fs.stat` on files inside asar archives returning `undefined` for `blksize` and `blocks` instead of numeric values. [#&#8203;50825](https://github.com/electron/electron/pull/50825) <sup>(Also in [40](https://github.com/electron/electron/pull/50875), [41](https://github.com/electron/electron/pull/50876), [42](https://github.com/electron/electron/pull/50877))</sup> - Fixed `webContents.printToPDF` rejecting on all subsequent calls after a prior call was rejected with an invalid `pageRanges` value. [#&#8203;51174](https://github.com/electron/electron/pull/51174) <sup>(Also in [40](https://github.com/electron/electron/pull/51220), [41](https://github.com/electron/electron/pull/51221), [42](https://github.com/electron/electron/pull/51222))</sup> - Fixed a crash when providing invalid HTTP header names or values in the `webRequest.onBeforeSendHeaders()` callback. [#&#8203;51340](https://github.com/electron/electron/pull/51340) <sup>(Also in [40](https://github.com/electron/electron/pull/51364), [41](https://github.com/electron/electron/pull/51365), [42](https://github.com/electron/electron/pull/51366))</sup> - Fixed a browser process crash when calling `webContents.reload()` or navigating synchronously from the `render-process-gone` event; the event is now emitted after the renderer's teardown notification has completed. [#&#8203;51918](https://github.com/electron/electron/pull/51918) <sup>(Also in [41](https://github.com/electron/electron/pull/51917), [42](https://github.com/electron/electron/pull/51916))</sup> - Fixed a bug on Linux where a 1px line appeared at the top of frameless windows if the window and web contents had different background colors. [#&#8203;51999](https://github.com/electron/electron/pull/51999) <sup>(Also in [41](https://github.com/electron/electron/pull/52004), [42](https://github.com/electron/electron/pull/52005))</sup> - Fixed a bug where Windows notification icons could fail to save because their temporary filenames contained invalid characters. [#&#8203;50454](https://github.com/electron/electron/pull/50454) <sup>(Also in [40](https://github.com/electron/electron/pull/50484), [41](https://github.com/electron/electron/pull/50483), [42](https://github.com/electron/electron/pull/50482))</sup> - Fixed a bug where errors would occur when using the Chrome DevTools Fetch API. [#&#8203;50744](https://github.com/electron/electron/pull/50744) <sup>(Also in [41](https://github.com/electron/electron/pull/51371), [42](https://github.com/electron/electron/pull/51372))</sup> - Fixed a crash in `clipboard.readImage()` when the clipboard contains malformed image data. [#&#8203;50475](https://github.com/electron/electron/pull/50475) <sup>(Also in [39](https://github.com/electron/electron/pull/50493), [40](https://github.com/electron/electron/pull/50491), [41](https://github.com/electron/electron/pull/50492), [42](https://github.com/electron/electron/pull/50494))</sup> - Fixed a crash in the macOS Touch ID WebAuthn prompt caused by a missing string resource, and added `touchID.promptReason` to `app.configureWebAuthn()` to customize the prompt text. [#&#8203;51595](https://github.com/electron/electron/pull/51595) <sup>(Also in [41](https://github.com/electron/electron/pull/51604), [42](https://github.com/electron/electron/pull/51594))</sup> - Fixed a crash on MacOS when a user clicked into a title bar or top view. [#&#8203;51606](https://github.com/electron/electron/pull/51606) <sup>(Also in [42](https://github.com/electron/electron/pull/51605))</sup> - Fixed a crash that could occur when an autofill suggestion popup was shown while a window was closing. [#&#8203;51302](https://github.com/electron/electron/pull/51302) <sup>(Also in [41](https://github.com/electron/electron/pull/51321), [42](https://github.com/electron/electron/pull/51317))</sup> - Fixed a crash when calling `contentTracing.getTraceBufferUsage()` while a trace session is active. [#&#8203;50556](https://github.com/electron/electron/pull/50556) <sup>(Also in [39](https://github.com/electron/electron/pull/50595), [40](https://github.com/electron/electron/pull/50593), [41](https://github.com/electron/electron/pull/50594), [42](https://github.com/electron/electron/pull/50592))</sup> - Fixed a crash when calling an offscreen shared texture's `release()` after the texture object was garbage collected. [#&#8203;50473](https://github.com/electron/electron/pull/50473) <sup>(Also in [39](https://github.com/electron/electron/pull/50499), [40](https://github.com/electron/electron/pull/50500), [41](https://github.com/electron/electron/pull/50501), [42](https://github.com/electron/electron/pull/50502))</sup> - Fixed a crash when rendering PDFs when Site Isolation is disabled. [#&#8203;50689](https://github.com/electron/electron/pull/50689) <sup>(Also in [41](https://github.com/electron/electron/pull/50845), [42](https://github.com/electron/electron/pull/50846))</sup> - Fixed a memory leak where Menu items were not cleaned up after Menu.setApplicationMenu was called repeatedly. [#&#8203;50806](https://github.com/electron/electron/pull/50806) <sup>(Also in [40](https://github.com/electron/electron/pull/50831), [41](https://github.com/electron/electron/pull/50830), [42](https://github.com/electron/electron/pull/50832))</sup> - Fixed a potential crash when using `webContents.print()`. [#&#8203;50843](https://github.com/electron/electron/pull/50843) <sup>(Also in [41](https://github.com/electron/electron/pull/51728), [42](https://github.com/electron/electron/pull/50853))</sup> - Fixed a potential race condition crash when closing DevTools. [#&#8203;51420](https://github.com/electron/electron/pull/51420) <sup>(Also in [41](https://github.com/electron/electron/pull/51474), [42](https://github.com/electron/electron/pull/51473))</sup> - Fixed a regression on Linux where transparent frameless windows would have visible borders. Also fixed a longstanding issue where transparent windows on Linux could show smeared and glitched content as windows moved around. [#&#8203;50541](https://github.com/electron/electron/pull/50541) <sup>(Also in [41](https://github.com/electron/electron/pull/50605), [42](https://github.com/electron/electron/pull/51430))</sup> - Fixed a regression on Windows where frameless windows changed their size after calling `setResizable`. [#&#8203;51252](https://github.com/electron/electron/pull/51252) <sup>(Also in [41](https://github.com/electron/electron/pull/51427), [42](https://github.com/electron/electron/pull/51296))</sup> - Fixed a regression where frameless fullscreen windows had white borders on Windows. [#&#8203;51287](https://github.com/electron/electron/pull/51287) <sup>(Also in [41](https://github.com/electron/electron/pull/51332), [42](https://github.com/electron/electron/pull/51331))</sup> - Fixed a renderer crash when a page uses the `<geolocation>` HTML element. [#&#8203;51346](https://github.com/electron/electron/pull/51346) <sup>(Also in [41](https://github.com/electron/electron/pull/51373), [42](https://github.com/electron/electron/pull/51374))</sup> - Fixed a renderer crash when calling `WebAssembly.compileStreaming()` or `WebAssembly.instantiateStreaming()` with `nodeIntegration` enabled. [#&#8203;51955](https://github.com/electron/electron/pull/51955) <sup>(Also in [42](https://github.com/electron/electron/pull/51956))</sup> - Fixed absent 'Electron Isolated Context' in the execution context dropdown in Dev Tools. [#&#8203;51062](https://github.com/electron/electron/pull/51062) <sup>(Also in [41](https://github.com/electron/electron/pull/51078), [42](https://github.com/electron/electron/pull/51079))</sup> - Fixed an accessibility issue where the AXMenuOpened event was not fired on menu creation. [#&#8203;50377](https://github.com/electron/electron/pull/50377) <sup>(Also in [40](https://github.com/electron/electron/pull/50505), [41](https://github.com/electron/electron/pull/50506), [42](https://github.com/electron/electron/pull/50504))</sup> - Fixed an intermittent `Invoke in DisallowJavascriptExecutionScope` crash on application quit when a `WebContents` (or other JS-emitting native object) is garbage-collected during shutdown. [#&#8203;50688](https://github.com/electron/electron/pull/50688) <sup>(Also in [40](https://github.com/electron/electron/pull/50693), [41](https://github.com/electron/electron/pull/50694), [42](https://github.com/electron/electron/pull/50695))</sup> - Fixed an issue on Linux and Windows where frameless windows would shrink when calling `win.center()`. Additionally, fixed an issue where frameless windows would appear slightly off-center on Windows. [#&#8203;51920](https://github.com/electron/electron/pull/51920) <sup>(Also in [41](https://github.com/electron/electron/pull/51919), [42](https://github.com/electron/electron/pull/51921))</sup> - Fixed an issue on Windows where a transient `UnhookWindowsHookEx` failure in `setIgnoreMouseEvents(true, { forward: true })` teardown could cause duplicate low-level mouse hooks to be installed on the next activation. [#&#8203;51098](https://github.com/electron/electron/pull/51098) <sup>(Also in [41](https://github.com/electron/electron/pull/51419), [42](https://github.com/electron/electron/pull/51418))</sup> - Fixed an issue on macOS where `show`/`hide` events and `WebContents` visibility state could be reported incorrectly when multiple `WebContentsView`s were attached to a window. [#&#8203;50579](https://github.com/electron/electron/pull/50579) <sup>(Also in [40](https://github.com/electron/electron/pull/50713), [41](https://github.com/electron/electron/pull/50715), [42](https://github.com/electron/electron/pull/50712))</sup> - Fixed an issue where DevTools would re-attach to the window when opened after previously being detached. [#&#8203;50807](https://github.com/electron/electron/pull/50807) <sup>(Also in [39](https://github.com/electron/electron/pull/50818), [40](https://github.com/electron/electron/pull/50817), [41](https://github.com/electron/electron/pull/50816), [42](https://github.com/electron/electron/pull/50815))</sup> - Fixed an issue where `app-region: drag` inside a hidden `WebContentsView` would still drag the parent window on Windows. [#&#8203;51200](https://github.com/electron/electron/pull/51200) <sup>(Also in [40](https://github.com/electron/electron/pull/51247), [41](https://github.com/electron/electron/pull/51246), [42](https://github.com/electron/electron/pull/51245))</sup> - Fixed an issue where `nodeIntegrationInWorker` didn't always work in AudioWorklet. [#&#8203;47244](https://github.com/electron/electron/pull/47244) <sup>(Also in [40](https://github.com/electron/electron/pull/51004), [41](https://github.com/electron/electron/pull/51006), [42](https://github.com/electron/electron/pull/51005))</sup> - Fixed an issue where `process` and other Node globals were undefined in ESM preload scripts when `contextIsolation` was disabled. [#&#8203;51723](https://github.com/electron/electron/pull/51723) <sup>(Also in [42](https://github.com/electron/electron/pull/51726))</sup> - Fixed an issue where `setSimpleFullScreen` on macOS would exit when web content called `requestFullscreen()`. [#&#8203;50874](https://github.com/electron/electron/pull/50874) <sup>(Also in [40](https://github.com/electron/electron/pull/50986), [41](https://github.com/electron/electron/pull/50985), [42](https://github.com/electron/electron/pull/50987))</sup> - Fixed an issue where an Electron auto-update job would occasionally fail if a macOS system update is pending. [#&#8203;51070](https://github.com/electron/electron/pull/51070) <sup>(Also in [42](https://github.com/electron/electron/pull/51111))</sup> - Fixed an issue where an Electron macOS update would not be applied if another app was previously blocking the macOS system update loop. [#&#8203;51191](https://github.com/electron/electron/pull/51191) <sup>(Also in [40](https://github.com/electron/electron/pull/51211), [41](https://github.com/electron/electron/pull/51210), [42](https://github.com/electron/electron/pull/51212))</sup> - Fixed an issue where an app shortcut may lose its icon after auto-updating on Windows. [#&#8203;50471](https://github.com/electron/electron/pull/50471) <sup>(Also in [40](https://github.com/electron/electron/pull/50518), [41](https://github.com/electron/electron/pull/50519), [42](https://github.com/electron/electron/pull/50517))</sup> - Fixed an issue where calling `contentTracing` APIs before `app.whenReady()` would crash the application. [#&#8203;50920](https://github.com/electron/electron/pull/50920) <sup>(Also in [41](https://github.com/electron/electron/pull/51352), [42](https://github.com/electron/electron/pull/51353))</sup> - Fixed an issue where clicking the maximize button could progressively shrink the window in some Wayland environments. [#&#8203;52039](https://github.com/electron/electron/pull/52039) <sup>(Also in [42](https://github.com/electron/electron/pull/52045))</sup> - Fixed an issue where closing devtools immediately after focus caused a crash. [#&#8203;47435](https://github.com/electron/electron/pull/47435) <sup>(Also in [40](https://github.com/electron/electron/pull/51702), [41](https://github.com/electron/electron/pull/51037), [42](https://github.com/electron/electron/pull/51036))</sup> - Fixed an issue where concurrent `getFileHandle` requests on the same path could stall indefinitely. [#&#8203;50597](https://github.com/electron/electron/pull/50597) <sup>(Also in [40](https://github.com/electron/electron/pull/50672), [41](https://github.com/electron/electron/pull/50670), [42](https://github.com/electron/electron/pull/50671))</sup> - Fixed an issue where custom options in `webContents.print()` did not prefill the print dialog on macOS. [#&#8203;50600](https://github.com/electron/electron/pull/50600) <sup>(Also in [40](https://github.com/electron/electron/pull/51692), [41](https://github.com/electron/electron/pull/51682), [42](https://github.com/electron/electron/pull/50643))</sup> - Fixed an issue where importing `electron` via ESM would touch the OS keychain on app-ready even when `safeStorage` was never used. `safeStorage.isAsyncEncryptionAvailable()` now returns a Promise as documented. [#&#8203;50419](https://github.com/electron/electron/pull/50419) <sup>(Also in [42](https://github.com/electron/electron/pull/51924))</sup> - Fixed an issue where margins did not look as expected when printing in silent mode. [#&#8203;50615](https://github.com/electron/electron/pull/50615) <sup>(Also in [41](https://github.com/electron/electron/pull/50652), [42](https://github.com/electron/electron/pull/50653))</sup> - Fixed an issue where saving edited PDF files would fail with a cross-origin SecurityError. [#&#8203;51042](https://github.com/electron/electron/pull/51042) <sup>(Also in [41](https://github.com/electron/electron/pull/51073), [42](https://github.com/electron/electron/pull/51072))</sup> - Fixed an issue where some DevTools functionality didn't work as expected. [#&#8203;50241](https://github.com/electron/electron/pull/50241) <sup>(Also in [40](https://github.com/electron/electron/pull/50275), [41](https://github.com/electron/electron/pull/50276), [42](https://github.com/electron/electron/pull/50274))</sup> - Fixed an issue where some toast notification properties didn't work as expected in WinRT. [#&#8203;51286](https://github.com/electron/electron/pull/51286) <sup>(Also in [41](https://github.com/electron/electron/pull/51397), [42](https://github.com/electron/electron/pull/51330))</sup> - Fixed an issue where the "Toggle Developer Tools" menu item failed to function correctly with BaseWindow. [#&#8203;51901](https://github.com/electron/electron/pull/51901) <sup>(Also in [41](https://github.com/electron/electron/pull/51902), [42](https://github.com/electron/electron/pull/51903))</sup> - Fixed an issue where the Squirrel.Mac installer could resolve the target bundle path to different locations at different stages of an install. [#&#8203;50745](https://github.com/electron/electron/pull/50745) <sup>(Also in [39](https://github.com/electron/electron/pull/50766), [42](https://github.com/electron/electron/pull/50765))</sup> - Fixed an issue where the `webContents.print()` callback may not fire correctly in some cases. [#&#8203;50431](https://github.com/electron/electron/pull/50431) <sup>(Also in [41](https://github.com/electron/electron/pull/50604), [42](https://github.com/electron/electron/pull/50603))</sup> - Fixed an issue where webContents.print() would ignore pageSize / mediaSize when silent was true. [#&#8203;50808](https://github.com/electron/electron/pull/50808) <sup>(Also in [41](https://github.com/electron/electron/pull/50856), [42](https://github.com/electron/electron/pull/50855))</sup> - Fixed aspect ratio min/max size clamping to correctly account for extraSize on macOS. [#&#8203;50794](https://github.com/electron/electron/pull/50794) <sup>(Also in [40](https://github.com/electron/electron/pull/50834), [41](https://github.com/electron/electron/pull/50835), [42](https://github.com/electron/electron/pull/50836))</sup> - Fixed bug that could occasionally cause browserWindow's `always-on-top-changed` even to fire with incorrect values. [#&#8203;51110](https://github.com/electron/electron/pull/51110) <sup>(Also in [40](https://github.com/electron/electron/pull/51134), [41](https://github.com/electron/electron/pull/51135), [42](https://github.com/electron/electron/pull/51133))</sup> - Fixed buggy behavior where Backspace would accept macOS text replacements inside `contenteditable` elements. [#&#8203;51289](https://github.com/electron/electron/pull/51289) <sup>(Also in [40](https://github.com/electron/electron/pull/51345), [41](https://github.com/electron/electron/pull/51343), [42](https://github.com/electron/electron/pull/51344))</sup> - Fixed build failure when building with `enable_pdf` disabled. [#&#8203;51223](https://github.com/electron/electron/pull/51223) <sup>(Also in [41](https://github.com/electron/electron/pull/50845), [42](https://github.com/electron/electron/pull/50846))</sup> - Fixed certain DevTools extension panels not showing without a page reload. [#&#8203;50611](https://github.com/electron/electron/pull/50611) <sup>(Also in [42](https://github.com/electron/electron/pull/50640))</sup> - Fixed crash for Notification close. [#&#8203;51655](https://github.com/electron/electron/pull/51655) <sup>(Also in [41](https://github.com/electron/electron/pull/51656), [42](https://github.com/electron/electron/pull/51657))</sup> - Fixed crash when `app.setPath('sessionData')` was called with a non-existent directory. [#&#8203;50891](https://github.com/electron/electron/pull/50891) <sup>(Also in [41](https://github.com/electron/electron/pull/50958), [42](https://github.com/electron/electron/pull/50908))</sup> - Fixed crash when handling JavaScript dialogs from windows opened with invalid or empty URLs. [#&#8203;50062](https://github.com/electron/electron/pull/50062) <sup>(Also in [39](https://github.com/electron/electron/pull/50400), [40](https://github.com/electron/electron/pull/50401), [41](https://github.com/electron/electron/pull/50399), [42](https://github.com/electron/electron/pull/50398))</sup> - Fixed cross-origin isolation failing for non-file origins. [#&#8203;50789](https://github.com/electron/electron/pull/50789) <sup>(Also in [41](https://github.com/electron/electron/pull/51403), [42](https://github.com/electron/electron/pull/51404))</sup> - Fixed frameless transparent windows on Windows losing their transparency after `setResizable(false)` followed by `setResizable(true)`. [#&#8203;51175](https://github.com/electron/electron/pull/51175) <sup>(Also in [41](https://github.com/electron/electron/pull/51217), [42](https://github.com/electron/electron/pull/51218))</sup> - Fixed improper focus tracking in BaseWindow on MacOS. [#&#8203;49460](https://github.com/electron/electron/pull/49460) <sup>(Also in [39](https://github.com/electron/electron/pull/50338), [40](https://github.com/electron/electron/pull/50337), [41](https://github.com/electron/electron/pull/50340), [42](https://github.com/electron/electron/pull/50339))</sup> - Fixed logic bug that rendered certain window types un-resizable on MAS builds. [#&#8203;50096](https://github.com/electron/electron/pull/50096) <sup>(Also in [40](https://github.com/electron/electron/pull/50355), [41](https://github.com/electron/electron/pull/50354), [42](https://github.com/electron/electron/pull/50356))</sup> - Fixed native addon compilation failure with undefined msvc intrinsic from v8 headers. [#&#8203;51705](https://github.com/electron/electron/pull/51705) <sup>(Also in [42](https://github.com/electron/electron/pull/51706))</sup> - Fixed native notification clicks not focusing the application window on Wayland. [#&#8203;50568](https://github.com/electron/electron/pull/50568) <sup>(Also in [42](https://github.com/electron/electron/pull/50669))</sup> - Fixed printing on Linux failing with "Invalid printer settings". [#&#8203;50430](https://github.com/electron/electron/pull/50430) <sup>(Also in [41](https://github.com/electron/electron/pull/50486), [42](https://github.com/electron/electron/pull/50487))</sup> - Fixed remote debugging via `--remote-debugging-port` not working when inspecting from Chrome's `chrome://inspect` page. The DevTools page would appear empty due to the frontend URL pointing to a CDN that returned 404 for Electron's Chromium builds. [#&#8203;51236](https://github.com/electron/electron/pull/51236) <sup>(Also in [41](https://github.com/electron/electron/pull/51413))</sup> - Fixed resize hit targets for frameless windows on Windows. Resize targets now start at the side and bottom edges of the window and extend outward when `frame: false`, matching the behavior for windows with frames. [#&#8203;50706](https://github.com/electron/electron/pull/50706) <sup>(Also in [41](https://github.com/electron/electron/pull/50863), [42](https://github.com/electron/electron/pull/50864))</sup> - Fixed sandboxed preload scripts running a stale cached version after the script was modified without its file size changing. [#&#8203;51932](https://github.com/electron/electron/pull/51932) <sup>(Also in [42](https://github.com/electron/electron/pull/51933))</sup> - Fixed shutdown crash on windows when power monitor notifications were subscribed. [#&#8203;50878](https://github.com/electron/electron/pull/50878) <sup>(Also in [42](https://github.com/electron/electron/pull/50893))</sup> - Fixed test scaffolding bug when running tests locally on Linux. [#&#8203;51129](https://github.com/electron/electron/pull/51129) <sup>(Also in [40](https://github.com/electron/electron/pull/51151), [41](https://github.com/electron/electron/pull/51150), [42](https://github.com/electron/electron/pull/51149))</sup> - Fixed the appearance of maximized windows on GNOME in Wayland, especially when non-default GTK themes like Breeze are set. [#&#8203;50550](https://github.com/electron/electron/pull/50550) <sup>(Also in [41](https://github.com/electron/electron/pull/50645), [42](https://github.com/electron/electron/pull/50644))</sup> - Fixed the context menu in a detached DevTools window focusing the inspected page's window instead of the DevTools window. [#&#8203;51863](https://github.com/electron/electron/pull/51863) <sup>(Also in [42](https://github.com/electron/electron/pull/51864))</sup> - Fixed the crash keys being lost and the crash reporter hanging on macOS when many dynamic crash keys were registered. [#&#8203;50795](https://github.com/electron/electron/pull/50795) <sup>(Also in [40](https://github.com/electron/electron/pull/50838), [41](https://github.com/electron/electron/pull/50837), [42](https://github.com/electron/electron/pull/50839))</sup> - Fixed user resizing of transparent windows on win32 platform. [#&#8203;49428](https://github.com/electron/electron/pull/49428) <sup>(Also in [39](https://github.com/electron/electron/pull/50300), [40](https://github.com/electron/electron/pull/50301), [41](https://github.com/electron/electron/pull/50298), [42](https://github.com/electron/electron/pull/50299))</sup> - Fixed utilityProcess exit event reporting incorrect exit codes on Windows when the exit code has the high bit. [#&#8203;50256](https://github.com/electron/electron/pull/50256) <sup>(Also in [40](https://github.com/electron/electron/pull/50387), [41](https://github.com/electron/electron/pull/50386), [42](https://github.com/electron/electron/pull/50385))</sup> - Fixed window freeze when failing to enter/exit fullscreen on macOS. [#&#8203;49421](https://github.com/electron/electron/pull/49421) <sup>(Also in [39](https://github.com/electron/electron/pull/50341), [40](https://github.com/electron/electron/pull/50344), [41](https://github.com/electron/electron/pull/50343), [42](https://github.com/electron/electron/pull/50342))</sup> - Improved external resize band positioning and scaling for frameless windows on Windows. [#&#8203;51552](https://github.com/electron/electron/pull/51552) <sup>(Also in [41](https://github.com/electron/electron/pull/51560), [42](https://github.com/electron/electron/pull/51561))</sup> - Improved the way Electron determines the default XDG App ID and WM_CLASS on Linux for better platform compatibility if `desktopName` is not provided in `package.json`. [#&#8203;51424](https://github.com/electron/electron/pull/51424) <sup>(Also in [41](https://github.com/electron/electron/pull/51480), [42](https://github.com/electron/electron/pull/51479))</sup> - Made "reload" menu items work with `BaseWindow`. [#&#8203;52119](https://github.com/electron/electron/pull/52119) <sup>(Also in [41](https://github.com/electron/electron/pull/52118), [42](https://github.com/electron/electron/pull/52117))</sup> - Moved Electron-specific help menu links to the default app only; unpackaged apps will no longer see these items in their default menu. [#&#8203;50629](https://github.com/electron/electron/pull/50629) <sup>(Also in [40](https://github.com/electron/electron/pull/50860), [41](https://github.com/electron/electron/pull/50859), [42](https://github.com/electron/electron/pull/50861))</sup> - Removed "representedObject is not a WeakPtrToElectronMenuModelAsNSObject" logging when interacting with macOS menus. [#&#8203;50608](https://github.com/electron/electron/pull/50608) <sup>(Also in [41](https://github.com/electron/electron/pull/50613), [42](https://github.com/electron/electron/pull/50614))</sup> - Removed support for the ELECTRON_SKIP_BINARY_DOWNLOAD environment variable. [#&#8203;50406](https://github.com/electron/electron/pull/50406) <sup>(Also in [42](https://github.com/electron/electron/pull/50459))</sup> - This PR fixes a regression in silent printing where custom DPI values from webContents.print were not honored, causing incorrect output scaling in real-world print flows. [#&#8203;51046](https://github.com/electron/electron/pull/51046) <sup>(Also in [41](https://github.com/electron/electron/pull/51355), [42](https://github.com/electron/electron/pull/51354))</sup> - Windows opened from links inside a sandboxed iframe now inherit the iframe's sandbox restrictions unless `allow-popups-to-escape-sandbox` is set. [#&#8203;52189](https://github.com/electron/electron/pull/52189) <sup>(Also in [42](https://github.com/electron/electron/pull/52190))</sup> #### Other Changes - Backported fixes from upstream Chromium. [#&#8203;52116](https://github.com/electron/electron/pull/52116) - Backported fixes from upstream Chromium. [#&#8203;52168](https://github.com/electron/electron/pull/52168) - Fixed `gn gen` failing to resolve `electron_version` when building from a `git worktree` checkout. [#&#8203;51146](https://github.com/electron/electron/pull/51146) <sup>(Also in [39](https://github.com/electron/electron/pull/51163), [40](https://github.com/electron/electron/pull/51164), [41](https://github.com/electron/electron/pull/51165), [42](https://github.com/electron/electron/pull/51166))</sup> - Fixed silent data truncation in `Buffer`/`TextEncoder` APIs and a crash in `fs.writeFileSync` with non-ASCII strings on Apple Silicon. [#&#8203;51850](https://github.com/electron/electron/pull/51850) <sup>(Also in [41](https://github.com/electron/electron/pull/51851), [42](https://github.com/electron/electron/pull/51849))</sup> #### Documentation - Documentation change - [#&#8203;49379](https://github.com/electron/electron/pull/49379) - [#&#8203;50364](https://github.com/electron/electron/pull/50364) - [#&#8203;51689](https://github.com/electron/electron/pull/51689) - [#&#8203;51926](https://github.com/electron/electron/pull/51926) #### Notices ##### Support for 32-bit platforms ending Electron 43.x.y will be the last version series of Electron to ship with prebuilt binaries for 32-bit platforms: Windows x86 (`win32-ia32`) and Linux ARM (`linux-armv7l`). Once the v43 series reaches end of life in January 2027, these 32-bit platforms will no longer be supported. ##### End of Support for 40.x.y Electron 40.x.y has reached end-of-support as per the project's [support policy](https://www.electronjs.org/docs/latest/tutorial/electron-timelines#version-support-policy). Developers and applications are encouraged to upgrade to a newer version of Electron. ### [`v42.11.18`](https://github.com/electron/electron/releases/tag/v42.11.18): electron v42.11.18 [Compare Source](https://github.com/electron/electron/compare/v42.11.17...v42.11.18) ### Release Notes for v42.11.18 > \[!WARNING] > Electron 42.x.y has reached end-of-support as per the project's [support policy](https://www.electronjs.org/docs/latest/tutorial/electron-timelines#version-support-policy). Developers and applications are encouraged to upgrade to a newer version of Electron. #### Other Changes - Backported fixes from upstream ANGLE, Chromium, PDFium, Skia and V8. [#&#8203;55148](https://github.com/electron/electron/pull/55148) ### [`v42.11.17`](https://github.com/electron/electron/releases/tag/v42.11.17): electron v42.11.17 [Compare Source](https://github.com/electron/electron/compare/v42.11.16...v42.11.17) ### Release Notes for v42.11.17 > \[!WARNING] > Electron 42.x.y has reached end-of-support as per the project's [support policy](https://www.electronjs.org/docs/latest/tutorial/electron-timelines#version-support-policy). Developers and applications are encouraged to upgrade to a newer version of Electron. ### [`v42.11.16`](https://github.com/electron/electron/releases/tag/v42.11.16): electron v42.11.16 [Compare Source](https://github.com/electron/electron/compare/v42.11.15...v42.11.16) ### Release Notes for v42.11.16 > \[!NOTE] > This release contains the fix for <https://github.com/electron/electron/security/advisories/GHSA-jr5w-w6x2-84p9>, the mitigation for compromised eMudhra intermediate certificates #### Fixes - Fixed link-opened windows not using the opener's session and `webPreferences`. [#&#8203;55050](https://github.com/electron/electron/pull/55050) <sup>(Also in [43](https://github.com/electron/electron/pull/55049), [44](https://github.com/electron/electron/pull/55048), [45](https://github.com/electron/electron/pull/55051))</sup> - Fixed `setCertificateVerifyProc` occasionally not being applied to a request issued concurrently with the first request to a host. [#&#8203;55054](https://github.com/electron/electron/pull/55054) <sup>(Also in [43](https://github.com/electron/electron/pull/55047), [44](https://github.com/electron/electron/pull/55046), [45](https://github.com/electron/electron/pull/55045))</sup> ### [`v42.11.15`](https://github.com/electron/electron/releases/tag/v42.11.15): electron v42.11.15 [Compare Source](https://github.com/electron/electron/compare/v42.11.14...v42.11.15) ### Release Notes for v42.11.15 #### Fixes - Fixed a crash on Linux at startup or on theme change with GTK modules loaded. [#&#8203;55015](https://github.com/electron/electron/pull/55015) - Fixed an issue where clicks posted to a background app were dropped on macOS. [#&#8203;54906](https://github.com/electron/electron/pull/54906) <sup>(Also in [43](https://github.com/electron/electron/pull/54905), [44](https://github.com/electron/electron/pull/54819), [45](https://github.com/electron/electron/pull/54818))</sup> - Fixed `net.fetch` and `session.fetch` failing permanently with `net::ERR_FAILED` after the Network Service process restarts. [#&#8203;54925](https://github.com/electron/electron/pull/54925) <sup>(Also in [43](https://github.com/electron/electron/pull/54908), [44](https://github.com/electron/electron/pull/54909), [45](https://github.com/electron/electron/pull/54910))</sup> - Fixed `utilityProcess` dropping messages posted with `process.parentPort.postMessage()` right before the process exits. [#&#8203;55000](https://github.com/electron/electron/pull/55000) <sup>(Also in [43](https://github.com/electron/electron/pull/54962), [45](https://github.com/electron/electron/pull/54956))</sup> #### Other Changes - Backported fixes from upstream Chromium and V8. [#&#8203;55035](https://github.com/electron/electron/pull/55035) ### [`v42.11.14`](https://github.com/electron/electron/releases/tag/v42.11.14): electron v42.11.14 [Compare Source](https://github.com/electron/electron/compare/v42.11.13...v42.11.14) ### Release Notes for v42.11.14 #### Other Changes - Backported fixes from upstream ANGLE, Chromium, PDFium and V8. [#&#8203;54900](https://github.com/electron/electron/pull/54900) ### [`v42.11.13`](https://github.com/electron/electron/releases/tag/v42.11.13): electron v42.11.13 [Compare Source](https://github.com/electron/electron/compare/v42.11.12...v42.11.13) ### Release Notes for v42.11.13 #### Fixes - Fixed a crash when starting without an available display server on Linux. [#&#8203;54796](https://github.com/electron/electron/pull/54796) <sup>(Also in [45](https://github.com/electron/electron/pull/54781))</sup> ### [`v42.11.12`](https://github.com/electron/electron/releases/tag/v42.11.12): electron v42.11.12 [Compare Source](https://github.com/electron/electron/compare/v42.11.11...v42.11.12) ### Release Notes for v42.11.12 #### Fixes - Fixed a renderer crash when a `ResizeObserver` loop-limit error handler modified layout. [#&#8203;54610](https://github.com/electron/electron/pull/54610) <sup>(Also in [43](https://github.com/electron/electron/pull/54611), [44](https://github.com/electron/electron/pull/54290), [45](https://github.com/electron/electron/pull/54289))</sup> #### Other Changes - Backported fixes from upstream ANGLE, Chromium, Dawn, fontconfig, Skia, V8 and WebRTC. [#&#8203;54668](https://github.com/electron/electron/pull/54668) - Backported fixes from upstream ANGLE, Chromium, Skia, V8 and WebRTC. [#&#8203;54659](https://github.com/electron/electron/pull/54659) ### [`v42.11.11`](https://github.com/electron/electron/releases/tag/v42.11.11): electron v42.11.11 [Compare Source](https://github.com/electron/electron/compare/v42.11.10...v42.11.11) ### Release Notes for v42.11.11 #### Fixes - Fixed a crash on launch on macOS when the system refused to register the app for sleep/wake notifications. [#&#8203;54598](https://github.com/electron/electron/pull/54598) ### [`v42.11.10`](https://github.com/electron/electron/releases/tag/v42.11.10): electron v42.11.10 [Compare Source](https://github.com/electron/electron/compare/v42.11.9...v42.11.10) ### Release Notes for v42.11.10 #### Other Changes - Backported fixes from upstream ANGLE, Chromium, Dawn and V8. [#&#8203;54565](https://github.com/electron/electron/pull/54565) ### [`v42.11.9`](https://github.com/electron/electron/releases/tag/v42.11.9): electron v42.11.9 [Compare Source](https://github.com/electron/electron/compare/v42.11.8...v42.11.9) ### Release Notes for v42.11.9 #### Fixes - Fixed `clipboard.read()`, `readText()` and `has()` resolving seconds late on Linux while the app was idle. [#&#8203;54310](https://github.com/electron/electron/pull/54310) <sup>(Also in [43](https://github.com/electron/electron/pull/54309), [44](https://github.com/electron/electron/pull/54308), [45](https://github.com/electron/electron/pull/54307))</sup> - Fixed `fs.rmSync` failing to remove read-only files on Windows. [#&#8203;54257](https://github.com/electron/electron/pull/54257) <sup>(Also in [43](https://github.com/electron/electron/pull/54256), [44](https://github.com/electron/electron/pull/54255), [45](https://github.com/electron/electron/pull/54190))</sup> - Fixed `pointerLock` permission requests from some iframes reporting the parent frame. [#&#8203;54466](https://github.com/electron/electron/pull/54466) <sup>(Also in [43](https://github.com/electron/electron/pull/54465), [44](https://github.com/electron/electron/pull/54464), [45](https://github.com/electron/electron/pull/54463))</sup> - Fixed `utilityProcess` dropping `stdout`/`stderr` output that the child wrote immediately before exiting. [#&#8203;54332](https://github.com/electron/electron/pull/54332) <sup>(Also in [43](https://github.com/electron/electron/pull/54279), [44](https://github.com/electron/electron/pull/54278), [45](https://github.com/electron/electron/pull/54335))</sup> - Fixed WebAssembly exception handlers failing to catch, or crashing during tier-up, in modules using wasm exceptions. [#&#8203;54236](https://github.com/electron/electron/pull/54236) - Fixed WebAssembly modules loaded from the code cache crashing or throwing `RuntimeError: unreachable` after updating between certain patch releases. [#&#8203;54239](https://github.com/electron/electron/pull/54239) <sup>(Also in [43](https://github.com/electron/electron/pull/54238), [44](https://github.com/electron/electron/pull/54246), [45](https://github.com/electron/electron/pull/54237))</sup> ### [`v42.11.8`](https://github.com/electron/electron/releases/tag/v42.11.8): electron v42.11.8 [Compare Source](https://github.com/electron/electron/compare/v42.11.7...v42.11.8) ### Release Notes for v42.11.8 #### Other Changes - Backported fixes from upstream ANGLE, Chromium, Dawn, PDFium and V8. [#&#8203;54223](https://github.com/electron/electron/pull/54223) ### [`v42.11.7`](https://github.com/electron/electron/releases/tag/v42.11.7): electron v42.11.7 [Compare Source](https://github.com/electron/electron/compare/v42.11.6...v42.11.7) ### Release Notes for v42.11.7 #### Fixes - Fixed a spurious "`sandboxed_renderer.bundle.js` script failed to run" console error when DevTools attached to a sandboxed frame before its first navigation. [#&#8203;54175](https://github.com/electron/electron/pull/54175) <sup>(Also in [43](https://github.com/electron/electron/pull/54176))</sup> - Fixed an "Invalid `guestInstanceId`" error when removing a loaded `<webview>` from the DOM. [#&#8203;54098](https://github.com/electron/electron/pull/54098) <sup>(Also in [43](https://github.com/electron/electron/pull/54097), [44](https://github.com/electron/electron/pull/54099), [45](https://github.com/electron/electron/pull/54096))</sup> ### [`v42.11.6`](https://github.com/electron/electron/releases/tag/v42.11.6): electron v42.11.6 [Compare Source](https://github.com/electron/electron/compare/v42.11.5...v42.11.6) ### Release Notes for v42.11.6 #### Other Changes - Backported fixes from upstream Chromium, Dawn, PDFium, Skia and V8. [#&#8203;54083](https://github.com/electron/electron/pull/54083) ### [`v42.11.5`](https://github.com/electron/electron/releases/tag/v42.11.5): electron v42.11.5 [Compare Source](https://github.com/electron/electron/compare/v42.11.4...v42.11.5) ### Release Notes for v42.11.5 #### Other Changes - Backported fixes from upstream ANGLE, Chromium, Skia and V8. [#&#8203;53986](https://github.com/electron/electron/pull/53986) ### [`v42.11.4`](https://github.com/electron/electron/releases/tag/v42.11.4): electron v42.11.4 [Compare Source](https://github.com/electron/electron/compare/v42.11.3...v42.11.4) ### Release Notes for v42.11.4 #### Fixes - Fixed a renderer crash when an iframe was removed right after loading with `nodeIntegrationInSubFrames` enabled and `sandbox` disabled, e.g. on pages that embed Meta Pixel. [#&#8203;53886](https://github.com/electron/electron/pull/53886) <sup>(Also in [43](https://github.com/electron/electron/pull/53884), [44](https://github.com/electron/electron/pull/53885), [45](https://github.com/electron/electron/pull/53883))</sup> #### Other Changes - Backported fixes from upstream ANGLE, Chromium, libyuv, PDFium and V8. [#&#8203;53767](https://github.com/electron/electron/pull/53767) ### [`v42.11.3`](https://github.com/electron/electron/releases/tag/v42.11.3): electron v42.11.3 [Compare Source](https://github.com/electron/electron/compare/v42.11.2...v42.11.3) ### Release Notes for v42.11.3 #### Fixes - File System Access permission requests and the `file-system-access-restricted` event are scoped to the requesting document, grants are reset when the origin's last page closes, and write access works in in-memory sessions. [#&#8203;53695](https://github.com/electron/electron/pull/53695) <sup>(Also in [43](https://github.com/electron/electron/pull/53694), [44](https://github.com/electron/electron/pull/53691), [45](https://github.com/electron/electron/pull/53690))</sup> - Fixed `session.setPermissionCheckHandler` receiving the top-level origin and a null `webContents` for `hid` and `usb` checks made from a subframe. [#&#8203;53736](https://github.com/electron/electron/pull/53736) <sup>(Also in [43](https://github.com/electron/electron/pull/53689), [44](https://github.com/electron/electron/pull/53688), [45](https://github.com/electron/electron/pull/53679))</sup> - Fixed `webContents.on()`, `removeListener()` and `removeAllListeners()` throwing "Object has been destroyed" for `console-message` listeners after the WebContents was destroyed. [#&#8203;53497](https://github.com/electron/electron/pull/53497) <sup>(Also in [43](https://github.com/electron/electron/pull/53496), [44](https://github.com/electron/electron/pull/53494), [45](https://github.com/electron/electron/pull/53495))</sup> - Fixed a crash on Linux when `process.env` was written while another thread was reading the environment, and a memory leak when a worker thread exits. [#&#8203;53511](https://github.com/electron/electron/pull/53511) <sup>(Also in [43](https://github.com/electron/electron/pull/53510), [44](https://github.com/electron/electron/pull/53509), [45](https://github.com/electron/electron/pull/53508))</sup> - Fixed a possible crash on Windows when a file dialog was shown for a window that was being closed at the same time. [#&#8203;53585](https://github.com/electron/electron/pull/53585) <sup>(Also in [43](https://github.com/electron/electron/pull/53584), [44](https://github.com/electron/electron/pull/53583), [45](https://github.com/electron/electron/pull/53586))</sup> - Fixed a renderer crash when the main process sent IPC to, or a page navigated, a same-process `window.open()` child whose `contextIsolation` differed from its opener's. [#&#8203;53541](https://github.com/electron/electron/pull/53541) <sup>(Also in [43](https://github.com/electron/electron/pull/53540), [44](https://github.com/electron/electron/pull/53539), [45](https://github.com/electron/electron/pull/53538))</sup> - Fixed crashes in `setDisplayMediaRequestHandler` when the granted frame had been destroyed or another tab was granted by id. [#&#8203;53674](https://github.com/electron/electron/pull/53674) <sup>(Also in [43](https://github.com/electron/electron/pull/53671), [44](https://github.com/electron/electron/pull/53672), [45](https://github.com/electron/electron/pull/53673))</sup> - Internal `<webview>`, `window.close()` and `executeJavaScript` reply IPCs are validated against the sending frame. [#&#8203;53727](https://github.com/electron/electron/pull/53727) <sup>(Also in [43](https://github.com/electron/electron/pull/53726), [44](https://github.com/electron/electron/pull/53723), [45](https://github.com/electron/electron/pull/53724))</sup> - `<webview>` without `allowpopups` also blocks links opened into a new window by modifier-click, and such windows navigate as the clicking document rather than as a browser-initiated load. [#&#8203;53719](https://github.com/electron/electron/pull/53719) <sup>(Also in [43](https://github.com/electron/electron/pull/53718), [44](https://github.com/electron/electron/pull/53721), [45](https://github.com/electron/electron/pull/53717))</sup> - `getUserMedia` with `chromeMediaSource: 'desktop'` no longer accepts WebContents source ids; use `chromeMediaSource: 'tab'` with `webContents.getMediaSourceId()` or `setDisplayMediaRequestHandler` to capture a WebContents. [#&#8203;53710](https://github.com/electron/electron/pull/53710) <sup>(Also in [43](https://github.com/electron/electron/pull/53707), [44](https://github.com/electron/electron/pull/53709), [45](https://github.com/electron/electron/pull/53708))</sup> - `nodeIntegrationInWorker` now applies only to workers created by frames that themselves have Node integration; enable `nodeIntegrationInSubFrames` to keep Node in workers created by subframes. [#&#8203;53713](https://github.com/electron/electron/pull/53713) <sup>(Also in [43](https://github.com/electron/electron/pull/53712), [44](https://github.com/electron/electron/pull/53711), [45](https://github.com/electron/electron/pull/53706))</sup> - `openExternal` permission requests started by a frame that has since gone away are attributed to that frame's origin rather than to the navigating page. [#&#8203;53697](https://github.com/electron/electron/pull/53697) <sup>(Also in [43](https://github.com/electron/electron/pull/53698), [44](https://github.com/electron/electron/pull/53699), [45](https://github.com/electron/electron/pull/53696))</sup> - `pointerLock` and `keyboardLock` permission requests now report the requesting frame, and `execCommand('paste')` requires user activation in the frame that calls it. [#&#8203;53702](https://github.com/electron/electron/pull/53702) <sup>(Also in [43](https://github.com/electron/electron/pull/53701), [44](https://github.com/electron/electron/pull/53693), [45](https://github.com/electron/electron/pull/53692))</sup> ### [`v42.11.2`](https://github.com/electron/electron/releases/tag/v42.11.2): electron v42.11.2 [Compare Source](https://github.com/electron/electron/compare/v42.11.1...v42.11.2) ### Release Notes for v42.11.2 #### Fixes - Fixed application crash after a large number of IPC messages from renderers. [#&#8203;53419](https://github.com/electron/electron/pull/53419) <sup>(Also in [43](https://github.com/electron/electron/pull/53420), [44](https://github.com/electron/electron/pull/53417), [45](https://github.com/electron/electron/pull/53418))</sup> - Fixed native addons deriving from `node::ObjectWrap` aborting during garbage collection on Node.js 24.19.0 and later. [#&#8203;53394](https://github.com/electron/electron/pull/53394) <sup>(Also in [43](https://github.com/electron/electron/pull/53393), [44](https://github.com/electron/electron/pull/53392), [45](https://github.com/electron/electron/pull/53391))</sup> #### Other Changes - Backported fixes from upstream ANGLE, Chromium, Skia and V8. [#&#8203;53480](https://github.com/electron/electron/pull/53480) - Backported fixes from upstream Chromium, Dawn, Skia and V8. [#&#8203;53397](https://github.com/electron/electron/pull/53397) - Backported fixes from upstream Chromium, V8, ANGLE, Dawn, Skia, WebRTC and DevTools. [#&#8203;53367](https://github.com/electron/electron/pull/53367) ### [`v42.11.1`](https://github.com/electron/electron/releases/tag/v42.11.1): electron v42.11.1 [Compare Source](https://github.com/electron/electron/compare/v42.11.0...v42.11.1) ### Release Notes for v42.11.1 #### Fixes - Fixed `chrome.tabs.query()` returning tab `url` and `title` to extensions without the `tabs` permission or host access, aligning with `tabs.get`. [#&#8203;53355](https://github.com/electron/electron/pull/53355) <sup>(Also in [43](https://github.com/electron/electron/pull/53356), [44](https://github.com/electron/electron/pull/53354), [45](https://github.com/electron/electron/pull/53353))</sup> - Fixed a renderer crash when an array with a throwing property getter is passed across `contextBridge`, and several main/utility-process crashes when option objects passed to Electron APIs contain throwing accessors or Proxy traps. [#&#8203;53329](https://github.com/electron/electron/pull/53329) <sup>(Also in [43](https://github.com/electron/electron/pull/53330), [44](https://github.com/electron/electron/pull/53331))</sup> #### Other Changes - Security: backported fixes for CVE-2026-15764, CVE-2026-15765, CVE-2026-15766, CVE-2026-15767, CVE-2026-15768, CVE-2026-15769, CVE-2026-15770, CVE-2026-15771, CVE-2026-15772, CVE-2026-15773, CVE-2026-15774, CVE-2026-15775, CVE-2026-15776, CVE-2026-15777, CVE-2026-15778. [#&#8203;53344](https://github.com/electron/electron/pull/53344) ### [`v42.11.0`](https://github.com/electron/electron/releases/tag/v42.11.0): electron v42.11.0 [Compare Source](https://github.com/electron/electron/compare/v42.10.1...v42.11.0) ### Release Notes for v42.11.0 #### Fixes - Fixed `fs.constants.O_DIRECTORY`, `O_NOFOLLOW` and `O_DIRECT` holding x86 values on Linux arm64 and armv7l, which made opening a directory fail with `EINVAL`, and made `require('trace_events')` behave the same on cross-compiled builds as on native ones. [#&#8203;53318](https://github.com/electron/electron/pull/53318) <sup>(Also in [43](https://github.com/electron/electron/pull/53319), [44](https://github.com/electron/electron/pull/53320), [45](https://github.com/electron/electron/pull/53321))</sup> - Fixed a crash when calling `node:wasi` functions in optimized code. [#&#8203;53267](https://github.com/electron/electron/pull/53267) <sup>(Also in [43](https://github.com/electron/electron/pull/53265), [44](https://github.com/electron/electron/pull/53268), [45](https://github.com/electron/electron/pull/53266))</sup> - Fixed a regression where a window created with a custom title can show an empty title after using back/forward navigation. [#&#8203;53217](https://github.com/electron/electron/pull/53217) <sup>(Also in [43](https://github.com/electron/electron/pull/53219), [44](https://github.com/electron/electron/pull/53218))</sup> - Fixed desktopCapturer thumbnail generation and premature portal timeout on Linux with Wayland. [#&#8203;51784](https://github.com/electron/electron/pull/51784) <sup>(Also in [43](https://github.com/electron/electron/pull/51783))</sup> - Fixed region-qualified `--lang` values such as `de-DE` loading no locale resources on macOS, which left localized strings empty and could crash WebAuthn Touch ID prompts. [#&#8203;53187](https://github.com/electron/electron/pull/53187) <sup>(Also in [43](https://github.com/electron/electron/pull/53186), [44](https://github.com/electron/electron/pull/53188))</sup> - Fixed the GPU process being terminated in AppX/MSIX packaged apps on Windows when WebGPU fell back to SwiftShader. [#&#8203;53199](https://github.com/electron/electron/pull/53199) <sup>(Also in [43](https://github.com/electron/electron/pull/53197), [44](https://github.com/electron/electron/pull/53198))</sup> #### Other Changes - Backported fixes from upstream ANGLE, Chromium, Dawn, V8 and WebRTC. [#&#8203;53191](https://github.com/electron/electron/pull/53191) - Updated Node.js to v24.19.0. [#&#8203;52634](https://github.com/electron/electron/pull/52634) ### [`v42.10.1`](https://github.com/electron/electron/releases/tag/v42.10.1): electron v42.10.1 [Compare Source](https://github.com/electron/electron/compare/v42.10.0...v42.10.1) ### Release Notes for v42.10.1 #### Fixes - Fixed `webContents.print()` honoring `printBackground`, `duplexMode`, and printer default duplex settings. [#&#8203;53158](https://github.com/electron/electron/pull/53158) <sup>(Also in [43](https://github.com/electron/electron/pull/53160), [44](https://github.com/electron/electron/pull/53159))</sup> - Fixed a crash on macOS when a notification's icon could not be attached; the notification is now shown without the icon. [#&#8203;53148](https://github.com/electron/electron/pull/53148) <sup>(Also in [43](https://github.com/electron/electron/pull/53147), [44](https://github.com/electron/electron/pull/53146))</sup> - Fixed an issue where pages loaded in a detached `WebContentsView` wouldn't see the correct window size. [#&#8203;53151](https://github.com/electron/electron/pull/53151) <sup>(Also in [43](https://github.com/electron/electron/pull/53152), [44](https://github.com/electron/electron/pull/53153))</sup> - Fixed the primary instance being killed or receiving truncated arguments when a second instance passed a very long command line or large `additionalData` to `app.requestSingleInstanceLock()`. [#&#8203;53157](https://github.com/electron/electron/pull/53157) <sup>(Also in [43](https://github.com/electron/electron/pull/53156), [44](https://github.com/electron/electron/pull/52950))</sup> #### Other Changes - Backported fixes from upstream ANGLE, Chromium, Dawn, Skia and V8. [#&#8203;52970](https://github.com/electron/electron/pull/52970) - Page resources, `fetch()` calls and file:// loads in renderers no longer wait for the main process to be idle when no `webRequest` listeners or protocol interceptors are registered. [#&#8203;53143](https://github.com/electron/electron/pull/53143) <sup>(Also in [43](https://github.com/electron/electron/pull/53142), [44](https://github.com/electron/electron/pull/53141))</sup> ### [`v42.10.0`](https://github.com/electron/electron/releases/tag/v42.10.0): electron v42.10.0 [Compare Source](https://github.com/electron/electron/compare/v42.9.3...v42.10.0) ### Release Notes for v42.10.0 #### Features - Fixed contentTracing module to capture Node.js trace categories. [#&#8203;52973](https://github.com/electron/electron/pull/52973) #### Fixes - Fixed DevTools device metrics overrides persisting indefinitely when a remote debugging client disconnected without clearing them. [#&#8203;53133](https://github.com/electron/electron/pull/53133) <sup>(Also in [43](https://github.com/electron/electron/pull/52946), [44](https://github.com/electron/electron/pull/52930))</sup> - Fixed DevTools popup and context menus not appearing when DevTools is hosted in a custom window via `webContents.setDevToolsWebContents()`. [#&#8203;52981](https://github.com/electron/electron/pull/52981) <sup>(Also in [43](https://github.com/electron/electron/pull/52937), [44](https://github.com/electron/electron/pull/52434))</sup> - Fixed `BrowserWindow.unmaximize()` and `restore()` having no effect on Wayland when the window was maximized immediately after creation. [#&#8203;53126](https://github.com/electron/electron/pull/53126) <sup>(Also in [44](https://github.com/electron/electron/pull/53124))</sup> - Fixed `Uncaught illegal access` errors and possible renderer crashes after closing a same-process child window or removing an iframe with `nodeIntegrationInSubFrames` enabled. [#&#8203;53042](https://github.com/electron/electron/pull/53042) <sup>(Also in [44](https://github.com/electron/electron/pull/53040))</sup> - Fixed `dialog.showOpenDialog`/`dialog.showSaveDialog` opening at an unusable location on Linux when `defaultPath` is a bare filename without a directory. [#&#8203;52980](https://github.com/electron/electron/pull/52980) <sup>(Also in [43](https://github.com/electron/electron/pull/52401), [44](https://github.com/electron/electron/pull/52402))</sup> - Fixed a crash on Linux when the D-Bus session bus disconnected while the app was running, such as at logout or when dbus is restarted. [#&#8203;53094](https://github.com/electron/electron/pull/53094) <sup>(Also in [43](https://github.com/electron/electron/pull/53095), [44](https://github.com/electron/electron/pull/53096))</sup> - Fixed a crash on Windows when V8 posted a delayed worker task during shutdown. [#&#8203;53014](https://github.com/electron/electron/pull/53014) <sup>(Also in [43](https://github.com/electron/electron/pull/53013))</sup> - Fixed a crash with `app.setLoginItemSettings` if a non-UTF8 service name is used. [#&#8203;52989](https://github.com/electron/electron/pull/52989) <sup>(Also in [43](https://github.com/electron/electron/pull/52944), [44](https://github.com/electron/electron/pull/52801))</sup> - Fixed a possible crash (SIGABRT) during process exit when the process had loaded `tls`/`https` shortly before exiting, affecting `app.exit()` before `ready` and short-lived `ELECTRON_RUN_AS_NODE` / `child_process.fork()` scripts. [#&#8203;52992](https://github.com/electron/electron/pull/52992) <sup>(Also in [43](https://github.com/electron/electron/pull/52870), [44](https://github.com/electron/electron/pull/52871))</sup> - Fixed a possible main process crash at quit when a session was created from JavaScript that runs during shutdown. [#&#8203;53132](https://github.com/electron/electron/pull/53132) <sup>(Also in [43](https://github.com/electron/electron/pull/52925), [44](https://github.com/electron/electron/pull/52924))</sup> - Fixed a rare crash in the main process when DevTools were opened and a garbage collection ran before the DevTools frontend finished loading. [#&#8203;52994](https://github.com/electron/electron/pull/52994) <sup>(Also in [43](https://github.com/electron/electron/pull/52903), [44](https://github.com/electron/electron/pull/52904))</sup> - Fixed a renderer crash when a page calls `SpeechRecognition.available()` or `SpeechRecognition.install()` with `processLocally`. [#&#8203;53016](https://github.com/electron/electron/pull/53016) <sup>(Also in [43](https://github.com/electron/electron/pull/53015), [44](https://github.com/electron/electron/pull/53021))</sup> - Fixed an issue on Linux where the system theme color appeared at the top edge of frameless windows. [#&#8203;52978](https://github.com/electron/electron/pull/52978) <sup>(Also in [41](https://github.com/electron/electron/pull/53006), [43](https://github.com/electron/electron/pull/52179))</sup> - Fixed an issue where some values passed into `requestSingleInstanceLock` could result in a crash. [#&#8203;52982](https://github.com/electron/electron/pull/52982) <sup>(Also in [43](https://github.com/electron/electron/pull/52471), [44](https://github.com/electron/electron/pull/52470))</sup> - Fixed crash in sharedTexture module when GPU context becomes unavailable. [#&#8203;52983](https://github.com/electron/electron/pull/52983) <sup>(Also in [43](https://github.com/electron/electron/pull/52938), [44](https://github.com/electron/electron/pull/52926))</sup> - Fixed document title updates when using back/forward navigation using the same document without utilizing `browserWindow.setTitle()`. [#&#8203;53099](https://github.com/electron/electron/pull/53099) <sup>(Also in [43](https://github.com/electron/electron/pull/53023), [44](https://github.com/electron/electron/pull/52968))</sup> - Fixed the built-in PDF viewer not rendering documents in in-memory sessions (partitions without the `persist:` prefix). [#&#8203;52990](https://github.com/electron/electron/pull/52990) <sup>(Also in [43](https://github.com/electron/electron/pull/52835), [44](https://github.com/electron/electron/pull/52834))</sup> - Fixed titleBarOverlay.color set to `rgba(0,0,0,0)` failing back to default frame color. [#&#8203;52976](https://github.com/electron/electron/pull/52976) <sup>(Also in [41](https://github.com/electron/electron/pull/53004), [43](https://github.com/electron/electron/pull/52010))</sup> - Fixed utility process crashes at exit on Windows 11 24H2 and later. [#&#8203;53091](https://github.com/electron/electron/pull/53091) <sup>(Also in [43](https://github.com/electron/electron/pull/53092), [44](https://github.com/electron/electron/pull/53093))</sup> #### Other Changes - Backported fixes from upstream Chromium and V8. [#&#8203;53060](https://github.com/electron/electron/pull/53060) - Fixed a 1-in-200 chance per renderer process on Windows of scripts on the first page load being compiled without their V8 code cache. [#&#8203;52988](https://github.com/electron/electron/pull/52988) <sup>(Also in [43](https://github.com/electron/electron/pull/52943), [44](https://github.com/electron/electron/pull/52792))</sup> - Fixed a Windows x64 renderer performance regression introduced in 42.8.1 that made style/layout work (and app startup) noticeably slower. [#&#8203;53064](https://github.com/electron/electron/pull/53064) - Fixed a stall of tens of milliseconds while creating the first `BrowserWindow` on Linux. - Improved the performance of file lookups inside ASAR archives and of large files served from them to the renderer. - Improved the performance of calls through `contextBridge`-exposed APIs. - Reduced the main-thread cost of sending large values through `ipcRenderer`, `ipcMain` handlers and `webContents.send`. [#&#8203;53019](https://github.com/electron/electron/pull/53019) <sup>(Also in [43](https://github.com/electron/electron/pull/53018), [44](https://github.com/electron/electron/pull/53017))</sup> - Improved startup time of `utilityProcess.fork()`, `child_process.fork()` / `ELECTRON_RUN_AS_NODE` child processes and Node.js-enabled renderers. [#&#8203;53136](https://github.com/electron/electron/pull/53136) <sup>(Also in [43](https://github.com/electron/electron/pull/53135), [44](https://github.com/electron/electron/pull/53134))</sup> - Linux arm64, Windows arm64 and macOS x64 builds now start the main process from the embedded Node.js startup snapshot like the other platforms, improving startup time. [#&#8203;52880](https://github.com/electron/electron/pull/52880) <sup>(Also in [43](https://github.com/electron/electron/pull/52881), [44](https://github.com/electron/electron/pull/52879))</sup> ### [`v42.9.3`](https://github.com/electron/electron/releases/tag/v42.9.3): electron v42.9.3 [Compare Source](https://github.com/electron/electron/compare/v42.9.2...v42.9.3) ### Release Notes for v42.9.3 #### Fixes - Fixed a graphical glitch on Linux where thin borders appeared past the drop shadows on frameless windows when multiple windows were created. [#&#8203;52772](https://github.com/electron/electron/pull/52772) <sup>(Also in [43](https://github.com/electron/electron/pull/52607), [44](https://github.com/electron/electron/pull/52606))</sup> - Fixed a memory leak when creating BrowserWindows. [#&#8203;52893](https://github.com/electron/electron/pull/52893) <sup>(Also in [43](https://github.com/electron/electron/pull/52892), [44](https://github.com/electron/electron/pull/52894))</sup> - Fixed an issue on Windows where the app process could fail to exit after `app.quit()` while a `shell.openExternal()` or `shell.openPath()` call was still waiting on a system "Open with" dialog. [#&#8203;52900](https://github.com/electron/electron/pull/52900) <sup>(Also in [41](https://github.com/electron/electron/pull/52899), [43](https://github.com/electron/electron/pull/52897), [44](https://github.com/electron/electron/pull/52898))</sup> - Fixed custom V8 snapshots (`electron-mksnapshot`, and the `loadBrowserProcessSpecificV8Snapshot` fuse) having no effect in the main process on macOS arm64, Linux x64 and Windows x64. [#&#8203;52876](https://github.com/electron/electron/pull/52876) <sup>(Also in [43](https://github.com/electron/electron/pull/52877), [44](https://github.com/electron/electron/pull/52878))</sup> #### Other Changes - Backported fix for [`5246282`](https://github.com/electron/electron/commit/524628213). [#&#8203;52869](https://github.com/electron/electron/pull/52869) - Reduced idle main-process CPU wakeups caused by Node.js timers and immediates. [#&#8203;52907](https://github.com/electron/electron/pull/52907) <sup>(Also in [43](https://github.com/electron/electron/pull/52905), [44](https://github.com/electron/electron/pull/52906))</sup> ### [`v42.9.2`](https://github.com/electron/electron/releases/tag/v42.9.2): electron v42.9.2 [Compare Source](https://github.com/electron/electron/compare/v42.9.1...v42.9.2) ### Release Notes for v42.9.2 #### Fixes - Fixed `registerFileProtocol` and `registerHttpProtocol` returning readable responses to cross-origin `no-cors` fetches; they now return opaque responses like `protocol.handle`. [#&#8203;52855](https://github.com/electron/electron/pull/52855) <sup>(Also in [41](https://github.com/electron/electron/pull/52854), [43](https://github.com/electron/electron/pull/52853), [44](https://github.com/electron/electron/pull/52852))</sup> - Fixed a `WebContentsView` staying blank after its window is shown when `setBackgroundThrottling(false)` was called while the window was hidden. [#&#8203;52865](https://github.com/electron/electron/pull/52865) <sup>(Also in [43](https://github.com/electron/electron/pull/52864), [44](https://github.com/electron/electron/pull/52863))</sup> - Fixed a crash when resolving a path inside a malformed ASAR archive that contains cyclic link entries. [#&#8203;52859](https://github.com/electron/electron/pull/52859) <sup>(Also in [43](https://github.com/electron/electron/pull/52857), [44](https://github.com/electron/electron/pull/52858))</sup> - Fixed downloading files that live inside an asar archive, including saving a packed PDF from the built-in PDF viewer. [#&#8203;52828](https://github.com/electron/electron/pull/52828) <sup>(Also in [43](https://github.com/electron/electron/pull/52826), [44](https://github.com/electron/electron/pull/52827))</sup> - Fixed windows opened by a sandboxed top-level frame not inheriting the opener's sandbox restrictions. [#&#8203;52850](https://github.com/electron/electron/pull/52850) <sup>(Also in [41](https://github.com/electron/electron/pull/52849), [43](https://github.com/electron/electron/pull/52848), [44](https://github.com/electron/electron/pull/52851))</sup> - `<webview>` and `window.open` now inherit `nodeIntegrationInWorker` from the embedder, consistent with the other Node and sandbox preferences. [#&#8203;52831](https://github.com/electron/electron/pull/52831) <sup>(Also in [41](https://github.com/electron/electron/pull/52829), [43](https://github.com/electron/electron/pull/52830), [44](https://github.com/electron/electron/pull/52832))</sup> #### Other Changes - Backported fixes for [`5422242`](https://github.com/electron/electron/commit/542224257), [`5420251`](https://github.com/electron/electron/commit/542025190). [#&#8203;52843](https://github.com/electron/electron/pull/52843) ### [`v42.9.1`](https://github.com/electron/electron/releases/tag/v42.9.1): electron v42.9.1 [Compare Source](https://github.com/electron/electron/compare/v42.9.0...v42.9.1) ### Release Notes for v42.9.1 #### Fixes - Fixed a crash in `systemPreferences.promptTouchID(reason)` when an invalid reason value is passed. [#&#8203;52780](https://github.com/electron/electron/pull/52780) <sup>(Also in [43](https://github.com/electron/electron/pull/52782), [44](https://github.com/electron/electron/pull/52781))</sup> - Fixed a potential crash in `contentTracing.stopRecording()` when the trace file could not be written to the requested path. [#&#8203;52796](https://github.com/electron/electron/pull/52796) <sup>(Also in [43](https://github.com/electron/electron/pull/52795), [44](https://github.com/electron/electron/pull/52794))</sup> #### Other Changes - Backported fixes from upstream ANGLE, Chromium, Skia and V8. [#&#8203;52706](https://github.com/electron/electron/pull/52706) - Backported fixes from upstream Chromium and V8. [#&#8203;52785](https://github.com/electron/electron/pull/52785) - Fixed an issue on macOS where a page's first use of `speechSynthesis` could block the main process for several hundred milliseconds. [#&#8203;52813](https://github.com/electron/electron/pull/52813) ### [`v42.9.0`](https://github.com/electron/electron/releases/tag/v42.9.0): electron v42.9.0 [Compare Source](https://github.com/electron/electron/compare/v42.8.1...v42.9.0) ### Release Notes for v42.9.0 #### Features - Added `webFrameMain.printToPDF()` to allow printing individual frames to PDF from the main process. [#&#8203;52626](https://github.com/electron/electron/pull/52626) <sup>(Also in [43](https://github.com/electron/electron/pull/52627), [44](https://github.com/electron/electron/pull/52625))</sup> #### Fixes - Fixed a browser process crash that could occur during Windows logoff, shutdown, or restart. [#&#8203;52621](https://github.com/electron/electron/pull/52621) <sup>(Also in [43](https://github.com/electron/electron/pull/52620), [44](https://github.com/electron/electron/pull/52619))</sup> - Fixed a crash report when the X server or Wayland compositor exits while an app is running. [#&#8203;52686](https://github.com/electron/electron/pull/52686) <sup>(Also in [43](https://github.com/electron/electron/pull/52685), [44](https://github.com/electron/electron/pull/52684))</sup> - Fixed a crash when quickly switching menus while the app is under heavy load. [#&#8203;52671](https://github.com/electron/electron/pull/52671) <sup>(Also in [43](https://github.com/electron/electron/pull/52673), [44](https://github.com/electron/electron/pull/52672))</sup> - Fixed a potential crash when notifying user activation before the primary main frame was live. [#&#8203;52699](https://github.com/electron/electron/pull/52699) <sup>(Also in [43](https://github.com/electron/electron/pull/52697), [44](https://github.com/electron/electron/pull/52698))</sup> - Fixed an issue where a JavaScript out-of-memory crash could be reported from inside the crash-key handler instead of at the out-of-memory site. [#&#8203;52723](https://github.com/electron/electron/pull/52723) <sup>(Also in [43](https://github.com/electron/electron/pull/52725), [44](https://github.com/electron/electron/pull/52724))</sup> #### Other Changes - Backported fixes from upstream ANGLE, Chromium and V8. [#&#8203;52664](https://github.com/electron/electron/pull/52664) - No user-facing change; semver/none. [#&#8203;52733](https://github.com/electron/electron/pull/52733) ### [`v42.8.1`](https://github.com/electron/electron/releases/tag/v42.8.1): electron v42.8.1 [Compare Source](https://github.com/electron/electron/compare/v42.8.0...v42.8.1) ### Release Notes for v42.8.1 #### Fixes - Fixed `BrowserWindow` size corruption on Windows when created with explicit `x`/`y` on a secondary monitor whose DPI differs from the primary. [#&#8203;52500](https://github.com/electron/electron/pull/52500) <sup>(Also in [43](https://github.com/electron/electron/pull/52501), [44](https://github.com/electron/electron/pull/52499))</sup> - Fixed `Dirent.parentPath` being `undefined` for `fs.readdir`, `fs.readdirSync`, `fs.glob`, and `fs.globSync` with `withFileTypes: true` inside asar archives. [#&#8203;52506](https://github.com/electron/electron/pull/52506) <sup>(Also in [43](https://github.com/electron/electron/pull/52505), [44](https://github.com/electron/electron/pull/52507))</sup> - Fixed a UAF with `protocol.registerStreamProtocol` when an error is emitted during a read. [#&#8203;52516](https://github.com/electron/electron/pull/52516) <sup>(Also in [41](https://github.com/electron/electron/pull/52513), [43](https://github.com/electron/electron/pull/52514), [44](https://github.com/electron/electron/pull/52515))</sup> - Fixed a crash that could occur when closing DevTools while the host WebContents was being destroyed. [#&#8203;52511](https://github.com/electron/electron/pull/52511) <sup>(Also in [41](https://github.com/electron/electron/pull/52512), [43](https://github.com/electron/electron/pull/52510), [44](https://github.com/electron/electron/pull/52509))</sup> #### Other Changes - Fixed a renderer crash when disabling device emulation while the main frame was not local. [#&#8203;52601](https://github.com/electron/electron/pull/52601) - Improved the error message when an asar integrity check fails to name the entry that failed. [#&#8203;52623](https://github.com/electron/electron/pull/52623) <sup>(Also in [43](https://github.com/electron/electron/pull/52622), [44](https://github.com/electron/electron/pull/52624))</sup> - Updated Node.js to v24.18.1. [#&#8203;52551](https://github.com/electron/electron/pull/52551) ### [`v42.8.0`](https://github.com/electron/electron/releases/tag/v42.8.0): electron v42.8.0 [Compare Source](https://github.com/electron/electron/compare/v42.7.1...v42.8.0) ### Release Notes for v42.8.0 #### Features - Added `available` to `process.getSystemMemoryInfo()` on Linux, exposing `proc/meminfo` MemAvailable. [#&#8203;52378](https://github.com/electron/electron/pull/52378) <sup>(Also in [43](https://github.com/electron/electron/pull/52379), [44](https://github.com/electron/electron/pull/52380))</sup> #### Fixes - Fixed a window being marked hidden and background-throttled on macOS when covered by a transparent or click-through window. [#&#8203;52390](https://github.com/electron/electron/pull/52390) <sup>(Also in [43](https://github.com/electron/electron/pull/52389), [44](https://github.com/electron/electron/pull/52391))</sup> - Fixed an issue where loading ICO files from ASAR archives on Windows left temporary icon files behind. [#&#8203;52479](https://github.com/electron/electron/pull/52479) <sup>(Also in [43](https://github.com/electron/electron/pull/52478), [44](https://github.com/electron/electron/pull/52477))</sup> ### [`v42.7.1`](https://github.com/electron/electron/releases/tag/v42.7.1): electron v42.7.1 [Compare Source](https://github.com/electron/electron/compare/v42.7.0...v42.7.1) ### Release Notes for v42.7.1 #### Fixes - Fixed `app.disableHardwareAcceleration()` not fully disabling GPU hardware usage on Windows starting from Electron 38. [#&#8203;52371](https://github.com/electron/electron/pull/52371) <sup>(Also in [41](https://github.com/electron/electron/pull/52368), [43](https://github.com/electron/electron/pull/52369), [44](https://github.com/electron/electron/pull/52370))</sup> - Fixed a crash when showing Linux message boxes while another Linux UI implementation was active. [#&#8203;52408](https://github.com/electron/electron/pull/52408) <sup>(Also in [43](https://github.com/electron/electron/pull/52410), [44](https://github.com/electron/electron/pull/52409))</sup> - Fixed an issue where frameless windows could shrink after applying constraints or toggling resizability on Windows. [#&#8203;52366](https://github.com/electron/electron/pull/52366) <sup>(Also in [43](https://github.com/electron/electron/pull/51954))</sup> - Fixed crash during maglev compilation. [#&#8203;52311](https://github.com/electron/electron/pull/52311) - Fixed remote debugging via `--remote-debugging-port` not working when inspecting from Chrome's `chrome://inspect` page. The DevTools page would appear empty due to the frontend URL pointing to a CDN that returned 404 for Electron's Chromium builds. [#&#8203;51415](https://github.com/electron/electron/pull/51415) <sup>(Also in [41](https://github.com/electron/electron/pull/51413))</sup> - Fixed unnecessary autofill popup creation for fields without datalist suggestions, which could cause input latency on macOS. [#&#8203;52319](https://github.com/electron/electron/pull/52319) <sup>(Also in [41](https://github.com/electron/electron/pull/52320), [43](https://github.com/electron/electron/pull/52321), [44](https://github.com/electron/electron/pull/52318))</sup> #### Other Changes - Backported fixes from upstream Chromium and V8. [#&#8203;52395](https://github.com/electron/electron/pull/52395) ### [`v42.7.0`](https://github.com/electron/electron/releases/tag/v42.7.0): electron v42.7.0 [Compare Source](https://github.com/electron/electron/compare/v42.6.2...v42.7.0) ### Release Notes for v42.7.0 #### Features - Added `net.WebSocket`, a WHATWG-compatible WebSocket client for the main process that routes through Chromium's network stack. [#&#8203;52345](https://github.com/electron/electron/pull/52345) ### [`v42.6.2`](https://github.com/electron/electron/releases/tag/v42.6.2): electron v42.6.2 [Compare Source](https://github.com/electron/electron/compare/v42.6.1...v42.6.2) ### Release Notes for v42.6.2 #### Fixes - Fixed a browser-process crash (`ValidateIntegrityOrDie`) and spurious preload `ENOENT` errors when an app's `app.asar` is replaced on disk (e.g. by an updater or MDM software) while the app is running. [#&#8203;52294](https://github.com/electron/electron/pull/52294) <sup>(Also in [43](https://github.com/electron/electron/pull/52293), [44](https://github.com/electron/electron/pull/52292))</sup> - Fixed an issue on Windows where `BrowserWindow` with `useContentSize: true` would clamp the content area smaller than the configured `maxWidth` / `maxHeight` when programmatically resizing beyond those constraints via `setBounds`, `setSize`, or `setContentSize`. [#&#8203;51622](https://github.com/electron/electron/pull/51622) #### Other Changes - Backported fixes from upstream Chromium. [#&#8203;52303](https://github.com/electron/electron/pull/52303) ### [`v42.6.1`](https://github.com/electron/electron/releases/tag/v42.6.1): electron v42.6.1 [Compare Source](https://github.com/electron/electron/compare/v42.6.0...v42.6.1) ### Release Notes for v42.6.1 #### Fixes - Fixed crash triggered by replacing an open application menu. [#&#8203;52275](https://github.com/electron/electron/pull/52275) <sup>(Also in [41](https://github.com/electron/electron/pull/52278), [43](https://github.com/electron/electron/pull/52276), [44](https://github.com/electron/electron/pull/52277))</sup> ### [`v42.6.0`](https://github.com/electron/electron/releases/tag/v42.6.0): electron v42.6.0 [Compare Source](https://github.com/electron/electron/compare/v42.5.2...v42.6.0) ### Release Notes for v42.6.0 #### Fixes - Fixed running under tsx import transpilation. [#&#8203;52046](https://github.com/electron/electron/pull/52046) <sup>(Also in [43](https://github.com/electron/electron/pull/51978))</sup> #### Other Changes - Backported fixes from upstream Chromium, ANGLE, Dawn, and V8. [#&#8203;52230](https://github.com/electron/electron/pull/52230) - Updated Chromium to 148.0.7778.280. [#&#8203;52110](https://github.com/electron/electron/pull/52110) - Updated Node.js to v24.18.0. [#&#8203;52105](https://github.com/electron/electron/pull/52105) ### [`v42.5.2`](https://github.com/electron/electron/releases/tag/v42.5.2): electron v42.5.2 [Compare Source](https://github.com/electron/electron/compare/v42.5.1...v42.5.2) ### Release Notes for v42.5.2 #### Fixes - Windows opened from links inside a sandboxed iframe now inherit the iframe's sandbox restrictions unless `allow-popups-to-escape-sandbox` is set. [#&#8203;52190](https://github.com/electron/electron/pull/52190) <sup>(Also in [43](https://github.com/electron/electron/pull/52189))</sup> ### [`v42.5.1`](https://github.com/electron/electron/releases/tag/v42.5.1): electron v42.5.1 [Compare Source](https://github.com/electron/electron/compare/v42.5.0...v42.5.1) ### Release Notes for v42.5.1 #### Fixes - Fixed `ProtocolResponse.url` requests being made through the default session instead of the session the protocol handler was registered on when `ProtocolResponse.session` was not set. [#&#8203;52132](https://github.com/electron/electron/pull/52132) <sup>(Also in [40](https://github.com/electron/electron/pull/52135), [41](https://github.com/electron/electron/pull/52134), [43](https://github.com/electron/electron/pull/52131))</sup> - Made "reload" menu items work with `BaseWindow`. [#&#8203;52117](https://github.com/electron/electron/pull/52117) <sup>(Also in [41](https://github.com/electron/electron/pull/52118), [43](https://github.com/electron/electron/pull/52119))</sup> #### Other Changes - Backported fixes from upstream Chromium. [#&#8203;52115](https://github.com/electron/electron/pull/52115) - Backported fixes from upstream Chromium. [#&#8203;52169](https://github.com/electron/electron/pull/52169) ### [`v42.5.0`](https://github.com/electron/electron/releases/tag/v42.5.0): electron v42.5.0 [Compare Source](https://github.com/electron/electron/compare/v42.4.1...v42.5.0) ### Release Notes for v42.5.0 #### Fixes - Fixed Windows edge case in `NativeWindowViews::MoveBehindTaskBarIfNeeded()`. [#&#8203;52022](https://github.com/electron/electron/pull/52022) <sup>(Also in [41](https://github.com/electron/electron/pull/52023), [43](https://github.com/electron/electron/pull/52021))</sup> - Fixed an issue where clicking the maximize button could progressively shrink the window in some Wayland environments. [#&#8203;52045](https://github.com/electron/electron/pull/52045) <sup>(Also in [43](https://github.com/electron/electron/pull/52039))</sup> #### Other Changes - Backported fixes from upstream Chromium. [#&#8203;51975](https://github.com/electron/electron/pull/51975) - Updated Chromium to 148.0.7778.271. [#&#8203;52038](https://github.com/electron/electron/pull/52038) - Updated Node.js to v24.17.0. [#&#8203;52066](https://github.com/electron/electron/pull/52066) ### [`v42.4.1`](https://github.com/electron/electron/releases/tag/v42.4.1): electron v42.4.1 [Compare Source](https://github.com/electron/electron/compare/v42.4.0...v42.4.1) ### Release Notes for v42.4.1 #### Fixes - Fixed DevTools Network panel missing most requests after navigating when webContents.debugger is attached. [#&#8203;51965](https://github.com/electron/electron/pull/51965) <sup>(Also in [43](https://github.com/electron/electron/pull/51964))</sup> - Fixed `safeStorage.isAsyncEncryptionAvailable()` incorrectly reporting `false` shortly after the app `ready` event, and a crash when calling `safeStorage.encryptStringAsync()` or `safeStorage.decryptStringAsync()` before async encryption initialization completed. `safeStorage.isAsyncEncryptionAvailable()` now returns a Promise as documented. [#&#8203;51924](https://github.com/electron/electron/pull/51924) - Fixed a bug on Linux where a 1px line appeared at the top of frameless windows if the window and web contents had different background colors. [#&#8203;52005](https://github.com/electron/electron/pull/52005) <sup>(Also in [41](https://github.com/electron/electron/pull/52004), [43](https://github.com/electron/electron/pull/51999))</sup> - Fixed a renderer crash when calling `WebAssembly.compileStreaming()` or `WebAssembly.instantiateStreaming()` with `nodeIntegration` enabled. [#&#8203;51956](https://github.com/electron/electron/pull/51956) <sup>(Also in [43](https://github.com/electron/electron/pull/51955))</sup> #### Other Changes - Backported fixes from upstream Chromium, Skia and Dawn. [#&#8203;51942](https://github.com/electron/electron/pull/51942) - Updated Chromium to 148.0.7778.265. [#&#8203;51979](https://github.com/electron/electron/pull/51979) #### Documentation - Documentation changes: [#&#8203;51927](https://github.com/electron/electron/pull/51927) ### [`v42.4.0`](https://github.com/electron/electron/releases/tag/v42.4.0): electron v42.4.0 [Compare Source](https://github.com/electron/electron/compare/v42.3.3...v42.4.0) ### Release Notes for v42.4.0 #### Fixes - Fixed a browser process crash when calling `webContents.reload()` or navigating synchronously from the `render-process-gone` event; the event is now emitted after the renderer's teardown notification has completed. [#&#8203;51916](https://github.com/electron/electron/pull/51916) <sup>(Also in [43](https://github.com/electron/electron/pull/51918))</sup> - Fixed an issue on Linux and Windows where frameless windows would shrink when calling `win.center()`. Additionally, fixed an issue where frameless windows would appear slightly off-center on Windows. [#&#8203;51921](https://github.com/electron/electron/pull/51921) <sup>(Also in [41](https://github.com/electron/electron/pull/51919), [43](https://github.com/electron/electron/pull/51920))</sup> - Fixed an issue where the "Toggle Developer Tools" menu item failed to function correctly with BaseWindow. [#&#8203;51903](https://github.com/electron/electron/pull/51903) <sup>(Also in [41](https://github.com/electron/electron/pull/51902), [43](https://github.com/electron/electron/pull/51901))</sup> - Fixed sandboxed preload scripts running a stale cached version after the script was modified without its file size changing. [#&#8203;51933](https://github.com/electron/electron/pull/51933) <sup>(Also in [43](https://github.com/electron/electron/pull/51932))</sup> - Fixed the context menu in a detached DevTools window focusing the inspected page's window instead of the DevTools window. [#&#8203;51864](https://github.com/electron/electron/pull/51864) <sup>(Also in [43](https://github.com/electron/electron/pull/51863))</sup> #### Other Changes - Backported fixes from upstream Chromium and V8. [#&#8203;51934](https://github.com/electron/electron/pull/51934) - Security: backported fixes for CVE-2026-9115, CVE-2026-9116. [#&#8203;51904](https://github.com/electron/electron/pull/51904) - Updated Chromium to 148.0.7778.254. [#&#8203;51878](https://github.com/electron/electron/pull/51878) - Updated Node.js to v24.16.0. [#&#8203;51747](https://github.com/electron/electron/pull/51747) ### [`v42.3.3`](https://github.com/electron/electron/releases/tag/v42.3.3): electron v42.3.3 [Compare Source](https://github.com/electron/electron/compare/v42.3.2...v42.3.3) ### Release Notes for v42.3.3 #### Fixes - Fixed a crash when calling `node:wasi` functions with fast API calls enabled. [#&#8203;51867](https://github.com/electron/electron/pull/51867) - Improved external resize band positioning and scaling for frameless windows on Windows. [#&#8203;51561](https://github.com/electron/electron/pull/51561) <sup>(Also in [41](https://github.com/electron/electron/pull/51560), [43](https://github.com/electron/electron/pull/51552))</sup> #### Other Changes - Fixed silent data truncation in `Buffer`/`TextEncoder` APIs and a crash in `fs.writeFileSync` with non-ASCII strings on Apple Silicon. [#&#8203;51849](https://github.com/electron/electron/pull/51849) <sup>(Also in [41](https://github.com/electron/electron/pull/51851), [43](https://github.com/electron/electron/pull/51850))</sup> - Improved app startup performance — the main process now boots from an embedded Node.js startup snapshot, framework bundles and preload scripts are cached as compiled V8 bytecode, and sandboxed renderer startup data is pushed ahead of navigation instead of fetched via blocking IPC. Preload stack traces now show the correct file path and line number. [#&#8203;51831](https://github.com/electron/electron/pull/51831) <sup>(Also in [43](https://github.com/electron/electron/pull/51792))</sup> ### [`v42.3.2`](https://github.com/electron/electron/releases/tag/v42.3.2): electron v42.3.2 [Compare Source](https://github.com/electron/electron/compare/v42.3.1...v42.3.2) ### Release Notes for v42.3.2 - Fixed a crash in `simdutf` when processing strings in the main process ### [`v42.3.1`](https://github.com/electron/electron/releases/tag/v42.3.1): electron v42.3.1 [Compare Source](https://github.com/electron/electron/compare/v42.3.0...v42.3.1) ### Release Notes for v42.3.1 #### Fixes - Fixed a `desktopCapturer` crash when sharing a window on Windows. [#&#8203;51787](https://github.com/electron/electron/pull/51787) #### Other Changes - Enabled ThinLTO on macOS builds. [#&#8203;51823](https://github.com/electron/electron/pull/51823) <sup>(Also in [43](https://github.com/electron/electron/pull/51819))</sup> - Improved performance of Linux and Windows release builds by enabling ThinLTO link-time optimization for the main Electron binary. [#&#8203;51821](https://github.com/electron/electron/pull/51821) <sup>(Also in [43](https://github.com/electron/electron/pull/51820))</sup> - Improved performance of `app.isDefaultProtocolClient()` and `app.setAsDefaultProtocolClient()` on Linux. [#&#8203;51627](https://github.com/electron/electron/pull/51627) - Improved runtime performance. [#&#8203;51828](https://github.com/electron/electron/pull/51828) - Updated Chromium to 148.0.7778.218. [#&#8203;51790](https://github.com/electron/electron/pull/51790) ### [`v42.3.0`](https://github.com/electron/electron/releases/tag/v42.3.0): electron v42.3.0 [Compare Source](https://github.com/electron/electron/compare/v42.2.0...v42.3.0) ### Release Notes for v42.3.0 #### Features - Added Linux support for `app.getApplicationInfoForProtocol()`. [#&#8203;51680](https://github.com/electron/electron/pull/51680) - Added Notification.remove(), removeAll(), and removeGroup() static methods for macOS. [#&#8203;51691](https://github.com/electron/electron/pull/51691) <sup>(Also in [43](https://github.com/electron/electron/pull/51690))</sup> - Added session support to net module requests from utility process. [#&#8203;51698](https://github.com/electron/electron/pull/51698) #### Fixes - Fixed an issue where `process` and other Node globals were undefined in ESM preload scripts when `contextIsolation` was disabled. [#&#8203;51726](https://github.com/electron/electron/pull/51726) <sup>(Also in [43](https://github.com/electron/electron/pull/51723))</sup> - Fixed native addon compilation failure with undefined msvc intrinsic from v8 headers. [#&#8203;51706](https://github.com/electron/electron/pull/51706) <sup>(Also in [43](https://github.com/electron/electron/pull/51705))</sup> #### Other Changes - Updated Chromium to 148.0.7778.180. [#&#8203;51600](https://github.com/electron/electron/pull/51600) ### [`v42.2.0`](https://github.com/electron/electron/releases/tag/v42.2.0): electron v42.2.0 [Compare Source](https://github.com/electron/electron/compare/v42.1.0...v42.2.0) ### Release Notes for v42.2.0 #### Features - Allowed the `--experimental-inspector-network-resource` Node.js flag to be passed through Electron. [#&#8203;51378](https://github.com/electron/electron/pull/51378) <sup>(Also in [41](https://github.com/electron/electron/pull/51377))</sup> #### Fixes - Fixed crash for Notification close. [#&#8203;51657](https://github.com/electron/electron/pull/51657) <sup>(Also in [41](https://github.com/electron/electron/pull/51656), [43](https://github.com/electron/electron/pull/51655))</sup> #### Other Changes - Backported fixes for a use-after-free in touch-event queue teardown, a runtime-effect validation gap in Skia image filters, and an integer overflow in the GLSL translator. [#&#8203;51646](https://github.com/electron/electron/pull/51646) - Backported fixes for an out-of-bounds write in WebAudio worklet setup, a heap overflow in the ANGLE GL backend, a use-after-free in the GTK Wayland platform, an accessibility tree-state validation issue, and an integer overflow in text bidi handling. [#&#8203;51666](https://github.com/electron/electron/pull/51666) - Improved performance of `app.getApplicationNameForProtocol()` on Linux. [#&#8203;51628](https://github.com/electron/electron/pull/51628) #### Documentation - Documentation changes: [#&#8203;51688](https://github.com/electron/electron/pull/51688) ### [`v42.1.0`](https://github.com/electron/electron/releases/tag/v42.1.0): electron v42.1.0 [Compare Source](https://github.com/electron/electron/compare/v42.0.1...v42.1.0) ### Release Notes for v42.1.0 #### Fixes - Fixed a crash in the macOS Touch ID WebAuthn prompt caused by a missing string resource, and added `touchID.promptReason` to `app.configureWebAuthn()` to customize the prompt text. [#&#8203;51594](https://github.com/electron/electron/pull/51594) <sup>(Also in [41](https://github.com/electron/electron/pull/51604), [43](https://github.com/electron/electron/pull/51595))</sup> - Fixed a crash on MacOS when a user clicked into a title bar or top view. [#&#8203;51605](https://github.com/electron/electron/pull/51605) <sup>(Also in [43](https://github.com/electron/electron/pull/51606))</sup> #### Other Changes - Improved performance of `webRequest` header conversions and several other gin converter hot paths. [#&#8203;51607](https://github.com/electron/electron/pull/51607) <sup>(Also in [43](https://github.com/electron/electron/pull/51608))</sup> - Improved performance of native event emission, IPC dispatch, and option-dictionary parsing. [#&#8203;51614](https://github.com/electron/electron/pull/51614) <sup>(Also in [41](https://github.com/electron/electron/pull/51613))</sup> ### [`v42.0.1`](https://github.com/electron/electron/releases/tag/v42.0.1): electron v42.0.1 [Compare Source](https://github.com/electron/electron/compare/v42.0.0...v42.0.1) ### Release Notes for v42.0.1 #### Fixes - Fixed DesktopCapturer crash on macOS. [#&#8203;51506](https://github.com/electron/electron/pull/51506) - Fixed ELECTRON_INSTALL_PLATFORM being ignored when resolving the Electron executable path during postinstall, which caused path.txt to be written for the host platform instead of the requested target and made isInstalled() always re-download on subsequent installs. [#&#8203;51370](https://github.com/electron/electron/pull/51370) - Fixed `app.getLoginItemSettings()` returning `undefined` for `executableWillLaunchAtLogin` on macOS; the property is now always a boolean. [#&#8203;51507](https://github.com/electron/electron/pull/51507) <sup>(Also in [40](https://github.com/electron/electron/pull/51509), [41](https://github.com/electron/electron/pull/51508))</sup> - Fixed a potential race condition crash when closing DevTools. [#&#8203;51473](https://github.com/electron/electron/pull/51473) <sup>(Also in [41](https://github.com/electron/electron/pull/51474))</sup> #### Other Changes - Updated Chromium to 148.0.7778.97. [#&#8203;51517](https://github.com/electron/electron/pull/51517) ### [`v42.0.0`](https://github.com/electron/electron/releases/tag/v42.0.0): electron v42.0.0 [Compare Source](https://github.com/electron/electron/compare/v41.10.7...v42.0.0) ### Release Notes for v42.0.0 #### Stack Upgrades - Chromium `148.0.7778.96` - [New in 148](https://developer.chrome.com/blog/new-in-chrome-148/) - [New in 147](https://developer.chrome.com/blog/new-in-chrome-147/) - Node `v24.15.0` - [Node 24.15.0 blog post](https://nodejs.org/en/blog/release/v24.15.0/) - V8 `14.8` #### Breaking Changes ##### Behavior Changed: macOS notifications now use `UNNotification` API Electron has migrated from the deprecated `NSUserNotification` API to the `UNNotification` API on macOS. The new API requires that an application be code-signed in order for notifications to be displayed. If an application is not code-signed, notifications will emit a `failed` event on the `Notification` object. [#&#8203;47817](https://github.com/electron/electron/pull/47817) ##### Behavior Changed: `electron` no longer downloads itself via `postinstall` script Previously, the `electron` npm package would download the Electron binary from the repository's GitHub Releases in the package's `postinstall` script. With recent supply chain security attacks against the npm ecosystem with `postinstall` scripts as a common attack vector, Electron will now download itself dynamically the first time that its main `bin` script is run (e.g. via `npx electron`). See [RFC #&#8203;22](https://github.com/electron/rfcs/pull/22) for more context. [#&#8203;49328](https://github.com/electron/electron/pull/49328) ##### Behavior Changed: Offscreen rendering default device scale factor Previously, OSR used the primary display's device scale factor for rendering. Starting from Electron 42, the default changes to a constant value of `1.0` for more consistent output sizes. Use `webPreferences.offscreen.deviceScaleFactor` to specify a custom value. [#&#8203;49683](https://github.com/electron/electron/pull/49683) ##### Removed: `quotas` object from `Session.clearStorageData(options)` When calling `Session.clearStorageData(options)`, the `options.quotas` object is no longer supported because it has been removed from upstream Chromium. ##### Removed: `ELECTRON_SKIP_BINARY_DOWNLOAD` environment variable This environment variable is no longer supported due to the new lazy download behavior. [#&#8203;50459](https://github.com/electron/electron/pull/50459) #### Features ##### Additions - Added `app.configureWebAuthn({ touchID: { keychainAccessGroup } })` to enable the WebAuthn Touch ID platform authenticator on macOS. Also introduces a `select-webauthn-account` session event for discoverable-credential selection. [#&#8203;51411](https://github.com/electron/electron/pull/51411) (Also in 41) - Added `Notification.getHistory()` for macOS. [#&#8203;51123](https://github.com/electron/electron/pull/51123) - Added `Notification.handleActivation(callback)` API on Windows to handle notification clicks, replies, and action buttons - including when the app is launched from a notification (cold start). [#&#8203;49919](https://github.com/electron/electron/pull/49919) - Added `ELECTRON_INSTALL_PLATFORM` and `ELECTRON_INSTALL_ARCH` variables to install binaries from other platforms and architectures. [#&#8203;49981](https://github.com/electron/electron/pull/49981) - Added `allowExtensions` privilege to `protocol.registerSchemesAsPrivileged()` to enable Chrome extensions on custom protocols. [#&#8203;50530](https://github.com/electron/electron/pull/50530) <sup>(Also in [40](https://github.com/electron/electron/pull/50588), [41](https://github.com/electron/electron/pull/50529))</sup> - Added `app.isActive()` to check if the app is the active/foreground application (macOS only). [#&#8203;49622](https://github.com/electron/electron/pull/49622) - Added `globalShortcut.setSuspended()` and `globalShortcut.isSuspended()` methods to temporarily suspend and resume global shortcut handling. [#&#8203;50777](https://github.com/electron/electron/pull/50777) - Added `id` and `groupId` options to the Notification constructor on macOS. `id` allows custom identifiers for notifications, and `groupId` visually groups notifications together in Notification Center. [#&#8203;50304](https://github.com/electron/electron/pull/50304) - Added `webContents.getOrCreateDevToolsTargetId()`. [#&#8203;49733](https://github.com/electron/electron/pull/49733) <sup>(Also in [41](https://github.com/electron/electron/pull/50176))</sup> - Added a `disclaim` option to the UtilityProcess API to allow for TCC disclaiming on macOS. [#&#8203;49128](https://github.com/electron/electron/pull/49128) <sup>(Also in [39](https://github.com/electron/electron/pull/49696), [40](https://github.com/electron/electron/pull/49695), [41](https://github.com/electron/electron/pull/49693))</sup> - Added a `reason` property to the Notification 'closed' event on Windows to allow developers to know the reason the Notification was dismissed. [#&#8203;49913](https://github.com/electron/electron/pull/49913) <sup>(Also in [40](https://github.com/electron/electron/pull/50030), [41](https://github.com/electron/electron/pull/50029))</sup> - Added an `usePrinterDefaultPageSize` option to `webContents.print()` to allow using the printer's default page size. [#&#8203;49523](https://github.com/electron/electron/pull/49523) <sup>(Also in [41](https://github.com/electron/electron/pull/49812))</sup> - Added animation functionality to `view.setBounds` and added `view.setBackgroundBlur`. [#&#8203;48812](https://github.com/electron/electron/pull/48812) - Added id, groupId, and groupTitle support for Windows notifications. [#&#8203;50895](https://github.com/electron/electron/pull/50895) - Added `nativeTheme.shouldDifferentiateWithoutColor` on macOS. [#&#8203;50409](https://github.com/electron/electron/pull/50409) <sup>(Also in [41](https://github.com/electron/electron/pull/50408))</sup> - Added support for MSIX auto-updating. [#&#8203;49230](https://github.com/electron/electron/pull/49230) <sup>(Also in [39](https://github.com/electron/electron/pull/49585), [40](https://github.com/electron/electron/pull/49587), [41](https://github.com/electron/electron/pull/49586))</sup> - Added support for `--experimental-transform-types`. [#&#8203;49711](https://github.com/electron/electron/pull/49711) <sup>(Also in [39](https://github.com/electron/electron/pull/49881), [40](https://github.com/electron/electron/pull/49883), [41](https://github.com/electron/electron/pull/49882))</sup> - Added support for `long-animation-frame` script attribution (via `--enable-features=AlwaysLogLOAFURL`). [#&#8203;49706](https://github.com/electron/electron/pull/49706) <sup>(Also in [39](https://github.com/electron/electron/pull/49771), [40](https://github.com/electron/electron/pull/49772), [41](https://github.com/electron/electron/pull/49773))</sup> - Added support for heap profiling in `contentTracing`. [#&#8203;51162](https://github.com/electron/electron/pull/51162) (Also in 41) - Added support for importing shared textures using the nv16 pixel format. [#&#8203;51187](https://github.com/electron/electron/pull/51187) - Added support for importing shared textures using the p010le 10-bit YUV pixel format. [#&#8203;49272](https://github.com/electron/electron/pull/49272) - Added support for several more `safeStorage` backends via new asynchronous functionality in safeStorage. [#&#8203;49054](https://github.com/electron/electron/pull/49054) - Added support for the `urgency` option in Notifications on Windows. [#&#8203;50383](https://github.com/electron/electron/pull/50383) <sup>(Also in [41](https://github.com/electron/electron/pull/50382))</sup> - Added the ability to capture JS stack trace on renderer OOM. [#&#8203;50911](https://github.com/electron/electron/pull/50911) - Added the ability to disable auto-focusing of WebContents on navigation using `webPreferences.focusOnNavigation`. [#&#8203;49425](https://github.com/electron/electron/pull/49425) <sup>(Also in [40](https://github.com/electron/electron/pull/49512), [41](https://github.com/electron/electron/pull/49511))</sup> - Electron now downloads its binary into `node_modules` dynamically on first launch instead of running a `postinstall` script. Added the `install-electron` script to manually trigger the download as well. [#&#8203;49328](https://github.com/electron/electron/pull/49328) - Enabled wasm trap handlers behind `WasmTrapHandlers` [fuse](https://www.electronjs.org/docs/latest/tutorial/fuses). [#&#8203;48983](https://github.com/electron/electron/pull/48983) <sup>(Also in [41](https://github.com/electron/electron/pull/49839))</sup> - Extended actions support for Windows notifications to include buttons, select dropdowns, and replies. [#&#8203;48132](https://github.com/electron/electron/pull/48132) <sup>(Also in [40](https://github.com/electron/electron/pull/49786), [41](https://github.com/electron/electron/pull/49787))</sup> - On Wayland (Linux), frameless windows now have GTK drop shadows and extended resize boundaries. To create fully frameless windows with no decorations, set `hasShadow: false` in the window constructor. [#&#8203;49295](https://github.com/electron/electron/pull/49295) <sup>(Also in [41](https://github.com/electron/electron/pull/49885))</sup> - Replaced deprecated NSUserNotification with User Notifications. [#&#8203;47817](https://github.com/electron/electron/pull/47817) #### Fixes - Added additional ASAR support to additional `fs` copy methods. [#&#8203;50285](https://github.com/electron/electron/pull/50285) <sup>(Also in [39](https://github.com/electron/electron/pull/50284), [40](https://github.com/electron/electron/pull/50287), [41](https://github.com/electron/electron/pull/50286))</sup> - Added crash keys to diagnose power monitor shutdown crash on arm64 windows. [#&#8203;51205](https://github.com/electron/electron/pull/51205) - Added missing `metadata` fields to `contentTracing` traces. [#&#8203;51007](https://github.com/electron/electron/pull/51007) <sup>(Also in [41](https://github.com/electron/electron/pull/51021))</sup> - Added validation to protocol client methods to reject protocol names that do not conform to the RFC 3986 URI scheme grammar. [#&#8203;50141](https://github.com/electron/electron/pull/50141) <sup>(Also in [38](https://github.com/electron/electron/pull/50157), [39](https://github.com/electron/electron/pull/50156), [40](https://github.com/electron/electron/pull/50158), [41](https://github.com/electron/electron/pull/50155))</sup> - Addressed upstream Chromium shift to enable `CoreAudio Tap API` for audio capture used in electron's `desktopCapturer` (macOS). [#&#8203;49717](https://github.com/electron/electron/pull/49717) <sup>(Also in [39](https://github.com/electron/electron/pull/49740), [40](https://github.com/electron/electron/pull/49741), [41](https://github.com/electron/electron/pull/49739))</sup> - Allow dynamically updating menu item labels, sublabels, and icons. [#&#8203;49678](https://github.com/electron/electron/pull/49678) <sup>(Also in [40](https://github.com/electron/electron/pull/49973), [41](https://github.com/electron/electron/pull/49972))</sup> - BrowserWindow now enforces min/max size constraints on window creation, even if they conflict with the requested width and height. [#&#8203;50754](https://github.com/electron/electron/pull/50754) <sup>(Also in [41](https://github.com/electron/electron/pull/50753))</sup> - Changed the `kResizeThreshold` to trigger the resize on corners. [#&#8203;51001](https://github.com/electron/electron/pull/51001) <sup>(Also in [41](https://github.com/electron/electron/pull/51002))</sup> - Fixed `AllowUniversalAccessFromFileURLs` not being properly constrained to `file:` origins in agent cluster key assignment. [#&#8203;51404](https://github.com/electron/electron/pull/51404) - Fixed `corsEnabled: false` protocol handlers incorrectly working across protocols. [#&#8203;51269](https://github.com/electron/electron/pull/51269) (Also in 39, 40, 41) - Fixed `printToPDF` queue not resetting after a rejection. [#&#8203;51222](https://github.com/electron/electron/pull/51222) (Also in 40, 41) - Fixed `webContents.print()` not honoring `dpi` horizontal/vertical options. [#&#8203;51354](https://github.com/electron/electron/pull/51354) (Also in 41) - Fixed Electron child process titles on Linux so they show their types (render, gpu, etc.) and complete command-line arguments and flags in `ps aux`. [#&#8203;50533](https://github.com/electron/electron/pull/50533) - Fixed Fetch-intercepted requests using incorrect header client, which could cause request failures. [#&#8203;51372](https://github.com/electron/electron/pull/51372) (Also in 41) - Fixed `fs.stat` on files inside asar archives returning `undefined` for `blksize` and `blocks` instead of numeric values. [#&#8203;50877](https://github.com/electron/electron/pull/50877) <sup>(Also in [40](https://github.com/electron/electron/pull/50875), [41](https://github.com/electron/electron/pull/50876))</sup> - Fixed `globalShortcut` not working on Wayland with `GlobalShortcutsPortal` feature enabled. [#&#8203;49842](https://github.com/electron/electron/pull/49842) <sup>(Also in [40](https://github.com/electron/electron/pull/49870), [41](https://github.com/electron/electron/pull/49871))</sup> - Fixed a bug that cause offscreen rendering doesn't have valid screen info and unable to get valid result of related media queries. Added `webPreference.offscreen.deviceScaleFactor` to allow user specify a value. [#&#8203;48730](https://github.com/electron/electron/pull/48730) <sup>(Also in [40](https://github.com/electron/electron/pull/49681), [41](https://github.com/electron/electron/pull/50375))</sup> - Fixed a bug where Windows notification icons could fail to save because their temporary filenames contained invalid characters. [#&#8203;50482](https://github.com/electron/electron/pull/50482) <sup>(Also in [40](https://github.com/electron/electron/pull/50484), [41](https://github.com/electron/electron/pull/50483))</sup> - Fixed a crash in `AutofillPopup` teardown. [#&#8203;51317](https://github.com/electron/electron/pull/51317) (Also in 40, 41) - Fixed a crash in `clipboard.readImage()` when the clipboard contains malformed image data. [#&#8203;50494](https://github.com/electron/electron/pull/50494) <sup>(Also in [39](https://github.com/electron/electron/pull/50493), [40](https://github.com/electron/electron/pull/50491), [41](https://github.com/electron/electron/pull/50492))</sup> - Fixed a crash that could occur when using the File System Access API. [#&#8203;49578](https://github.com/electron/electron/pull/49578) <sup>(Also in [39](https://github.com/electron/electron/pull/49634), [40](https://github.com/electron/electron/pull/49635), [41](https://github.com/electron/electron/pull/49636))</sup> - Fixed a crash when calling `contentTracing` APIs before app is ready. [#&#8203;51353](https://github.com/electron/electron/pull/51353) (Also in 41) - Fixed a crash when calling `contentTracing.getTraceBufferUsage()` while a trace session is active. [#&#8203;50592](https://github.com/electron/electron/pull/50592) <sup>(Also in [39](https://github.com/electron/electron/pull/50595), [40](https://github.com/electron/electron/pull/50593), [41](https://github.com/electron/electron/pull/50594))</sup> - Fixed a crash when calling `webRequest.onBeforeSendHeaders` with invalid header names or values. [#&#8203;51366](https://github.com/electron/electron/pull/51366) (Also in 40, 41) - Fixed a crash when calling an offscreen shared texture's `release()` after the texture object was garbage collected. [#&#8203;50502](https://github.com/electron/electron/pull/50502) <sup>(Also in [39](https://github.com/electron/electron/pull/50499), [40](https://github.com/electron/electron/pull/50500), [41](https://github.com/electron/electron/pull/50501))</sup> - Fixed a crash when rendering PDFs when Site Isolation is disabled. [#&#8203;50846](https://github.com/electron/electron/pull/50846) <sup>(Also in [41](https://github.com/electron/electron/pull/50845))</sup> - Fixed a crash caused by missing `MicrotasksScope` for worker exit emit in `ContextWillDestroy`. [#&#8203;51350](https://github.com/electron/electron/pull/51350) (Also in 40, 41) - Fixed a crash when the `<permission>` element was used, by including permission element string resources in locale paks. [#&#8203;51374](https://github.com/electron/electron/pull/51374) (Also in 41) - Fixed a macOS crash when creating a new tab from the tab overview. [#&#8203;49917](https://github.com/electron/electron/pull/49917) <sup>(Also in [40](https://github.com/electron/electron/pull/49934), [41](https://github.com/electron/electron/pull/49933))</sup> - Fixed a memory leak where Menu items were not cleaned up after Menu.setApplicationMenu was called repeatedly. [#&#8203;50832](https://github.com/electron/electron/pull/50832) <sup>(Also in [40](https://github.com/electron/electron/pull/50831), [41](https://github.com/electron/electron/pull/50830))</sup> - Fixed a potential crash when using `webContents.print()`. [#&#8203;50853](https://github.com/electron/electron/pull/50853) - Fixed absent 'Electron Isolated Context' in the execution context dropdown in Dev Tools. [#&#8203;51079](https://github.com/electron/electron/pull/51079) <sup>(Also in [41](https://github.com/electron/electron/pull/51078))</sup> - Fixed an accessibility issue where the AXMenuOpened event was not fired on menu creation. [#&#8203;50504](https://github.com/electron/electron/pull/50504) <sup>(Also in [40](https://github.com/electron/electron/pull/50505), [41](https://github.com/electron/electron/pull/50506))</sup> - Fixed an application crash on MacOS where the menu observer was not being properly removed before garbage collection. [#&#8203;49648](https://github.com/electron/electron/pull/49648) <sup>(Also in [40](https://github.com/electron/electron/pull/49657), [41](https://github.com/electron/electron/pull/49658))</sup> - Fixed an error with Windows release builds after MSIX merger. [#&#8203;49613](https://github.com/electron/electron/pull/49613) - Fixed an intermittent `Invoke in DisallowJavascriptExecutionScope` crash on application quit when a `WebContents` (or other JS-emitting native object) is garbage-collected during shutdown. [#&#8203;50695](https://github.com/electron/electron/pull/50695) <sup>(Also in [40](https://github.com/electron/electron/pull/50693), [41](https://github.com/electron/electron/pull/50694))</sup> - Fixed an issue in `chrome://accessibility`. [#&#8203;49547](https://github.com/electron/electron/pull/49547) <sup>(Also in [39](https://github.com/electron/electron/pull/49559), [40](https://github.com/electron/electron/pull/49560), [41](https://github.com/electron/electron/pull/49561))</sup> - Fixed an issue on macOS where Universal Links were not delivered to `app.on('continue-activity')` on cold launch when `NSUserActivity.userInfo` was nil. [#&#8203;49986](https://github.com/electron/electron/pull/49986) <sup>(Also in [39](https://github.com/electron/electron/pull/50004), [40](https://github.com/electron/electron/pull/50005), [41](https://github.com/electron/electron/pull/50006))</sup> - Fixed an issue on macOS where `show`/`hide` events and `WebContents` visibility state could be reported incorrectly when multiple `WebContentsView`s were attached to a window. [#&#8203;50712](https://github.com/electron/electron/pull/50712) <sup>(Also in [40](https://github.com/electron/electron/pull/50713), [41](https://github.com/electron/electron/pull/50715))</sup> - Fixed an issue on macOS where calling `autoUpdater.quitAndInstall()` could fail if `checkForUpdates()` was called again after an update was already downloaded. [#&#8203;50210](https://github.com/electron/electron/pull/50210) <sup>(Also in [39](https://github.com/electron/electron/pull/50215), [40](https://github.com/electron/electron/pull/50216), [41](https://github.com/electron/electron/pull/50217))</sup> - Fixed an issue that caused the RGBAF16 shared texture format to have a keyed mutex on Windows. [#&#8203;49798](https://github.com/electron/electron/pull/49798) <sup>(Also in [41](https://github.com/electron/electron/pull/49876))</sup> - Fixed an issue where Chrome Devtools menus may not appear in certain embedded windows. [#&#8203;49794](https://github.com/electron/electron/pull/49794) <sup>(Also in [39](https://github.com/electron/electron/pull/50136), [40](https://github.com/electron/electron/pull/50138), [41](https://github.com/electron/electron/pull/50137))</sup> - Fixed an issue where DevTools would re-attach to the window when opened after previously being detached. [#&#8203;50815](https://github.com/electron/electron/pull/50815) <sup>(Also in [39](https://github.com/electron/electron/pull/50818), [40](https://github.com/electron/electron/pull/50817), [41](https://github.com/electron/electron/pull/50816))</sup> - Fixed an issue where `VideoFrame` objects returned through `contextBridge` had an incorrect prototype. [#&#8203;49997](https://github.com/electron/electron/pull/49997) <sup>(Also in [39](https://github.com/electron/electron/pull/50021), [40](https://github.com/electron/electron/pull/50022), [41](https://github.com/electron/electron/pull/50023))</sup> - Fixed an issue where `additionalData` passed to `app.requestSingleInstanceLock` on Windows could be truncated or fail to deserialize in the primary instance's `second-instance` event. [#&#8203;50119](https://github.com/electron/electron/pull/50119) <sup>(Also in [38](https://github.com/electron/electron/pull/50177), [39](https://github.com/electron/electron/pull/50174), [40](https://github.com/electron/electron/pull/50162), [41](https://github.com/electron/electron/pull/50154))</sup> - Fixed an issue where `net.fetch()` requests in the main process and utility processes would permanently fail with `net::ERR_FAILED` after the Network Service process crashed and restarted. [#&#8203;49887](https://github.com/electron/electron/pull/49887) - Fixed an issue where `nodeIntegrationInWorker` didn't always work in AudioWorklet. [#&#8203;51005](https://github.com/electron/electron/pull/51005) <sup>(Also in [40](https://github.com/electron/electron/pull/51004), [41](https://github.com/electron/electron/pull/51006))</sup> - Fixed an issue where `nodeIntegrationInWorker` overrides in `setWindowOpenHandler` were not honored for child windows sharing a renderer process with their opener. [#&#8203;50122](https://github.com/electron/electron/pull/50122) <sup>(Also in [38](https://github.com/electron/electron/pull/50163), [39](https://github.com/electron/electron/pull/50468), [40](https://github.com/electron/electron/pull/50467), [41](https://github.com/electron/electron/pull/50134))</sup> - Fixed an issue where `screen.getCursorScreenPoint()` crashed on Wayland when it was called before a `BrowserWindow` had been created. [#&#8203;50092](https://github.com/electron/electron/pull/50092) <sup>(Also in [39](https://github.com/electron/electron/pull/50106), [40](https://github.com/electron/electron/pull/50104), [41](https://github.com/electron/electron/pull/50105))</sup> - Fixed an issue where `setSimpleFullScreen` on macOS would exit when web content called `requestFullscreen()`. [#&#8203;50987](https://github.com/electron/electron/pull/50987) <sup>(Also in [40](https://github.com/electron/electron/pull/50986), [41](https://github.com/electron/electron/pull/50985))</sup> - Fixed an issue where `shell.writeShortcutLink` was throwing `TypeError: Insufficient number of arguments` when called with just `[(path, options)]`. [#&#8203;49476](https://github.com/electron/electron/pull/49476) <sup>(Also in [39](https://github.com/electron/electron/pull/49502), [40](https://github.com/electron/electron/pull/49501), [41](https://github.com/electron/electron/pull/49503))</sup> - Fixed an issue where alt+space triggered the system context menu even if an accelerator was registered for the hotkey combination. [#&#8203;49619](https://github.com/electron/electron/pull/49619) <sup>(Also in [39](https://github.com/electron/electron/pull/49641), [40](https://github.com/electron/electron/pull/49640), [41](https://github.com/electron/electron/pull/49642))</sup> - Fixed an issue where an Electron auto-update job would occasionally fail if a macOS system update is pending. [#&#8203;51111](https://github.com/electron/electron/pull/51111) - Fixed an issue where an Electron macOS update would not be applied if another app was previously blocking the macOS system update loop. [#&#8203;51212](https://github.com/electron/electron/pull/51212) <sup>(Also in [40](https://github.com/electron/electron/pull/51211), [41](https://github.com/electron/electron/pull/51210))</sup> - Fixed an issue where an app shortcut may lose its icon after auto-updating on Windows. [#&#8203;50517](https://github.com/electron/electron/pull/50517) <sup>(Also in [40](https://github.com/electron/electron/pull/50518), [41](https://github.com/electron/electron/pull/50519))</sup> - Fixed an issue where calling `setBounds` on a `WebContentsView` could trigger redundant `page-favicon-updated` events even when the favicon had not changed. [#&#8203;49464](https://github.com/electron/electron/pull/49464) <sup>(Also in [39](https://github.com/electron/electron/pull/50086), [40](https://github.com/electron/electron/pull/50084), [41](https://github.com/electron/electron/pull/50085))</sup> - Fixed an issue where closing devtools immediately after focus caused a crash. [#&#8203;51036](https://github.com/electron/electron/pull/51036) <sup>(Also in [41](https://github.com/electron/electron/pull/51037))</sup> - Fixed an issue where concurrent `getFileHandle` requests on the same path could stall indefinitely. [#&#8203;50671](https://github.com/electron/electron/pull/50671) <sup>(Also in [40](https://github.com/electron/electron/pull/50672), [41](https://github.com/electron/electron/pull/50670))</sup> - Fixed an issue where cookie changed events weren't properly emitted in all cases. [#&#8203;49103](https://github.com/electron/electron/pull/49103) <sup>(Also in [41](https://github.com/electron/electron/pull/49631))</sup> - Fixed an issue where custom options in `webContents.print()` did not prefill the print dialog on macOS. [#&#8203;50643](https://github.com/electron/electron/pull/50643) - Fixed an issue where frameless windows had resize issues in Mac App Store builds. [#&#8203;49780](https://github.com/electron/electron/pull/49780) <sup>(Also in [39](https://github.com/electron/electron/pull/49861), [40](https://github.com/electron/electron/pull/49856), [41](https://github.com/electron/electron/pull/49857))</sup> - Fixed an issue where invalid characters in custom protocol or webRequest response header values were not rejected. [#&#8203;50123](https://github.com/electron/electron/pull/50123) <sup>(Also in [38](https://github.com/electron/electron/pull/50130), [39](https://github.com/electron/electron/pull/50129), [40](https://github.com/electron/electron/pull/50131), [41](https://github.com/electron/electron/pull/50132))</sup> - Fixed an issue where making a window fullscreen on Windows, minimizing it and then restoring it broke previous fullscreen state. [#&#8203;49872](https://github.com/electron/electron/pull/49872) <sup>(Also in [40](https://github.com/electron/electron/pull/49892), [41](https://github.com/electron/electron/pull/49891))</sup> - Fixed an issue where malformed custom `toastXml` could cause a Notification crash. [#&#8203;49947](https://github.com/electron/electron/pull/49947) <sup>(Also in [40](https://github.com/electron/electron/pull/49952), [41](https://github.com/electron/electron/pull/49953))</sup> - Fixed an issue where margins did not look as expected when printing in silent mode. [#&#8203;50653](https://github.com/electron/electron/pull/50653) <sup>(Also in [41](https://github.com/electron/electron/pull/50652))</sup> - Fixed an issue where menu item accelerators stopped working after the item's enabled property was toggled on macOS. [#&#8203;49553](https://github.com/electron/electron/pull/49553) <sup>(Also in [39](https://github.com/electron/electron/pull/49593), [40](https://github.com/electron/electron/pull/49592), [41](https://github.com/electron/electron/pull/49591))</sup> - Fixed an issue where menu item enabled state wasn't updated during key equivalent dispatch when the menu was closed on macOS. [#&#8203;49875](https://github.com/electron/electron/pull/49875) <sup>(Also in [39](https://github.com/electron/electron/pull/49888), [40](https://github.com/electron/electron/pull/49889), [41](https://github.com/electron/electron/pull/49890))</sup> - Fixed an issue where native modules would either crash or not compile for MacOS 12. [#&#8203;49697](https://github.com/electron/electron/pull/49697) <sup>(Also in [40](https://github.com/electron/electron/pull/49702), [41](https://github.com/electron/electron/pull/49703))</sup> - Fixed an issue where permission and device-chooser handlers received the top-level page origin instead of the requesting subframe's origin. [#&#8203;50052](https://github.com/electron/electron/pull/50052) <sup>(Also in [38](https://github.com/electron/electron/pull/50151), [39](https://github.com/electron/electron/pull/50147), [40](https://github.com/electron/electron/pull/50149), [41](https://github.com/electron/electron/pull/50148))</sup> - Fixed an issue where role-based menu items were incorrectly returning `null` for their accelerator property. [#&#8203;49558](https://github.com/electron/electron/pull/49558) <sup>(Also in [39](https://github.com/electron/electron/pull/49670), [40](https://github.com/electron/electron/pull/49669), [41](https://github.com/electron/electron/pull/49668))</sup> - Fixed an issue where saving edited PDF files would fail with a cross-origin SecurityError. [#&#8203;51072](https://github.com/electron/electron/pull/51072) <sup>(Also in [41](https://github.com/electron/electron/pull/51073))</sup> - Fixed an issue where setting `zoomFactor` in `setWindowOpenHandler`'s `overrideBrowserWindowOptions` had no effect on windows opened via `window.open()`. [#&#8203;49886](https://github.com/electron/electron/pull/49886) <sup>(Also in [39](https://github.com/electron/electron/pull/49910), [40](https://github.com/electron/electron/pull/49909), [41](https://github.com/electron/electron/pull/49911))</sup> - Fixed an issue where some DevTools functionality didn't work as expected. [#&#8203;50274](https://github.com/electron/electron/pull/50274) <sup>(Also in [40](https://github.com/electron/electron/pull/50275), [41](https://github.com/electron/electron/pull/50276))</sup> - Fixed an issue where some `shell` functionality may not work on Linux if the target window is already open. [#&#8203;49499](https://github.com/electron/electron/pull/49499) <sup>(Also in [41](https://github.com/electron/electron/pull/49594))</sup> - Fixed an issue where some packages weren't correctly filtered on macOS in dialogs. [#&#8203;49444](https://github.com/electron/electron/pull/49444) <sup>(Also in [38](https://github.com/electron/electron/pull/49471), [39](https://github.com/electron/electron/pull/49472), [40](https://github.com/electron/electron/pull/49473), [41](https://github.com/electron/electron/pull/49470))</sup> - Fixed an issue where the Squirrel.Mac installer could resolve the target bundle path to different locations at different stages of an install. [#&#8203;50765](https://github.com/electron/electron/pull/50765) - Fixed an issue where the `webContents.print()` callback may not fire correctly in some cases. [#&#8203;50603](https://github.com/electron/electron/pull/50603) <sup>(Also in [41](https://github.com/electron/electron/pull/50604))</sup> - Fixed an issue where traffic light buttons would flash at position (0,0) when restoring a window with a custom `trafficLightPosition` from minimization on macOS. [#&#8203;50183](https://github.com/electron/electron/pull/50183) <sup>(Also in [39](https://github.com/electron/electron/pull/50208), [40](https://github.com/electron/electron/pull/50207), [41](https://github.com/electron/electron/pull/50209))</sup> - Fixed an issue where webContents.print() would ignore pageSize / mediaSize when silent was true. [#&#8203;50855](https://github.com/electron/electron/pull/50855) <sup>(Also in [41](https://github.com/electron/electron/pull/50856))</sup> - Fixed an issue whereby a duplicate "Toggle Full Screen" menu item appeared in the View menu on macOS. [#&#8203;49074](https://github.com/electron/electron/pull/49074) <sup>(Also in [38](https://github.com/electron/electron/pull/49596), [39](https://github.com/electron/electron/pull/49597), [40](https://github.com/electron/electron/pull/49595), [41](https://github.com/electron/electron/pull/49598))</sup> - Fixed aspect ratio min/max size clamping to correctly account for extraSize on macOS. [#&#8203;50836](https://github.com/electron/electron/pull/50836) <sup>(Also in [40](https://github.com/electron/electron/pull/50834), [41](https://github.com/electron/electron/pull/50835))</sup> - Fixed borders and smearing in transparent frameless/client frame windows on Linux. [#&#8203;51430](https://github.com/electron/electron/pull/51430) (Also in 41) - Fixed bug that could occasionally cause browserWindow's `always-on-top-changed` event to fire with incorrect values. [#&#8203;51133](https://github.com/electron/electron/pull/51133) <sup>(Also in [40](https://github.com/electron/electron/pull/51134), [41](https://github.com/electron/electron/pull/51135))</sup> - Fixed bug where opening a message box immediately upon closing a child window may cause the parent window to freeze on Windows. [#&#8203;50078](https://github.com/electron/electron/pull/50078) <sup>(Also in [39](https://github.com/electron/electron/pull/50190), [40](https://github.com/electron/electron/pull/50189), [41](https://github.com/electron/electron/pull/50191))</sup> - Fixed build failure when printing is disabled. [#&#8203;50056](https://github.com/electron/electron/pull/50056) <sup>(Also in [41](https://github.com/electron/electron/pull/50077))</sup> - Fixed certain DevTools extension panels not showing without a page reload. [#&#8203;50640](https://github.com/electron/electron/pull/50640) - Fixed crash in platform_util::Beep() on Linux. [#&#8203;49442](https://github.com/electron/electron/pull/49442) <sup>(Also in [39](https://github.com/electron/electron/pull/49484), [40](https://github.com/electron/electron/pull/49482), [41](https://github.com/electron/electron/pull/49483))</sup> - Fixed crash when `app.setPath('sessionData')` was called with a non-existent directory. [#&#8203;50908](https://github.com/electron/electron/pull/50908) <sup>(Also in [41](https://github.com/electron/electron/pull/50958))</sup> - Fixed crash when handling JavaScript dialogs from windows opened with invalid or empty URLs. [#&#8203;50398](https://github.com/electron/electron/pull/50398) <sup>(Also in [39](https://github.com/electron/electron/pull/50400), [40](https://github.com/electron/electron/pull/50401), [41](https://github.com/electron/electron/pull/50399))</sup> - Fixed CSS selector syntax in default app styles to properly apply animations to hero icons. [#&#8203;49950](https://github.com/electron/electron/pull/49950) <sup>(Also in [41](https://github.com/electron/electron/pull/50033))</sup> - Fixed dependency issue that caused Squirrel.Mac updates to fail. [#&#8203;49980](https://github.com/electron/electron/pull/49980) - Fixed dock menu items not respecting enabled and checked properties on macOS. [#&#8203;49574](https://github.com/electron/electron/pull/49574) <sup>(Also in [38](https://github.com/electron/electron/pull/49627), [39](https://github.com/electron/electron/pull/49626), [40](https://github.com/electron/electron/pull/49624), [41](https://github.com/electron/electron/pull/49625))</sup> - Fixed draggable regions not updating position when DevTools is docked to the left or right in a frameless window. [#&#8203;49822](https://github.com/electron/electron/pull/49822) <sup>(Also in [39](https://github.com/electron/electron/pull/49846), [40](https://github.com/electron/electron/pull/49847), [41](https://github.com/electron/electron/pull/49848))</sup> - Fixed draggable regions responding to clicks in hidden `WebContentsView`. [#&#8203;51245](https://github.com/electron/electron/pull/51245) (Also in 40, 41) - Fixed duplicate mouse hooks stacking on Windows when `UnhookWindowsHookEx` fails in `SetForwardMouseMessages`. [#&#8203;51418](https://github.com/electron/electron/pull/51418) (Also in 41) - Fixed improper focus tracking in BaseWindow on MacOS. [#&#8203;50339](https://github.com/electron/electron/pull/50339) <sup>(Also in [39](https://github.com/electron/electron/pull/50338), [40](https://github.com/electron/electron/pull/50337), [41](https://github.com/electron/electron/pull/50340))</sup> - Fixed logic bug that rendered certain window types un-resizable on MAS builds. [#&#8203;50356](https://github.com/electron/electron/pull/50356) <sup>(Also in [40](https://github.com/electron/electron/pull/50355), [41](https://github.com/electron/electron/pull/50354))</sup> - Fixed macOS text replacement not working on `contenteditable` elements. [#&#8203;51344](https://github.com/electron/electron/pull/51344) (Also in 40, 41) - Fixed memory leak when setting icons on Linux/GTK. [#&#8203;49863](https://github.com/electron/electron/pull/49863) <sup>(Also in [38](https://github.com/electron/electron/pull/49897), [39](https://github.com/electron/electron/pull/49896), [40](https://github.com/electron/electron/pull/49898), [41](https://github.com/electron/electron/pull/49895))</sup> - Fixed menu bar hiding after a call to `win.setFullScreen(false)` when not in fullscreen on Linux. [#&#8203;45930](https://github.com/electron/electron/pull/45930) <sup>(Also in [39](https://github.com/electron/electron/pull/49995), [40](https://github.com/electron/electron/pull/49994), [41](https://github.com/electron/electron/pull/49996))</sup> - Fixed menus to correctly emit `menu-will-close` event when closed after any submenu has been open. [#&#8203;49783](https://github.com/electron/electron/pull/49783) <sup>(Also in [40](https://github.com/electron/electron/pull/49963), [41](https://github.com/electron/electron/pull/49964))</sup> - Fixed native notification clicks not focusing the application window on Wayland. [#&#8203;50669](https://github.com/electron/electron/pull/50669) - Fixed printing on Linux failing with "Invalid printer settings". [#&#8203;50487](https://github.com/electron/electron/pull/50487) <sup>(Also in [41](https://github.com/electron/electron/pull/50486))</sup> - Fixed rendering glitches on macOS. [#&#8203;49608](https://github.com/electron/electron/pull/49608) <sup>(Also in [40](https://github.com/electron/electron/pull/49609), [41](https://github.com/electron/electron/pull/49621))</sup> - Fixed resize hit targets for frameless windows on Windows. Resize targets now start at the side and bottom edges of the window and extend outward when `frame: false`, matching the behavior for windows with frames. [#&#8203;50864](https://github.com/electron/electron/pull/50864) <sup>(Also in [41](https://github.com/electron/electron/pull/50863))</sup> - Fixed several issues with consistent window sizing and resizing on Linux when CSD is in use (e.g. on GNOME/Wayland) and added support for creating content-sized windows. [#&#8203;49209](https://github.com/electron/electron/pull/49209) <sup>(Also in [41](https://github.com/electron/electron/pull/49835))</sup> - Fixed shutdown crash on windows when hidden titlebar is enabled. [#&#8203;50042](https://github.com/electron/electron/pull/50042) <sup>(Also in [39](https://github.com/electron/electron/pull/50054), [40](https://github.com/electron/electron/pull/50053), [41](https://github.com/electron/electron/pull/50055))</sup> - Fixed shutdown crash on windows when power monitor notifications were subscribed. [#&#8203;50893](https://github.com/electron/electron/pull/50893) - Fixed squirrel.mac stacked update behavior to old staged updates. [#&#8203;49365](https://github.com/electron/electron/pull/49365) <sup>(Also in [39](https://github.com/electron/electron/pull/49637), [40](https://github.com/electron/electron/pull/49638), [41](https://github.com/electron/electron/pull/49639))</sup> - Fixed stable bounds on Windows when toggling `setResizable` for frameless windows. [#&#8203;51296](https://github.com/electron/electron/pull/51296) (Also in 41) - Fixed startup crash when V8 sandbox is disabled. [#&#8203;49210](https://github.com/electron/electron/pull/49210) <sup>(Also in [40](https://github.com/electron/electron/pull/49884), [41](https://github.com/electron/electron/pull/49504))</sup> - Fixed test scaffolding bug when running tests locally on Linux. [#&#8203;51149](https://github.com/electron/electron/pull/51149) <sup>(Also in [40](https://github.com/electron/electron/pull/51151), [41](https://github.com/electron/electron/pull/51150))</sup> - Fixed the appearance of maximized windows on GNOME in Wayland, especially when non-default GTK themes like Breeze are set. [#&#8203;50644](https://github.com/electron/electron/pull/50644) <sup>(Also in [41](https://github.com/electron/electron/pull/50645))</sup> - Fixed the crash keys being lost and the crash reporter hanging on macOS when many dynamic crash keys were registered. [#&#8203;50839](https://github.com/electron/electron/pull/50839) <sup>(Also in [40](https://github.com/electron/electron/pull/50838), [41](https://github.com/electron/electron/pull/50837))</sup> - Fixed transparency being lost across `setResizable` toggles on Windows. [#&#8203;51218](https://github.com/electron/electron/pull/51218) (Also in 41) - Fixed user resizing of transparent windows on win32 platform. [#&#8203;50299](https://github.com/electron/electron/pull/50299) <sup>(Also in [39](https://github.com/electron/electron/pull/50300), [40](https://github.com/electron/electron/pull/50301), [41](https://github.com/electron/electron/pull/50298))</sup> - Fixed utilityProcess exit event reporting incorrect exit codes on Windows when the exit code has the high bit. [#&#8203;50385](https://github.com/electron/electron/pull/50385) <sup>(Also in [40](https://github.com/electron/electron/pull/50387), [41](https://github.com/electron/electron/pull/50386))</sup> - Fixed webRequest handlers not being called for intercepted protocols and special net.fetch URLs. [#&#8203;45915](https://github.com/electron/electron/pull/45915) - Fixed window freeze when failing to enter/exit fullscreen on macOS. [#&#8203;50342](https://github.com/electron/electron/pull/50342) <sup>(Also in [39](https://github.com/electron/electron/pull/50341), [40](https://github.com/electron/electron/pull/50344), [41](https://github.com/electron/electron/pull/50343))</sup> - Fixed window insets not being removed on fullscreen windows on Windows. [#&#8203;51331](https://github.com/electron/electron/pull/51331) (Also in 41) - Fixed window sizing on Linux when min/max size constraints are set or `resizable` is `false`. Windows no longer shrink below the requested max size or grow taller when resizability is disabled. [#&#8203;49903](https://github.com/electron/electron/pull/49903) <sup>(Also in [41](https://github.com/electron/electron/pull/49971))</sup> - Fixed Windows notification toast action and reply events not dispatching from WinRT activation path. [#&#8203;51330](https://github.com/electron/electron/pull/51330) (Also in 41) - Global shortcuts can now be registered more reliably on Wayland using the `globalShortcut` API. [#&#8203;49988](https://github.com/electron/electron/pull/49988) <sup>(Also in [41](https://github.com/electron/electron/pull/50051))</sup> - Improved the appearance of shadows and borders on frameless windows on Wayland. [#&#8203;50007](https://github.com/electron/electron/pull/50007) <sup>(Also in [41](https://github.com/electron/electron/pull/50213))</sup> - Moved Electron-specific help menu links to the default app only; unpackaged apps will no longer see these items in their default menu. [#&#8203;50861](https://github.com/electron/electron/pull/50861) <sup>(Also in [40](https://github.com/electron/electron/pull/50860), [41](https://github.com/electron/electron/pull/50859))</sup> - Removed "representedObject is not a WeakPtrToElectronMenuModelAsNSObject" logging when interacting with macOS menus. [#&#8203;50614](https://github.com/electron/electron/pull/50614) <sup>(Also in [41](https://github.com/electron/electron/pull/50613))</sup> #### Other Changes - Added support for using a proxy during yarn install. [#&#8203;50351](https://github.com/electron/electron/pull/50351) <sup>(Also in [39](https://github.com/electron/electron/pull/50349), [40](https://github.com/electron/electron/pull/50352), [41](https://github.com/electron/electron/pull/50350))</sup> - Backported fix for [`4835695`](https://github.com/electron/electron/commit/483569511). [#&#8203;49788](https://github.com/electron/electron/pull/49788) - Bumped Chromium to 148.0.7778.40. [#&#8203;51126](https://github.com/electron/electron/pull/51126) - Bumped Chromium to 148.0.7778.56. [#&#8203;51299](https://github.com/electron/electron/pull/51299) - Enabled profile-guided optimization for V8 builtins in release builds, improving JavaScript builtin performance (Array, String, RegExp, etc.). [#&#8203;50573](https://github.com/electron/electron/pull/50573) <sup>(Also in [40](https://github.com/electron/electron/pull/50575), [41](https://github.com/electron/electron/pull/50574))</sup> - Fixed `gn gen` failing to resolve `electron_version` when building from a `git worktree` checkout. [#&#8203;51166](https://github.com/electron/electron/pull/51166) <sup>(Also in [39](https://github.com/electron/electron/pull/51163), [40](https://github.com/electron/electron/pull/51164), [41](https://github.com/electron/electron/pull/51165))</sup> - Fixed crash in platform_util::Beep() on Linux. [#&#8203;49680](https://github.com/electron/electron/pull/49680) <sup>(Also in [40](https://github.com/electron/electron/pull/49864), [41](https://github.com/electron/electron/pull/49865))</sup> - Refactored `gin_helper::Promise` to be managed by cppgc. [#&#8203;51405](https://github.com/electron/electron/pull/51405) - Refactored our MSIX updater code to use an upstream Chromium pattern and eliminates the need for special exception handling build flags. [#&#8203;49645](https://github.com/electron/electron/pull/49645) <sup>(Also in [39](https://github.com/electron/electron/pull/49688), [40](https://github.com/electron/electron/pull/49687), [41](https://github.com/electron/electron/pull/49686))</sup> - Replaced ESLint with oxlint and added oxfmt for JS/TS formatting. [#&#8203;51435](https://github.com/electron/electron/pull/51435) - Restricted npm tarball contents to an explicit allowlist. [#&#8203;51308](https://github.com/electron/electron/pull/51308) - Security: backported fixes for CVE-2026-6358, CVE-2026-6359, CVE-2026-6360, CVE-2026-6310, CVE-2026-6312, CVE-2026-6313, CVE-2026-6314, CVE-2026-6316, CVE-2026-6361, CVE-2026-6362. [#&#8203;51136](https://github.com/electron/electron/pull/51136) #### Documentation - Documentation changes: [#&#8203;46926](https://github.com/electron/electron/pull/46926), [#&#8203;49401](https://github.com/electron/electron/pull/49401), [#&#8203;50292](https://github.com/electron/electron/pull/50292), [#&#8203;50526](https://github.com/electron/electron/pull/50526), [#&#8203;51368](https://github.com/electron/electron/pull/51368), [#&#8203;51309](https://github.com/electron/electron/pull/51309), [#&#8203;51423](https://github.com/electron/electron/pull/51423) #### Notices ##### End of Support for 39.x.y Electron 39.x.y has reached end-of-support as per the project's [support policy](https://www.electronjs.org/docs/latest/tutorial/electron-timelines#version-support-policy). Developers and applications are encouraged to upgrade to a newer version of Electron. ### [`v41.10.7`](https://github.com/electron/electron/releases/tag/v41.10.7): electron v41.10.7 [Compare Source](https://github.com/electron/electron/compare/v41.10.6...v41.10.7) ### Release Notes for v41.10.7 > \[!WARNING] > Electron 41.x.y has reached end-of-support as per the project's [support policy](https://www.electronjs.org/docs/latest/tutorial/electron-timelines#version-support-policy). Developers and applications are encouraged to upgrade to a newer version of Electron. #### Fixes - Fixed an issue on Linux where the system theme color appeared at the top edge of frameless windows. [#&#8203;53006](https://github.com/electron/electron/pull/53006) <sup>(Also in [42](https://github.com/electron/electron/pull/52978), [43](https://github.com/electron/electron/pull/52179))</sup> - Fixed running under tsx import transpilation. [#&#8203;53003](https://github.com/electron/electron/pull/53003) <sup>(Also in [42](https://github.com/electron/electron/pull/52046), [43](https://github.com/electron/electron/pull/51978))</sup> - Fixed shutdown crash on windows when power monitor notifications were subscribed. [#&#8203;52999](https://github.com/electron/electron/pull/52999) <sup>(Also in [42](https://github.com/electron/electron/pull/50893))</sup> - Fixed the context menu in a detached DevTools window focusing the inspected page's window instead of the DevTools window. [#&#8203;53002](https://github.com/electron/electron/pull/53002) <sup>(Also in [42](https://github.com/electron/electron/pull/51864), [43](https://github.com/electron/electron/pull/51863))</sup> - Fixed titleBarOverlay.color set to `rgba(0,0,0,0)` failing back to default frame color. [#&#8203;53004](https://github.com/electron/electron/pull/53004) <sup>(Also in [42](https://github.com/electron/electron/pull/52976), [43](https://github.com/electron/electron/pull/52010))</sup> #### Other Changes - Backported fixes from upstream ANGLE, Chromium, Dawn, Skia and V8. [#&#8203;52997](https://github.com/electron/electron/pull/52997) - Backported fixes from upstream Chromium and V8. [#&#8203;53059](https://github.com/electron/electron/pull/53059) ### [`v41.10.6`](https://github.com/electron/electron/releases/tag/v41.10.6): electron v41.10.6 [Compare Source](https://github.com/electron/electron/compare/v41.10.5...v41.10.6) ### Release Notes for v41.10.6 #### Fixes - Fixed `registerFileProtocol` and `registerHttpProtocol` returning readable responses to cross-origin `no-cors` fetches; they now return opaque responses like `protocol.handle`. [#&#8203;52854](https://github.com/electron/electron/pull/52854) <sup>(Also in [42](https://github.com/electron/electron/pull/52855), [43](https://github.com/electron/electron/pull/52853), [44](https://github.com/electron/electron/pull/52852))</sup> - Fixed an issue on Windows where the app process could fail to exit after `app.quit()` while a `shell.openExternal()` or `shell.openPath()` call was still waiting on a system "Open with" dialog. [#&#8203;52899](https://github.com/electron/electron/pull/52899) <sup>(Also in [43](https://github.com/electron/electron/pull/52897), [44](https://github.com/electron/electron/pull/52898))</sup> - Fixed windows opened by a sandboxed top-level frame not inheriting the opener's sandbox restrictions. [#&#8203;52849](https://github.com/electron/electron/pull/52849) <sup>(Also in [42](https://github.com/electron/electron/pull/52850), [43](https://github.com/electron/electron/pull/52848), [44](https://github.com/electron/electron/pull/52851))</sup> - `<webview>` and `window.open` now inherit `nodeIntegrationInWorker` from the embedder, consistent with the other Node and sandbox preferences. [#&#8203;52829](https://github.com/electron/electron/pull/52829) <sup>(Also in [42](https://github.com/electron/electron/pull/52831), [43](https://github.com/electron/electron/pull/52830), [44](https://github.com/electron/electron/pull/52832))</sup> #### Other Changes - Backported fixes from upstream ANGLE, Chromium and Skia. [#&#8203;52707](https://github.com/electron/electron/pull/52707) - Backported fixes from upstream Chromium and V8. [#&#8203;52775](https://github.com/electron/electron/pull/52775) ### [`v41.10.5`](https://github.com/electron/electron/releases/tag/v41.10.5): electron v41.10.5 [Compare Source](https://github.com/electron/electron/compare/v41.10.4...v41.10.5) ### Release Notes for v41.10.5 #### Fixes - Fixed an issue where the Squirrel.Mac installer could resolve the target bundle path to different locations at different stages of an install. [#&#8203;50764](https://github.com/electron/electron/pull/50764) <sup>(Also in [39](https://github.com/electron/electron/pull/50766), [42](https://github.com/electron/electron/pull/50765))</sup> #### Other Changes - Backported fixes from upstream ANGLE, Chromium, Skia and V8. [#&#8203;52702](https://github.com/electron/electron/pull/52702) - No user-facing change; semver/none. [#&#8203;52734](https://github.com/electron/electron/pull/52734) ### [`v41.10.4`](https://github.com/electron/electron/releases/tag/v41.10.4): electron v41.10.4 [Compare Source](https://github.com/electron/electron/compare/v41.10.3...v41.10.4) ### Release Notes for v41.10.4 #### Fixes - Fixed a UAF with `protocol.registerStreamProtocol` when an error is emitted during a read. [#&#8203;52513](https://github.com/electron/electron/pull/52513) <sup>(Also in [42](https://github.com/electron/electron/pull/52516), [43](https://github.com/electron/electron/pull/52514), [44](https://github.com/electron/electron/pull/52515))</sup> - Fixed a crash that could occur when closing DevTools while the host WebContents was being destroyed. [#&#8203;52512](https://github.com/electron/electron/pull/52512) <sup>(Also in [42](https://github.com/electron/electron/pull/52511), [43](https://github.com/electron/electron/pull/52510), [44](https://github.com/electron/electron/pull/52509))</sup> - Windows opened from links inside a sandboxed iframe now inherit the iframe's sandbox restrictions unless `allow-popups-to-escape-sandbox` is set. [#&#8203;52486](https://github.com/electron/electron/pull/52486) <sup>(Also in [42](https://github.com/electron/electron/pull/52190), [43](https://github.com/electron/electron/pull/52189))</sup> ### [`v41.10.3`](https://github.com/electron/electron/releases/tag/v41.10.3): electron v41.10.3 [Compare Source](https://github.com/electron/electron/compare/v41.10.2...v41.10.3) ### Release Notes for v41.10.3 #### Fixes - Fixed `app.disableHardwareAcceleration()` not fully disabling GPU hardware usage on Windows starting from Electron 38. [#&#8203;52368](https://github.com/electron/electron/pull/52368) <sup>(Also in [42](https://github.com/electron/electron/pull/52371), [43](https://github.com/electron/electron/pull/52369), [44](https://github.com/electron/electron/pull/52370))</sup> - Fixed unnecessary autofill popup creation for fields without datalist suggestions, which could cause input latency on macOS. [#&#8203;52320](https://github.com/electron/electron/pull/52320) <sup>(Also in [42](https://github.com/electron/electron/pull/52319), [43](https://github.com/electron/electron/pull/52321), [44](https://github.com/electron/electron/pull/52318))</sup> #### Other Changes - Backported fixes from upstream Chromium and V8. [#&#8203;52396](https://github.com/electron/electron/pull/52396) ### [`v41.10.2`](https://github.com/electron/electron/releases/tag/v41.10.2): electron v41.10.2 [Compare Source](https://github.com/electron/electron/compare/v41.10.1...v41.10.2) ### Release Notes for v41.10.2 #### Fixes - Fixed a renderer crash when calling `WebAssembly.compileStreaming()` or `WebAssembly.instantiateStreaming()` with `nodeIntegration` enabled. [#&#8203;52240](https://github.com/electron/electron/pull/52240) <sup>(Also in [42](https://github.com/electron/electron/pull/51956), [43](https://github.com/electron/electron/pull/51955))</sup> #### Other Changes - Backported fixes from upstream Chromium. [#&#8203;52304](https://github.com/electron/electron/pull/52304) ### [`v41.10.1`](https://github.com/electron/electron/releases/tag/v41.10.1): electron v41.10.1 [Compare Source](https://github.com/electron/electron/compare/v41.10.0...v41.10.1) ### Release Notes for v41.10.1 #### Fixes - Fixed crash triggered by replacing an open application menu. [#&#8203;52278](https://github.com/electron/electron/pull/52278) <sup>(Also in [42](https://github.com/electron/electron/pull/52275), [43](https://github.com/electron/electron/pull/52276), [44](https://github.com/electron/electron/pull/52277))</sup> ### [`v41.10.0`](https://github.com/electron/electron/releases/tag/v41.10.0): electron v41.10.0 [Compare Source](https://github.com/electron/electron/compare/v41.9.2...v41.10.0) ### Release Notes for v41.10.0 #### Other Changes - Backported fixes from upstream Chromium, ANGLE, Dawn, Skia, and V8. [#&#8203;52231](https://github.com/electron/electron/pull/52231) - Updated Node.js to v24.18.0. [#&#8203;52104](https://github.com/electron/electron/pull/52104) ### [`v41.9.2`](https://github.com/electron/electron/releases/tag/v41.9.2): electron v41.9.2 [Compare Source](https://github.com/electron/electron/compare/v41.9.1...v41.9.2) ### Release Notes for v41.9.2 #### Fixes - Fixed an issue where clicking the maximize button could progressively shrink the window in some Wayland environments. [#&#8203;52074](https://github.com/electron/electron/pull/52074) <sup>(Also in [42](https://github.com/electron/electron/pull/52045), [43](https://github.com/electron/electron/pull/52039))</sup> ### [`v41.9.1`](https://github.com/electron/electron/releases/tag/v41.9.1): electron v41.9.1 [Compare Source](https://github.com/electron/electron/compare/v41.9.0...v41.9.1) ### Release Notes for v41.9.1 #### Fixes - Fixed `ProtocolResponse.url` requests being made through the default session instead of the session the protocol handler was registered on when `ProtocolResponse.session` was not set. [#&#8203;52134](https://github.com/electron/electron/pull/52134) <sup>(Also in [40](https://github.com/electron/electron/pull/52135), [42](https://github.com/electron/electron/pull/52132), [43](https://github.com/electron/electron/pull/52131))</sup> - Made "reload" menu items work with `BaseWindow`. [#&#8203;52118](https://github.com/electron/electron/pull/52118) <sup>(Also in [42](https://github.com/electron/electron/pull/52117), [43](https://github.com/electron/electron/pull/52119))</sup> #### Other Changes - Backported fixes from upstream Chromium. [#&#8203;52120](https://github.com/electron/electron/pull/52120) - Backported fixes from upstream Chromium. [#&#8203;52170](https://github.com/electron/electron/pull/52170) ### [`v41.9.0`](https://github.com/electron/electron/releases/tag/v41.9.0): electron v41.9.0 [Compare Source](https://github.com/electron/electron/compare/v41.8.0...v41.9.0) ### Release Notes for v41.9.0 #### Fixes - Fixed Windows edge case in `NativeWindowViews::MoveBehindTaskBarIfNeeded()`. [#&#8203;52023](https://github.com/electron/electron/pull/52023) <sup>(Also in [42](https://github.com/electron/electron/pull/52022), [43](https://github.com/electron/electron/pull/52021))</sup> #### Other Changes - Backported fixes from upstream Chromium. [#&#8203;51976](https://github.com/electron/electron/pull/51976) - Updated Node.js to v24.17.0. [#&#8203;52065](https://github.com/electron/electron/pull/52065) ### [`v41.8.0`](https://github.com/electron/electron/releases/tag/v41.8.0): electron v41.8.0 [Compare Source](https://github.com/electron/electron/compare/v41.7.2...v41.8.0) ### Release Notes for v41.8.0 #### Fixes - Fixed a browser process crash when calling `webContents.reload()` or navigating synchronously from the `render-process-gone` event; the event is now emitted after the renderer's teardown notification has completed. [#&#8203;51917](https://github.com/electron/electron/pull/51917) <sup>(Also in [42](https://github.com/electron/electron/pull/51916), [43](https://github.com/electron/electron/pull/51918))</sup> - Fixed a bug on Linux where a 1px line appeared at the top of frameless windows if the window and web contents had different background colors. [#&#8203;52004](https://github.com/electron/electron/pull/52004) <sup>(Also in [42](https://github.com/electron/electron/pull/52005), [43](https://github.com/electron/electron/pull/51999))</sup> #### Other Changes - Backported fixes from upstream Chromium and V8. [#&#8203;51936](https://github.com/electron/electron/pull/51936) - Backported fixes from upstream Chromium, Skia and Dawn. [#&#8203;51943](https://github.com/electron/electron/pull/51943) - Updated Node.js to v24.16.0. [#&#8203;51746](https://github.com/electron/electron/pull/51746) #### Documentation - Documentation changes: [#&#8203;51925](https://github.com/electron/electron/pull/51925) ### [`v41.7.2`](https://github.com/electron/electron/releases/tag/v41.7.2): electron v41.7.2 [Compare Source](https://github.com/electron/electron/compare/v41.7.1...v41.7.2) ### Release Notes for v41.7.2 #### Fixes - Fixed an issue on Linux and Windows where frameless windows would shrink when calling `win.center()`. Additionally, fixed an issue where frameless windows would appear slightly off-center on Windows. [#&#8203;51919](https://github.com/electron/electron/pull/51919) <sup>(Also in [42](https://github.com/electron/electron/pull/51921), [43](https://github.com/electron/electron/pull/51920))</sup> - Fixed an issue where the "Toggle Developer Tools" menu item failed to function correctly with BaseWindow. [#&#8203;51902](https://github.com/electron/electron/pull/51902) <sup>(Also in [42](https://github.com/electron/electron/pull/51903), [43](https://github.com/electron/electron/pull/51901))</sup> #### Other Changes - Fixed silent data truncation in `Buffer`/`TextEncoder` APIs and a crash in `fs.writeFileSync` with non-ASCII strings on Apple Silicon. [#&#8203;51851](https://github.com/electron/electron/pull/51851) <sup>(Also in [42](https://github.com/electron/electron/pull/51849), [43](https://github.com/electron/electron/pull/51850))</sup> - Security: backported fixes for CVE-2026-9110, CVE-2026-9111, CVE-2026-9114, CVE-2026-9115, CVE-2026-9116, CVE-2026-9117, CVE-2026-9118, CVE-2026-9120, CVE-2026-9121, CVE-2026-9122, CVE-2026-9124, CVE-2026-9126. [#&#8203;51906](https://github.com/electron/electron/pull/51906) ### [`v41.7.1`](https://github.com/electron/electron/releases/tag/v41.7.1): electron v41.7.1 [Compare Source](https://github.com/electron/electron/compare/v41.7.0...v41.7.1) ### Release Notes for v41.7.1 #### Fixes - Fixed a potential crash when using `webContents.print()`. [#&#8203;51728](https://github.com/electron/electron/pull/51728) <sup>(Also in [42](https://github.com/electron/electron/pull/50853))</sup> - Fixed an issue where custom options in `webContents.print()` did not prefill the print dialog on macOS. [#&#8203;51682](https://github.com/electron/electron/pull/51682) <sup>(Also in [40](https://github.com/electron/electron/pull/51692), [42](https://github.com/electron/electron/pull/50643))</sup> ### [`v41.7.0`](https://github.com/electron/electron/releases/tag/v41.7.0): electron v41.7.0 [Compare Source](https://github.com/electron/electron/compare/v41.6.1...v41.7.0) ### Release Notes for v41.7.0 #### Features - Allowed the `--experimental-inspector-network-resource` Node.js flag to be passed through Electron. [#&#8203;51377](https://github.com/electron/electron/pull/51377) <sup>(Also in [42](https://github.com/electron/electron/pull/51378))</sup> #### Fixes - Fixed crash for Notification close. [#&#8203;51656](https://github.com/electron/electron/pull/51656) <sup>(Also in [42](https://github.com/electron/electron/pull/51657), [43](https://github.com/electron/electron/pull/51655))</sup> #### Other Changes - Backported a batch of upstream fixes for memory-safety and validation issues across media, GPU, networking, accessibility, compositing and the ANGLE GL backend. [#&#8203;51667](https://github.com/electron/electron/pull/51667) - Backported fixes for several use-after-free and object-lifetime issues in input, UI, Aura, HID and file-system teardown paths, a runtime-effect validation gap in Skia, and an integer overflow in the GLSL translator. [#&#8203;51647](https://github.com/electron/electron/pull/51647) ### [`v41.6.1`](https://github.com/electron/electron/releases/tag/v41.6.1): electron v41.6.1 [Compare Source](https://github.com/electron/electron/compare/v41.6.0...v41.6.1) ### Release Notes for v41.6.1 #### Other Changes - Improved performance of native event emission, IPC dispatch, and option-dictionary parsing. [#&#8203;51613](https://github.com/electron/electron/pull/51613) <sup>(Also in [42](https://github.com/electron/electron/pull/51614))</sup> - Security: backported 20 High-severity fixes from Chrome 148 stable release. [#&#8203;51612](https://github.com/electron/electron/pull/51612) ### [`v41.6.0`](https://github.com/electron/electron/releases/tag/v41.6.0): electron v41.6.0 [Compare Source](https://github.com/electron/electron/compare/v41.5.2...v41.6.0) ### Release Notes for v41.6.0 #### Fixes - Fixed a crash in the macOS Touch ID WebAuthn prompt caused by a missing string resource, and added `touchID.promptReason` to `app.configureWebAuthn()` to customize the prompt text. [#&#8203;51604](https://github.com/electron/electron/pull/51604) <sup>(Also in [42](https://github.com/electron/electron/pull/51594), [43](https://github.com/electron/electron/pull/51595))</sup> ### [`v41.5.2`](https://github.com/electron/electron/releases/tag/v41.5.2): electron v41.5.2 [Compare Source](https://github.com/electron/electron/compare/v41.5.1...v41.5.2) ### Release Notes for v41.5.2 #### Fixes - Improved external resize band positioning and scaling for frameless windows on Windows. [#&#8203;51560](https://github.com/electron/electron/pull/51560) <sup>(Also in [43](https://github.com/electron/electron/pull/51552))</sup> ### [`v41.5.1`](https://github.com/electron/electron/releases/tag/v41.5.1): electron v41.5.1 [Compare Source](https://github.com/electron/electron/compare/v41.5.0...v41.5.1) ### Release Notes for v41.5.1 #### Fixes - Fixed `app.getLoginItemSettings()` returning `undefined` for `executableWillLaunchAtLogin` on macOS; the property is now always a boolean. [#&#8203;51508](https://github.com/electron/electron/pull/51508) <sup>(Also in [40](https://github.com/electron/electron/pull/51509), [42](https://github.com/electron/electron/pull/51507))</sup> - Fixed a potential race condition crash when closing DevTools. [#&#8203;51474](https://github.com/electron/electron/pull/51474) <sup>(Also in [42](https://github.com/electron/electron/pull/51473))</sup> - Fixed cross-origin isolation failing for non-file origins. [#&#8203;51403](https://github.com/electron/electron/pull/51403) <sup>(Also in [42](https://github.com/electron/electron/pull/51404))</sup> - Improved the way Electron determines the default XDG App ID and WM_CLASS on Linux for better platform compatibility if `desktopName` is not provided in `package.json`. [#&#8203;51480](https://github.com/electron/electron/pull/51480) <sup>(Also in [42](https://github.com/electron/electron/pull/51479))</sup> ### [`v41.5.0`](https://github.com/electron/electron/releases/tag/v41.5.0): electron v41.5.0 [Compare Source](https://github.com/electron/electron/compare/v41.4.0...v41.5.0) ### Release Notes for v41.5.0 #### Features - Added `app.configureWebAuthn()` to enable the Touch ID platform authenticator for WebAuthn on macOS, and a `select-webauthn-account` session event for choosing between multiple discoverable credentials. [#&#8203;51412](https://github.com/electron/electron/pull/51412) <sup>(Also in [42](https://github.com/electron/electron/pull/51411))</sup> #### Fixes - Fixed a regression on Windows where frameless windows changed their size after calling `setResizable`. [#&#8203;51427](https://github.com/electron/electron/pull/51427) <sup>(Also in [42](https://github.com/electron/electron/pull/51296))</sup> - Fixed an issue on Windows where a transient `UnhookWindowsHookEx` failure in `setIgnoreMouseEvents(true, { forward: true })` teardown could cause duplicate low-level mouse hooks to be installed on the next activation. [#&#8203;51419](https://github.com/electron/electron/pull/51419) <sup>(Also in [42](https://github.com/electron/electron/pull/51418))</sup> - Fixed remote debugging via `--remote-debugging-port` not working when inspecting from Chrome's `chrome://inspect` page. The DevTools page would appear empty due to the frontend URL pointing to a CDN that returned 404 for Electron's Chromium builds. [#&#8203;51413](https://github.com/electron/electron/pull/51413) ### [`v41.4.0`](https://github.com/electron/electron/releases/tag/v41.4.0): electron v41.4.0 [Compare Source](https://github.com/electron/electron/compare/v41.3.0...v41.4.0) ### Release Notes for v41.4.0 #### Features - Added support for heap profiling via `contentTracing.enableHeapProfiling()`. [#&#8203;51178](https://github.com/electron/electron/pull/51178) <sup>(Also in [42](https://github.com/electron/electron/pull/51162))</sup> #### Fixes - Ensured cross-origin `fetch()` and XHR are blocked for custom protocols registered with `supportFetchAPI: true` unless `corsEnabled: true` is also set; cross-origin `mode: 'no-cors'` requests now receive an opaque response. [#&#8203;51270](https://github.com/electron/electron/pull/51270) <sup>(Also in [39](https://github.com/electron/electron/pull/51272), [40](https://github.com/electron/electron/pull/51271), [42](https://github.com/electron/electron/pull/51269))</sup> - Fixed a crash when providing invalid HTTP header names or values in the `webRequest.onBeforeSendHeaders()` callback. [#&#8203;51365](https://github.com/electron/electron/pull/51365) <sup>(Also in [40](https://github.com/electron/electron/pull/51364), [42](https://github.com/electron/electron/pull/51366))</sup> - Fixed a bug that cause offscreen rendering doesn't have valid screen info and unable to get valid result of related media queries. - Added `webPreference.offscreen.deviceScaleFactor` to allow user specify a value, instead of using user's primary display's value. [#&#8203;50375](https://github.com/electron/electron/pull/50375) <sup>(Also in [40](https://github.com/electron/electron/pull/49681))</sup> - Fixed a bug where errors would occur when using the Chrome DevTools Fetch API. [#&#8203;51371](https://github.com/electron/electron/pull/51371) <sup>(Also in [42](https://github.com/electron/electron/pull/51372))</sup> - Fixed a crash that could occur when an autofill suggestion popup was shown while a window was closing. [#&#8203;51321](https://github.com/electron/electron/pull/51321) <sup>(Also in [42](https://github.com/electron/electron/pull/51317))</sup> - Fixed a regression where frameless fullscreen windows had white borders on Windows. [#&#8203;51332](https://github.com/electron/electron/pull/51332) <sup>(Also in [42](https://github.com/electron/electron/pull/51331))</sup> - Fixed a renderer crash when a page uses the `<geolocation>` HTML element. [#&#8203;51373](https://github.com/electron/electron/pull/51373) <sup>(Also in [42](https://github.com/electron/electron/pull/51374))</sup> - Fixed an issue where calling `contentTracing` APIs before `app.whenReady()` would crash the application. [#&#8203;51352](https://github.com/electron/electron/pull/51352) <sup>(Also in [42](https://github.com/electron/electron/pull/51353))</sup> - Fixed an issue where some toast notification properties didn't work as expected in WinRT. [#&#8203;51397](https://github.com/electron/electron/pull/51397) <sup>(Also in [42](https://github.com/electron/electron/pull/51330))</sup> - Fixed buggy behavior where Backspace would accept macOS text replacements inside `contenteditable` elements. [#&#8203;51343](https://github.com/electron/electron/pull/51343) <sup>(Also in [40](https://github.com/electron/electron/pull/51345), [42](https://github.com/electron/electron/pull/51344))</sup> - This PR fixes a regression in silent printing where custom DPI values from webContents.print were not honored, causing incorrect output scaling in real-world print flows. [#&#8203;51355](https://github.com/electron/electron/pull/51355) <sup>(Also in [42](https://github.com/electron/electron/pull/51354))</sup> #### Other Changes - Backported a fix for route_id validation in the GPU command buffer. [#&#8203;51319](https://github.com/electron/electron/pull/51319) - Backported fix in Skia for [`4955347`](https://github.com/electron/electron/commit/495534710). [#&#8203;51264](https://github.com/electron/electron/pull/51264) - Backported security fixes for [`4927361`](https://github.com/electron/electron/commit/492736100), [`4926688`](https://github.com/electron/electron/commit/492668885), [`4934134`](https://github.com/electron/electron/commit/493413432), [`4933194`](https://github.com/electron/electron/commit/493319454), [`4941583`](https://github.com/electron/electron/commit/494158331), [`4962818`](https://github.com/electron/electron/commit/496281816). [#&#8203;51259](https://github.com/electron/electron/pull/51259) - Updated Chromium to 146.0.7680.216. [#&#8203;51382](https://github.com/electron/electron/pull/51382) ### [`v41.3.0`](https://github.com/electron/electron/releases/tag/v41.3.0): electron v41.3.0 [Compare Source](https://github.com/electron/electron/compare/v41.2.2...v41.3.0) ### Release Notes for v41.3.0 #### Fixes - Fixed `webContents.printToPDF` rejecting on all subsequent calls after a prior call was rejected with an invalid `pageRanges` value. [#&#8203;51221](https://github.com/electron/electron/pull/51221) <sup>(Also in [40](https://github.com/electron/electron/pull/51220), [42](https://github.com/electron/electron/pull/51222))</sup> - Fixed an issue where `app-region: drag` inside a hidden `WebContentsView` would still drag the parent window on Windows. [#&#8203;51246](https://github.com/electron/electron/pull/51246) <sup>(Also in [40](https://github.com/electron/electron/pull/51247), [42](https://github.com/electron/electron/pull/51245))</sup> - Fixed an issue where an Electron macOS update would not be applied if another app was previously blocking the macOS system update loop. [#&#8203;51210](https://github.com/electron/electron/pull/51210) <sup>(Also in [40](https://github.com/electron/electron/pull/51211), [42](https://github.com/electron/electron/pull/51212))</sup> - Fixed build failure when building with `enable_pdf` disabled. [#&#8203;51248](https://github.com/electron/electron/pull/51248) <sup>(Also in [42](https://github.com/electron/electron/pull/50846))</sup> - Fixed frameless transparent windows on Windows losing their transparency after `setResizable(false)` followed by `setResizable(true)`. [#&#8203;51217](https://github.com/electron/electron/pull/51217) <sup>(Also in [42](https://github.com/electron/electron/pull/51218))</sup> #### Other Changes - Updated Node.js to v24.15.0. [#&#8203;51088](https://github.com/electron/electron/pull/51088) ### [`v41.2.2`](https://github.com/electron/electron/releases/tag/v41.2.2): electron v41.2.2 [Compare Source](https://github.com/electron/electron/compare/v41.2.1...v41.2.2) ### Release Notes for v41.2.2 #### Fixes - Fixed absent 'Electron Isolated Context' in the execution context dropdown in Dev Tools. [#&#8203;51078](https://github.com/electron/electron/pull/51078) <sup>(Also in [42](https://github.com/electron/electron/pull/51079))</sup> - Fixed an issue where `nodeIntegrationInWorker` didn't always work in AudioWorklet. [#&#8203;51006](https://github.com/electron/electron/pull/51006) <sup>(Also in [42](https://github.com/electron/electron/pull/51005))</sup> - Fixed an issue where saving edited PDF files would fail with a cross-origin SecurityError. [#&#8203;51073](https://github.com/electron/electron/pull/51073) <sup>(Also in [42](https://github.com/electron/electron/pull/51072))</sup> - Fixed bug that could occasionally cause browserWindow's `always-on-top-changed` even to fire with incorrect values. [#&#8203;51135](https://github.com/electron/electron/pull/51135) <sup>(Also in [40](https://github.com/electron/electron/pull/51134), [42](https://github.com/electron/electron/pull/51133))</sup> - Fixed test scaffolding bug when running tests locally on Linux. [#&#8203;51150](https://github.com/electron/electron/pull/51150) <sup>(Also in [40](https://github.com/electron/electron/pull/51151), [42](https://github.com/electron/electron/pull/51149))</sup> #### Other Changes - Fixed `gn gen` failing to resolve `electron_version` when building from a `git worktree` checkout. [#&#8203;51165](https://github.com/electron/electron/pull/51165) <sup>(Also in [39](https://github.com/electron/electron/pull/51163), [40](https://github.com/electron/electron/pull/51164), [42](https://github.com/electron/electron/pull/51166))</sup> - Security: backported fixes for CVE-2026-6296, CVE-2026-6297, CVE-2026-6298, CVE-2026-6299, CVE-2026-6358, CVE-2026-6359, CVE-2026-6300, CVE-2026-6301, CVE-2026-6302, CVE-2026-6303, CVE-2026-6304, CVE-2026-6306, CVE-2026-6307, CVE-2026-6308, CVE-2026-6309, CVE-2026-6360, CVE-2026-6311, CVE-2026-6312, CVE-2026-6313, CVE-2026-6314, CVE-2026-6316, CVE-2026-6318, CVE-2026-6361, CVE-2026-6362, CVE-2026-6363. [#&#8203;51137](https://github.com/electron/electron/pull/51137) ### [`v41.2.1`](https://github.com/electron/electron/releases/tag/v41.2.1): electron v41.2.1 [Compare Source](https://github.com/electron/electron/compare/v41.2.0...v41.2.1) ### Release Notes for v41.2.1 #### Fixes - Added missing `metadata` fields to `contentTracing` traces. [#&#8203;51021](https://github.com/electron/electron/pull/51021) <sup>(Also in [42](https://github.com/electron/electron/pull/51007))</sup> - Changed the `kResizeThreshold` to trigger the resize on corners. [#&#8203;51002](https://github.com/electron/electron/pull/51002) <sup>(Also in [42](https://github.com/electron/electron/pull/51001))</sup> - Fixed `fs.stat` on files inside asar archives returning `undefined` for `blksize` and `blocks` instead of numeric values. [#&#8203;50876](https://github.com/electron/electron/pull/50876) <sup>(Also in [40](https://github.com/electron/electron/pull/50875), [42](https://github.com/electron/electron/pull/50877))</sup> - Fixed a crash when rendering PDFs when Site Isolation is disabled. [#&#8203;50845](https://github.com/electron/electron/pull/50845) <sup>(Also in [42](https://github.com/electron/electron/pull/50846))</sup> - Fixed a memory leak where Menu items were not cleaned up after Menu.setApplicationMenu was called repeatedly. [#&#8203;50830](https://github.com/electron/electron/pull/50830) <sup>(Also in [40](https://github.com/electron/electron/pull/50831), [42](https://github.com/electron/electron/pull/50832))</sup> - Fixed an issue where DevTools would re-attach to the window when opened after previously being detached. [#&#8203;50816](https://github.com/electron/electron/pull/50816) <sup>(Also in [39](https://github.com/electron/electron/pull/50818), [40](https://github.com/electron/electron/pull/50817), [42](https://github.com/electron/electron/pull/50815))</sup> - Fixed an issue where `setSimpleFullScreen` on macOS would exit when web content called `requestFullscreen()`. [#&#8203;50985](https://github.com/electron/electron/pull/50985) <sup>(Also in [40](https://github.com/electron/electron/pull/50986), [42](https://github.com/electron/electron/pull/50987))</sup> - Fixed an issue where closing devtools immediately after focus caused a crash. [#&#8203;51037](https://github.com/electron/electron/pull/51037) <sup>(Also in [42](https://github.com/electron/electron/pull/51036))</sup> - Fixed an issue where webContents.print() would ignore pageSize / mediaSize when silent was true. [#&#8203;50856](https://github.com/electron/electron/pull/50856) <sup>(Also in [42](https://github.com/electron/electron/pull/50855))</sup> - Fixed aspect ratio min/max size clamping to correctly account for extraSize on macOS. [#&#8203;50835](https://github.com/electron/electron/pull/50835) <sup>(Also in [40](https://github.com/electron/electron/pull/50834), [42](https://github.com/electron/electron/pull/50836))</sup> - Fixed crash when `app.setPath('sessionData')` was called with a non-existent directory. [#&#8203;50958](https://github.com/electron/electron/pull/50958) <sup>(Also in [42](https://github.com/electron/electron/pull/50908))</sup> - Fixed resize hit targets for frameless windows on Windows. Resize targets now start at the side and bottom edges of the window and extend outward when `frame: false`, matching the behavior for windows with frames. [#&#8203;50863](https://github.com/electron/electron/pull/50863) <sup>(Also in [42](https://github.com/electron/electron/pull/50864))</sup> - Fixed the crash keys being lost and the crash reporter hanging on macOS when many dynamic crash keys were registered. [#&#8203;50837](https://github.com/electron/electron/pull/50837) <sup>(Also in [40](https://github.com/electron/electron/pull/50838), [42](https://github.com/electron/electron/pull/50839))</sup> - Moved Electron-specific help menu links to the default app only; unpackaged apps will no longer see these items in their default menu. [#&#8203;50859](https://github.com/electron/electron/pull/50859) <sup>(Also in [40](https://github.com/electron/electron/pull/50860), [42](https://github.com/electron/electron/pull/50861))</sup> #### Other Changes - Backported fix for none. [#&#8203;50880](https://github.com/electron/electron/pull/50880) - Backported upstream fixes for two edge cases in the WebNN TFLite graph builder. [#&#8203;50983](https://github.com/electron/electron/pull/50983) - Backported upstream v8 fixes for a maglev use-count accounting issue and an inspector InspectedContext lifetime issue. [#&#8203;50991](https://github.com/electron/electron/pull/50991) - Updated Chromium to 146.0.7680.188. [#&#8203;50787](https://github.com/electron/electron/pull/50787) - Updated Node.js to v24.14.1. [#&#8203;50478](https://github.com/electron/electron/pull/50478) ### [`v41.2.0`](https://github.com/electron/electron/releases/tag/v41.2.0): electron v41.2.0 [Compare Source](https://github.com/electron/electron/compare/v41.1.1...v41.2.0) ### Release Notes for v41.2.0 #### Features - Added `allowExtensions` privilege to `protocol.registerSchemesAsPrivileged()` to enable Chrome extensions on custom protocols. [#&#8203;50529](https://github.com/electron/electron/pull/50529) <sup>(Also in [40](https://github.com/electron/electron/pull/50588), [42](https://github.com/electron/electron/pull/50530))</sup> #### Fixes - BrowserWindow now enforces min/max size constraints on window creation, even if they conflict with the requested width and height. [#&#8203;50753](https://github.com/electron/electron/pull/50753) <sup>(Also in [42](https://github.com/electron/electron/pull/50754))</sup> - Fixed a regression on Linux where transparent frameless windows would have visible borders. Also fixed a longstanding issue where transparent windows on Linux could show smeared and glitched content as windows moved around. [#&#8203;50605](https://github.com/electron/electron/pull/50605) - Fixed an intermittent `Invoke in DisallowJavascriptExecutionScope` crash on application quit when a `WebContents` (or other JS-emitting native object) is garbage-collected during shutdown. [#&#8203;50694](https://github.com/electron/electron/pull/50694) <sup>(Also in [40](https://github.com/electron/electron/pull/50693), [42](https://github.com/electron/electron/pull/50695))</sup> - Fixed an issue on macOS where `show`/`hide` events and `WebContents` visibility state could be reported incorrectly when multiple `WebContentsView`s were attached to a window. [#&#8203;50715](https://github.com/electron/electron/pull/50715) <sup>(Also in [40](https://github.com/electron/electron/pull/50713), [42](https://github.com/electron/electron/pull/50712))</sup> - Fixed an issue where concurrent `getFileHandle` requests on the same path could stall indefinitely. [#&#8203;50670](https://github.com/electron/electron/pull/50670) <sup>(Also in [40](https://github.com/electron/electron/pull/50672), [42](https://github.com/electron/electron/pull/50671))</sup> - Fixed an issue where margins did not look as expected when printing in silent mode. [#&#8203;50652](https://github.com/electron/electron/pull/50652) <sup>(Also in [42](https://github.com/electron/electron/pull/50653))</sup> - Fixed an issue where the `webContents.print()` callback may not fire correctly in some cases. [#&#8203;50604](https://github.com/electron/electron/pull/50604) <sup>(Also in [42](https://github.com/electron/electron/pull/50603))</sup> - Fixed the appearance of maximized windows on GNOME in Wayland, especially when non-default GTK themes like Breeze are set. [#&#8203;50645](https://github.com/electron/electron/pull/50645) <sup>(Also in [42](https://github.com/electron/electron/pull/50644))</sup> - Removed "representedObject is not a WeakPtrToElectronMenuModelAsNSObject" logging when interacting with macOS menus. [#&#8203;50613](https://github.com/electron/electron/pull/50613) <sup>(Also in [42](https://github.com/electron/electron/pull/50614))</sup> #### Other Changes - Updated Chromium to 146.0.7680.179. [#&#8203;50616](https://github.com/electron/electron/pull/50616) ### [`v41.1.1`](https://github.com/electron/electron/releases/tag/v41.1.1): electron v41.1.1 [Compare Source](https://github.com/electron/electron/compare/v41.1.0...v41.1.1) ### Release Notes for v41.1.1 #### Fixes - Fixed a crash when calling `contentTracing.getTraceBufferUsage()` while a trace session is active. [#&#8203;50594](https://github.com/electron/electron/pull/50594) <sup>(Also in [39](https://github.com/electron/electron/pull/50595), [40](https://github.com/electron/electron/pull/50593), [42](https://github.com/electron/electron/pull/50592))</sup> - Fixed printing on Linux failing with "Invalid printer settings". [#&#8203;50486](https://github.com/electron/electron/pull/50486) <sup>(Also in [42](https://github.com/electron/electron/pull/50487))</sup> #### Other Changes - Enabled profile-guided optimization for V8 builtins in release builds, improving JavaScript builtin performance (Array, String, RegExp, etc.). [#&#8203;50574](https://github.com/electron/electron/pull/50574) <sup>(Also in [40](https://github.com/electron/electron/pull/50575), [42](https://github.com/electron/electron/pull/50573))</sup> ### [`v41.1.0`](https://github.com/electron/electron/releases/tag/v41.1.0): electron v41.1.0 [Compare Source](https://github.com/electron/electron/compare/v41.0.4...v41.1.0) ### Release Notes for v41.1.0 #### Features - Added nativeTheme.shouldDifferentiateWithoutColor on macOS. [#&#8203;50408](https://github.com/electron/electron/pull/50408) <sup>(Also in [42](https://github.com/electron/electron/pull/50409))</sup> - Notes: Added support for the `urgency` option in Notifications on Windows. [#&#8203;50382](https://github.com/electron/electron/pull/50382) <sup>(Also in [42](https://github.com/electron/electron/pull/50383))</sup> #### Fixes - Fixed a bug where Windows notification icons could fail to save because their temporary filenames contained invalid characters. [#&#8203;50483](https://github.com/electron/electron/pull/50483) <sup>(Also in [40](https://github.com/electron/electron/pull/50484))</sup> - Fixed a crash in `clipboard.readImage()` when the clipboard contains malformed image data. [#&#8203;50492](https://github.com/electron/electron/pull/50492) <sup>(Also in [39](https://github.com/electron/electron/pull/50493), [40](https://github.com/electron/electron/pull/50491), [42](https://github.com/electron/electron/pull/50494))</sup> - Fixed a crash when calling an offscreen shared texture's `release()` after the texture object was garbage collected. [#&#8203;50501](https://github.com/electron/electron/pull/50501) <sup>(Also in [39](https://github.com/electron/electron/pull/50499), [40](https://github.com/electron/electron/pull/50500), [42](https://github.com/electron/electron/pull/50502))</sup> - Fixed an accessibility issue where the AXMenuOpened event was not fired on menu creation. [#&#8203;50506](https://github.com/electron/electron/pull/50506) <sup>(Also in [40](https://github.com/electron/electron/pull/50505), [42](https://github.com/electron/electron/pull/50504))</sup> - Fixed an issue where an app shortcut may lose its icon after auto-updating on Windows. [#&#8203;50519](https://github.com/electron/electron/pull/50519) <sup>(Also in [40](https://github.com/electron/electron/pull/50518))</sup> #### Other Changes - Updated Chromium to 146.0.7680.166. [#&#8203;50458](https://github.com/electron/electron/pull/50458) ### [`v41.0.4`](https://github.com/electron/electron/releases/tag/v41.0.4): electron v41.0.4 [Compare Source](https://github.com/electron/electron/compare/v41.0.3...v41.0.4) ### Release Notes for v41.0.4 #### Fixes - Fixed crash when handling JavaScript dialogs from windows opened with invalid or empty URLs. [#&#8203;50399](https://github.com/electron/electron/pull/50399) <sup>(Also in [39](https://github.com/electron/electron/pull/50400), [40](https://github.com/electron/electron/pull/50401), [42](https://github.com/electron/electron/pull/50398))</sup> - Fixed improper focus tracking in BaseWindow on MacOS. [#&#8203;50340](https://github.com/electron/electron/pull/50340) <sup>(Also in [39](https://github.com/electron/electron/pull/50338), [40](https://github.com/electron/electron/pull/50337), [42](https://github.com/electron/electron/pull/50339))</sup> - Fixed logic bug that rendered certain window types un-resizable on MAS builds. [#&#8203;50354](https://github.com/electron/electron/pull/50354) <sup>(Also in [40](https://github.com/electron/electron/pull/50355), [42](https://github.com/electron/electron/pull/50356))</sup> - Fixed utilityProcess exit event reporting incorrect exit codes on Windows when the exit code has the high bit. [#&#8203;50386](https://github.com/electron/electron/pull/50386) <sup>(Also in [40](https://github.com/electron/electron/pull/50387), [42](https://github.com/electron/electron/pull/50385))</sup> - Fixed window freeze when failing to enter/exit fullscreen on macOS. [#&#8203;50343](https://github.com/electron/electron/pull/50343) <sup>(Also in [39](https://github.com/electron/electron/pull/50341), [40](https://github.com/electron/electron/pull/50344), [42](https://github.com/electron/electron/pull/50342))</sup> - Improved the appearance of shadows and borders on frameless windows on Wayland. [#&#8203;50213](https://github.com/electron/electron/pull/50213) #### Other Changes - Added support for using a proxy during yarn install. [#&#8203;50350](https://github.com/electron/electron/pull/50350) <sup>(Also in [39](https://github.com/electron/electron/pull/50349), [40](https://github.com/electron/electron/pull/50352), [42](https://github.com/electron/electron/pull/50351))</sup> - Updated Chromium to 146.0.7680.153. [#&#8203;50346](https://github.com/electron/electron/pull/50346) ### [`v41.0.3`](https://github.com/electron/electron/releases/tag/v41.0.3): electron v41.0.3 [Compare Source](https://github.com/electron/electron/compare/v41.0.2...v41.0.3) ### Release Notes for v41.0.3 #### Fixes - Added additional ASAR support to additional `fs` copy methods. [#&#8203;50286](https://github.com/electron/electron/pull/50286) <sup>(Also in [39](https://github.com/electron/electron/pull/50284), [40](https://github.com/electron/electron/pull/50287), [42](https://github.com/electron/electron/pull/50285))</sup> - Fixed an issue where some DevTools functionality didn't work as expected. [#&#8203;50276](https://github.com/electron/electron/pull/50276) <sup>(Also in [40](https://github.com/electron/electron/pull/50275), [42](https://github.com/electron/electron/pull/50274))</sup> - Fixed user resizing of transparent windows on win32 platform. [#&#8203;50298](https://github.com/electron/electron/pull/50298) <sup>(Also in [39](https://github.com/electron/electron/pull/50300), [40](https://github.com/electron/electron/pull/50301), [42](https://github.com/electron/electron/pull/50299))</sup> #### Other Changes - Updated Chromium to 146.0.7680.80. [#&#8203;50262](https://github.com/electron/electron/pull/50262) #### Documentation - Documentation changes: [#&#8203;50293](https://github.com/electron/electron/pull/50293) ### [`v41.0.2`](https://github.com/electron/electron/releases/tag/v41.0.2): electron v41.0.2 [Compare Source](https://github.com/electron/electron/compare/v41.0.1...v41.0.2) ### Release Notes for v41.0.2 #### Other Changes - Backported fix for b/491421267. [#&#8203;50234](https://github.com/electron/electron/pull/50234) ### [`v41.0.1`](https://github.com/electron/electron/releases/tag/v41.0.1): electron v41.0.1 [Compare Source](https://github.com/electron/electron/compare/v41.0.0...v41.0.1) ### Release Notes for v41.0.1 #### Fixes - Fixed an issue on macOS where calling `autoUpdater.quitAndInstall()` could fail if `checkForUpdates()` was called again after an update was already downloaded. [#&#8203;50217](https://github.com/electron/electron/pull/50217) <sup>(Also in [39](https://github.com/electron/electron/pull/50215), [40](https://github.com/electron/electron/pull/50216))</sup> - Fixed an issue where traffic light buttons would flash at position (0,0) when restoring a window with a custom `trafficLightPosition` from minimization on macOS. [#&#8203;50209](https://github.com/electron/electron/pull/50209) <sup>(Also in [39](https://github.com/electron/electron/pull/50208), [40](https://github.com/electron/electron/pull/50207))</sup> - Fixed bug where opening a message box immediately upon closing a child window may cause the parent window to freeze on Windows. [#&#8203;50191](https://github.com/electron/electron/pull/50191) <sup>(Also in [39](https://github.com/electron/electron/pull/50190), [40](https://github.com/electron/electron/pull/50189))</sup> #### Other Changes - Updated Chromium to 146.0.7680.72. [#&#8203;50196](https://github.com/electron/electron/pull/50196) ### [`v41.0.0`](https://github.com/electron/electron/releases/tag/v41.0.0): electron v41.0.0 [Compare Source](https://github.com/electron/electron/compare/v40.10.6...v41.0.0) ### Release Notes for v41.0.0 #### Stack Upgrades - Chromium `146.0.7680.65` - [New in 146](https://developer.chrome.com/blog/new-in-chrome-146/) - [New in 145](https://developer.chrome.com/blog/new-in-chrome-145/) - Node `v24.14.0` - [Node 24.14.0 blog post](https://nodejs.org/en/blog/release/v24.14.0/) - V8 `14.6` #### Breaking Changes - Fixed an issue where cookie changed events weren't properly emitted in all cases. [#&#8203;49631](https://github.com/electron/electron/pull/49631) *For breaking changes inherited via Chromium, see blog post* #### Features ##### Additions - Added --disable-geolocation command-line flag for macOS apps to disable location services. [#&#8203;45934](https://github.com/electron/electron/pull/45934) - Added NV12 support for import shared texture. [#&#8203;48922](https://github.com/electron/electron/pull/48922) <sup>(Also in [40](https://github.com/electron/electron/pull/49040))</sup> - Added `webContents.getOrCreateDevToolsTargetId()`. [#&#8203;50176](https://github.com/electron/electron/pull/50176) - Added a `disclaim` option to the UtilityProcess API to allow for TCC disclaiming on macOS. [#&#8203;49693](https://github.com/electron/electron/pull/49693) <sup>(Also in [39](https://github.com/electron/electron/pull/49696), [40](https://github.com/electron/electron/pull/49695))</sup> - Added a `reason` property to the Notification 'closed' event on Windows to allow developers to know the reason the Notification was dismissed. [#&#8203;50029](https://github.com/electron/electron/pull/50029) <sup>(Also in [40](https://github.com/electron/electron/pull/50030))</sup> - Added additional defence against privileged user modifications to ASAR Integrity protected applications on macOS. [#&#8203;48587](https://github.com/electron/electron/pull/48587) - Added an `usePrinterDefaultPageSize` option to `webContents.print()` to allow using the printer's default page size. [#&#8203;49812](https://github.com/electron/electron/pull/49812) - Added bypassCustomProtocolHandlers option to net.request. [#&#8203;47331](https://github.com/electron/electron/pull/47331) <sup>(Also in [38](https://github.com/electron/electron/pull/48881), [39](https://github.com/electron/electron/pull/48882), [40](https://github.com/electron/electron/pull/48883))</sup> - Added support for MSIX auto-updating. [#&#8203;49586](https://github.com/electron/electron/pull/49586) <sup>(Also in [39](https://github.com/electron/electron/pull/49585), [40](https://github.com/electron/electron/pull/49587))</sup> - Added support for WebSocket authentication through the `login` event on `webContents`. [#&#8203;48512](https://github.com/electron/electron/pull/48512) <sup>(Also in [39](https://github.com/electron/electron/pull/49065), [40](https://github.com/electron/electron/pull/49064))</sup> - Added support for `--experimental-transform-types`. [#&#8203;49882](https://github.com/electron/electron/pull/49882) <sup>(Also in [39](https://github.com/electron/electron/pull/49881), [40](https://github.com/electron/electron/pull/49883))</sup> - Added support for `long-animation-frame` script attribution (via `--enable-features=AlwaysLogLOAFURL`). [#&#8203;49773](https://github.com/electron/electron/pull/49773) <sup>(Also in [39](https://github.com/electron/electron/pull/49771), [40](https://github.com/electron/electron/pull/49772))</sup> - Added support to import external shared texture as VideoFrame. [#&#8203;47317](https://github.com/electron/electron/pull/47317) <sup>(Also in [40](https://github.com/electron/electron/pull/48831))</sup> - Added the ability to disable auto-focusing of WebContents on navigation using `webPreferences.focusOnNavigation`. [#&#8203;49511](https://github.com/electron/electron/pull/49511) <sup>(Also in [40](https://github.com/electron/electron/pull/49512))</sup> - Enable wasm trap handlers behind `WasmTrapHandlers` [fuse](https://www.electronjs.org/docs/latest/tutorial/fuses). [#&#8203;49839](https://github.com/electron/electron/pull/49839) - On Wayland (Linux), frameless windows now have GTK drop shadows and extended resize boundaries. To create fully frameless windows with no decorations, set `hasShadow: false` in the window constructor. [#&#8203;49885](https://github.com/electron/electron/pull/49885) ##### Improvements - Extended actions support for Windows notifications to include buttons, select dropdowns, and replies. [#&#8203;49787](https://github.com/electron/electron/pull/49787) <sup>(Also in [40](https://github.com/electron/electron/pull/49786))</sup> - Refactored our MSIX updater code to use an upstream Chromium pattern and eliminates the need for special exception handling build flags. [#&#8203;49686](https://github.com/electron/electron/pull/49686) <sup>(Also in [39](https://github.com/electron/electron/pull/49688), [40](https://github.com/electron/electron/pull/49687))</sup> - Updated `nativeImage.createFromNamedImage` to support SF Symbol names. [#&#8203;48203](https://github.com/electron/electron/pull/48203) <sup>(Also in [39](https://github.com/electron/electron/pull/48773), [40](https://github.com/electron/electron/pull/48772))</sup> ##### Removed/Deprecated - DevTools errors are no longer printed to console. [#&#8203;49292](https://github.com/electron/electron/pull/49292) <sup>(Also in [40](https://github.com/electron/electron/pull/49359))</sup> #### Fixes - Fixed CSS selector syntax in default app styles to properly apply animations to hero icons. [#&#8203;50033](https://github.com/electron/electron/pull/50033) - Fixed ID of tray icons on Linux. [#&#8203;48675](https://github.com/electron/electron/pull/48675) - Fixed an issue that caused the RGBAF16 shared texture format to have a keyed mutex on Windows. [#&#8203;49876](https://github.com/electron/electron/pull/49876) - Fixed an issue where Squirrel.Mac's auto updater would fail to install new updates if the targetBundleURL was either not set or contained special characters. [#&#8203;49978](https://github.com/electron/electron/pull/49978) - Fixed an issue where some `shell` functionality may not work on Linux if the target window is already open. [#&#8203;49594](https://github.com/electron/electron/pull/49594) - Fixed build failure when printing is disabled. [#&#8203;50077](https://github.com/electron/electron/pull/50077) - Fixed several issues with consistent window sizing and resizing on Linux when CSD is in use (e.g. on GNOME/Wayland) and added support for creating content-sized windows. [#&#8203;49835](https://github.com/electron/electron/pull/49835) - Fixed window sizing on Linux when min/max size constraints are set or `resizable` is `false`. Windows no longer shrink below the requested max size or grow taller when resizability is disabled. [#&#8203;49971](https://github.com/electron/electron/pull/49971) - Global shortcuts can now be registered more reliably on Wayland using the `globalShortcut` API. [#&#8203;50051](https://github.com/electron/electron/pull/50051) ##### Also in earlier versions... - Added validation to protocol client methods to reject protocol names that do not conform to the RFC 3986 URI scheme grammar. [#&#8203;50155](https://github.com/electron/electron/pull/50155) <sup>(Also in [38](https://github.com/electron/electron/pull/50157), [39](https://github.com/electron/electron/pull/50156), [40](https://github.com/electron/electron/pull/50158))</sup> - Addressed upstream Chromium shift to enable `CoreAudio Tap API` for audio capture used in electron's `desktopCapturer` (🍏 macOS). [#&#8203;49739](https://github.com/electron/electron/pull/49739) <sup>(Also in [39](https://github.com/electron/electron/pull/49740), [40](https://github.com/electron/electron/pull/49741))</sup> - Allow dynamically updating menu item labels, sublabels, and icons. [#&#8203;49972](https://github.com/electron/electron/pull/49972) <sup>(Also in [40](https://github.com/electron/electron/pull/49973))</sup> - Corrected the appearance of tiled windows on GNOME (when frame: true), and removed resize handles from tiled edges. [#&#8203;48765](https://github.com/electron/electron/pull/48765) <sup>(Also in [38](https://github.com/electron/electron/pull/48836), [39](https://github.com/electron/electron/pull/48834), [40](https://github.com/electron/electron/pull/48835))</sup> - Fix: ESM-from-CJS import when CJK characters are in path. [#&#8203;48855](https://github.com/electron/electron/pull/48855) <sup>(Also in [39](https://github.com/electron/electron/pull/48873), [40](https://github.com/electron/electron/pull/48862))</sup> - Fixed `globalShortcut` not working on Wayland with `GlobalShortcutsPortal` feature enabled. [#&#8203;49871](https://github.com/electron/electron/pull/49871) <sup>(Also in [40](https://github.com/electron/electron/pull/49870))</sup> - Fixed `setRepresentedFilename()` not setting `AXDocument` accessibility attribute on macOS. [#&#8203;49346](https://github.com/electron/electron/pull/49346) <sup>(Also in [39](https://github.com/electron/electron/pull/49418), [40](https://github.com/electron/electron/pull/49417))</sup> - Fixed a Windows notification issue where clicking a native notification would result in an application hang on certain Windows environments. [#&#8203;49106](https://github.com/electron/electron/pull/49106) <sup>(Also in [39](https://github.com/electron/electron/pull/49130), [40](https://github.com/electron/electron/pull/49129))</sup> - Fixed a crash that could occur when using the File System Access API. [#&#8203;49636](https://github.com/electron/electron/pull/49636) <sup>(Also in [39](https://github.com/electron/electron/pull/49634), [40](https://github.com/electron/electron/pull/49635))</sup> - Fixed a macOS crash when creating a new tab from the tab overview. [#&#8203;49933](https://github.com/electron/electron/pull/49933) <sup>(Also in [40](https://github.com/electron/electron/pull/49934))</sup> - Fixed a potential race condition crash when opening DevTools. [#&#8203;49406](https://github.com/electron/electron/pull/49406) <sup>(Also in [39](https://github.com/electron/electron/pull/49423), [40](https://github.com/electron/electron/pull/49422))</sup> - Fixed an application crash on MacOS where the menu observer was not being properly removed before garbage collection. [#&#8203;49658](https://github.com/electron/electron/pull/49658) <sup>(Also in [40](https://github.com/electron/electron/pull/49657))</sup> - Fixed an application crash when clicking or hovering over the native MacOS "Window" menu. Reverts [#&#8203;48598](https://github.com/electron/electron/issues/48598). [#&#8203;48794](https://github.com/electron/electron/pull/48794) <sup>(Also in [37](https://github.com/electron/electron/pull/48803), [38](https://github.com/electron/electron/pull/48801), [39](https://github.com/electron/electron/pull/48800), [40](https://github.com/electron/electron/pull/48799))</sup> - Fixed an error on debug symbol upload by moving dsym.zip to use tar.xz compression. [#&#8203;48941](https://github.com/electron/electron/pull/48941) <sup>(Also in [40](https://github.com/electron/electron/pull/48952))</sup> - Fixed an issue in `chrome://accessibility`. [#&#8203;49561](https://github.com/electron/electron/pull/49561) <sup>(Also in [39](https://github.com/electron/electron/pull/49559), [40](https://github.com/electron/electron/pull/49560))</sup> - Fixed an issue on Windows and Linux where no cookie encryption key provider was passed into the network service when cookie encryption was enabled. [#&#8203;49371](https://github.com/electron/electron/pull/49371) <sup>(Also in [40](https://github.com/electron/electron/pull/49375))</sup> - Fixed an issue on macOS where Universal Links were not delivered to `app.on('continue-activity')` on cold launch when `NSUserActivity.userInfo` was nil. [#&#8203;50006](https://github.com/electron/electron/pull/50006) <sup>(Also in [39](https://github.com/electron/electron/pull/50004), [40](https://github.com/electron/electron/pull/50005))</sup> - Fixed an issue that menu items on macOS could not be disabled under all circumstances. [#&#8203;48795](https://github.com/electron/electron/pull/48795) <sup>(Also in [37](https://github.com/electron/electron/pull/48827), [38](https://github.com/electron/electron/pull/48829), [39](https://github.com/electron/electron/pull/48830), [40](https://github.com/electron/electron/pull/48828))</sup> - Fixed an issue where Chrome Devtools menus may not appear in certain embedded windows. [#&#8203;50137](https://github.com/electron/electron/pull/50137) <sup>(Also in [40](https://github.com/electron/electron/pull/50138))</sup> - Fixed an issue where `VideoFrame` objects returned through `contextBridge` had an incorrect prototype. [#&#8203;50023](https://github.com/electron/electron/pull/50023) <sup>(Also in [39](https://github.com/electron/electron/pull/50021), [40](https://github.com/electron/electron/pull/50022))</sup> - Fixed an issue where `additionalData` passed to `app.requestSingleInstanceLock` on Windows could be truncated or fail to deserialize in the primary instance's `second-instance` event. [#&#8203;50154](https://github.com/electron/electron/pull/50154) <sup>(Also in [38](https://github.com/electron/electron/pull/50177), [39](https://github.com/electron/electron/pull/50174), [40](https://github.com/electron/electron/pull/50162))</sup> - Fixed an issue where `menu-did-close` was not emitted properly for some application menus. [#&#8203;49075](https://github.com/electron/electron/pull/49075) <sup>(Also in [38](https://github.com/electron/electron/pull/49094), [39](https://github.com/electron/electron/pull/49093), [40](https://github.com/electron/electron/pull/49092))</sup> - Fixed an issue where `nodeIntegrationInWorker` overrides in `setWindowOpenHandler` were not honored for child windows sharing a renderer process with their opener. [#&#8203;50134](https://github.com/electron/electron/pull/50134) <sup>(Also in [38](https://github.com/electron/electron/pull/50163))</sup> - Fixed an issue where `screen.getCursorScreenPoint()` crashed on Wayland when it was called before a `BrowserWindow` had been created. [#&#8203;50105](https://github.com/electron/electron/pull/50105) <sup>(Also in [39](https://github.com/electron/electron/pull/50106), [40](https://github.com/electron/electron/pull/50104))</sup> - Fixed an issue where `shell.writeShortcutLink` was throwing `TypeError: Insufficient number of arguments` when called with just `[(path, options)]`. [#&#8203;49503](https://github.com/electron/electron/pull/49503) <sup>(Also in [39](https://github.com/electron/electron/pull/49502), [40](https://github.com/electron/electron/pull/49501))</sup> - Fixed an issue where alt+space triggered th system context menu even if an accelerator was registered for the hotkey combination. [#&#8203;49642](https://github.com/electron/electron/pull/49642) <sup>(Also in [39](https://github.com/electron/electron/pull/49641), [40](https://github.com/electron/electron/pull/49640))</sup> - Fixed an issue where calling `setBounds` on a `WebContentsView` could trigger redundant `page-favicon-updated` events even when the favicon had not changed. [#&#8203;50085](https://github.com/electron/electron/pull/50085) <sup>(Also in [39](https://github.com/electron/electron/pull/50086), [40](https://github.com/electron/electron/pull/50084))</sup> - Fixed an issue where frameless windows had resize issues in Mac App Store builds. [#&#8203;49857](https://github.com/electron/electron/pull/49857) <sup>(Also in [39](https://github.com/electron/electron/pull/49861), [40](https://github.com/electron/electron/pull/49856))</sup> - Fixed an issue where invalid characters in custom protocol or webRequest response header values were not rejected. [#&#8203;50132](https://github.com/electron/electron/pull/50132) <sup>(Also in [38](https://github.com/electron/electron/pull/50130), [39](https://github.com/electron/electron/pull/50129), [40](https://github.com/electron/electron/pull/50131))</sup> - Fixed an issue where making a window fullscreen on Windows, minimizing it and then restoring it broke previous fullscreen state. [#&#8203;49891](https://github.com/electron/electron/pull/49891) <sup>(Also in [40](https://github.com/electron/electron/pull/49892))</sup> - Fixed an issue where malformed custom `toastXml` could cause a Notification crash. [#&#8203;49953](https://github.com/electron/electron/pull/49953) <sup>(Also in [40](https://github.com/electron/electron/pull/49952))</sup> - Fixed an issue where menu item accelerators stopped working after the item's enabled property was toggled on macOS. [#&#8203;49591](https://github.com/electron/electron/pull/49591) <sup>(Also in [39](https://github.com/electron/electron/pull/49593), [40](https://github.com/electron/electron/pull/49592))</sup> - Fixed an issue where menu item enabled state wasn't updated during key equivalent dispatch when the menu was closed on macOS. [#&#8203;49890](https://github.com/electron/electron/pull/49890) <sup>(Also in [39](https://github.com/electron/electron/pull/49888), [40](https://github.com/electron/electron/pull/49889))</sup> - Fixed an issue where native modules would either crash or not compile for MacOS 12. [#&#8203;49703](https://github.com/electron/electron/pull/49703) <sup>(Also in [40](https://github.com/electron/electron/pull/49702))</sup> - Fixed an issue where no cookie encryption provider was passed into the network service when cookie encryption was enabled. [#&#8203;49348](https://github.com/electron/electron/pull/49348) <sup>(Also in [40](https://github.com/electron/electron/pull/49350))</sup> - Fixed an issue where permission and device-chooser handlers received the top-level page origin instead of the requesting subframe's origin. [#&#8203;50148](https://github.com/electron/electron/pull/50148) <sup>(Also in [38](https://github.com/electron/electron/pull/50151), [39](https://github.com/electron/electron/pull/50147), [40](https://github.com/electron/electron/pull/50149))</sup> - Fixed an issue where pressing AltGr could activate or focus the menu bar. [#&#8203;49916](https://github.com/electron/electron/pull/49916) <sup>(Also in [39](https://github.com/electron/electron/pull/49914), [40](https://github.com/electron/electron/pull/49915))</sup> - Fixed an issue where some packages weren't correctly filtered on macOS in dialogs. [#&#8203;49470](https://github.com/electron/electron/pull/49470) <sup>(Also in [38](https://github.com/electron/electron/pull/49471), [39](https://github.com/electron/electron/pull/49472), [40](https://github.com/electron/electron/pull/49473))</sup> - Fixed an issue where role-based menu items were incorrectly returning `null` for their accelerator property. [#&#8203;49668](https://github.com/electron/electron/pull/49668) <sup>(Also in [39](https://github.com/electron/electron/pull/49670), [40](https://github.com/electron/electron/pull/49669))</sup> - Fixed an issue where setting `zoomFactor` in `setWindowOpenHandler`'s `overrideBrowserWindowOptions` had no effect on windows opened via `window.open()`. [#&#8203;49911](https://github.com/electron/electron/pull/49911) <sup>(Also in [39](https://github.com/electron/electron/pull/49910), [40](https://github.com/electron/electron/pull/49909))</sup> - Fixed an issue where some apps would throw an exception on launch. [#&#8203;48973](https://github.com/electron/electron/pull/48973) <sup>(Also in [39](https://github.com/electron/electron/pull/48975), [40](https://github.com/electron/electron/pull/48976))</sup> - Fixed an issue where the close callback param for `menu.popup` would fire when any arbitrary submenu of the given menu closed, and not the menu itself. [#&#8203;49017](https://github.com/electron/electron/pull/49017) <sup>(Also in [38](https://github.com/electron/electron/pull/49047), [39](https://github.com/electron/electron/pull/49045), [40](https://github.com/electron/electron/pull/49046))</sup> - Fixed an issue whereby a duplicate "Toggle Full Screen" menu item appeared in the View menu on macOS. [#&#8203;49598](https://github.com/electron/electron/pull/49598) <sup>(Also in [38](https://github.com/electron/electron/pull/49596), [39](https://github.com/electron/electron/pull/49597), [40](https://github.com/electron/electron/pull/49595))</sup> - Fixed crash in platform_util::Beep() on Linux. [#&#8203;49483](https://github.com/electron/electron/pull/49483) <sup>(Also in [39](https://github.com/electron/electron/pull/49484), [40](https://github.com/electron/electron/pull/49482))</sup> - Fixed crash on windows when UTF-8 is in path. [#&#8203;48898](https://github.com/electron/electron/pull/48898) <sup>(Also in [38](https://github.com/electron/electron/pull/48947), [39](https://github.com/electron/electron/pull/48944), [40](https://github.com/electron/electron/pull/48942))</sup> - Fixed crash when attempting to resolve modules during process exit. [#&#8203;49090](https://github.com/electron/electron/pull/49090) <sup>(Also in [40](https://github.com/electron/electron/pull/49104))</sup> - Fixed crash when creating event object for ipc events. [#&#8203;48987](https://github.com/electron/electron/pull/48987) <sup>(Also in [39](https://github.com/electron/electron/pull/48992), [40](https://github.com/electron/electron/pull/48991))</sup> - Fixed crash when reading system certificates via nodejs tls module. [#&#8203;49028](https://github.com/electron/electron/pull/49028) <sup>(Also in [39](https://github.com/electron/electron/pull/49042), [40](https://github.com/electron/electron/pull/49041))</sup> - Fixed dock menu items not respecting enabled and checked properties on macOS. [#&#8203;49625](https://github.com/electron/electron/pull/49625) <sup>(Also in [38](https://github.com/electron/electron/pull/49627), [39](https://github.com/electron/electron/pull/49626), [40](https://github.com/electron/electron/pull/49624))</sup> - Fixed drag regions in child windows. [#&#8203;49231](https://github.com/electron/electron/pull/49231) <sup>(Also in [40](https://github.com/electron/electron/pull/49312))</sup> - Fixed draggable regions not updating position when DevTools is docked to the left or right in a frameless window. [#&#8203;49848](https://github.com/electron/electron/pull/49848) <sup>(Also in [39](https://github.com/electron/electron/pull/49846), [40](https://github.com/electron/electron/pull/49847))</sup> - Fixed draw smoothing round corner issue. [#&#8203;48769](https://github.com/electron/electron/pull/48769) <sup>(Also in [40](https://github.com/electron/electron/pull/48782))</sup> - Fixed memory leak when setting icons on Linux/GTK. [#&#8203;49895](https://github.com/electron/electron/pull/49895) <sup>(Also in [38](https://github.com/electron/electron/pull/49897), [39](https://github.com/electron/electron/pull/49896), [40](https://github.com/electron/electron/pull/49898))</sup> - Fixed menu bar hiding after a call to `win.setFullScreen(false)` when not in fullscreen on Linux. [#&#8203;49996](https://github.com/electron/electron/pull/49996) <sup>(Also in [39](https://github.com/electron/electron/pull/49995), [40](https://github.com/electron/electron/pull/49994))</sup> - Fixed menus to correctly emit `menu-will-close` event when closed after any submenu has been open. [#&#8203;49964](https://github.com/electron/electron/pull/49964) <sup>(Also in [40](https://github.com/electron/electron/pull/49963))</sup> - Fixed oom crash when optimizing certain wasm functions involving large phi nodes. [#&#8203;48791](https://github.com/electron/electron/pull/48791) <sup>(Also in [38](https://github.com/electron/electron/pull/48817), [39](https://github.com/electron/electron/pull/48815), [40](https://github.com/electron/electron/pull/48816))</sup> - Fixed rendering glitches on macOS. [#&#8203;49621](https://github.com/electron/electron/pull/49621) <sup>(Also in [40](https://github.com/electron/electron/pull/49609))</sup> - Fixed shutdown crash on windows when hidden titlebar is enabled. [#&#8203;50055](https://github.com/electron/electron/pull/50055) <sup>(Also in [39](https://github.com/electron/electron/pull/50054), [40](https://github.com/electron/electron/pull/50053))</sup> - Fixed squirrel.mac stacked update behavior to old staged updates. [#&#8203;49639](https://github.com/electron/electron/pull/49639) <sup>(Also in [39](https://github.com/electron/electron/pull/49637), [40](https://github.com/electron/electron/pull/49638))</sup> - Fixed startup crash when V8 sandbox is disabled. [#&#8203;49504](https://github.com/electron/electron/pull/49504) <sup>(Also in [40](https://github.com/electron/electron/pull/49884))</sup> - Fixed the cookie encryption logic to use the old os_crypt sync implementation present in M142. [#&#8203;49382](https://github.com/electron/electron/pull/49382) <sup>(Also in [40](https://github.com/electron/electron/pull/49384))</sup> - Fixed the issue where the parent window leave disabled after the modal window call show() multiple time. [#&#8203;48977](https://github.com/electron/electron/pull/48977) <sup>(Also in [38](https://github.com/electron/electron/pull/49020), [39](https://github.com/electron/electron/pull/49019), [40](https://github.com/electron/electron/pull/49021))</sup> - Fixed the issue where the parent window remained interactive after the modal window was opened. [#&#8203;48770](https://github.com/electron/electron/pull/48770) <sup>(Also in [38](https://github.com/electron/electron/pull/48866), [39](https://github.com/electron/electron/pull/48865), [40](https://github.com/electron/electron/pull/48864))</sup> - Made toplevel icon Wayland protocol work. [#&#8203;49290](https://github.com/electron/electron/pull/49290) <sup>(Also in [39](https://github.com/electron/electron/pull/49415), [40](https://github.com/electron/electron/pull/49414))</sup> - Reenable V8 trap handlers for wasm in browser and utility process, improves runtime execution of wasm. [#&#8203;48788](https://github.com/electron/electron/pull/48788) <sup>(Also in [39](https://github.com/electron/electron/pull/48837), [40](https://github.com/electron/electron/pull/48839))</sup> - Requests sent via `net` are now capable of having their headers modified to use reserved headers via `webRequest`. [#&#8203;49226](https://github.com/electron/electron/pull/49226) <sup>(Also in [39](https://github.com/electron/electron/pull/49242), [40](https://github.com/electron/electron/pull/49241))</sup> - Restored window's canHide property. [#&#8203;47970](https://github.com/electron/electron/pull/47970) <sup>(Also in [37](https://github.com/electron/electron/pull/48902), [38](https://github.com/electron/electron/pull/48900), [39](https://github.com/electron/electron/pull/48901))</sup> - Reverted AltGr key fix that caused menu bar to no longer show on Windows. [#&#8203;50111](https://github.com/electron/electron/pull/50111) <sup>(Also in [39](https://github.com/electron/electron/pull/50109), [40](https://github.com/electron/electron/pull/50110))</sup> - Windows: Calling window\.setFocusable(true) will no longer cause a window to lose focus. [#&#8203;45640](https://github.com/electron/electron/pull/45640) <sup>(Also in [39](https://github.com/electron/electron/pull/48928), [40](https://github.com/electron/electron/pull/48927))</sup> #### Other Changes - Backported fix for [`4835695`](https://github.com/electron/electron/commit/483569511). [#&#8203;49789](https://github.com/electron/electron/pull/49789) - Fixed crash in platform_util::Beep() on Linux. [#&#8203;49865](https://github.com/electron/electron/pull/49865) <sup>(Also in [40](https://github.com/electron/electron/pull/49864))</sup> - Fixed devtools element panel flickering when with node inspection. [#&#8203;49027](https://github.com/electron/electron/pull/49027) <sup>(Also in [39](https://github.com/electron/electron/pull/49044), [40](https://github.com/electron/electron/pull/49043))</sup> #### Documentation - Documentation change - [#&#8203;48813](https://github.com/electron/electron/pull/48813) - [#&#8203;48877](https://github.com/electron/electron/pull/48877) - [#&#8203;49948](https://github.com/electron/electron/pull/49948) #### Notices ##### End of Support for 38.x.y Electron 38.x.y has reached end-of-support as per the project's [support policy](https://www.electronjs.org/docs/latest/tutorial/electron-timelines#version-support-policy). Developers and applications are encouraged to upgrade to a newer version of Electron. ### [`v40.10.6`](https://github.com/electron/electron/releases/tag/v40.10.6): electron v40.10.6 [Compare Source](https://github.com/electron/electron/compare/v40.10.5...v40.10.6) ### Release Notes for v40.10.6 #### Fixes - Fixed `ProtocolResponse.url` requests being made through the default session instead of the session the protocol handler was registered on when `ProtocolResponse.session` was not set. [#&#8203;52135](https://github.com/electron/electron/pull/52135) <sup>(Also in [41](https://github.com/electron/electron/pull/52134), [42](https://github.com/electron/electron/pull/52132), [43](https://github.com/electron/electron/pull/52131))</sup> #### Other Changes - Backported fixes from upstream Chromium. [#&#8203;52121](https://github.com/electron/electron/pull/52121) - Backported fixes from upstream Chromium. [#&#8203;52171](https://github.com/electron/electron/pull/52171) ### [`v40.10.5`](https://github.com/electron/electron/releases/tag/v40.10.5): electron v40.10.5 [Compare Source](https://github.com/electron/electron/compare/v40.10.4...v40.10.5) ### Release Notes for v40.10.5 #### Other Changes - Backported fixes from upstream Chromium. [#&#8203;51977](https://github.com/electron/electron/pull/51977) ### [`v40.10.4`](https://github.com/electron/electron/releases/tag/v40.10.4): electron v40.10.4 [Compare Source](https://github.com/electron/electron/compare/v40.10.3...v40.10.4) ### Release Notes for v40.10.4 #### Other Changes - Backported fixes from upstream Chromium and V8. [#&#8203;51937](https://github.com/electron/electron/pull/51937) - Backported fixes from upstream Chromium, Skia and Dawn. [#&#8203;51946](https://github.com/electron/electron/pull/51946) #### Documentation - Documentation changes: [#&#8203;51928](https://github.com/electron/electron/pull/51928) ### [`v40.10.3`](https://github.com/electron/electron/releases/tag/v40.10.3): electron v40.10.3 [Compare Source](https://github.com/electron/electron/compare/v40.10.2...v40.10.3) ### Release Notes for v40.10.3 #### Other Changes - Security: backported fixes for CVE-2026-9110, CVE-2026-9111, CVE-2026-9112, CVE-2026-9113, CVE-2026-9114, CVE-2026-9115, CVE-2026-9116, CVE-2026-9117, CVE-2026-9118, CVE-2026-9119, CVE-2026-9120, CVE-2026-9121, CVE-2026-9122, CVE-2026-9124, CVE-2026-9126. [#&#8203;51907](https://github.com/electron/electron/pull/51907) ### [`v40.10.2`](https://github.com/electron/electron/releases/tag/v40.10.2): electron v40.10.2 [Compare Source](https://github.com/electron/electron/compare/v40.10.1...v40.10.2) ### Release Notes for v40.10.2 #### Fixes - Fixed an issue that caused the RGBAF16 shared texture format to have a keyed mutex on Windows. [#&#8203;51701](https://github.com/electron/electron/pull/51701) <sup>(Also in [41](https://github.com/electron/electron/pull/49876))</sup> - Fixed an issue where closing devtools immediately after focus caused a crash. [#&#8203;51702](https://github.com/electron/electron/pull/51702) <sup>(Also in [41](https://github.com/electron/electron/pull/51037), [42](https://github.com/electron/electron/pull/51036))</sup> - Fixed an issue where custom options in `webContents.print()` did not prefill the print dialog on macOS. [#&#8203;51692](https://github.com/electron/electron/pull/51692) <sup>(Also in [41](https://github.com/electron/electron/pull/51682), [42](https://github.com/electron/electron/pull/50643))</sup> ### [`v40.10.1`](https://github.com/electron/electron/releases/tag/v40.10.1): electron v40.10.1 [Compare Source](https://github.com/electron/electron/compare/v40.10.0...v40.10.1) ### Release Notes for v40.10.1 #### Other Changes - Backported a batch of upstream fixes for memory-safety and validation issues across media, GPU, networking, accessibility, compositing and the ANGLE GL backend. [#&#8203;51671](https://github.com/electron/electron/pull/51671) - Backported fixes for several use-after-free and object-lifetime issues in input, UI, Aura, HID and file-system teardown paths, and a runtime-effect validation gap in Skia. [#&#8203;51648](https://github.com/electron/electron/pull/51648) - Security: backported 20 High-severity fixes from Chrome 148 stable release. [#&#8203;51618](https://github.com/electron/electron/pull/51618) ### [`v40.10.0`](https://github.com/electron/electron/releases/tag/v40.10.0): electron v40.10.0 [Compare Source](https://github.com/electron/electron/compare/v40.9.3...v40.10.0) ### Release Notes for v40.10.0 #### Fixes - Fixed `app.getLoginItemSettings()` returning `undefined` for `executableWillLaunchAtLogin` on macOS; the property is now always a boolean. [#&#8203;51509](https://github.com/electron/electron/pull/51509) <sup>(Also in [41](https://github.com/electron/electron/pull/51508), [42](https://github.com/electron/electron/pull/51507))</sup> #### Other Changes - Updated Node.js to v24.15.0. [#&#8203;51087](https://github.com/electron/electron/pull/51087) ### [`v40.9.3`](https://github.com/electron/electron/releases/tag/v40.9.3): electron v40.9.3 [Compare Source](https://github.com/electron/electron/compare/v40.9.2...v40.9.3) ### Release Notes for v40.9.3 #### Fixes - Ensured cross-origin `fetch()` and XHR are blocked for custom protocols registered with `supportFetchAPI: true` unless `corsEnabled: true` is also set; cross-origin `mode: 'no-cors'` requests now receive an opaque response. [#&#8203;51271](https://github.com/electron/electron/pull/51271) <sup>(Also in [39](https://github.com/electron/electron/pull/51272), [41](https://github.com/electron/electron/pull/51270), [42](https://github.com/electron/electron/pull/51269))</sup> - Fixed `webContents.printToPDF` rejecting on all subsequent calls after a prior call was rejected with an invalid `pageRanges` value. [#&#8203;51220](https://github.com/electron/electron/pull/51220) <sup>(Also in [41](https://github.com/electron/electron/pull/51221), [42](https://github.com/electron/electron/pull/51222))</sup> - Fixed a crash when providing invalid HTTP header names or values in the `webRequest.onBeforeSendHeaders()` callback. [#&#8203;51364](https://github.com/electron/electron/pull/51364) <sup>(Also in [41](https://github.com/electron/electron/pull/51365), [42](https://github.com/electron/electron/pull/51366))</sup> - Fixed a crash that could occur when an autofill suggestion popup was shown while a window was closing. [#&#8203;51334](https://github.com/electron/electron/pull/51334) <sup>(Also in [41](https://github.com/electron/electron/pull/51321), [42](https://github.com/electron/electron/pull/51317))</sup> - Fixed an issue where `app-region: drag` inside a hidden `WebContentsView` would still drag the parent window on Windows. [#&#8203;51247](https://github.com/electron/electron/pull/51247) <sup>(Also in [41](https://github.com/electron/electron/pull/51246), [42](https://github.com/electron/electron/pull/51245))</sup> - Fixed an issue where an Electron macOS update would not be applied if another app was previously blocking the macOS system update loop. [#&#8203;51211](https://github.com/electron/electron/pull/51211) <sup>(Also in [41](https://github.com/electron/electron/pull/51210), [42](https://github.com/electron/electron/pull/51212))</sup> - Fixed buggy behavior where Backspace would accept macOS text replacements inside `contenteditable` elements. [#&#8203;51345](https://github.com/electron/electron/pull/51345) <sup>(Also in [41](https://github.com/electron/electron/pull/51343), [42](https://github.com/electron/electron/pull/51344))</sup> #### Other Changes - Backported a fix for route_id validation in the GPU command buffer. [#&#8203;51320](https://github.com/electron/electron/pull/51320) - Backported security fixes for [`4933194`](https://github.com/electron/electron/commit/493319454), [`4941583`](https://github.com/electron/electron/commit/494158331), [`4932347`](https://github.com/electron/electron/commit/493234757), [`4927361`](https://github.com/electron/electron/commit/492736100), [`4934134`](https://github.com/electron/electron/commit/493413432), [`4926688`](https://github.com/electron/electron/commit/492668885), [`4962818`](https://github.com/electron/electron/commit/496281816). [#&#8203;51258](https://github.com/electron/electron/pull/51258) - Backported several fixes in Skia, ANGLE, and WebRTC from upstream. [#&#8203;51265](https://github.com/electron/electron/pull/51265) ### [`v40.9.2`](https://github.com/electron/electron/releases/tag/v40.9.2): electron v40.9.2 [Compare Source](https://github.com/electron/electron/compare/v40.9.1...v40.9.2) ### Release Notes for v40.9.2 #### Fixes - Fixed an issue where `nodeIntegrationInWorker` didn't always work in AudioWorklet. [#&#8203;51004](https://github.com/electron/electron/pull/51004) <sup>(Also in [41](https://github.com/electron/electron/pull/51006), [42](https://github.com/electron/electron/pull/51005))</sup> - Fixed bug that could occasionally cause browserWindow's `always-on-top-changed` even to fire with incorrect values. [#&#8203;51134](https://github.com/electron/electron/pull/51134) <sup>(Also in [41](https://github.com/electron/electron/pull/51135), [42](https://github.com/electron/electron/pull/51133))</sup> - Fixed test scaffolding bug when running tests locally on Linux. [#&#8203;51151](https://github.com/electron/electron/pull/51151) <sup>(Also in [41](https://github.com/electron/electron/pull/51150), [42](https://github.com/electron/electron/pull/51149))</sup> #### Other Changes - Fixed `gn gen` failing to resolve `electron_version` when building from a `git worktree` checkout. [#&#8203;51164](https://github.com/electron/electron/pull/51164) <sup>(Also in [39](https://github.com/electron/electron/pull/51163), [41](https://github.com/electron/electron/pull/51165), [42](https://github.com/electron/electron/pull/51166))</sup> - Security: backported fixes for CVE-2026-6297, CVE-2026-6299, CVE-2026-6358, CVE-2026-6359, CVE-2026-6300, CVE-2026-6303, CVE-2026-6308, CVE-2026-6309, CVE-2026-6360, CVE-2026-6311, CVE-2026-6313, CVE-2026-6314, CVE-2026-6316, CVE-2026-6362, CVE-2026-6301, CVE-2026-6307, CVE-2026-6363, CVE-2026-6298, CVE-2026-6304, CVE-2026-6364, CVE-2026-6296, CVE-2026-6305, CVE-2026-6306, CVE-2026-6361, CVE-2026-6302, CVE-2026-6318. [#&#8203;51139](https://github.com/electron/electron/pull/51139) ### [`v40.9.1`](https://github.com/electron/electron/releases/tag/v40.9.1): electron v40.9.1 [Compare Source](https://github.com/electron/electron/compare/v40.8.5...v40.9.1) ### Release Notes for v40.9.1 #### Features - Added `allowExtensions` privilege to `protocol.registerSchemesAsPrivileged()` to enable Chrome extensions on custom protocols. [#&#8203;50588](https://github.com/electron/electron/pull/50588) <sup>(Also in [41](https://github.com/electron/electron/pull/50529), [42](https://github.com/electron/electron/pull/50530))</sup> #### Fixes - Fixed `fs.stat` on files inside asar archives returning `undefined` for `blksize` and `blocks` instead of numeric values. [#&#8203;50875](https://github.com/electron/electron/pull/50875) <sup>(Also in [41](https://github.com/electron/electron/pull/50876), [42](https://github.com/electron/electron/pull/50877))</sup> - Fixed a memory leak where Menu items were not cleaned up after Menu.setApplicationMenu was called repeatedly. [#&#8203;50831](https://github.com/electron/electron/pull/50831) <sup>(Also in [41](https://github.com/electron/electron/pull/50830), [42](https://github.com/electron/electron/pull/50832))</sup> - Fixed an intermittent `Invoke in DisallowJavascriptExecutionScope` crash on application quit when a `WebContents` (or other JS-emitting native object) is garbage-collected during shutdown. [#&#8203;50693](https://github.com/electron/electron/pull/50693) <sup>(Also in [41](https://github.com/electron/electron/pull/50694), [42](https://github.com/electron/electron/pull/50695))</sup> - Fixed an issue on macOS where `show`/`hide` events and `WebContents` visibility state could be reported incorrectly when multiple `WebContentsView`s were attached to a window. [#&#8203;50713](https://github.com/electron/electron/pull/50713) <sup>(Also in [41](https://github.com/electron/electron/pull/50715), [42](https://github.com/electron/electron/pull/50712))</sup> - Fixed an issue where DevTools would re-attach to the window when opened after previously being detached. [#&#8203;50817](https://github.com/electron/electron/pull/50817) <sup>(Also in [39](https://github.com/electron/electron/pull/50818), [41](https://github.com/electron/electron/pull/50816), [42](https://github.com/electron/electron/pull/50815))</sup> - Fixed an issue where `setSimpleFullScreen` on macOS would exit when web content called `requestFullscreen()`. [#&#8203;50986](https://github.com/electron/electron/pull/50986) <sup>(Also in [42](https://github.com/electron/electron/pull/50987))</sup> - Fixed an issue where concurrent `getFileHandle` requests on the same path could stall indefinitely. [#&#8203;50672](https://github.com/electron/electron/pull/50672) <sup>(Also in [41](https://github.com/electron/electron/pull/50670), [42](https://github.com/electron/electron/pull/50671))</sup> - Fixed aspect ratio min/max size clamping to correctly account for extraSize on macOS. [#&#8203;50834](https://github.com/electron/electron/pull/50834) <sup>(Also in [41](https://github.com/electron/electron/pull/50835), [42](https://github.com/electron/electron/pull/50836))</sup> - Fixed the crash keys being lost and the crash reporter hanging on macOS when many dynamic crash keys were registered. [#&#8203;50838](https://github.com/electron/electron/pull/50838) <sup>(Also in [41](https://github.com/electron/electron/pull/50837), [42](https://github.com/electron/electron/pull/50839))</sup> - Moved Electron-specific help menu links to the default app only; unpackaged apps will no longer see these items in their default menu. [#&#8203;50860](https://github.com/electron/electron/pull/50860) <sup>(Also in [41](https://github.com/electron/electron/pull/50859), [42](https://github.com/electron/electron/pull/50861))</sup> #### Other Changes - Backported fix for [`4897116`](https://github.com/electron/electron/commit/489711638). [#&#8203;50623](https://github.com/electron/electron/pull/50623) - Backported fix for [`4939526`](https://github.com/electron/electron/commit/493952652). [#&#8203;50619](https://github.com/electron/electron/pull/50619) - Backported fix for none. [#&#8203;50881](https://github.com/electron/electron/pull/50881) - Backported upstream v8 fixes for several maglev, inspector, and arm64 code-generation edge cases. [#&#8203;50992](https://github.com/electron/electron/pull/50992) ### [`v40.8.5`](https://github.com/electron/electron/releases/tag/v40.8.5): electron v40.8.5 [Compare Source](https://github.com/electron/electron/compare/v40.8.4...v40.8.5) ### Release Notes for v40.8.5 #### Fixes - Fixed a bug where Windows notification icons could fail to save because their temporary filenames contained invalid characters. [#&#8203;50484](https://github.com/electron/electron/pull/50484) <sup>(Also in [41](https://github.com/electron/electron/pull/50483))</sup> - Fixed a crash in `clipboard.readImage()` when the clipboard contains malformed image data. [#&#8203;50491](https://github.com/electron/electron/pull/50491) <sup>(Also in [39](https://github.com/electron/electron/pull/50493), [41](https://github.com/electron/electron/pull/50492), [42](https://github.com/electron/electron/pull/50494))</sup> - Fixed a crash when calling an offscreen shared texture's `release()` after the texture object was garbage collected. [#&#8203;50500](https://github.com/electron/electron/pull/50500) <sup>(Also in [39](https://github.com/electron/electron/pull/50499), [41](https://github.com/electron/electron/pull/50501), [42](https://github.com/electron/electron/pull/50502))</sup> - Fixed an accessibility issue where the AXMenuOpened event was not fired on menu creation. [#&#8203;50505](https://github.com/electron/electron/pull/50505) <sup>(Also in [41](https://github.com/electron/electron/pull/50506), [42](https://github.com/electron/electron/pull/50504))</sup> - Fixed an issue where an app shortcut may lose its icon after auto-updating on Windows. [#&#8203;50518](https://github.com/electron/electron/pull/50518) #### Other Changes - Backported fix for chromium:475877320. [#&#8203;50438](https://github.com/electron/electron/pull/50438) ### [`v40.8.4`](https://github.com/electron/electron/releases/tag/v40.8.4): electron v40.8.4 [Compare Source](https://github.com/electron/electron/compare/v40.8.3...v40.8.4) ### Release Notes for v40.8.4 #### Fixes - Fixed an issue where `nodeIntegrationInWorker` overrides in `setWindowOpenHandler` were not honored for child windows sharing a renderer process with their opener. [#&#8203;50467](https://github.com/electron/electron/pull/50467) <sup>(Also in [38](https://github.com/electron/electron/pull/50163), [39](https://github.com/electron/electron/pull/50468), [41](https://github.com/electron/electron/pull/50134))</sup> - Fixed crash when handling JavaScript dialogs from windows opened with invalid or empty URLs. [#&#8203;50401](https://github.com/electron/electron/pull/50401) <sup>(Also in [39](https://github.com/electron/electron/pull/50400), [41](https://github.com/electron/electron/pull/50399), [42](https://github.com/electron/electron/pull/50398))</sup> - Fixed improper focus tracking in BaseWindow on MacOS. [#&#8203;50337](https://github.com/electron/electron/pull/50337) <sup>(Also in [39](https://github.com/electron/electron/pull/50338), [41](https://github.com/electron/electron/pull/50340), [42](https://github.com/electron/electron/pull/50339))</sup> - Fixed logic bug that rendered certain window types un-resizable on MAS builds. [#&#8203;50355](https://github.com/electron/electron/pull/50355) <sup>(Also in [41](https://github.com/electron/electron/pull/50354), [42](https://github.com/electron/electron/pull/50356))</sup> - Fixed utilityProcess exit event reporting incorrect exit codes on Windows when the exit code has the high bit. [#&#8203;50387](https://github.com/electron/electron/pull/50387) <sup>(Also in [41](https://github.com/electron/electron/pull/50386), [42](https://github.com/electron/electron/pull/50385))</sup> - Fixed window freeze when failing to enter/exit fullscreen on macOS. [#&#8203;50344](https://github.com/electron/electron/pull/50344) <sup>(Also in [39](https://github.com/electron/electron/pull/50341), [41](https://github.com/electron/electron/pull/50343), [42](https://github.com/electron/electron/pull/50342))</sup> #### Other Changes - Added support for using a proxy during yarn install. [#&#8203;50352](https://github.com/electron/electron/pull/50352) <sup>(Also in [39](https://github.com/electron/electron/pull/50349), [41](https://github.com/electron/electron/pull/50350), [42](https://github.com/electron/electron/pull/50351))</sup> - Backported fix for [`4859353`](https://github.com/electron/electron/commit/485935305). [#&#8203;50441](https://github.com/electron/electron/pull/50441) - Backported fix for [`4893813`](https://github.com/electron/electron/commit/489381399). [#&#8203;50449](https://github.com/electron/electron/pull/50449) - Backported fixes for [`4847510`](https://github.com/electron/electron/commit/484751092), [`4871177`](https://github.com/electron/electron/commit/487117772). [#&#8203;50460](https://github.com/electron/electron/pull/50460) ### [`v40.8.3`](https://github.com/electron/electron/releases/tag/v40.8.3): electron v40.8.3 [Compare Source](https://github.com/electron/electron/compare/v40.8.2...v40.8.3) ### Release Notes for v40.8.3 #### Fixes - Added additional ASAR support to additional `fs` copy methods. [#&#8203;50287](https://github.com/electron/electron/pull/50287) <sup>(Also in [39](https://github.com/electron/electron/pull/50284), [41](https://github.com/electron/electron/pull/50286), [42](https://github.com/electron/electron/pull/50285))</sup> - Fixed an issue where some DevTools functionality didn't work as expected. [#&#8203;50275](https://github.com/electron/electron/pull/50275) <sup>(Also in [41](https://github.com/electron/electron/pull/50276), [42](https://github.com/electron/electron/pull/50274))</sup> - Fixed user resizing of transparent windows on win32 platform. [#&#8203;50301](https://github.com/electron/electron/pull/50301) <sup>(Also in [39](https://github.com/electron/electron/pull/50300), [41](https://github.com/electron/electron/pull/50298), [42](https://github.com/electron/electron/pull/50299))</sup> ### [`v40.8.2`](https://github.com/electron/electron/releases/tag/v40.8.2): electron v40.8.2 [Compare Source](https://github.com/electron/electron/compare/v40.8.1...v40.8.2) ### Release Notes for v40.8.2 #### Other Changes - Backported fix for b/491421267. [#&#8203;50229](https://github.com/electron/electron/pull/50229) - Fixed an issue where running app icons were not correctly retrieved on macOS Tahoe. [#&#8203;50188](https://github.com/electron/electron/pull/50188) ### [`v40.8.1`](https://github.com/electron/electron/releases/tag/v40.8.1): electron v40.8.1 [Compare Source](https://github.com/electron/electron/compare/v40.8.0...v40.8.1) ### Release Notes for v40.8.1 #### Fixes - Added validation to protocol client methods to reject protocol names that do not conform to the RFC 3986 URI scheme grammar. [#&#8203;50158](https://github.com/electron/electron/pull/50158) <sup>(Also in [38](https://github.com/electron/electron/pull/50157), [39](https://github.com/electron/electron/pull/50156), [41](https://github.com/electron/electron/pull/50155))</sup> - Fixed an issue on macOS where calling `autoUpdater.quitAndInstall()` could fail if `checkForUpdates()` was called again after an update was already downloaded. [#&#8203;50216](https://github.com/electron/electron/pull/50216) <sup>(Also in [39](https://github.com/electron/electron/pull/50215), [41](https://github.com/electron/electron/pull/50217))</sup> - Fixed an issue where Chrome Devtools menus may not appear in certain embedded windows. [#&#8203;50138](https://github.com/electron/electron/pull/50138) <sup>(Also in [39](https://github.com/electron/electron/pull/50136), [41](https://github.com/electron/electron/pull/50137))</sup> - Fixed an issue where `additionalData` passed to `app.requestSingleInstanceLock` on Windows could be truncated or fail to deserialize in the primary instance's `second-instance` event. [#&#8203;50162](https://github.com/electron/electron/pull/50162) <sup>(Also in [38](https://github.com/electron/electron/pull/50177), [39](https://github.com/electron/electron/pull/50174), [41](https://github.com/electron/electron/pull/50154))</sup> - Fixed an issue where `screen.getCursorScreenPoint()` crashed on Wayland when it was called before a `BrowserWindow` had been created. [#&#8203;50104](https://github.com/electron/electron/pull/50104) <sup>(Also in [39](https://github.com/electron/electron/pull/50106), [41](https://github.com/electron/electron/pull/50105))</sup> - Fixed an issue where calling `setBounds` on a `WebContentsView` could trigger redundant `page-favicon-updated` events even when the favicon had not changed. [#&#8203;50084](https://github.com/electron/electron/pull/50084) <sup>(Also in [39](https://github.com/electron/electron/pull/50086), [41](https://github.com/electron/electron/pull/50085))</sup> - Fixed an issue where invalid characters in custom protocol or webRequest response header values were not rejected. [#&#8203;50131](https://github.com/electron/electron/pull/50131) <sup>(Also in [38](https://github.com/electron/electron/pull/50130), [39](https://github.com/electron/electron/pull/50129), [41](https://github.com/electron/electron/pull/50132))</sup> - Fixed an issue where permission and device-chooser handlers received the top-level page origin instead of the requesting subframe's origin. [#&#8203;50149](https://github.com/electron/electron/pull/50149) <sup>(Also in [38](https://github.com/electron/electron/pull/50151), [39](https://github.com/electron/electron/pull/50147), [41](https://github.com/electron/electron/pull/50148))</sup> - Fixed an issue where traffic light buttons would flash at position (0,0) when restoring a window with a custom `trafficLightPosition` from minimization on macOS. [#&#8203;50207](https://github.com/electron/electron/pull/50207) <sup>(Also in [39](https://github.com/electron/electron/pull/50208), [41](https://github.com/electron/electron/pull/50209))</sup> - Fixed bug where opening a message box immediately upon closing a child window may cause the parent window to freeze on Windows. [#&#8203;50189](https://github.com/electron/electron/pull/50189) <sup>(Also in [39](https://github.com/electron/electron/pull/50190), [41](https://github.com/electron/electron/pull/50191))</sup> - Reverted AltGr key fix that caused menu bar to no longer show on Windows. [#&#8203;50110](https://github.com/electron/electron/pull/50110) <sup>(Also in [39](https://github.com/electron/electron/pull/50109), [41](https://github.com/electron/electron/pull/50111))</sup> #### Other Changes - Backported fix for chromium:485622239. [#&#8203;50168](https://github.com/electron/electron/pull/50168) ### [`v40.8.0`](https://github.com/electron/electron/releases/tag/v40.8.0): electron v40.8.0 [Compare Source](https://github.com/electron/electron/compare/v40.7.0...v40.8.0) ### Release Notes for v40.8.0 #### Features - Added a `reason` property to the Notification 'closed' event on Windows to allow developers to know the reason the Notification was dismissed. [#&#8203;50030](https://github.com/electron/electron/pull/50030) <sup>(Also in [41](https://github.com/electron/electron/pull/50029))</sup> #### Fixes - Fixed shutdown crash on windows when hidden titlebar is enabled. [#&#8203;50053](https://github.com/electron/electron/pull/50053) <sup>(Also in [39](https://github.com/electron/electron/pull/50054), [41](https://github.com/electron/electron/pull/50055))</sup> #### Other Changes - Updated Chromium to 144.0.7559.236. [#&#8203;50060](https://github.com/electron/electron/pull/50060) ### [`v40.7.0`](https://github.com/electron/electron/releases/tag/v40.7.0): electron v40.7.0 [Compare Source](https://github.com/electron/electron/compare/v40.6.1...v40.7.0) ### Release Notes for v40.7.0 #### Features - Added support for `--experimental-transform-types`. [#&#8203;49883](https://github.com/electron/electron/pull/49883) <sup>(Also in [39](https://github.com/electron/electron/pull/49881), [41](https://github.com/electron/electron/pull/49882))</sup> #### Fixes - Allow dynamically updating menu item labels, sublabels, and icons. [#&#8203;49973](https://github.com/electron/electron/pull/49973) <sup>(Also in [41](https://github.com/electron/electron/pull/49972))</sup> - Fixed `safeStorage` failing to clean up legacy keychain entries when migrating to suffixed account names on macOS, and fixed first launch creating entries with the wrong (unsuffixed) account name. [#&#8203;49817](https://github.com/electron/electron/pull/49817) - Fixed a bug that cause offscreen rendering doesn't have valid screen info and unable to get valid result of related media queries. - Added webPreference.offscreen.deviceScaleFactor to allow user specify a value, instead of using user's primary display's value. [#&#8203;49681](https://github.com/electron/electron/pull/49681) - Fixed a macOS crash when creating a new tab from the tab overview. [#&#8203;49934](https://github.com/electron/electron/pull/49934) <sup>(Also in [41](https://github.com/electron/electron/pull/49933))</sup> - Fixed an issue on macOS where Universal Links were not delivered to `app.on('continue-activity')` on cold launch when `NSUserActivity.userInfo` was nil. [#&#8203;50005](https://github.com/electron/electron/pull/50005) <sup>(Also in [39](https://github.com/electron/electron/pull/50004), [41](https://github.com/electron/electron/pull/50006))</sup> - Fixed an issue where `VideoFrame` objects returned through `contextBridge` had an incorrect prototype. [#&#8203;50022](https://github.com/electron/electron/pull/50022) <sup>(Also in [39](https://github.com/electron/electron/pull/50021), [41](https://github.com/electron/electron/pull/50023))</sup> - Fixed an issue where malformed custom `toastXml` could cause a Notification crash. [#&#8203;49952](https://github.com/electron/electron/pull/49952) <sup>(Also in [41](https://github.com/electron/electron/pull/49953))</sup> - Fixed menu bar hiding after a call to `win.setFullScreen(false)` when not in fullscreen on Linux. [#&#8203;49994](https://github.com/electron/electron/pull/49994) <sup>(Also in [41](https://github.com/electron/electron/pull/49996))</sup> - Fixed menus to correctly emit `menu-will-close` event when closed after any submenu has been open. [#&#8203;49963](https://github.com/electron/electron/pull/49963) <sup>(Also in [41](https://github.com/electron/electron/pull/49964))</sup> #### Other Changes - Updated Chromium to 144.0.7559.225. [#&#8203;49928](https://github.com/electron/electron/pull/49928) - Updated Node.js to v24.14.0. [#&#8203;49939](https://github.com/electron/electron/pull/49939) ### [`v40.6.1`](https://github.com/electron/electron/releases/tag/v40.6.1): electron v40.6.1 [Compare Source](https://github.com/electron/electron/compare/v40.6.0...v40.6.1) ### Release Notes for v40.6.1 #### Fixes - Fixed `globalShortcut` not working on Wayland with `GlobalShortcutsPortal` feature enabled. [#&#8203;49870](https://github.com/electron/electron/pull/49870) <sup>(Also in [41](https://github.com/electron/electron/pull/49871))</sup> - Fixed an issue where making a window fullscreen on Windows, minimizing it and then restoring it broke previous fullscreen state. [#&#8203;49892](https://github.com/electron/electron/pull/49892) <sup>(Also in [41](https://github.com/electron/electron/pull/49891))</sup> - Fixed an issue where menu item enabled state wasn't updated during key equivalent dispatch when the menu was closed on macOS. [#&#8203;49889](https://github.com/electron/electron/pull/49889) <sup>(Also in [39](https://github.com/electron/electron/pull/49888), [41](https://github.com/electron/electron/pull/49890))</sup> - Fixed an issue where pressing AltGr could activate or focus the menu bar. [#&#8203;49915](https://github.com/electron/electron/pull/49915) <sup>(Also in [39](https://github.com/electron/electron/pull/49914), [41](https://github.com/electron/electron/pull/49916))</sup> - Fixed an issue where setting `zoomFactor` in `setWindowOpenHandler`'s `overrideBrowserWindowOptions` had no effect on windows opened via `window.open()`. [#&#8203;49909](https://github.com/electron/electron/pull/49909) <sup>(Also in [41](https://github.com/electron/electron/pull/49911))</sup> - Fixed draggable regions not updating position when DevTools is docked to the left or right in a frameless window. [#&#8203;49847](https://github.com/electron/electron/pull/49847) <sup>(Also in [39](https://github.com/electron/electron/pull/49846), [41](https://github.com/electron/electron/pull/49848))</sup> - Fixed memory leak when setting icons on Linux/GTK. [#&#8203;49898](https://github.com/electron/electron/pull/49898) <sup>(Also in [38](https://github.com/electron/electron/pull/49897), [39](https://github.com/electron/electron/pull/49896), [41](https://github.com/electron/electron/pull/49895))</sup> - Fixed startup crash when V8 sandbox is disabled. [#&#8203;49884](https://github.com/electron/electron/pull/49884) <sup>(Also in [41](https://github.com/electron/electron/pull/49504))</sup> #### Other Changes - Fixed crash in platform_util::Beep() on Linux. [#&#8203;49864](https://github.com/electron/electron/pull/49864) <sup>(Also in [41](https://github.com/electron/electron/pull/49865))</sup> - Updated Chromium to 144.0.7559.220. [#&#8203;49869](https://github.com/electron/electron/pull/49869) ### [`v40.6.0`](https://github.com/electron/electron/releases/tag/v40.6.0): electron v40.6.0 [Compare Source](https://github.com/electron/electron/compare/v40.5.0...v40.6.0) ### Release Notes for v40.6.0 #### Features - Added the ability to disable auto-focusing of WebContents on navigation using `webPreferences.focusOnNavigation`. [#&#8203;49512](https://github.com/electron/electron/pull/49512) <sup>(Also in [41](https://github.com/electron/electron/pull/49511))</sup> #### Fixes - Fixed an issue where frameless windows had resize issues in Mac App Store builds. [#&#8203;49856](https://github.com/electron/electron/pull/49856) ### [`v40.5.0`](https://github.com/electron/electron/releases/tag/v40.5.0): electron v40.5.0 [Compare Source](https://github.com/electron/electron/compare/v40.4.1...v40.5.0) ### Release Notes for v40.5.0 #### Features - Added support for `long-animation-frame` script attribution (via `--enable-features=AlwaysLogLOAFURL`). [#&#8203;49772](https://github.com/electron/electron/pull/49772) <sup>(Also in [41](https://github.com/electron/electron/pull/49773))</sup> - Extended actions support for Windows notifications to include buttons, select dropdowns, and replies. [#&#8203;49786](https://github.com/electron/electron/pull/49786) <sup>(Also in [41](https://github.com/electron/electron/pull/49787))</sup> #### Fixes - Addressed upstream Chromium shift to enable `CoreAudio Tap API` for audio capture used in electron's `desktopCapturer` (🍏 macOS). [#&#8203;49741](https://github.com/electron/electron/pull/49741) <sup>(Also in [39](https://github.com/electron/electron/pull/49740), [41](https://github.com/electron/electron/pull/49739))</sup> - Made pointer lock work on Wayland. [#&#8203;49283](https://github.com/electron/electron/pull/49283) #### Other Changes - Updated Chromium to 144.0.7559.177. [#&#8203;49800](https://github.com/electron/electron/pull/49800) - Updated Node.js to v24.13.1. [#&#8203;49742](https://github.com/electron/electron/pull/49742) ### [`v40.4.1`](https://github.com/electron/electron/releases/tag/v40.4.1): electron v40.4.1 [Compare Source](https://github.com/electron/electron/compare/v40.4.0...v40.4.1) ### Release Notes for v40.4.1 #### Other Changes - Backported fix for [`4835695`](https://github.com/electron/electron/commit/483569511). [#&#8203;49790](https://github.com/electron/electron/pull/49790) - Updated Chromium to 144.0.7559.173. [#&#8203;49766](https://github.com/electron/electron/pull/49766) ### [`v40.4.0`](https://github.com/electron/electron/releases/tag/v40.4.0): electron v40.4.0 [Compare Source](https://github.com/electron/electron/compare/v40.3.0...v40.4.0) ### Release Notes for v40.4.0 #### Features - Added a disclaim option to the UtilityProcess API to allow for TCC disclaiming on macOS. [#&#8203;49695](https://github.com/electron/electron/pull/49695) ### [`v40.3.0`](https://github.com/electron/electron/releases/tag/v40.3.0): electron v40.3.0 [Compare Source](https://github.com/electron/electron/compare/v40.2.1...v40.3.0) ### Release Notes for v40.3.0 #### Fixes - Fixed an issue where native modules would either crash or not compile for MacOS 12. [#&#8203;49702](https://github.com/electron/electron/pull/49702) <sup>(Also in [41](https://github.com/electron/electron/pull/49703))</sup> - Fixed an issue where role-based menu items were incorrectly returning `null` for their accelerator property. [#&#8203;49669](https://github.com/electron/electron/pull/49669) <sup>(Also in [39](https://github.com/electron/electron/pull/49670), [41](https://github.com/electron/electron/pull/49668))</sup> #### Other Changes - Backported fix for [`4797260`](https://github.com/electron/electron/commit/479726070). [#&#8203;49699](https://github.com/electron/electron/pull/49699) - Updated Chromium to 144.0.7559.134. [#&#8203;49656](https://github.com/electron/electron/pull/49656) - Updated Node.js to v24.13.0. [#&#8203;49188](https://github.com/electron/electron/pull/49188) ### [`v40.2.1`](https://github.com/electron/electron/releases/tag/v40.2.1): electron v40.2.1 [Compare Source](https://github.com/electron/electron/compare/v40.1.0...v40.2.1) ### Release Notes for v40.2.1 #### Other Changes - Refactored our MSIX updater code to use an upstream Chromium pattern and eliminates the need for special exception handling build flags. [#&#8203;49687](https://github.com/electron/electron/pull/49687) <sup>(Also in [39](https://github.com/electron/electron/pull/49688), [41](https://github.com/electron/electron/pull/49686))</sup> ### [`v40.1.0`](https://github.com/electron/electron/releases/tag/v40.1.0): electron v40.1.0 [Compare Source](https://github.com/electron/electron/compare/v40.0.0...v40.1.0) ### Release Notes for v40.1.0 #### Features - DevTools errors are no longer printed to console. [#&#8203;49359](https://github.com/electron/electron/pull/49359) #### Fixes - Fixed `setRepresentedFilename()` not setting `AXDocument` accessibility attribute on macOS. [#&#8203;49417](https://github.com/electron/electron/pull/49417) <sup>(Also in [39](https://github.com/electron/electron/pull/49418))</sup> - Fixed a potential race condition crash when opening DevTools. [#&#8203;49422](https://github.com/electron/electron/pull/49422) <sup>(Also in [39](https://github.com/electron/electron/pull/49423))</sup> - Fixed an issue in `chrome://accessibility`. [#&#8203;49560](https://github.com/electron/electron/pull/49560) <sup>(Also in [39](https://github.com/electron/electron/pull/49559), [41](https://github.com/electron/electron/pull/49561))</sup> - Fixed an issue where `shell.writeShortcutLink` was throwing `TypeError: Insufficient number of arguments` when called with just `[(path, options)]`. [#&#8203;49501](https://github.com/electron/electron/pull/49501) <sup>(Also in [39](https://github.com/electron/electron/pull/49502), [41](https://github.com/electron/electron/pull/49503))</sup> - Fixed crash in platform_util::Beep() on Linux. [#&#8203;49482](https://github.com/electron/electron/pull/49482) <sup>(Also in [39](https://github.com/electron/electron/pull/49484), [41](https://github.com/electron/electron/pull/49483))</sup> - Made toplevel icon Wayland protocol work. [#&#8203;49414](https://github.com/electron/electron/pull/49414) <sup>(Also in [39](https://github.com/electron/electron/pull/49415))</sup> #### Other Changes - Backported fix for [`4738514`](https://github.com/electron/electron/commit/473851441). [#&#8203;49487](https://github.com/electron/electron/pull/49487) - Updated Chromium to 144.0.7559.96. [#&#8203;49474](https://github.com/electron/electron/pull/49474) #### Unknown - Fixed an issue where some packages weren't correctly filtered on macOS in dialogs. [#&#8203;49473](https://github.com/electron/electron/pull/49473) <sup>(Also in [38](https://github.com/electron/electron/pull/49471), [39](https://github.com/electron/electron/pull/49472), [41](https://github.com/electron/electron/pull/49470))</sup> ### [`v40.0.0`](https://github.com/electron/electron/releases/tag/v40.0.0): electron v40.0.0 [Compare Source](https://github.com/electron/electron/compare/v39.8.10...v40.0.0) ### Release Notes for v40.0.0 #### Stack Upgrades - Chromium `144.0.7559.60` - [New in 144](https://developer.chrome.com/blog/new-in-chrome-144/) - [New in 143](https://developer.chrome.com/blog/new-in-chrome-143/) - Node `v24.11.1` - [Node 24.11.1 blog post](https://nodejs.org/en/blog/release/v24.11.1/) - V8 `14.4` #### Breaking Changes - Deprecated clipboard API access from renderer processes [#&#8203;48923](https://github.com/electron/electron/pull/48923) - Fixed an error on debug symbol upload by moving dsym.zip to use tar.xz compression. [#&#8203;48952](https://github.com/electron/electron/pull/48952) #### Features ##### Additions - Added "memory-eviction" as a possible reason for a child process to exit. [#&#8203;48362](https://github.com/electron/electron/pull/48362) - Added `RGBAF16` output format with scRGB HDR color space support to Offscreen Rendering. [#&#8203;48265](https://github.com/electron/electron/pull/48265) <sup>(Also in [39](https://github.com/electron/electron/pull/48504))</sup> - Added `app.isHardwareAccelerationEnabled()`. [#&#8203;47614](https://github.com/electron/electron/pull/47614) <sup>(Also in [37](https://github.com/electron/electron/pull/48679), [38](https://github.com/electron/electron/pull/48681), [39](https://github.com/electron/electron/pull/48680))</sup> - Added bypassCustomProtocolHandlers option to net.request. [#&#8203;48883](https://github.com/electron/electron/pull/48883) <sup>(Also in [38](https://github.com/electron/electron/pull/48881), [39](https://github.com/electron/electron/pull/48882))</sup> - Added methods to enable more granular accessibility support management. [#&#8203;48042](https://github.com/electron/electron/pull/48042) <sup>(Also in [37](https://github.com/electron/electron/pull/48627), [38](https://github.com/electron/electron/pull/48626), [39](https://github.com/electron/electron/pull/48625))</sup> - Added support for WebSocket authentication through the `login` event on `webContents`. [#&#8203;49064](https://github.com/electron/electron/pull/49064) <sup>(Also in [39](https://github.com/electron/electron/pull/49065))</sup> - Added support to import external shared texture as VideoFrame. [#&#8203;48831](https://github.com/electron/electron/pull/48831) - Added the ability to retrieve the system accent color on Linux using `systemPreferences.getAccentColor`. [#&#8203;48027](https://github.com/electron/electron/pull/48027) <sup>(Also in [39](https://github.com/electron/electron/pull/48628))</sup> - Allowed for persisting File System API grant status within a given session. [#&#8203;48170](https://github.com/electron/electron/pull/48170) <sup>(Also in [37](https://github.com/electron/electron/pull/48328), [38](https://github.com/electron/electron/pull/48327), [39](https://github.com/electron/electron/pull/48344))</sup> - Automatically focus DevTools when element is inspected or breakpoint is triggered. [#&#8203;46386](https://github.com/electron/electron/pull/46386) <sup>(Also in [37](https://github.com/electron/electron/pull/48703), [38](https://github.com/electron/electron/pull/48701), [39](https://github.com/electron/electron/pull/48702))</sup> ##### Improvements - Enables resetting accent color to follow system accent settings if a previous color has been set via `window.setAccentColor(null)`. [#&#8203;48274](https://github.com/electron/electron/pull/48274) <sup>(Also in [38](https://github.com/electron/electron/pull/48853), [39](https://github.com/electron/electron/pull/48852))</sup> - Support dynamic ESM imports in non-context isolated preloads. [#&#8203;48375](https://github.com/electron/electron/pull/48375) <sup>(Also in [37](https://github.com/electron/electron/pull/48487), [38](https://github.com/electron/electron/pull/48489), [39](https://github.com/electron/electron/pull/48488))</sup> - Updated `nativeImage.createFromNamedImage` to support SF Symbol names. [#&#8203;48772](https://github.com/electron/electron/pull/48772) <sup>(Also in [39](https://github.com/electron/electron/pull/48773))</sup> #### Fixes - Added support for `--no-stdio-init` to be used when nul device is disabled on windows. [#&#8203;47870](https://github.com/electron/electron/pull/47870) - Fixed an issue on Windows and Linux where no cookie encryption key provider was passed into the network service when cookie encryption was enabled. [#&#8203;49375](https://github.com/electron/electron/pull/49375) - Fixed an issue where no cookie encryption provider was passed into the network service when cookie encryption was enabled. [#&#8203;49350](https://github.com/electron/electron/pull/49350) - Fixed crash when attempting to resolve modules during process exit. [#&#8203;49104](https://github.com/electron/electron/pull/49104) - Fixed drag regions in child windows. [#&#8203;49312](https://github.com/electron/electron/pull/49312) - Fixed draw smoothing round corner issue. [#&#8203;48782](https://github.com/electron/electron/pull/48782) - Fixed the cookie encryption logic to use the old os_crypt sync implementation present in M142. [#&#8203;49384](https://github.com/electron/electron/pull/49384) - Fixed visual artifacts while resizing a window on Windows. [#&#8203;49191](https://github.com/electron/electron/pull/49191) ##### Also in earlier versions... - AccentColor set distinguishes the frame. [#&#8203;48405](https://github.com/electron/electron/pull/48405) <sup>(Also in [37](https://github.com/electron/electron/pull/48449), [38](https://github.com/electron/electron/pull/48451), [39](https://github.com/electron/electron/pull/48450))</sup> - Corrected the appearance of tiled windows on GNOME (when frame: true), and removed resize handles from tiled edges. [#&#8203;48835](https://github.com/electron/electron/pull/48835) <sup>(Also in [38](https://github.com/electron/electron/pull/48836), [39](https://github.com/electron/electron/pull/48834))</sup> - Fix: ESM-from-CJS import when CJK characters are in path. [#&#8203;48862](https://github.com/electron/electron/pull/48862) <sup>(Also in [39](https://github.com/electron/electron/pull/48873))</sup> - Fix: runtime JS error that crashes `GetPackageJSON`. [#&#8203;48293](https://github.com/electron/electron/pull/48293) <sup>(Also in [37](https://github.com/electron/electron/pull/48423), [38](https://github.com/electron/electron/pull/48424), [39](https://github.com/electron/electron/pull/48425))</sup> - Fixed Wayland configuration through the `XDG_SESSION_TYPE` environment variable. [#&#8203;48301](https://github.com/electron/electron/pull/48301) <sup>(Also in [38](https://github.com/electron/electron/pull/48309), [39](https://github.com/electron/electron/pull/48310))</sup> - Fixed Windows `dialog.showMessageBox` default button handling. [#&#8203;48216](https://github.com/electron/electron/pull/48216) <sup>(Also in [36](https://github.com/electron/electron/pull/48522), [37](https://github.com/electron/electron/pull/48520), [38](https://github.com/electron/electron/pull/48519), [39](https://github.com/electron/electron/pull/48521))</sup> - Fixed a Windows notification issue where clicking a native notification would result in an application hang on certain Windows environments. [#&#8203;49129](https://github.com/electron/electron/pull/49129) <sup>(Also in [39](https://github.com/electron/electron/pull/49130))</sup> - Fixed a potential crash in `dialog.showOpenDialog` on Windows with an empty extension filter array. [#&#8203;48640](https://github.com/electron/electron/pull/48640) <sup>(Also in [37](https://github.com/electron/electron/pull/48659), [38](https://github.com/electron/electron/pull/48660), [39](https://github.com/electron/electron/pull/48658))</sup> - Fixed an application crash when clicking or hovering over the native MacOS "Window" menu. Reverts [#&#8203;48598](https://github.com/electron/electron/issues/48598). [#&#8203;48799](https://github.com/electron/electron/pull/48799) <sup>(Also in [37](https://github.com/electron/electron/pull/48803), [38](https://github.com/electron/electron/pull/48801), [39](https://github.com/electron/electron/pull/48800))</sup> - Fixed an error when checking environmental variables when using remote checksums when installing Electron via npm. [#&#8203;48634](https://github.com/electron/electron/pull/48634) <sup>(Also in [37](https://github.com/electron/electron/pull/48671), [38](https://github.com/electron/electron/pull/48672), [39](https://github.com/electron/electron/pull/48673))</sup> - Fixed an issue that menu items on macOS could not be disabled under all circumstances. [#&#8203;48598](https://github.com/electron/electron/pull/48598) <sup>(Also in [37](https://github.com/electron/electron/pull/48712), [38](https://github.com/electron/electron/pull/48710), [39](https://github.com/electron/electron/pull/48711))</sup> - Fixed an issue where `menu-did-close` was not emitted properly for some application menus. [#&#8203;49092](https://github.com/electron/electron/pull/49092) <sup>(Also in [38](https://github.com/electron/electron/pull/49094), [39](https://github.com/electron/electron/pull/49093))</sup> - Fixed an issue where `shell.openExternal` caused an unexpected dialog to open when there was no app suitable to open the url. [#&#8203;48502](https://github.com/electron/electron/pull/48502) <sup>(Also in [38](https://github.com/electron/electron/pull/48517), [39](https://github.com/electron/electron/pull/48518))</sup> - Fixed an issue where `systemPreferences.getAccentColor` inverted the color. [#&#8203;48511](https://github.com/electron/electron/pull/48511) <sup>(Also in [37](https://github.com/electron/electron/pull/49067), [38](https://github.com/electron/electron/pull/49066), [39](https://github.com/electron/electron/pull/48624))</sup> - Fixed an issue where `trafficLightPosition` would not be correctly applied when using `titleBarStyle: 'customButtonsOnHover'` on macOS 26. [#&#8203;48538](https://github.com/electron/electron/pull/48538) <sup>(Also in [37](https://github.com/electron/electron/pull/48622), [38](https://github.com/electron/electron/pull/48620), [39](https://github.com/electron/electron/pull/48621))</sup> - Fixed an issue where authentication via websockets can crash. [#&#8203;48510](https://github.com/electron/electron/pull/48510) <sup>(Also in [37](https://github.com/electron/electron/pull/48540), [38](https://github.com/electron/electron/pull/48539), [39](https://github.com/electron/electron/pull/48541))</sup> - Fixed an issue where button background on mouse hover with `titleBarOverlay` wasn't always calculated to provide appropriate minimum contrast. [#&#8203;48568](https://github.com/electron/electron/pull/48568) <sup>(Also in [37](https://github.com/electron/electron/pull/48596), [38](https://github.com/electron/electron/pull/48595), [39](https://github.com/electron/electron/pull/48597))</sup> - Fixed an issue where calling `webContents.openDevTools({ mode: 'detach' })` would cause a crash on Wayland. [#&#8203;48600](https://github.com/electron/electron/pull/48600) <sup>(Also in [38](https://github.com/electron/electron/pull/48926), [39](https://github.com/electron/electron/pull/48623))</sup> - Fixed an issue where changing the resizable property on a window would break the styles of a transparent window. [#&#8203;48378](https://github.com/electron/electron/pull/48378) <sup>(Also in [37](https://github.com/electron/electron/pull/48500), [38](https://github.com/electron/electron/pull/48499), [39](https://github.com/electron/electron/pull/48501))</sup> - Fixed an issue where icons didn't show up as expected on Windows Toast notifications. [#&#8203;48543](https://github.com/electron/electron/pull/48543) <sup>(Also in [38](https://github.com/electron/electron/pull/48630), [39](https://github.com/electron/electron/pull/48629))</sup> - Fixed an issue where snapped windows aren't correctly snapped when minimized and then unminimized. [#&#8203;48296](https://github.com/electron/electron/pull/48296) <sup>(Also in [37](https://github.com/electron/electron/pull/48439), [38](https://github.com/electron/electron/pull/48437), [39](https://github.com/electron/electron/pull/48438))</sup> - Fixed an issue where some apps would throw an exception on launch. [#&#8203;48976](https://github.com/electron/electron/pull/48976) <sup>(Also in [39](https://github.com/electron/electron/pull/48975))</sup> - Fixed an issue where the close callback param for `menu.popup` would fire when any arbitrary submenu of the given menu closed, and not the menu itself. [#&#8203;49046](https://github.com/electron/electron/pull/49046) <sup>(Also in [38](https://github.com/electron/electron/pull/49047), [39](https://github.com/electron/electron/pull/49045))</sup> - Fixed crash on windows when UTF-8 is in path. [#&#8203;48942](https://github.com/electron/electron/pull/48942) <sup>(Also in [38](https://github.com/electron/electron/pull/48947), [39](https://github.com/electron/electron/pull/48944))</sup> - Fixed crash when accessing `webContents.session` or `webContents.debugger`. [#&#8203;48318](https://github.com/electron/electron/pull/48318) <sup>(Also in [39](https://github.com/electron/electron/pull/48344))</sup> - Fixed crash when creating event object for ipc events. [#&#8203;48991](https://github.com/electron/electron/pull/48991) <sup>(Also in [39](https://github.com/electron/electron/pull/48992))</sup> - Fixed crash when inspector agent attempts to evaluate on provisional frames. [#&#8203;48503](https://github.com/electron/electron/pull/48503) <sup>(Also in [37](https://github.com/electron/electron/pull/48514), [38](https://github.com/electron/electron/pull/48513), [39](https://github.com/electron/electron/pull/48515))</sup> - Fixed crash when passing feature param from commandline `--enable-features=Feature:ParamA/Value`. [#&#8203;48411](https://github.com/electron/electron/pull/48411) <sup>(Also in [39](https://github.com/electron/electron/pull/48442))</sup> - Fixed crash when reading system certificates via nodejs tls module. [#&#8203;49041](https://github.com/electron/electron/pull/49041) <sup>(Also in [39](https://github.com/electron/electron/pull/49042))</sup> - Fixed download button does not work in PDF Viewer. [#&#8203;48372](https://github.com/electron/electron/pull/48372) <sup>(Also in [38](https://github.com/electron/electron/pull/48409), [39](https://github.com/electron/electron/pull/48404))</sup> - Fixed excessive WindowServer GPU usage on macOS Tahoe 26. [#&#8203;48376](https://github.com/electron/electron/pull/48376) <sup>(Also in [36](https://github.com/electron/electron/pull/48401), [37](https://github.com/electron/electron/pull/48400), [38](https://github.com/electron/electron/pull/48398), [39](https://github.com/electron/electron/pull/48399))</sup> - Fixed high CPU usage with `<input>` tag on macOS 26. [#&#8203;48379](https://github.com/electron/electron/pull/48379) <sup>(Also in [36](https://github.com/electron/electron/pull/48419), [37](https://github.com/electron/electron/pull/48392), [38](https://github.com/electron/electron/pull/48394), [39](https://github.com/electron/electron/pull/48393))</sup> - Fixed incorrect signal variable reference in nan-spec-runner that could cause install failures to go undetected. [#&#8203;48639](https://github.com/electron/electron/pull/48639) <sup>(Also in [38](https://github.com/electron/electron/pull/48708), [39](https://github.com/electron/electron/pull/48709))</sup> - Fixed oom crash when optimizing certain wasm functions involving large phi nodes. [#&#8203;48816](https://github.com/electron/electron/pull/48816) <sup>(Also in [38](https://github.com/electron/electron/pull/48817), [39](https://github.com/electron/electron/pull/48815))</sup> - Fixed shader-f16 to work on Windows. [#&#8203;48342](https://github.com/electron/electron/pull/48342) <sup>(Also in [37](https://github.com/electron/electron/pull/48556), [38](https://github.com/electron/electron/pull/48555), [39](https://github.com/electron/electron/pull/48557))</sup> - Fixed the issue where the parent window leave disabled after the modal window call show() multiple time. [#&#8203;49021](https://github.com/electron/electron/pull/49021) <sup>(Also in [38](https://github.com/electron/electron/pull/49020), [39](https://github.com/electron/electron/pull/49019))</sup> - Fixed the issue where the parent window remained interactive after the modal window was opened. [#&#8203;48864](https://github.com/electron/electron/pull/48864) <sup>(Also in [38](https://github.com/electron/electron/pull/48866), [39](https://github.com/electron/electron/pull/48865))</sup> - Fixed white flash on call to BrowserWindow\.show. [#&#8203;47151](https://github.com/electron/electron/pull/47151) <sup>(Also in [37](https://github.com/electron/electron/pull/48558), [38](https://github.com/electron/electron/pull/48560), [39](https://github.com/electron/electron/pull/48559))</sup> - Reenable V8 trap handlers for wasm in browser and utility process, improves runtime execution of wasm. [#&#8203;48839](https://github.com/electron/electron/pull/48839) <sup>(Also in [39](https://github.com/electron/electron/pull/48837))</sup> - Requests sent via `net` are now capable of having their headers modified to use reserved headers via `webRequest`. [#&#8203;49241](https://github.com/electron/electron/pull/49241) <sup>(Also in [39](https://github.com/electron/electron/pull/49242))</sup> - Titlebar buttons now appear on the correct side of windows on Wayland in Ubuntu. [#&#8203;48490](https://github.com/electron/electron/pull/48490) <sup>(Also in [38](https://github.com/electron/electron/pull/48602), [39](https://github.com/electron/electron/pull/48603))</sup> - Windows: Calling window\.setFocusable(true) will no longer cause a window to lose focus. [#&#8203;48927](https://github.com/electron/electron/pull/48927) <sup>(Also in [39](https://github.com/electron/electron/pull/48928))</sup> #### Other Changes - Backported fix for [`4453807`](https://github.com/electron/electron/commit/445380761). [#&#8203;48335](https://github.com/electron/electron/pull/48335) <sup>(Also in [36](https://github.com/electron/electron/pull/48339), [37](https://github.com/electron/electron/pull/48338), [38](https://github.com/electron/electron/pull/48337), [39](https://github.com/electron/electron/pull/48336))</sup> - Backported fix for [`4667866`](https://github.com/electron/electron/commit/466786677). [#&#8203;49286](https://github.com/electron/electron/pull/49286) - Backported fix for chromium:466192044. [#&#8203;49201](https://github.com/electron/electron/pull/49201) - Fixed a development issue where the metal toolchain could not be found when building on macOS 26. [#&#8203;48467](https://github.com/electron/electron/pull/48467) <sup>(Also in [37](https://github.com/electron/electron/pull/48471), [38](https://github.com/electron/electron/pull/48473), [39](https://github.com/electron/electron/pull/48472))</sup> - Fixed devtools element panel flickering when with node inspection. [#&#8203;49043](https://github.com/electron/electron/pull/49043) <sup>(Also in [39](https://github.com/electron/electron/pull/49044))</sup> #### Documentation - Documentation change - [#&#8203;48665](https://github.com/electron/electron/pull/48665) - [#&#8203;48841](https://github.com/electron/electron/pull/48841) #### Notices ##### End of Support for 37.x.y Electron 37.x.y has reached end-of-support as per the project's [support policy](https://www.electronjs.org/docs/latest/tutorial/electron-timelines#version-support-policy). Developers and applications are encouraged to upgrade to a newer version of Electron. ### [`v39.8.10`](https://github.com/electron/electron/releases/tag/v39.8.10): electron v39.8.10 [Compare Source](https://github.com/electron/electron/compare/v39.8.9...v39.8.10) ### Release Notes for v39.8.10 > \[!WARNING] > Electron 39.x.y has reached end-of-support as per the project's [support policy](https://www.electronjs.org/docs/latest/tutorial/electron-timelines#version-support-policy). Developers and applications are encouraged to upgrade to a newer version of Electron. #### Fixes - Ensured cross-origin `fetch()` and XHR are blocked for custom protocols registered with `supportFetchAPI: true` unless `corsEnabled: true` is also set; cross-origin `mode: 'no-cors'` requests now receive an opaque response. [#&#8203;51272](https://github.com/electron/electron/pull/51272) <sup>(Also in [40](https://github.com/electron/electron/pull/51271), [41](https://github.com/electron/electron/pull/51270), [42](https://github.com/electron/electron/pull/51269))</sup> - Fixed an issue where the Squirrel.Mac installer could resolve the target bundle path to different locations at different stages of an install. [#&#8203;50766](https://github.com/electron/electron/pull/50766) <sup>(Also in [42](https://github.com/electron/electron/pull/50765))</sup> #### Other Changes - Backported a fix for route_id validation in the GPU command buffer. [#&#8203;51327](https://github.com/electron/electron/pull/51327) - Backported security fixes for [`4933194`](https://github.com/electron/electron/commit/493319454), [`4941583`](https://github.com/electron/electron/commit/494158331), [`4932347`](https://github.com/electron/electron/commit/493234757), [`4927361`](https://github.com/electron/electron/commit/492736100), [`4934134`](https://github.com/electron/electron/commit/493413432), [`4926688`](https://github.com/electron/electron/commit/492668885), [`4962818`](https://github.com/electron/electron/commit/496281816). [#&#8203;51257](https://github.com/electron/electron/pull/51257) - Backported several fixes in Skia, ANGLE, and WebRTC from upstream. [#&#8203;51266](https://github.com/electron/electron/pull/51266) ### [`v39.8.9`](https://github.com/electron/electron/releases/tag/v39.8.9): electron v39.8.9 [Compare Source](https://github.com/electron/electron/compare/v39.8.8...v39.8.9) ### Release Notes for v39.8.9 #### Other Changes - Fixed `gn gen` failing to resolve `electron_version` when building from a `git worktree` checkout. [#&#8203;51163](https://github.com/electron/electron/pull/51163) <sup>(Also in [40](https://github.com/electron/electron/pull/51164), [41](https://github.com/electron/electron/pull/51165), [42](https://github.com/electron/electron/pull/51166))</sup> - Security: backported fixes for CVE-2026-6296, CVE-2026-6297, CVE-2026-6298, CVE-2026-6299, CVE-2026-6300, CVE-2026-6301, CVE-2026-6302, CVE-2026-6303, CVE-2026-6304, CVE-2026-6305, CVE-2026-6306, CVE-2026-6307, CVE-2026-6308, CVE-2026-6309, CVE-2026-6311, CVE-2026-6312, CVE-2026-6313, CVE-2026-6314, CVE-2026-6316, CVE-2026-6318, CVE-2026-6358, CVE-2026-6359, CVE-2026-6360, CVE-2026-6361, CVE-2026-6362, CVE-2026-6363, CVE-2026-6364. [#&#8203;51141](https://github.com/electron/electron/pull/51141) ### [`v39.8.8`](https://github.com/electron/electron/releases/tag/v39.8.8): electron v39.8.8 [Compare Source](https://github.com/electron/electron/compare/v39.8.7...v39.8.8) ### Release Notes for v39.8.8 #### Fixes - Fixed an issue where DevTools would re-attach to the window when opened after previously being detached. [#&#8203;50818](https://github.com/electron/electron/pull/50818) <sup>(Also in [40](https://github.com/electron/electron/pull/50817), [41](https://github.com/electron/electron/pull/50816), [42](https://github.com/electron/electron/pull/50815))</sup> #### Other Changes - Backported fix for [chromium:74266014](https://issues.chromium.org/issues/474266014). [#&#8203;50175](https://github.com/electron/electron/pull/50175) - Backported upstream v8 fixes for several maglev, inspector, and arm64 code-generation edge cases. [#&#8203;50993](https://github.com/electron/electron/pull/50993) ### [`v39.8.7`](https://github.com/electron/electron/releases/tag/v39.8.7): electron v39.8.7 [Compare Source](https://github.com/electron/electron/compare/v39.8.6...v39.8.7) ### Release Notes for v39.8.7 #### Other Changes - Backported fix for [`4897116`](https://github.com/electron/electron/commit/489711638). [#&#8203;50624](https://github.com/electron/electron/pull/50624) - Backported fix for [`4939526`](https://github.com/electron/electron/commit/493952652). [#&#8203;50620](https://github.com/electron/electron/pull/50620) ### [`v39.8.6`](https://github.com/electron/electron/releases/tag/v39.8.6): electron v39.8.6 [Compare Source](https://github.com/electron/electron/compare/v39.8.5...v39.8.6) ### Release Notes for v39.8.6 #### Fixes - Fixed a crash when calling `contentTracing.getTraceBufferUsage()` while a trace session is active. [#&#8203;50595](https://github.com/electron/electron/pull/50595) <sup>(Also in [40](https://github.com/electron/electron/pull/50593), [41](https://github.com/electron/electron/pull/50594), [42](https://github.com/electron/electron/pull/50592))</sup> ### [`v39.8.5`](https://github.com/electron/electron/releases/tag/v39.8.5): electron v39.8.5 [Compare Source](https://github.com/electron/electron/compare/v39.8.4...v39.8.5) ### Release Notes for v39.8.5 #### Fixes - Fixed a crash in `clipboard.readImage()` when the clipboard contains malformed image data. [#&#8203;50493](https://github.com/electron/electron/pull/50493) <sup>(Also in [40](https://github.com/electron/electron/pull/50491), [41](https://github.com/electron/electron/pull/50492), [42](https://github.com/electron/electron/pull/50494))</sup> - Fixed a crash when calling an offscreen shared texture's `release()` after the texture object was garbage collected. [#&#8203;50499](https://github.com/electron/electron/pull/50499) <sup>(Also in [40](https://github.com/electron/electron/pull/50500), [41](https://github.com/electron/electron/pull/50501), [42](https://github.com/electron/electron/pull/50502))</sup> ### [`v39.8.4`](https://github.com/electron/electron/releases/tag/v39.8.4): electron v39.8.4 [Compare Source](https://github.com/electron/electron/compare/v39.8.3...v39.8.4) ### Release Notes for v39.8.4 #### Fixes - Fixed an issue where `nodeIntegrationInWorker` overrides in `setWindowOpenHandler` were not honored for child windows sharing a renderer process with their opener. [#&#8203;50468](https://github.com/electron/electron/pull/50468) <sup>(Also in [38](https://github.com/electron/electron/pull/50163), [40](https://github.com/electron/electron/pull/50467), [41](https://github.com/electron/electron/pull/50134))</sup> - Fixed crash when handling JavaScript dialogs from windows opened with invalid or empty URLs. [#&#8203;50400](https://github.com/electron/electron/pull/50400) <sup>(Also in [40](https://github.com/electron/electron/pull/50401), [41](https://github.com/electron/electron/pull/50399), [42](https://github.com/electron/electron/pull/50398))</sup> - Fixed improper focus tracking in BaseWindow on MacOS. [#&#8203;50338](https://github.com/electron/electron/pull/50338) <sup>(Also in [40](https://github.com/electron/electron/pull/50337), [41](https://github.com/electron/electron/pull/50340), [42](https://github.com/electron/electron/pull/50339))</sup> - Fixed window freeze when failing to enter/exit fullscreen on macOS. [#&#8203;50341](https://github.com/electron/electron/pull/50341) <sup>(Also in [40](https://github.com/electron/electron/pull/50344), [41](https://github.com/electron/electron/pull/50343), [42](https://github.com/electron/electron/pull/50342))</sup> #### Other Changes - Added support for using a proxy during yarn install. [#&#8203;50349](https://github.com/electron/electron/pull/50349) <sup>(Also in [40](https://github.com/electron/electron/pull/50352), [41](https://github.com/electron/electron/pull/50350), [42](https://github.com/electron/electron/pull/50351))</sup> - Backported fix for [`4859353`](https://github.com/electron/electron/commit/485935305). [#&#8203;50440](https://github.com/electron/electron/pull/50440) - Backported fix for [`4893813`](https://github.com/electron/electron/commit/489381399). [#&#8203;50443](https://github.com/electron/electron/pull/50443) - Backported fix for chromium:475877320. [#&#8203;50436](https://github.com/electron/electron/pull/50436) - Backported fixes for [`4847510`](https://github.com/electron/electron/commit/484751092), [`4871177`](https://github.com/electron/electron/commit/487117772). [#&#8203;50461](https://github.com/electron/electron/pull/50461) ### [`v39.8.3`](https://github.com/electron/electron/releases/tag/v39.8.3): electron v39.8.3 [Compare Source](https://github.com/electron/electron/compare/v39.8.2...v39.8.3) ### Release Notes for v39.8.3 #### Fixes - Added additional ASAR support to additional `fs` copy methods. [#&#8203;50284](https://github.com/electron/electron/pull/50284) <sup>(Also in [40](https://github.com/electron/electron/pull/50287), [41](https://github.com/electron/electron/pull/50286), [42](https://github.com/electron/electron/pull/50285))</sup> - Fixed user resizing of transparent windows on win32 platform. [#&#8203;50300](https://github.com/electron/electron/pull/50300) <sup>(Also in [40](https://github.com/electron/electron/pull/50301), [41](https://github.com/electron/electron/pull/50298), [42](https://github.com/electron/electron/pull/50299))</sup> ### [`v39.8.2`](https://github.com/electron/electron/releases/tag/v39.8.2): electron v39.8.2 [Compare Source](https://github.com/electron/electron/compare/v39.8.1...v39.8.2) ### Release Notes for v39.8.2 #### Other Changes - Backported fix for b/491421267. [#&#8203;50230](https://github.com/electron/electron/pull/50230) ### [`v39.8.1`](https://github.com/electron/electron/releases/tag/v39.8.1): electron v39.8.1 [Compare Source](https://github.com/electron/electron/compare/v39.8.0...v39.8.1) ### Release Notes for v39.8.1 #### Fixes - Added validation to protocol client methods to reject protocol names that do not conform to the RFC 3986 URI scheme grammar. [#&#8203;50156](https://github.com/electron/electron/pull/50156) <sup>(Also in [38](https://github.com/electron/electron/pull/50157), [40](https://github.com/electron/electron/pull/50158), [41](https://github.com/electron/electron/pull/50155))</sup> - Fixed an issue on macOS where calling `autoUpdater.quitAndInstall()` could fail if `checkForUpdates()` was called again after an update was already downloaded. [#&#8203;50215](https://github.com/electron/electron/pull/50215) <sup>(Also in [40](https://github.com/electron/electron/pull/50216), [41](https://github.com/electron/electron/pull/50217))</sup> - Fixed an issue where Chrome Devtools menus may not appear in certain embedded windows. [#&#8203;50136](https://github.com/electron/electron/pull/50136) <sup>(Also in [40](https://github.com/electron/electron/pull/50138), [41](https://github.com/electron/electron/pull/50137))</sup> - Fixed an issue where `additionalData` passed to `app.requestSingleInstanceLock` on Windows could be truncated or fail to deserialize in the primary instance's `second-instance` event. [#&#8203;50174](https://github.com/electron/electron/pull/50174) <sup>(Also in [38](https://github.com/electron/electron/pull/50177), [40](https://github.com/electron/electron/pull/50162), [41](https://github.com/electron/electron/pull/50154))</sup> - Fixed an issue where `screen.getCursorScreenPoint()` crashed on Wayland when it was called before a `BrowserWindow` had been created. [#&#8203;50106](https://github.com/electron/electron/pull/50106) <sup>(Also in [40](https://github.com/electron/electron/pull/50104), [41](https://github.com/electron/electron/pull/50105))</sup> - Fixed an issue where calling `setBounds` on a `WebContentsView` could trigger redundant `page-favicon-updated` events even when the favicon had not changed. [#&#8203;50086](https://github.com/electron/electron/pull/50086) <sup>(Also in [40](https://github.com/electron/electron/pull/50084), [41](https://github.com/electron/electron/pull/50085))</sup> - Fixed an issue where invalid characters in custom protocol or webRequest response header values were not rejected. [#&#8203;50129](https://github.com/electron/electron/pull/50129) <sup>(Also in [38](https://github.com/electron/electron/pull/50130), [40](https://github.com/electron/electron/pull/50131), [41](https://github.com/electron/electron/pull/50132))</sup> - Fixed an issue where permission and device-chooser handlers received the top-level page origin instead of the requesting subframe's origin. [#&#8203;50147](https://github.com/electron/electron/pull/50147) <sup>(Also in [38](https://github.com/electron/electron/pull/50151), [40](https://github.com/electron/electron/pull/50149), [41](https://github.com/electron/electron/pull/50148))</sup> - Fixed an issue where traffic light buttons would flash at position (0,0) when restoring a window with a custom `trafficLightPosition` from minimization on macOS. [#&#8203;50208](https://github.com/electron/electron/pull/50208) <sup>(Also in [40](https://github.com/electron/electron/pull/50207), [41](https://github.com/electron/electron/pull/50209))</sup> - Fixed bug where opening a message box immediately upon closing a child window may cause the parent window to freeze on Windows. [#&#8203;50190](https://github.com/electron/electron/pull/50190) <sup>(Also in [40](https://github.com/electron/electron/pull/50189), [41](https://github.com/electron/electron/pull/50191))</sup> - Fixed menu bar hiding after a call to `win.setFullScreen(false)` when not in fullscreen on Linux. [#&#8203;49995](https://github.com/electron/electron/pull/49995) <sup>(Also in [40](https://github.com/electron/electron/pull/49994), [41](https://github.com/electron/electron/pull/49996))</sup> - Fixed shutdown crash on windows when hidden titlebar is enabled. [#&#8203;50054](https://github.com/electron/electron/pull/50054) <sup>(Also in [40](https://github.com/electron/electron/pull/50053), [41](https://github.com/electron/electron/pull/50055))</sup> - Reverted AltGr key fix that caused menu bar to no longer show on Windows. [#&#8203;50109](https://github.com/electron/electron/pull/50109) <sup>(Also in [40](https://github.com/electron/electron/pull/50110), [41](https://github.com/electron/electron/pull/50111))</sup> #### Other Changes - Backported fix for b/484983991. [#&#8203;50167](https://github.com/electron/electron/pull/50167) - Backported fix for chromium:485622239. [#&#8203;50171](https://github.com/electron/electron/pull/50171) - Updated Node.js to v22.22.1. [#&#8203;50100](https://github.com/electron/electron/pull/50100) ### [`v39.8.0`](https://github.com/electron/electron/releases/tag/v39.8.0): electron v39.8.0 [Compare Source](https://github.com/electron/electron/compare/v39.7.0...v39.8.0) ### Release Notes for v39.8.0 #### Features - Added support for `--experimental-transform-types`. [#&#8203;49881](https://github.com/electron/electron/pull/49881) <sup>(Also in [40](https://github.com/electron/electron/pull/49883), [41](https://github.com/electron/electron/pull/49882))</sup> #### Fixes - Fixed an issue on macOS where Universal Links were not delivered to `app.on('continue-activity')` on cold launch when `NSUserActivity.userInfo` was nil. [#&#8203;50004](https://github.com/electron/electron/pull/50004) <sup>(Also in [40](https://github.com/electron/electron/pull/50005), [41](https://github.com/electron/electron/pull/50006))</sup> - Fixed an issue where `VideoFrame` objects returned through `contextBridge` had an incorrect prototype. [#&#8203;50021](https://github.com/electron/electron/pull/50021) <sup>(Also in [40](https://github.com/electron/electron/pull/50022), [41](https://github.com/electron/electron/pull/50023))</sup> - Fixed an issue where setting `zoomFactor` in `setWindowOpenHandler`'s `overrideBrowserWindowOptions` had no effect on windows opened via `window.open()`. [#&#8203;49910](https://github.com/electron/electron/pull/49910) <sup>(Also in [40](https://github.com/electron/electron/pull/49909), [41](https://github.com/electron/electron/pull/49911))</sup> ### [`v39.7.0`](https://github.com/electron/electron/releases/tag/v39.7.0): electron v39.7.0 [Compare Source](https://github.com/electron/electron/compare/v39.6.1...v39.7.0) ### Release Notes for v39.7.0 #### Features - Added support for `long-animation-frame` script attribution (via `--enable-features=AlwaysLogLOAFURL`). [#&#8203;49771](https://github.com/electron/electron/pull/49771) <sup>(Also in [40](https://github.com/electron/electron/pull/49772), [41](https://github.com/electron/electron/pull/49773))</sup> #### Fixes - Fixed an issue where frameless windows had resize issues in Mac App Store builds. [#&#8203;49861](https://github.com/electron/electron/pull/49861) <sup>(Also in [40](https://github.com/electron/electron/pull/49856), [41](https://github.com/electron/electron/pull/49857))</sup> - Fixed an issue where menu item enabled state wasn't updated during key equivalent dispatch when the menu was closed on macOS. [#&#8203;49888](https://github.com/electron/electron/pull/49888) <sup>(Also in [40](https://github.com/electron/electron/pull/49889), [41](https://github.com/electron/electron/pull/49890))</sup> - Fixed an issue where pressing AltGr could activate or focus the menu bar. [#&#8203;49914](https://github.com/electron/electron/pull/49914) <sup>(Also in [40](https://github.com/electron/electron/pull/49915), [41](https://github.com/electron/electron/pull/49916))</sup> - Fixed memory leak when setting icons on Linux/GTK. [#&#8203;49896](https://github.com/electron/electron/pull/49896) <sup>(Also in [38](https://github.com/electron/electron/pull/49897), [40](https://github.com/electron/electron/pull/49898), [41](https://github.com/electron/electron/pull/49895))</sup> ### [`v39.6.1`](https://github.com/electron/electron/releases/tag/v39.6.1): electron v39.6.1 [Compare Source](https://github.com/electron/electron/compare/v39.6.0...v39.6.1) ### Release Notes for v39.6.1 #### Fixes - Fixed draggable regions not updating position when DevTools is docked to the left or right in a frameless window. [#&#8203;49846](https://github.com/electron/electron/pull/49846) <sup>(Also in [41](https://github.com/electron/electron/pull/49848))</sup> ### [`v39.6.0`](https://github.com/electron/electron/releases/tag/v39.6.0): electron v39.6.0 [Compare Source](https://github.com/electron/electron/compare/v39.5.2...v39.6.0) ### Release Notes for v39.6.0 #### Features - Added a disclaim option to the UtilityProcess API to allow for TCC disclaiming on macOS. [#&#8203;49696](https://github.com/electron/electron/pull/49696) <sup>(Also in [40](https://github.com/electron/electron/pull/49695), [41](https://github.com/electron/electron/pull/49693))</sup> #### Fixes - Addressed upstream Chromium shift to enable `CoreAudio Tap API` for audio capture used in electron's `desktopCapturer` (🍏 macOS). [#&#8203;49740](https://github.com/electron/electron/pull/49740) <sup>(Also in [41](https://github.com/electron/electron/pull/49739))</sup> #### Other Changes - Backported fix for [`4835695`](https://github.com/electron/electron/commit/483569511). [#&#8203;49791](https://github.com/electron/electron/pull/49791) ### [`v39.5.2`](https://github.com/electron/electron/releases/tag/v39.5.2): electron v39.5.2 [Compare Source](https://github.com/electron/electron/compare/v39.5.1...v39.5.2) ### Release Notes for v39.5.2 #### Fixes - Fixed a crash that could occur when using the File System Access API. [#&#8203;49634](https://github.com/electron/electron/pull/49634) <sup>(Also in [40](https://github.com/electron/electron/pull/49635), [41](https://github.com/electron/electron/pull/49636))</sup> - Fixed an issue where alt+space triggered th system context menu even if an accelerator was registered for the hotkey combination. [#&#8203;49641](https://github.com/electron/electron/pull/49641) <sup>(Also in [40](https://github.com/electron/electron/pull/49640), [41](https://github.com/electron/electron/pull/49642))</sup> - Fixed an issue where role-based menu items were incorrectly returning `null` for their accelerator property. [#&#8203;49670](https://github.com/electron/electron/pull/49670) <sup>(Also in [40](https://github.com/electron/electron/pull/49669), [41](https://github.com/electron/electron/pull/49668))</sup> - Fixed application input broken on certain wayland compositors when DND action was cancelled. [#&#8203;49694](https://github.com/electron/electron/pull/49694) - Fixed dock menu items not respecting enabled and checked properties on macOS. [#&#8203;49626](https://github.com/electron/electron/pull/49626) <sup>(Also in [38](https://github.com/electron/electron/pull/49627), [40](https://github.com/electron/electron/pull/49624), [41](https://github.com/electron/electron/pull/49625))</sup> #### Other Changes - Refactored our MSIX updater code to use an upstream Chromium pattern and eliminates the need for special exception handling build flags. [#&#8203;49688](https://github.com/electron/electron/pull/49688) <sup>(Also in [40](https://github.com/electron/electron/pull/49687), [41](https://github.com/electron/electron/pull/49686))</sup> #### Unknown - Fixed squirrel.mac stacked update behavior to old staged updates. [#&#8203;49637](https://github.com/electron/electron/pull/49637) <sup>(Also in [40](https://github.com/electron/electron/pull/49638), [41](https://github.com/electron/electron/pull/49639))</sup> ### [`v39.5.1`](https://github.com/electron/electron/releases/tag/v39.5.1): electron v39.5.1 [Compare Source](https://github.com/electron/electron/compare/v39.5.0...v39.5.1) ### Release Notes for v39.5.1 #### Fixes - Fixed rendering glitches on macOS. [#&#8203;49615](https://github.com/electron/electron/pull/49615) <sup>(Also in [40](https://github.com/electron/electron/pull/49609), [41](https://github.com/electron/electron/pull/49621))</sup> ### [`v39.5.0`](https://github.com/electron/electron/releases/tag/v39.5.0): electron v39.5.0 [Compare Source](https://github.com/electron/electron/compare/v39.4.0...v39.5.0) ### Release Notes for v39.5.0 #### Features - Added support for MSIX auto-updating. [#&#8203;49585](https://github.com/electron/electron/pull/49585) <sup>(Also in [40](https://github.com/electron/electron/pull/49587), [41](https://github.com/electron/electron/pull/49586))</sup> #### Fixes - Fixed an issue where menu item accelerators stopped working after the item's enabled property was toggled on macOS. [#&#8203;49593](https://github.com/electron/electron/pull/49593) <sup>(Also in [40](https://github.com/electron/electron/pull/49592), [41](https://github.com/electron/electron/pull/49591))</sup> - Fixed an issue whereby a duplicate "Toggle Full Screen" menu item appeared in the View menu on macOS. [#&#8203;49597](https://github.com/electron/electron/pull/49597) <sup>(Also in [38](https://github.com/electron/electron/pull/49596), [40](https://github.com/electron/electron/pull/49595), [41](https://github.com/electron/electron/pull/49598))</sup> ### [`v39.4.0`](https://github.com/electron/electron/releases/tag/v39.4.0): electron v39.4.0 [Compare Source](https://github.com/electron/electron/compare/v39.3.0...v39.4.0) ### Release Notes for v39.4.0 #### Fixes - Fixed an issue in `chrome://accessibility`. [#&#8203;49559](https://github.com/electron/electron/pull/49559) <sup>(Also in [40](https://github.com/electron/electron/pull/49560), [41](https://github.com/electron/electron/pull/49561))</sup> - Fixed an issue where `shell.writeShortcutLink` was throwing `TypeError: Insufficient number of arguments` when called with just `[(path, options)]`. [#&#8203;49502](https://github.com/electron/electron/pull/49502) <sup>(Also in [40](https://github.com/electron/electron/pull/49501), [41](https://github.com/electron/electron/pull/49503))</sup> - Fixed crash in platform_util::Beep() on Linux. [#&#8203;49484](https://github.com/electron/electron/pull/49484) <sup>(Also in [40](https://github.com/electron/electron/pull/49482), [41](https://github.com/electron/electron/pull/49483))</sup> #### Other Changes - Updated Node.js to v22.22.0. [#&#8203;49389](https://github.com/electron/electron/pull/49389) #### Unknown - Fixed an issue where some packages weren't correctly filtered on macOS in dialogs. [#&#8203;49472](https://github.com/electron/electron/pull/49472) <sup>(Also in [38](https://github.com/electron/electron/pull/49471), [40](https://github.com/electron/electron/pull/49473), [41](https://github.com/electron/electron/pull/49470))</sup> ### [`v39.3.0`](https://github.com/electron/electron/releases/tag/v39.3.0): electron v39.3.0 [Compare Source](https://github.com/electron/electron/compare/v39.2.7...v39.3.0) ### Release Notes for v39.3.0 #### Features - Added support for WebSocket authentication through the `login` event on `webContents`. [#&#8203;49065](https://github.com/electron/electron/pull/49065) <sup>(Also in [40](https://github.com/electron/electron/pull/49064))</sup> #### Fixes - Fixed `setRepresentedFilename()` not setting `AXDocument` accessibility attribute on macOS. [#&#8203;49418](https://github.com/electron/electron/pull/49418) <sup>(Also in [40](https://github.com/electron/electron/pull/49417))</sup> - Fixed a potential race condition crash when opening DevTools. [#&#8203;49423](https://github.com/electron/electron/pull/49423) <sup>(Also in [40](https://github.com/electron/electron/pull/49422))</sup> - Fixed stack overflow when compiling deeply nested JS functions. [#&#8203;49360](https://github.com/electron/electron/pull/49360) - Made toplevel icon Wayland protocol work. [#&#8203;49415](https://github.com/electron/electron/pull/49415) <sup>(Also in [40](https://github.com/electron/electron/pull/49414))</sup> - Requests sent via `net` are now capable of having their headers modified to use reserved headers via `webRequest`. [#&#8203;49242](https://github.com/electron/electron/pull/49242) <sup>(Also in [40](https://github.com/electron/electron/pull/49241))</sup> #### Other Changes - Backported fix for [`4667866`](https://github.com/electron/electron/commit/466786677). [#&#8203;49287](https://github.com/electron/electron/pull/49287) - Updated Chromium to 142.0.7444.265. [#&#8203;49322](https://github.com/electron/electron/pull/49322) ### [`v39.2.7`](https://github.com/electron/electron/releases/tag/v39.2.7): electron v39.2.7 [Compare Source](https://github.com/electron/electron/compare/v39.2.6...v39.2.7) ### Release Notes for v39.2.7 #### Other Changes - Updated Chromium to 142.0.7444.235. [#&#8203;49190](https://github.com/electron/electron/pull/49190) ### [`v39.2.6`](https://github.com/electron/electron/releases/tag/v39.2.6): electron v39.2.6 [Compare Source](https://github.com/electron/electron/compare/v39.2.5...v39.2.6) ### Release Notes for v39.2.6 #### Fixes - Fixed visual artifacts while resizing a window on Windows. [#&#8203;49138](https://github.com/electron/electron/pull/49138) #### Other Changes - Updated Chromium to 142.0.7444.226. [#&#8203;49137](https://github.com/electron/electron/pull/49137) ### [`v39.2.5`](https://github.com/electron/electron/releases/tag/v39.2.5): electron v39.2.5 [Compare Source](https://github.com/electron/electron/compare/v39.2.4...v39.2.5) ### Release Notes for v39.2.5 #### Fixes - Fixed a Windows notification issue where clicking a native notification would result in an application hang on certain Windows environments. [#&#8203;49130](https://github.com/electron/electron/pull/49130) <sup>(Also in [40](https://github.com/electron/electron/pull/49129))</sup> - Fixed an issue where `menu-did-close` was not emitted properly for some application menus. [#&#8203;49093](https://github.com/electron/electron/pull/49093) <sup>(Also in [38](https://github.com/electron/electron/pull/49094), [40](https://github.com/electron/electron/pull/49092))</sup> - Reduced amount of visual artifacts while resizing a window on Windows. [#&#8203;49076](https://github.com/electron/electron/pull/49076) #### Other Changes - Fixed devtools element panel flickering when with node inspection. [#&#8203;49044](https://github.com/electron/electron/pull/49044) <sup>(Also in [40](https://github.com/electron/electron/pull/49043))</sup> ### [`v39.2.4`](https://github.com/electron/electron/releases/tag/v39.2.4): electron v39.2.4 [Compare Source](https://github.com/electron/electron/compare/v39.2.3...v39.2.4) ### Release Notes for v39.2.4 #### Fixes - Fixed an issue where the close callback param for `menu.popup` would fire when any arbitrary submenu of the given menu closed, and not the menu itself. [#&#8203;49045](https://github.com/electron/electron/pull/49045) <sup>(Also in [38](https://github.com/electron/electron/pull/49047), [40](https://github.com/electron/electron/pull/49046))</sup> - Fixed crash when reading system certificates via nodejs tls module. [#&#8203;49042](https://github.com/electron/electron/pull/49042) <sup>(Also in [40](https://github.com/electron/electron/pull/49041))</sup> - Fixed the issue where the parent window leave disabled after the modal window call show() multiple time. [#&#8203;49019](https://github.com/electron/electron/pull/49019) <sup>(Also in [38](https://github.com/electron/electron/pull/49020), [40](https://github.com/electron/electron/pull/49021))</sup> #### Other Changes - Updated Chromium to 142.0.7444.177. [#&#8203;49037](https://github.com/electron/electron/pull/49037) ### [`v39.2.3`](https://github.com/electron/electron/releases/tag/v39.2.3): electron v39.2.3 [Compare Source](https://github.com/electron/electron/compare/v39.2.2...v39.2.3) ### Release Notes for v39.2.3 - Updated Chromium to 142.0.7444.175. ### [`v39.2.2`](https://github.com/electron/electron/releases/tag/v39.2.2): electron v39.2.2 [Compare Source](https://github.com/electron/electron/compare/v39.2.1...v39.2.2) ### Release Notes for v39.2.2 #### Fixes - Fixed crash when creating event object for IPC events. [#&#8203;48992](https://github.com/electron/electron/pull/48992) <sup>(Also in [40](https://github.com/electron/electron/pull/48991))</sup> ### [`v39.2.1`](https://github.com/electron/electron/releases/tag/v39.2.1): electron v39.2.1 [Compare Source](https://github.com/electron/electron/compare/v39.2.0...v39.2.1) ### Release Notes for v39.2.1 #### Fixes - Fixed an issue where some apps would throw an exception on launch. [#&#8203;48975](https://github.com/electron/electron/pull/48975) <sup>(Also in [40](https://github.com/electron/electron/pull/48976))</sup> ### [`v39.2.0`](https://github.com/electron/electron/releases/tag/v39.2.0): electron v39.2.0 [Compare Source](https://github.com/electron/electron/compare/v39.1.2...v39.2.0) ### Release Notes for v39.2.0 #### Features - Added `app.isHardwareAccelerationEnabled()`. [#&#8203;48680](https://github.com/electron/electron/pull/48680) <sup>(Also in [37](https://github.com/electron/electron/pull/48679), [38](https://github.com/electron/electron/pull/48681))</sup> - Added bypassCustomProtocolHandlers option to net.request. [#&#8203;48882](https://github.com/electron/electron/pull/48882) <sup>(Also in [38](https://github.com/electron/electron/pull/48881), [40](https://github.com/electron/electron/pull/48883))</sup> - Automatically focus DevTools when element is inspected or breakpoint is triggered. [#&#8203;48702](https://github.com/electron/electron/pull/48702) <sup>(Also in [37](https://github.com/electron/electron/pull/48703), [38](https://github.com/electron/electron/pull/48701))</sup> - Enables resetting accent color to follow system accent settings if a previous color has been set via `window.setAccentColor(null)`. [#&#8203;48852](https://github.com/electron/electron/pull/48852) <sup>(Also in [38](https://github.com/electron/electron/pull/48853))</sup> - Updated `nativeImage.createFromNamedImage` to support SF Symbol names. [#&#8203;48773](https://github.com/electron/electron/pull/48773) <sup>(Also in [40](https://github.com/electron/electron/pull/48772))</sup> #### Fixes - Fixed crash on windows when UTF-8 is in path. [#&#8203;48944](https://github.com/electron/electron/pull/48944) <sup>(Also in [38](https://github.com/electron/electron/pull/48947), [40](https://github.com/electron/electron/pull/48942))</sup> - Reenable V8 trap handlers for wasm in browser and utility process, improves runtime execution of wasm. [#&#8203;48837](https://github.com/electron/electron/pull/48837) <sup>(Also in [40](https://github.com/electron/electron/pull/48839))</sup> - Restored window's canHide property. [#&#8203;48901](https://github.com/electron/electron/pull/48901) <sup>(Also in [37](https://github.com/electron/electron/pull/48902), [38](https://github.com/electron/electron/pull/48900))</sup> - Windows: Calling window\.setFocusable(true) will no longer cause a window to lose focus. [#&#8203;48928](https://github.com/electron/electron/pull/48928) <sup>(Also in [40](https://github.com/electron/electron/pull/48927))</sup> #### Other Changes - Updated Chromium to 142.0.7444.162. [#&#8203;48899](https://github.com/electron/electron/pull/48899) ### [`v39.1.2`](https://github.com/electron/electron/releases/tag/v39.1.2): electron v39.1.2 [Compare Source](https://github.com/electron/electron/compare/v39.1.1...v39.1.2) ### Release Notes for v39.1.2 #### Fixes - Corrected the appearance of tiled windows on GNOME (when frame: true), and removed resize handles from tiled edges. [#&#8203;48834](https://github.com/electron/electron/pull/48834) <sup>(Also in [38](https://github.com/electron/electron/pull/48836), [40](https://github.com/electron/electron/pull/48835))</sup> - Fix: ESM-from-CJS import when CJK characters are in path. [#&#8203;48873](https://github.com/electron/electron/pull/48873) - Fixed oom crash when optimizing certain wasm functions involving large phi nodes. [#&#8203;48815](https://github.com/electron/electron/pull/48815) <sup>(Also in [38](https://github.com/electron/electron/pull/48817), [40](https://github.com/electron/electron/pull/48816))</sup> - Fixed the issue where the parent window remained interactive after the modal window was opened. [#&#8203;48865](https://github.com/electron/electron/pull/48865) <sup>(Also in [40](https://github.com/electron/electron/pull/48864))</sup> #### Other Changes - Updated Chromium to 142.0.7444.134. [#&#8203;48818](https://github.com/electron/electron/pull/48818) #### Documentation - Documentation changes: [#&#8203;48842](https://github.com/electron/electron/pull/48842) #### Unknown - Fixed an issue that menu items on macOS could not be disabled under all circumstances. [#&#8203;48830](https://github.com/electron/electron/pull/48830) <sup>(Also in [38](https://github.com/electron/electron/pull/48829), [40](https://github.com/electron/electron/pull/48828))</sup> ### [`v39.1.1`](https://github.com/electron/electron/releases/tag/v39.1.1): electron v39.1.1 [Compare Source](https://github.com/electron/electron/compare/v39.1.0...v39.1.1) ### Release Notes for v39.1.1 #### Fixes - Fixed an application crash when clicking or hovering over the native MacOS "Window" menu. Reverts [#&#8203;48598](https://github.com/electron/electron/issues/48598). [#&#8203;48800](https://github.com/electron/electron/pull/48800) <sup>(Also in [40](https://github.com/electron/electron/pull/48799))</sup> - Fixed draw smoothing round corner issue. [#&#8203;48781](https://github.com/electron/electron/pull/48781) <sup>(Also in [40](https://github.com/electron/electron/pull/48782))</sup> ### [`v39.1.0`](https://github.com/electron/electron/releases/tag/v39.1.0): electron v39.1.0 [Compare Source](https://github.com/electron/electron/compare/v39.0.0...v39.1.0) ### Release Notes for v39.1.0 #### Fixes - Fixed an issue on Wayland (Linux) where right-clicking in the titlebar could break mouse interactions. [#&#8203;48758](https://github.com/electron/electron/pull/48758) <sup>(Also in [38](https://github.com/electron/electron/pull/48757), [40](https://github.com/electron/electron/pull/48759))</sup> - Fixed an issue that menu items on macOS could not be disabled under all circumstances. [#&#8203;48711](https://github.com/electron/electron/pull/48711) <sup>(Also in [37](https://github.com/electron/electron/pull/48712), [38](https://github.com/electron/electron/pull/48710))</sup> - Fixed incorrect signal variable reference in nan-spec-runner that could cause install failures to go undetected. [#&#8203;48709](https://github.com/electron/electron/pull/48709) <sup>(Also in [38](https://github.com/electron/electron/pull/48708))</sup> #### Other Changes - Updated Chromium to 142.0.7444.59. [#&#8203;48723](https://github.com/electron/electron/pull/48723) - Updated Node.js to v22.21.1. [#&#8203;48616](https://github.com/electron/electron/pull/48616) ### [`v39.0.0`](https://github.com/electron/electron/releases/tag/v39.0.0): electron v39.0.0 [Compare Source](https://github.com/electron/electron/compare/v38.8.6...v39.0.0) ### Release Notes for v39.0.0 #### Stack Upgrades - Chromium `142.0.7444.52` - [New in 142](https://developer.chrome.com/blog/new-in-chrome-142/) - [New in 141](https://developer.chrome.com/blog/new-in-chrome-141/) - Node `22.20.0` - [Node 22.20.0 blog post](https://nodejs.org/en/blog/release/v22.20.0/) - V8 `14.2` #### Breaking Changes - Added `colorSpace` to offscreen shared texture info of `webContents.on('paint')` event. - Breaking Changed the signature of `OffscreenSharedTexture` to provide a unified `handle` that holds the native handle. [#&#8203;47315](https://github.com/electron/electron/pull/47315) - Fixed a spec compliance issue with `window.open` where it should always create a resizable popup window but did not. [#&#8203;47540](https://github.com/electron/electron/pull/47540) *For breaking changes inherited via Chromium, see [blog post](https://www.electronjs.org/blog/electron-39-0)* #### Features ##### Additions - Added `RGBAF16` output format with scRGB HDR color space support to Offscreen Rendering. [#&#8203;48504](https://github.com/electron/electron/pull/48504) - Added `fileBacked` and `purgeable` fields to `process.getSystemMemoryInfo()` for macOS. [#&#8203;47628](https://github.com/electron/electron/pull/47628) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/48143), [38](https://github.com/electron/electron/pull/48146))</span> - Added support for `guid` `Tray` constructor option on macOS to allow tray icons to maintain position across launches. [#&#8203;47838](https://github.com/electron/electron/pull/47838) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/48078), [37](https://github.com/electron/electron/pull/48076), [38](https://github.com/electron/electron/pull/48077))</span> - Added `webFrameMain.fromFrameToken(processId, frameToken)` to get a `WebFrameMain` instance from its frame token. [#&#8203;47850](https://github.com/electron/electron/pull/47850) <span style="font-size:small;">(Also in [38](https://github.com/electron/electron/pull/47942))</span> - Added methods to enable more granular accessibility support management. [#&#8203;48625](https://github.com/electron/electron/pull/48625) - Added support for `app.getRecentDocuments()` on Windows and macOS. [#&#8203;45839](https://github.com/electron/electron/pull/45839) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/47925), [37](https://github.com/electron/electron/pull/47923), [38](https://github.com/electron/electron/pull/47924))</span> - Added support for `USBDevice.configurations`. [#&#8203;47459](https://github.com/electron/electron/pull/47459) - Added the ability to retrieve the system accent color on Linux using `systemPreferences.getAccentColor`. [#&#8203;48628](https://github.com/electron/electron/pull/48628) - Adds the ability to change window accent color on Windows after initial window initialization via `{get|set}AccentColor`. [#&#8203;47741](https://github.com/electron/electron/pull/47741) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/48018), [37](https://github.com/electron/electron/pull/48017), [38](https://github.com/electron/electron/pull/47939))</span> - Allowed for persisting File System API grant status within a given session. [#&#8203;48326](https://github.com/electron/electron/pull/48326) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/48328), [38](https://github.com/electron/electron/pull/48327))</span> - Internally switched to using `DIR_ASSETS` instead of `DIR_MODULE`/`DIR_EXE` to locate assets and resources, and added "assets" as a key that can be queried via `app.getPath`. [#&#8203;47439](https://github.com/electron/electron/pull/47439) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/47951), [38](https://github.com/electron/electron/pull/47950))</span> - Support dynamic ESM imports in non-context isolated preloads. [#&#8203;48488](https://github.com/electron/electron/pull/48488) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/48487), [38](https://github.com/electron/electron/pull/48489))</span> #### Fixes - Fixed an issue where `systemPreferences.getAccentColor` inverted the color. [#&#8203;48624](https://github.com/electron/electron/pull/48624) - Fixed an issue where calling `webContents.openDevTools({ mode: 'detach' })` would cause a crash on Wayland. [#&#8203;48623](https://github.com/electron/electron/pull/48623) - Fixed crash when accessing `webContents.session`. [#&#8203;48344](https://github.com/electron/electron/pull/48344) - Fixed crash when inspector agent attempts to evaluate on provisional frames. [#&#8203;48515](https://github.com/electron/electron/pull/48515) - Fixed crash when passing feature param from commandline `--enable-features=Feature:ParamA/Value`. [#&#8203;48442](https://github.com/electron/electron/pull/48442) ##### Also in earlier versions... - AccentColor set distinguishes the frame. [#&#8203;48450](https://github.com/electron/electron/pull/48450) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/48449), [38](https://github.com/electron/electron/pull/48451))</span> - Fix: runtime JS error that crashes `GetPackageJSON`. [#&#8203;48425](https://github.com/electron/electron/pull/48425) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/48423), [38](https://github.com/electron/electron/pull/48424))</span> - Fixed Wayland configuration through the `XDG_SESSION_TYPE` environment variable. [#&#8203;48310](https://github.com/electron/electron/pull/48310) <span style="font-size:small;">(Also in [38](https://github.com/electron/electron/pull/48309))</span> - Fixed Windows `dialog.showMessageBox` default button handling. [#&#8203;48521](https://github.com/electron/electron/pull/48521) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/48522), [37](https://github.com/electron/electron/pull/48520), [38](https://github.com/electron/electron/pull/48519))</span> - Fixed a bug where `app` extensions filters didn't allow for selecting app bundles in macOS file dialogs. [#&#8203;47825](https://github.com/electron/electron/pull/47825) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/47840), [37](https://github.com/electron/electron/pull/47839), [38](https://github.com/electron/electron/pull/47841))</span> - Fixed a bug where the `Referer` header was not being set correctly when using `webContents.downloadURL()`. [#&#8203;47625](https://github.com/electron/electron/pull/47625) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/47866), [37](https://github.com/electron/electron/pull/47865), [38](https://github.com/electron/electron/pull/47867))</span> - Fixed a child process crash on macOS when the running application is replaced with one that has a newer implementation triggering the sandbox. [#&#8203;47765](https://github.com/electron/electron/pull/47765) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/47784), [38](https://github.com/electron/electron/pull/47783))</span> - Fixed a crash possible when calling `webContents.loadURL()` from a failed `webContents.loadURL()` call's catch handler. [#&#8203;48004](https://github.com/electron/electron/pull/48004) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/48044), [37](https://github.com/electron/electron/pull/48045), [38](https://github.com/electron/electron/pull/48043))</span> - Fixed a crash when adding the `-electron-corner-smoothing` CSS rule to a stylesheet with no associated document. [#&#8203;47759](https://github.com/electron/electron/pull/47759) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/47792), [38](https://github.com/electron/electron/pull/47785))</span> - Fixed a crash when calling `desktopCapturer.getSources` with an empty thumbnail size. [#&#8203;47641](https://github.com/electron/electron/pull/47641) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/47651), [37](https://github.com/electron/electron/pull/47653), [38](https://github.com/electron/electron/pull/47652))</span> - Fixed a crash when calling some `webContents` functions after `window.close()`. [#&#8203;47933](https://github.com/electron/electron/pull/47933) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/47953), [37](https://github.com/electron/electron/pull/47954), [38](https://github.com/electron/electron/pull/47952))</span> - Fixed a potential crash in `dialog.showOpenDialog` on Windows with an empty extension filter array. [#&#8203;48658](https://github.com/electron/electron/pull/48658) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/48659), [38](https://github.com/electron/electron/pull/48660))</span> - Fixed addBrowserView to prevent unnecessary removal and re-adding of the same BrowserView. [#&#8203;48053](https://github.com/electron/electron/pull/48053) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/48200), [38](https://github.com/electron/electron/pull/48201))</span> - Fixed an error when checking environmental variables when using remote checksums when installing Electron via npm. [#&#8203;48673](https://github.com/electron/electron/pull/48673) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/48671), [38](https://github.com/electron/electron/pull/48672))</span> - Fixed an issue on some older Windows versions where `setContentProtection` didn't work as expected. [#&#8203;47856](https://github.com/electron/electron/pull/47856) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/47888), [37](https://github.com/electron/electron/pull/47887), [38](https://github.com/electron/electron/pull/47886))</span> - Fixed an issue where `app.accessibilitySupportEnabled` didn't work as expected. [#&#8203;48041](https://github.com/electron/electron/pull/48041) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/48061), [38](https://github.com/electron/electron/pull/48060))</span> - Fixed an issue where `dialog.showMessageDialog` showed a window incorrectly centered to monitor instead of parent window when passed. [#&#8203;48181](https://github.com/electron/electron/pull/48181) <span style="font-size:small;">(Also in [38](https://github.com/electron/electron/pull/48215))</span> - Fixed an issue where `net.isOnline()` always returned `true` in utilityProcesses. [#&#8203;48111](https://github.com/electron/electron/pull/48111) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/48153), [37](https://github.com/electron/electron/pull/48152), [38](https://github.com/electron/electron/pull/48151))</span> - Fixed an issue where `require('node:sqlite')` didn't work. [#&#8203;47706](https://github.com/electron/electron/pull/47706) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/47755), [37](https://github.com/electron/electron/pull/47756), [38](https://github.com/electron/electron/pull/47757))</span> - Fixed an issue where `shell.openExternal` caused an unexpected dialog to open when there was no app suitable to open the url. [#&#8203;48518](https://github.com/electron/electron/pull/48518) <span style="font-size:small;">(Also in [38](https://github.com/electron/electron/pull/48517))</span> - Fixed an issue where `shell.openPath` was not non-blocking as expected. [#&#8203;48079](https://github.com/electron/electron/pull/48079) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/48087), [37](https://github.com/electron/electron/pull/48088), [38](https://github.com/electron/electron/pull/48089))</span> - Fixed an issue where `trafficLightPosition` would not be correctly applied when using `titleBarStyle: 'customButtonsOnHover'` on macOS 26. [#&#8203;48621](https://github.com/electron/electron/pull/48621) <span style="font-size:small;">(Also in [38](https://github.com/electron/electron/pull/48620))</span> - Fixed an issue where a file-only picker incorrectly allowed some directories. [#&#8203;48198](https://github.com/electron/electron/pull/48198) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/48229), [37](https://github.com/electron/electron/pull/48230), [38](https://github.com/electron/electron/pull/48231))</span> - Fixed an issue where an invalid color passed as a string to `accentColor` would result in a white accent color. [#&#8203;47660](https://github.com/electron/electron/pull/47660) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/47800), [38](https://github.com/electron/electron/pull/47684))</span> - Fixed an issue where authentication via websockets can crash. [#&#8203;48541](https://github.com/electron/electron/pull/48541) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/48540), [38](https://github.com/electron/electron/pull/48539))</span> - Fixed an issue where button background on mouse hover with `titleBarOverlay` wasn't always calculated to provide appropriate minimum contrast. [#&#8203;48597](https://github.com/electron/electron/pull/48597) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/48596), [38](https://github.com/electron/electron/pull/48595))</span> - Fixed an issue where certain operations performed in a window close callback could trigger a crash. [#&#8203;47751](https://github.com/electron/electron/pull/47751) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/47811), [37](https://github.com/electron/electron/pull/47813), [38](https://github.com/electron/electron/pull/47812))</span> - Fixed an issue where changing the resizable property on a window would break the styles of a transparent window. [#&#8203;48501](https://github.com/electron/electron/pull/48501) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/48500), [38](https://github.com/electron/electron/pull/48499))</span> - Fixed an issue where child windows could crash if they were opened from a fullscreen parent and have `roundedCorners` set to `false`. [#&#8203;47664](https://github.com/electron/electron/pull/47664) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/47683), [37](https://github.com/electron/electron/pull/47682), [38](https://github.com/electron/electron/pull/47681))</span> - Fixed an issue where dragging sometimes didn't work after the `contextmenu` event was emitted. [#&#8203;48199](https://github.com/electron/electron/pull/48199) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/48225), [37](https://github.com/electron/electron/pull/48226), [38](https://github.com/electron/electron/pull/48224))</span> - Fixed an issue where icons didn't show up as expected on Windows Toast notifications. [#&#8203;48629](https://github.com/electron/electron/pull/48629) <span style="font-size:small;">(Also in [38](https://github.com/electron/electron/pull/48630))</span> - Fixed an issue where importing from `electron/utility` in an ESM file threw an error at runtime. [#&#8203;47998](https://github.com/electron/electron/pull/47998) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/48020), [37](https://github.com/electron/electron/pull/48021), [38](https://github.com/electron/electron/pull/48019))</span> - Fixed an issue where importing from `electron/utility` threw a `ERR_MODULE_NOT_FOUND` error at runtime. [#&#8203;47968](https://github.com/electron/electron/pull/47968) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/47987), [37](https://github.com/electron/electron/pull/47988), [38](https://github.com/electron/electron/pull/47989))</span> - Fixed an issue where snapped corner state wasn't properly restored after minimizing and then restoring. [#&#8203;48142](https://github.com/electron/electron/pull/48142) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/48155), [37](https://github.com/electron/electron/pull/48156), [38](https://github.com/electron/electron/pull/48157))</span> - Fixed an issue where snapped windows aren't correctly snapped when minimized and then unminimized. [#&#8203;48438](https://github.com/electron/electron/pull/48438) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/48439), [38](https://github.com/electron/electron/pull/48437))</span> - Fixed an issue where the accent border was drawn on all windows regardless of the window's active focused status. [#&#8203;47740](https://github.com/electron/electron/pull/47740) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/48012), [37](https://github.com/electron/electron/pull/48011), [38](https://github.com/electron/electron/pull/47802))</span> - Fixed an issue where the accent color would be accidentally inverted when set to match the system color. [#&#8203;48085](https://github.com/electron/electron/pull/48085) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/48109), [37](https://github.com/electron/electron/pull/48107), [38](https://github.com/electron/electron/pull/48108))</span> - Fixed an issue where the window required restart in order to recognize system accent color setting change. [#&#8203;47629](https://github.com/electron/electron/pull/47629) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/47657), [37](https://github.com/electron/electron/pull/47656), [38](https://github.com/electron/electron/pull/47658))</span> - Fixed an issue where users on MacOS were unable to interact with a webpage loaded via loadURL. [#&#8203;47560](https://github.com/electron/electron/pull/47560) <span style="font-size:small;">(Also in [38](https://github.com/electron/electron/pull/47575))</span> - Fixed an issue where video scrubbing would not correctly hold the new position on playback. [#&#8203;47703](https://github.com/electron/electron/pull/47703) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/47971), [38](https://github.com/electron/electron/pull/47965))</span> - Fixed an issue where windows opened with `window.open` would never be offscreen. [#&#8203;47868](https://github.com/electron/electron/pull/47868) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/48070), [38](https://github.com/electron/electron/pull/48026))</span> - Fixed an issue where windows used dark theme on Linux all the time without reacting to system theme changes. [#&#8203;47869](https://github.com/electron/electron/pull/47869) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/47920), [38](https://github.com/electron/electron/pull/47919))</span> - Fixed applying background material correctly when creating windows on Windows, restored animations, and also fixed the issue where dynamically setting the background material had no effect. [#&#8203;47386](https://github.com/electron/electron/pull/47386) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/47957), [37](https://github.com/electron/electron/pull/47956), [38](https://github.com/electron/electron/pull/47814))</span> - Fixed compilation error when disabling extensions and pdf_viewer. [#&#8203;47964](https://github.com/electron/electron/pull/47964) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/47994), [38](https://github.com/electron/electron/pull/47993))</span> - Fixed download button does not work in PDF Viewer. [#&#8203;48404](https://github.com/electron/electron/pull/48404) <span style="font-size:small;">(Also in [38](https://github.com/electron/electron/pull/48409))</span> - Fixed excessive WindowServer GPU usage on macOS Tahoe 26. [#&#8203;48399](https://github.com/electron/electron/pull/48399) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/48401), [37](https://github.com/electron/electron/pull/48400), [38](https://github.com/electron/electron/pull/48398))</span> - Fixed high CPU usage with `<input>` tag on macOS 26. [#&#8203;48393](https://github.com/electron/electron/pull/48393) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/48419), [37](https://github.com/electron/electron/pull/48392), [38](https://github.com/electron/electron/pull/48394))</span> - Fixed potential deadlock inside `app.getLoginItemSettings` on macOS. [#&#8203;48090](https://github.com/electron/electron/pull/48090) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/48095), [37](https://github.com/electron/electron/pull/48096), [38](https://github.com/electron/electron/pull/48094))</span> - Fixed shader-f16 to work on Windows. [#&#8203;48557](https://github.com/electron/electron/pull/48557) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/48556), [38](https://github.com/electron/electron/pull/48555))</span> - Fixed white flash on call to BrowserWindow\.show. [#&#8203;48559](https://github.com/electron/electron/pull/48559) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/48558), [38](https://github.com/electron/electron/pull/48560))</span> - Titlebar buttons now appear on the correct side of windows on Wayland in Ubuntu. [#&#8203;48603](https://github.com/electron/electron/pull/48603) <span style="font-size:small;">(Also in [38](https://github.com/electron/electron/pull/48602))</span> #### Other Changes - Added `abi_version` file to the npm package. [#&#8203;47598](https://github.com/electron/electron/pull/47598) - Added platform-specific conditions to the source_set in chromium_src. [#&#8203;47627](https://github.com/electron/electron/pull/47627) - Fixed a development issue where the metal toolchain could not be found when building on macOS 26. [#&#8203;48472](https://github.com/electron/electron/pull/48472) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/48471), [38](https://github.com/electron/electron/pull/48473))</span> - `Electron.Event` object backing class is now managed by v8. [#&#8203;48161](https://github.com/electron/electron/pull/48161) - `app` module backing C++ object is now managed by v8. [#&#8203;48118](https://github.com/electron/electron/pull/48118) - `session` module backing C++ object is now managed by v8. [#&#8203;48141](https://github.com/electron/electron/pull/48141) #### Documentation - Documentation change - [#&#8203;44947](https://github.com/electron/electron/pull/44947) - [#&#8203;48002](https://github.com/electron/electron/pull/48002) - [#&#8203;48434](https://github.com/electron/electron/pull/48434) - [#&#8203;48685](https://github.com/electron/electron/pull/48685) #### Notices ##### End of Support for 36.x.y Electron 36.x.y has reached end-of-support as per the project's [support policy](https://www.electronjs.org/docs/latest/tutorial/electron-timelines#version-support-policy). Developers and applications are encouraged to upgrade to a newer version of Electron. ### [`v38.8.6`](https://github.com/electron/electron/releases/tag/v38.8.6): electron v38.8.6 [Compare Source](https://github.com/electron/electron/compare/v38.8.4...v38.8.6) ### Release Notes for v38.8.6 > \[!WARNING] > Electron 38.x.y has reached end-of-support as per the project's [support policy](https://www.electronjs.org/docs/latest/tutorial/electron-timelines#version-support-policy). Developers and applications are encouraged to upgrade to a newer version of Electron. #### Fixes - Added validation to protocol client methods to reject protocol names that do not conform to the RFC 3986 URI scheme grammar. [#&#8203;50157](https://github.com/electron/electron/pull/50157) <sup>(Also in [39](https://github.com/electron/electron/pull/50156), [40](https://github.com/electron/electron/pull/50158), [41](https://github.com/electron/electron/pull/50155))</sup> - Fixed an issue where `additionalData` passed to `app.requestSingleInstanceLock` on Windows could be truncated or fail to deserialize in the primary instance's `second-instance` event. [#&#8203;50177](https://github.com/electron/electron/pull/50177) <sup>(Also in [39](https://github.com/electron/electron/pull/50174), [40](https://github.com/electron/electron/pull/50162), [41](https://github.com/electron/electron/pull/50154))</sup> - Fixed an issue where invalid characters in custom protocol or webRequest response header values were not rejected. [#&#8203;50130](https://github.com/electron/electron/pull/50130) <sup>(Also in [39](https://github.com/electron/electron/pull/50129), [40](https://github.com/electron/electron/pull/50131), [41](https://github.com/electron/electron/pull/50132))</sup> - Fixed an issue where permission and device-chooser handlers received the top-level page origin instead of the requesting subframe's origin. [#&#8203;50151](https://github.com/electron/electron/pull/50151) <sup>(Also in [39](https://github.com/electron/electron/pull/50147), [40](https://github.com/electron/electron/pull/50149), [41](https://github.com/electron/electron/pull/50148))</sup> ### [`v38.8.4`](https://github.com/electron/electron/releases/tag/v38.8.4): electron v38.8.4 [Compare Source](https://github.com/electron/electron/compare/v38.8.2...v38.8.4) ### Release Notes for v38.8.4 #### Fixes - Fixed memory leak when setting icons on Linux/GTK. [#&#8203;49897](https://github.com/electron/electron/pull/49897) <sup>(Also in [39](https://github.com/electron/electron/pull/49896), [40](https://github.com/electron/electron/pull/49898), [41](https://github.com/electron/electron/pull/49895))</sup> ### [`v38.8.2`](https://github.com/electron/electron/releases/tag/v38.8.2): electron v38.8.2 [Compare Source](https://github.com/electron/electron/compare/v38.8.1...v38.8.2) ### Release Notes for v38.8.2 #### Other Changes - Backported fix for [`4835695`](https://github.com/electron/electron/commit/483569511). [#&#8203;49792](https://github.com/electron/electron/pull/49792) ### [`v38.8.1`](https://github.com/electron/electron/releases/tag/v38.8.1): electron v38.8.1 [Compare Source](https://github.com/electron/electron/compare/v38.8.0...v38.8.1) ### Release Notes for v38.8.1 #### Fixes - Fixed an issue whereby a duplicate "Toggle Full Screen" menu item appeared in the View menu on macOS. [#&#8203;49596](https://github.com/electron/electron/pull/49596) <sup>(Also in [39](https://github.com/electron/electron/pull/49597), [40](https://github.com/electron/electron/pull/49595), [41](https://github.com/electron/electron/pull/49598))</sup> - Fixed dock menu items not respecting enabled and checked properties on macOS. [#&#8203;49627](https://github.com/electron/electron/pull/49627) <sup>(Also in [39](https://github.com/electron/electron/pull/49626), [40](https://github.com/electron/electron/pull/49624), [41](https://github.com/electron/electron/pull/49625))</sup> ### [`v38.8.0`](https://github.com/electron/electron/releases/tag/v38.8.0): electron v38.8.0 [Compare Source](https://github.com/electron/electron/compare/v38.7.2...v38.8.0) ### Release Notes for v38.8.0 #### Fixes - Fixed an issue where `menu-did-close` was not emitted properly for some application menus. [#&#8203;49094](https://github.com/electron/electron/pull/49094) <sup>(Also in [39](https://github.com/electron/electron/pull/49093), [40](https://github.com/electron/electron/pull/49092))</sup> - Fixed an issue where `systemPreferences.getAccentColor` inverted the color. [#&#8203;49066](https://github.com/electron/electron/pull/49066) <sup>(Also in [37](https://github.com/electron/electron/pull/49067), [39](https://github.com/electron/electron/pull/48624))</sup> #### Other Changes - Updated Node.js to v22.22.0. [#&#8203;49388](https://github.com/electron/electron/pull/49388) #### Unknown - Fixed an issue where some packages weren't correctly filtered on macOS in dialogs. [#&#8203;49471](https://github.com/electron/electron/pull/49471) <sup>(Also in [39](https://github.com/electron/electron/pull/49472), [40](https://github.com/electron/electron/pull/49473), [41](https://github.com/electron/electron/pull/49470))</sup> ### [`v38.7.2`](https://github.com/electron/electron/releases/tag/v38.7.2): electron v38.7.2 [Compare Source](https://github.com/electron/electron/compare/v38.7.1...v38.7.2) ### Release Notes for v38.7.2 #### Fixes - Fixed an issue where the close callback param for `menu.popup` would fire when any arbitrary submenu of the given menu closed, and not the menu itself. [#&#8203;49047](https://github.com/electron/electron/pull/49047) <sup>(Also in [39](https://github.com/electron/electron/pull/49045), [40](https://github.com/electron/electron/pull/49046))</sup> - Fixed the issue where the parent window leave disabled after the modal window call show() multiple time. [#&#8203;49020](https://github.com/electron/electron/pull/49020) <sup>(Also in [39](https://github.com/electron/electron/pull/49019), [40](https://github.com/electron/electron/pull/49021))</sup> ### [`v38.7.1`](https://github.com/electron/electron/releases/tag/v38.7.1): electron v38.7.1 [Compare Source](https://github.com/electron/electron/compare/v38.7.0...v38.7.1) ### Release Notes for v38.7.1 #### Other Changes - Backported fix for [`4503289`](https://github.com/electron/electron/commit/450328966). [#&#8203;49009](https://github.com/electron/electron/pull/49009) - Backported fix for [`4573510`](https://github.com/electron/electron/commit/457351015). [#&#8203;48984](https://github.com/electron/electron/pull/48984) ### [`v38.7.0`](https://github.com/electron/electron/releases/tag/v38.7.0): electron v38.7.0 [Compare Source](https://github.com/electron/electron/compare/v38.6.0...v38.7.0) ### Release Notes for v38.7.0 #### Features - Added `app.isHardwareAccelerationEnabled()`. [#&#8203;48681](https://github.com/electron/electron/pull/48681) <sup>(Also in [37](https://github.com/electron/electron/pull/48679), [39](https://github.com/electron/electron/pull/48680))</sup> - Added bypassCustomProtocolHandlers option to net.request. [#&#8203;48881](https://github.com/electron/electron/pull/48881) <sup>(Also in [39](https://github.com/electron/electron/pull/48882), [40](https://github.com/electron/electron/pull/48883))</sup> - Automatically focus DevTools when element is inspected or breakpoint is triggered. [#&#8203;48701](https://github.com/electron/electron/pull/48701) <sup>(Also in [37](https://github.com/electron/electron/pull/48703), [39](https://github.com/electron/electron/pull/48702))</sup> - Enables resetting accent color to follow system accent settings if a previous color has been set via `window.setAccentColor(null)`. [#&#8203;48853](https://github.com/electron/electron/pull/48853) <sup>(Also in [39](https://github.com/electron/electron/pull/48852))</sup> #### Fixes - Corrected the appearance of tiled windows on GNOME (when frame: true), and removed resize handles from tiled edges. [#&#8203;48836](https://github.com/electron/electron/pull/48836) <sup>(Also in [39](https://github.com/electron/electron/pull/48834), [40](https://github.com/electron/electron/pull/48835))</sup> - Fix: ESM-from-CJS import when CJK characters are in path. [#&#8203;48876](https://github.com/electron/electron/pull/48876) <sup>(Also in [39](https://github.com/electron/electron/pull/48873), [40](https://github.com/electron/electron/pull/48862))</sup> - Fixed an issue where calling `webContents.openDevTools({ mode: 'detach' })` would cause a crash on Wayland. [#&#8203;48926](https://github.com/electron/electron/pull/48926) <sup>(Also in [39](https://github.com/electron/electron/pull/48623))</sup> - Fixed crash on windows when UTF-8 is in path. [#&#8203;48947](https://github.com/electron/electron/pull/48947) <sup>(Also in [39](https://github.com/electron/electron/pull/48944), [40](https://github.com/electron/electron/pull/48942))</sup> - Fixed oom crash when optimizing certain wasm functions involving large phi nodes. [#&#8203;48817](https://github.com/electron/electron/pull/48817) <sup>(Also in [39](https://github.com/electron/electron/pull/48815), [40](https://github.com/electron/electron/pull/48816))</sup> - Fixed the issue where the parent window remained interactive after the modal window was opened. [#&#8203;48866](https://github.com/electron/electron/pull/48866) <sup>(Also in [39](https://github.com/electron/electron/pull/48865), [40](https://github.com/electron/electron/pull/48864))</sup> - Restored window's canHide property. [#&#8203;48900](https://github.com/electron/electron/pull/48900) <sup>(Also in [37](https://github.com/electron/electron/pull/48902), [39](https://github.com/electron/electron/pull/48901))</sup> #### Other Changes - Backported fix for [`4600173`](https://github.com/electron/electron/commit/460017370). [#&#8203;48950](https://github.com/electron/electron/pull/48950) #### Unknown - Fixed an issue that menu items on macOS could not be disabled under all circumstances. [#&#8203;48829](https://github.com/electron/electron/pull/48829) <sup>(Also in [39](https://github.com/electron/electron/pull/48830), [40](https://github.com/electron/electron/pull/48828))</sup> ### [`v38.6.0`](https://github.com/electron/electron/releases/tag/v38.6.0): electron v38.6.0 [Compare Source](https://github.com/electron/electron/compare/v38.5.0...v38.6.0) ### Release Notes for v38.6.0 #### Fixes - Fixed an application crash when clicking or hovering over the native MacOS "Window" menu. Reverts [#&#8203;48598](https://github.com/electron/electron/issues/48598). [#&#8203;48801](https://github.com/electron/electron/pull/48801) <sup>(Also in [39](https://github.com/electron/electron/pull/48800), [40](https://github.com/electron/electron/pull/48799))</sup> - Fixed an issue on Wayland (Linux) where right-clicking in the titlebar could break mouse interactions. [#&#8203;48757](https://github.com/electron/electron/pull/48757) <sup>(Also in [39](https://github.com/electron/electron/pull/48758), [40](https://github.com/electron/electron/pull/48759))</sup> - Fixed an issue that menu items on macOS could not be disabled under all circumstances. [#&#8203;48710](https://github.com/electron/electron/pull/48710) <sup>(Also in [37](https://github.com/electron/electron/pull/48712), [39](https://github.com/electron/electron/pull/48711))</sup> - Fixed draw smoothing round corner issue. [#&#8203;48780](https://github.com/electron/electron/pull/48780) <sup>(Also in [40](https://github.com/electron/electron/pull/48782))</sup> - Fixed incorrect signal variable reference in nan-spec-runner that could cause install failures to go undetected. [#&#8203;48708](https://github.com/electron/electron/pull/48708) <sup>(Also in [39](https://github.com/electron/electron/pull/48709))</sup> #### Other Changes - Updated Node.js to v22.21.1. [#&#8203;48615](https://github.com/electron/electron/pull/48615) ### [`v38.5.0`](https://github.com/electron/electron/releases/tag/v38.5.0): electron v38.5.0 [Compare Source](https://github.com/electron/electron/compare/v38.4.0...v38.5.0) ### Release Notes for v38.5.0 #### Features - Added methods to enable more granular accessibility support management. [#&#8203;48626](https://github.com/electron/electron/pull/48626) <sup>(Also in [37](https://github.com/electron/electron/pull/48627), [39](https://github.com/electron/electron/pull/48625))</sup> #### Fixes - Fixed a potential crash in `dialog.showOpenDialog` on Windows with an empty extension filter array. [#&#8203;48660](https://github.com/electron/electron/pull/48660) <sup>(Also in [37](https://github.com/electron/electron/pull/48659), [39](https://github.com/electron/electron/pull/48658))</sup> - Fixed an error when checking environmental variables when using remote checksums when installing Electron via npm. [#&#8203;48672](https://github.com/electron/electron/pull/48672) <sup>(Also in [37](https://github.com/electron/electron/pull/48671), [39](https://github.com/electron/electron/pull/48673))</sup> - Fixed an issue where `trafficLightPosition` would not be correctly applied when using `titleBarStyle: 'customButtonsOnHover'` on macOS 26. [#&#8203;48620](https://github.com/electron/electron/pull/48620) <sup>(Also in [37](https://github.com/electron/electron/pull/48622), [39](https://github.com/electron/electron/pull/48621))</sup> - Fixed an issue where button background on mouse hover with `titleBarOverlay` wasn't always calculated to provide appropriate minimum contrast. [#&#8203;48595](https://github.com/electron/electron/pull/48595) <sup>(Also in [37](https://github.com/electron/electron/pull/48596), [39](https://github.com/electron/electron/pull/48597))</sup> - Fixed an issue where icons didn't show up as expected on Windows Toast notifications. [#&#8203;48630](https://github.com/electron/electron/pull/48630) <sup>(Also in [39](https://github.com/electron/electron/pull/48629))</sup> - Fixed crash when inspector agent attempts to evaluate on provisional frames. [#&#8203;48513](https://github.com/electron/electron/pull/48513) <sup>(Also in [39](https://github.com/electron/electron/pull/48515))</sup> #### Other Changes - Updated Chromium to 140.0.7339.249. [#&#8203;48569](https://github.com/electron/electron/pull/48569) #### Documentation - Documentation changes: [#&#8203;48684](https://github.com/electron/electron/pull/48684) ### [`v38.4.0`](https://github.com/electron/electron/releases/tag/v38.4.0): electron v38.4.0 [Compare Source](https://github.com/electron/electron/compare/v38.3.0...v38.4.0) ### Release Notes for v38.4.0 #### Features - Support dynamic ESM imports in non-context isolated preloads. [#&#8203;48489](https://github.com/electron/electron/pull/48489) <span style="font-size:small;">(Also in [39](https://github.com/electron/electron/pull/48488))</span> #### Fixes - Fixed shader-f16 to work on Windows. [#&#8203;48555](https://github.com/electron/electron/pull/48555) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/48556), [39](https://github.com/electron/electron/pull/48557))</span> - Fixed white flash on call to BrowserWindow\.show. [#&#8203;48560](https://github.com/electron/electron/pull/48560) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/48558), [39](https://github.com/electron/electron/pull/48559))</span> - Titlebar buttons now appear on the correct side of windows on Wayland in Ubuntu. [#&#8203;48602](https://github.com/electron/electron/pull/48602) <span style="font-size:small;">(Also in [39](https://github.com/electron/electron/pull/48603))</span> ### [`v38.3.0`](https://github.com/electron/electron/releases/tag/v38.3.0): electron v38.3.0 [Compare Source](https://github.com/electron/electron/compare/v38.2.2...v38.3.0) ### Release Notes for v38.3.0 #### Fixes - Fixed Windows `dialog.showMessageBox` default button handling. [#&#8203;48519](https://github.com/electron/electron/pull/48519) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/48522), [37](https://github.com/electron/electron/pull/48520), [39](https://github.com/electron/electron/pull/48521))</span> - Fixed an issue where `shell.openExternal` caused an unexpected dialog to open when there was no app suitable to open the url. [#&#8203;48517](https://github.com/electron/electron/pull/48517) <span style="font-size:small;">(Also in [39](https://github.com/electron/electron/pull/48518))</span> - Fixed an issue where authentication via websockets can crash. [#&#8203;48539](https://github.com/electron/electron/pull/48539) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/48540), [39](https://github.com/electron/electron/pull/48541))</span> - Fixed an issue where changing the resizable property on a window would break the styles of a transparent window. [#&#8203;48499](https://github.com/electron/electron/pull/48499) <span style="font-size:small;">(Also in [39](https://github.com/electron/electron/pull/48501))</span> #### Other Changes - Fixed a development issue where the metal toolchain could not be found when building on macOS 26. [#&#8203;48473](https://github.com/electron/electron/pull/48473) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/48471), [39](https://github.com/electron/electron/pull/48472))</span> - Updated Chromium to 140.0.7339.240. [#&#8203;48486](https://github.com/electron/electron/pull/48486) - Updated Node.js to v22.20.0. [#&#8203;48381](https://github.com/electron/electron/pull/48381) ### [`v38.2.2`](https://github.com/electron/electron/releases/tag/v38.2.2): electron v38.2.2 [Compare Source](https://github.com/electron/electron/compare/v38.2.1...v38.2.2) ### Release Notes for v38.2.2 #### Fixes - AccentColor set distinguishes the frame. [#&#8203;48451](https://github.com/electron/electron/pull/48451) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/48449), [39](https://github.com/electron/electron/pull/48450))</span> - Fix: runtime JS error that crashes `GetPackageJSON`. [#&#8203;48424](https://github.com/electron/electron/pull/48424) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/48423), [39](https://github.com/electron/electron/pull/48425))</span> - Fixed download button does not work in PDF Viewer. [#&#8203;48409](https://github.com/electron/electron/pull/48409) <span style="font-size:small;">(Also in [39](https://github.com/electron/electron/pull/48404))</span> ### [`v38.2.1`](https://github.com/electron/electron/releases/tag/v38.2.1): electron v38.2.1 [Compare Source](https://github.com/electron/electron/compare/v38.2.0...v38.2.1) ### Release Notes for v38.2.1 #### Fixes - Fixed an issue where snapped windows aren't correctly snapped when minimized and then unminimized. [#&#8203;48437](https://github.com/electron/electron/pull/48437) <span style="font-size:small;">(Also in [39](https://github.com/electron/electron/pull/48438))</span> ### [`v38.2.0`](https://github.com/electron/electron/releases/tag/v38.2.0): electron v38.2.0 [Compare Source](https://github.com/electron/electron/compare/v38.1.2...v38.2.0) ### Release Notes for v38.2.0 #### Features - Allowed for persisting File System API grant status within a given session. [#&#8203;48327](https://github.com/electron/electron/pull/48327) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/48328))</span> #### Fixes - Fixed Wayland configuration through the `XDG_SESSION_TYPE` environment variable. [#&#8203;48309](https://github.com/electron/electron/pull/48309) - Fixed excessive WindowServer GPU usage on macOS Tahoe 26. [#&#8203;48398](https://github.com/electron/electron/pull/48398) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/48401), [37](https://github.com/electron/electron/pull/48400), [39](https://github.com/electron/electron/pull/48399))</span> - Fixed high CPU usage with `<input>` tag on macOS 26. [#&#8203;48394](https://github.com/electron/electron/pull/48394) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/48392), [39](https://github.com/electron/electron/pull/48393))</span> ### [`v38.1.2`](https://github.com/electron/electron/releases/tag/v38.1.2): electron v38.1.2 [Compare Source](https://github.com/electron/electron/compare/v38.1.1...v38.1.2) ### Release Notes for v38.1.2 #### Other Changes - Use Local Execution, Remote Caching (LERC) for fork PRs [(#&#8203;48324)](https://github.com/electron/electron/pull/48324) - Updated v8 [(#&#8203;48338)](https://github.com/electron/electron/pull/48338) ### [`v38.1.1`](https://github.com/electron/electron/releases/tag/v38.1.1): electron v38.1.1 [Compare Source](https://github.com/electron/electron/compare/v38.1.0...v38.1.1) ### Release Notes for v38.1.1 #### Other Changes - Updated Chromium to 140.0.7339.133. [#&#8203;48287](https://github.com/electron/electron/pull/48287) ### [`v38.1.0`](https://github.com/electron/electron/releases/tag/v38.1.0): electron v38.1.0 [Compare Source](https://github.com/electron/electron/compare/v38.0.0...v38.1.0) ### Release Notes for v38.1.0 #### Other Changes - Updated Chromium to 140.0.7339.80. [#&#8203;48249](https://github.com/electron/electron/pull/48249) - Updated Node.js to v22.19.0. [#&#8203;48221](https://github.com/electron/electron/pull/48221) ### [`v38.0.0`](https://github.com/electron/electron/releases/tag/v38.0.0): electron v38.0.0 [Compare Source](https://github.com/electron/electron/compare/v37.10.3...v38.0.0) ### Release Notes for v38.0.0 #### Stack Upgrades - Chromium `140.0.7339.41` - [New in 140](https://developer.chrome.com/blog/new-in-chrome-140/) - [New in 139](https://developer.chrome.com/blog/new-in-chrome-139/) - Node `22.18.0` - [Node 22.18.0 blog post](https://nodejs.org/en/blog/release/v22.18.0/) - V8 `14.0` #### Breaking Changes - For breaking changes inherited via Chromium, see [blog post](https://www.electronjs.org/blog/electron-38-0) #### Features ##### Additions - Added `before-mouse-event` to allow intercepting and preventing mouse events in WebContents. [#&#8203;47280](https://github.com/electron/electron/pull/47280) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/47365), [37](https://github.com/electron/electron/pull/47364))</span> - Added `fileBacked` and `purgeable` fields to `process.getSystemMemoryInfo()` for macOS. [#&#8203;48146](https://github.com/electron/electron/pull/48146) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/48143))</span> - Added `innerWidth` and `innerHeight` options for window\.open. [#&#8203;46749](https://github.com/electron/electron/pull/46749) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/47045), [36](https://github.com/electron/electron/pull/47038), [37](https://github.com/electron/electron/pull/47039))</span> - Added support for `guid` `Tray` constructor option on macOS to allow tray icons to maintain position across launches. [#&#8203;48077](https://github.com/electron/electron/pull/48077) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/48078), [37](https://github.com/electron/electron/pull/48076))</span> - Added `webFrameMain.fromFrameToken(processId, frameToken)` to get a `WebFrameMain` instance from its frame token. [#&#8203;47942](https://github.com/electron/electron/pull/47942) - Added sublabel functionality for menus on macOS >= 14.4. [#&#8203;46887](https://github.com/electron/electron/pull/46887) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/47041), [36](https://github.com/electron/electron/pull/47040), [37](https://github.com/electron/electron/pull/47042))</span> - Added support for `app.getRecentDocuments()` on Windows and macOS. [#&#8203;47924](https://github.com/electron/electron/pull/47924) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/47925), [37](https://github.com/electron/electron/pull/47923))</span> - Added support for `--no-experimental-global-navigator` flag. [#&#8203;47370](https://github.com/electron/electron/pull/47370) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/47416), [36](https://github.com/electron/electron/pull/47417), [37](https://github.com/electron/electron/pull/47418))</span> - Added support for `HIDDevice.collections`. [#&#8203;47391](https://github.com/electron/electron/pull/47391) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/47484), [37](https://github.com/electron/electron/pull/47483))</span> - Added support for `screen.dipToScreenPoint(point)` and `screen.screenToDipPoint(point)` on Linux X11. [#&#8203;46211](https://github.com/electron/electron/pull/46211) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/47124), [36](https://github.com/electron/electron/pull/47125), [37](https://github.com/electron/electron/pull/46895))</span> - Added support for customizing system accent color and highlighting of active window border. [#&#8203;47285](https://github.com/electron/electron/pull/47285) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/47539), [36](https://github.com/electron/electron/pull/47538), [37](https://github.com/electron/electron/pull/47537))</span> - Added support for menu item role `palette` and `header` on macOS. [#&#8203;45538](https://github.com/electron/electron/pull/45538) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/47245))</span> - Added support for node option `--experimental-network-inspection`. [#&#8203;46690](https://github.com/electron/electron/pull/46690) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/47029), [36](https://github.com/electron/electron/pull/47030), [37](https://github.com/electron/electron/pull/47031))</span> - Added the priority and priorityIncremental options to net.request(). [#&#8203;42628](https://github.com/electron/electron/pull/42628) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/47320), [37](https://github.com/electron/electron/pull/47321))</span> - Adds the ability to change window accent color on Windows after initial window initialization via `{get|set}AccentColor`. [#&#8203;47939](https://github.com/electron/electron/pull/47939) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/48018), [37](https://github.com/electron/electron/pull/48017))</span> ##### Improvements - Exposed `win.isContentProtected()` to allow developers to check window protection status. [#&#8203;47242](https://github.com/electron/electron/pull/47242) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/47311), [37](https://github.com/electron/electron/pull/47310))</span> - Internally switched to using `DIR_ASSETS` instead of `DIR_MODULE`/`DIR_EXE` to locate assets and resources, and added "assets" as a key that can be queried via `app.getPath`. [#&#8203;47950](https://github.com/electron/electron/pull/47950) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/47951))</span> #### Fixes - Fixed an issue where `dialog.showMessageDialog` showed a window incorrectly centered to monitor instead of parent window when passed. [#&#8203;48215](https://github.com/electron/electron/pull/48215) - Fixed an issue where users on MacOS were unable to interact with a webpage loaded via loadURL. [#&#8203;47575](https://github.com/electron/electron/pull/47575) - Fixed broken `chrome://accessibility` page. [#&#8203;47497](https://github.com/electron/electron/pull/47497) ##### Also in earlier versions... - Fixed `addChildView()` crashes when adding a closed WebContentsView. [#&#8203;47099](https://github.com/electron/electron/pull/47099) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/47339), [36](https://github.com/electron/electron/pull/47340), [37](https://github.com/electron/electron/pull/47338))</span> - Fixed a bug where `app` extensions filters didn't allow for selecting app bundles in macOS file dialogs. [#&#8203;47841](https://github.com/electron/electron/pull/47841) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/47840), [37](https://github.com/electron/electron/pull/47839))</span> - Fixed a bug where the `Referer` header was not being set correctly when using `webContents.downloadURL()`. [#&#8203;47867](https://github.com/electron/electron/pull/47867) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/47866), [37](https://github.com/electron/electron/pull/47865))</span> - Fixed a child process crash on macOS when the running application is replaced with one that has a newer implementation triggering the sandbox. [#&#8203;47783](https://github.com/electron/electron/pull/47783) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/47784))</span> - Fixed a crash possible when calling `webContents.loadURL()` from a failed `webContents.loadURL()` call's catch handler. [#&#8203;48043](https://github.com/electron/electron/pull/48043) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/48044), [37](https://github.com/electron/electron/pull/48045))</span> - Fixed a crash that could occur when opening some dialogs as windows are closing on macOS. [#&#8203;46927](https://github.com/electron/electron/pull/46927) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46953), [36](https://github.com/electron/electron/pull/46951), [37](https://github.com/electron/electron/pull/46952))</span> - Fixed a crash when adding the `-electron-corner-smoothing` CSS rule to a stylesheet with no associated document. [#&#8203;47785](https://github.com/electron/electron/pull/47785) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/47792))</span> - Fixed a crash when calling `desktopCapturer.getSources` with an empty thumbnail size. [#&#8203;47652](https://github.com/electron/electron/pull/47652) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/47651), [37](https://github.com/electron/electron/pull/47653))</span> - Fixed a crash when calling some `webContents` functions after `window.close()`. [#&#8203;47952](https://github.com/electron/electron/pull/47952) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/47953), [37](https://github.com/electron/electron/pull/47954))</span> - Fixed a possible crash using the WebView tag and calling focus. [#&#8203;46979](https://github.com/electron/electron/pull/46979) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/47035), [36](https://github.com/electron/electron/pull/47037), [37](https://github.com/electron/electron/pull/47036))</span> - Fixed a potential crash using `session.clearData` in some circumstances. [#&#8203;47361](https://github.com/electron/electron/pull/47361) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/47410), [36](https://github.com/electron/electron/pull/47411), [37](https://github.com/electron/electron/pull/47412))</span> - Fixed an error when importing `electron` for the first time from an ESM module loaded by a CJS module in a packaged app. [#&#8203;46810](https://github.com/electron/electron/pull/46810) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/47344), [36](https://github.com/electron/electron/pull/47343), [37](https://github.com/electron/electron/pull/47342))</span> - Fixed an issue on some older Windows versions where `setContentProtection` didn't work as expected. [#&#8203;47886](https://github.com/electron/electron/pull/47886) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/47888), [37](https://github.com/electron/electron/pull/47887))</span> - Fixed an issue where `app.accessibilitySupportEnabled` didn't work as expected. [#&#8203;48060](https://github.com/electron/electron/pull/48060) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/48061))</span> - Fixed an issue where `net.isOnline()` always returned `true` in utilityProcesses. [#&#8203;48151](https://github.com/electron/electron/pull/48151) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/48153), [37](https://github.com/electron/electron/pull/48152))</span> - Fixed an issue where `require('node:sqlite')` didn't work. [#&#8203;47757](https://github.com/electron/electron/pull/47757) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/47755), [37](https://github.com/electron/electron/pull/47756))</span> - Fixed an issue where `shell.openPath` was not non-blocking as expected. [#&#8203;48089](https://github.com/electron/electron/pull/48089) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/48087), [37](https://github.com/electron/electron/pull/48088))</span> - Fixed an issue where `webContents.print` did not work as expected when `mediaSize` was not passed. [#&#8203;46937](https://github.com/electron/electron/pull/46937) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/46972), [37](https://github.com/electron/electron/pull/46971))</span> - Fixed an issue where an invalid color passed as a string to `accentColor` would result in a white accent color. [#&#8203;47684](https://github.com/electron/electron/pull/47684) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/47800))</span> - Fixed an issue where calling `Fetch.continueResponse` via debugger with `WebContentsView` could cause a crash. [#&#8203;47434](https://github.com/electron/electron/pull/47434) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/47443), [36](https://github.com/electron/electron/pull/47442), [37](https://github.com/electron/electron/pull/47444))</span> - Fixed an issue where certain operations performed in a window close callback could trigger a crash. [#&#8203;47812](https://github.com/electron/electron/pull/47812) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/47811), [37](https://github.com/electron/electron/pull/47813))</span> - Fixed an issue where child windows could crash if they were opened from a fullscreen parent and have `roundedCorners` set to `false`. [#&#8203;47681](https://github.com/electron/electron/pull/47681) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/47683), [37](https://github.com/electron/electron/pull/47682))</span> - Fixed an issue where filters wouldn't apply in the specific case only one was passed. [#&#8203;46900](https://github.com/electron/electron/pull/46900) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/46945), [37](https://github.com/electron/electron/pull/46946))</span> - Fixed an issue where dragging sometimes didn't work after the `contextmenu` event was emitted. [#&#8203;48224](https://github.com/electron/electron/pull/48224) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/48225), [37](https://github.com/electron/electron/pull/48226))</span> - Fixed an issue where importing from `electron/utility` in an ESM file threw an error at runtime. [#&#8203;48019](https://github.com/electron/electron/pull/48019) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/48020), [37](https://github.com/electron/electron/pull/48021))</span> - Fixed an issue where importing from `electron/utility` threw a `ERR_MODULE_NOT_FOUND` error at runtime. [#&#8203;47989](https://github.com/electron/electron/pull/47989) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/47987), [37](https://github.com/electron/electron/pull/47988))</span> - Fixed an issue where printing PDFs with `webContents.print({ silent: true })` would fail. [#&#8203;47378](https://github.com/electron/electron/pull/47378) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/47624), [37](https://github.com/electron/electron/pull/47397))</span> - Fixed an issue where protected transparent windows inappropriately showed a titlebar after visibility change. [#&#8203;47241](https://github.com/electron/electron/pull/47241) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/47265), [36](https://github.com/electron/electron/pull/47264), [37](https://github.com/electron/electron/pull/47266))</span> - Fixed an issue where snapped corner state wasn't properly restored after minimizing and then restoring. [#&#8203;48157](https://github.com/electron/electron/pull/48157) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/48155), [37](https://github.com/electron/electron/pull/48156))</span> - Fixed an issue where the 'suspend' and 'resume' events could be emitted in duplicate. [#&#8203;47162](https://github.com/electron/electron/pull/47162) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/47190), [36](https://github.com/electron/electron/pull/47189), [37](https://github.com/electron/electron/pull/47188))</span> - Fixed an issue where the accent border was drawn on all windows regardless of the window's active focused status. [#&#8203;47802](https://github.com/electron/electron/pull/47802) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/48012), [37](https://github.com/electron/electron/pull/48011))</span> - Fixed an issue where the accent color would be accidentally inverted when set to match the system color. [#&#8203;48108](https://github.com/electron/electron/pull/48108) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/48109), [37](https://github.com/electron/electron/pull/48107))</span> - Fixed an issue where the window flickers with either a light or dark color before loading the desired background color. [#&#8203;47022](https://github.com/electron/electron/pull/47022) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/47052), [36](https://github.com/electron/electron/pull/47053), [37](https://github.com/electron/electron/pull/47051))</span> - Fixed an issue where the window required restart in order to recognize system accent color setting change. [#&#8203;47658](https://github.com/electron/electron/pull/47658) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/47657), [37](https://github.com/electron/electron/pull/47656))</span> - Fixed an issue where transparent child windows on macOS were rendering a grey block as opposed to their correct contents. [#&#8203;46886](https://github.com/electron/electron/pull/46886) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46889), [36](https://github.com/electron/electron/pull/46890), [37](https://github.com/electron/electron/pull/46891))</span> - Fixed an issue where utility processes could leak file handles. [#&#8203;47525](https://github.com/electron/electron/pull/47525) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/47542), [36](https://github.com/electron/electron/pull/47541), [37](https://github.com/electron/electron/pull/47543))</span> - Fixed an issue where video scrubbing would not correctly hold the new position on playback. [#&#8203;47965](https://github.com/electron/electron/pull/47965) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/47971))</span> - Fixed an issue where windows opened with `window.open` would never be offscreen. [#&#8203;48026](https://github.com/electron/electron/pull/48026) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/48070))</span> - Fixed an issue where windows used dark theme on Linux all the time without reacting to system theme changes. [#&#8203;47919](https://github.com/electron/electron/pull/47919) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/47920))</span> - Fixed applying background material correctly when creating windows on Windows, restored animations, and also fixed the issue where dynamically setting the background material had no effect. [#&#8203;47814](https://github.com/electron/electron/pull/47814) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/47957), [37](https://github.com/electron/electron/pull/47956))</span> - Fixed compilation error when disabling extensions and pdf_viewer. [#&#8203;47993](https://github.com/electron/electron/pull/47993) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/47994))</span> - Fixed crash in `autoUpdater` on macOS when zip extraction failed. [#&#8203;47271](https://github.com/electron/electron/pull/47271) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/47301), [35](https://github.com/electron/electron/pull/47299), [36](https://github.com/electron/electron/pull/47300), [37](https://github.com/electron/electron/pull/47302))</span> - Fixed crash in xdg portal version detection on startup. [#&#8203;47008](https://github.com/electron/electron/pull/47008) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/47025), [36](https://github.com/electron/electron/pull/47024), [37](https://github.com/electron/electron/pull/47023))</span> - Fixed log files written to the current working directory on Windows. [#&#8203;44413](https://github.com/electron/electron/pull/44413) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46911), [36](https://github.com/electron/electron/pull/46912), [37](https://github.com/electron/electron/pull/46910))</span> - Fixed opening package paths as directory when `treatPackageAsDirectory` is enabled on macOS. [#&#8203;47077](https://github.com/electron/electron/pull/47077) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/47110), [36](https://github.com/electron/electron/pull/47109), [37](https://github.com/electron/electron/pull/47108))</span> - Fixed potential deadlock inside `app.getLoginItemSettings` on macOS. [#&#8203;48094](https://github.com/electron/electron/pull/48094) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/48095), [37](https://github.com/electron/electron/pull/48096))</span> - Fixed regression with directory selection in macOS dialogs. [#&#8203;47259](https://github.com/electron/electron/pull/47259) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/47276), [36](https://github.com/electron/electron/pull/47278), [37](https://github.com/electron/electron/pull/47277))</span> - Fixed utilityProcess running user script after process.exit is called. [#&#8203;47469](https://github.com/electron/electron/pull/47469) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/47492))</span> - Fixed xdg portal version detection for file dialogs on linux. [#&#8203;46905](https://github.com/electron/electron/pull/46905) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46936), [36](https://github.com/electron/electron/pull/46923), [37](https://github.com/electron/electron/pull/46922))</span> - Partially fixes an issue with printing a PDF via `webContents.print()` where the callback would not be called. [#&#8203;47377](https://github.com/electron/electron/pull/47377) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/47399), [36](https://github.com/electron/electron/pull/47400), [37](https://github.com/electron/electron/pull/47398))</span> - Restored previous window-hiding behavior of `win.setContentProtected()` on Windows. [#&#8203;47020](https://github.com/electron/electron/pull/47020) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/47034), [36](https://github.com/electron/electron/pull/47032), [37](https://github.com/electron/electron/pull/47033))</span> #### Documentation - Documentation change - [#&#8203;46760](https://github.com/electron/electron/pull/46760) - [#&#8203;48028](https://github.com/electron/electron/pull/48028) #### Notices ##### End of Support for 35.x.y Electron 35.x.y has reached end-of-support as per the project's [support policy](https://www.electronjs.org/docs/latest/tutorial/electron-timelines#version-support-policy). Developers and applications are encouraged to upgrade to a newer version of Electron. ### [`v37.10.3`](https://github.com/electron/electron/releases/tag/v37.10.3): electron v37.10.3 [Compare Source](https://github.com/electron/electron/compare/v37.10.2...v37.10.3) ### Release Notes for v37.10.3 > \[!WARNING] > Electron 37.x.y has reached end-of-support as per the project's [support policy](https://www.electronjs.org/docs/latest/tutorial/electron-timelines#version-support-policy). Developers and applications are encouraged to upgrade to a newer version of Electron. #### Fixes - Fixed an issue where `systemPreferences.getAccentColor` inverted the color. [#&#8203;49067](https://github.com/electron/electron/pull/49067) <span style="font-size:small;">(Also in [39](https://github.com/electron/electron/pull/48624))</span> ### [`v37.10.2`](https://github.com/electron/electron/releases/tag/v37.10.2): electron v37.10.2 [Compare Source](https://github.com/electron/electron/compare/v37.10.1...v37.10.2) ### Release Notes for v37.10.2 #### Other Changes - Backported fix for [`4503289`](https://github.com/electron/electron/commit/450328966). [#&#8203;49015](https://github.com/electron/electron/pull/49015) ### [`v37.10.1`](https://github.com/electron/electron/releases/tag/v37.10.1): electron v37.10.1 [Compare Source](https://github.com/electron/electron/compare/v37.10.0...v37.10.1) ### Release Notes for v37.10.1 #### Fixes - Fixed an issue that menu items on macOS could not be disabled under all circumstances. [#&#8203;48827](https://github.com/electron/electron/pull/48827) ### [`v37.10.0`](https://github.com/electron/electron/releases/tag/v37.10.0): electron v37.10.0 [Compare Source](https://github.com/electron/electron/compare/v37.9.0...v37.10.0) ### Release Notes for v37.10.0 #### Features - Added `app.isHardwareAccelerationEnabled()`. [#&#8203;48679](https://github.com/electron/electron/pull/48679) <span style="font-size:small;">(Also in [38](https://github.com/electron/electron/pull/48681), [39](https://github.com/electron/electron/pull/48680))</span> - Automatically focus DevTools when element is inspected or breakpoint is triggered. [#&#8203;48703](https://github.com/electron/electron/pull/48703) <span style="font-size:small;">(Also in [38](https://github.com/electron/electron/pull/48701), [39](https://github.com/electron/electron/pull/48702))</span> #### Fixes - Restored window's canHide property. [#&#8203;48902](https://github.com/electron/electron/pull/48902) <span style="font-size:small;">(Also in [38](https://github.com/electron/electron/pull/48900), [39](https://github.com/electron/electron/pull/48901))</span> #### Other Changes - Backported fix for [`4600173`](https://github.com/electron/electron/commit/460017370). [#&#8203;48949](https://github.com/electron/electron/pull/48949) ### [`v37.9.0`](https://github.com/electron/electron/releases/tag/v37.9.0): electron v37.9.0 [Compare Source](https://github.com/electron/electron/compare/v37.8.0...v37.9.0) ### Release Notes for v37.9.0 #### Fixes - Fixed an application crash when clicking or hovering over the native MacOS "Window" menu. Reverts [#&#8203;48598](https://github.com/electron/electron/issues/48598). [#&#8203;48803](https://github.com/electron/electron/pull/48803) <span style="font-size:small;">(Also in [38](https://github.com/electron/electron/pull/48801), [39](https://github.com/electron/electron/pull/48800), [40](https://github.com/electron/electron/pull/48799))</span> - Fixed an issue on Wayland (Linux) where right-clicking in the titlebar could break mouse interactions. [#&#8203;48756](https://github.com/electron/electron/pull/48756) <span style="font-size:small;">(Also in [38](https://github.com/electron/electron/pull/48757), [39](https://github.com/electron/electron/pull/48758), [40](https://github.com/electron/electron/pull/48759))</span> - Fixed an issue that menu items on macOS could not be disabled under all circumstances. [#&#8203;48712](https://github.com/electron/electron/pull/48712) <span style="font-size:small;">(Also in [38](https://github.com/electron/electron/pull/48710), [39](https://github.com/electron/electron/pull/48711))</span> - Fixed crash when inspector agent attempts to evaluate on provisional frames. [#&#8203;48514](https://github.com/electron/electron/pull/48514) <span style="font-size:small;">(Also in [38](https://github.com/electron/electron/pull/48513), [39](https://github.com/electron/electron/pull/48515))</span> - Fixed draw smoothing round corner issue. [#&#8203;48783](https://github.com/electron/electron/pull/48783) <span style="font-size:small;">(Also in [40](https://github.com/electron/electron/pull/48782))</span> #### Other Changes - Updated Node.js to v22.21.1. [#&#8203;48614](https://github.com/electron/electron/pull/48614) ### [`v37.8.0`](https://github.com/electron/electron/releases/tag/v37.8.0): electron v37.8.0 [Compare Source](https://github.com/electron/electron/compare/v37.7.1...v37.8.0) ### Release Notes for v37.8.0 #### Features - Added methods to enable more granular accessibility support management. [#&#8203;48627](https://github.com/electron/electron/pull/48627) <span style="font-size:small;">(Also in [38](https://github.com/electron/electron/pull/48626), [39](https://github.com/electron/electron/pull/48625))</span> - Support dynamic ESM imports in non-context isolated preloads. [#&#8203;48487](https://github.com/electron/electron/pull/48487) <span style="font-size:small;">(Also in [38](https://github.com/electron/electron/pull/48489), [39](https://github.com/electron/electron/pull/48488))</span> #### Fixes - Fixed a potential crash in `dialog.showOpenDialog` on Windows with an empty extension filter array. [#&#8203;48659](https://github.com/electron/electron/pull/48659) <span style="font-size:small;">(Also in [38](https://github.com/electron/electron/pull/48660), [39](https://github.com/electron/electron/pull/48658))</span> - Fixed an error when checking environmental variables when using remote checksums when installing Electron via npm. [#&#8203;48671](https://github.com/electron/electron/pull/48671) <span style="font-size:small;">(Also in [38](https://github.com/electron/electron/pull/48672), [39](https://github.com/electron/electron/pull/48673))</span> - Fixed an issue where `trafficLightPosition` would not be correctly applied when using `titleBarStyle: 'customButtonsOnHover'` on macOS 26. [#&#8203;48622](https://github.com/electron/electron/pull/48622) <span style="font-size:small;">(Also in [38](https://github.com/electron/electron/pull/48620), [39](https://github.com/electron/electron/pull/48621))</span> #### Documentation - Documentation changes: [#&#8203;48683](https://github.com/electron/electron/pull/48683) ### [`v37.7.1`](https://github.com/electron/electron/releases/tag/v37.7.1): electron v37.7.1 [Compare Source](https://github.com/electron/electron/compare/v37.7.0...v37.7.1) ### Release Notes for v37.7.1 #### Fixes - Fixed an issue where button background on mouse hover with `titleBarOverlay` wasn't always calculated to provide appropriate minimum contrast. [#&#8203;48596](https://github.com/electron/electron/pull/48596) <span style="font-size:small;">(Also in [39](https://github.com/electron/electron/pull/48597))</span> - Fixed an issue where changing the resizable property on a window would break the styles of a transparent window. [#&#8203;48500](https://github.com/electron/electron/pull/48500) <span style="font-size:small;">(Also in [38](https://github.com/electron/electron/pull/48499), [39](https://github.com/electron/electron/pull/48501))</span> - Fixed shader-f16 to work on Windows. [#&#8203;48556](https://github.com/electron/electron/pull/48556) <span style="font-size:small;">(Also in [38](https://github.com/electron/electron/pull/48555), [39](https://github.com/electron/electron/pull/48557))</span> - Fixed white flash on call to BrowserWindow\.show. [#&#8203;48558](https://github.com/electron/electron/pull/48558) <span style="font-size:small;">(Also in [38](https://github.com/electron/electron/pull/48560), [39](https://github.com/electron/electron/pull/48559))</span> ### [`v37.7.0`](https://github.com/electron/electron/releases/tag/v37.7.0): electron v37.7.0 [Compare Source](https://github.com/electron/electron/compare/v37.6.1...v37.7.0) ### Release Notes for v37.7.0 #### Fixes - Fixed Windows `dialog.showMessageBox` default button handling. [#&#8203;48520](https://github.com/electron/electron/pull/48520) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/48522), [38](https://github.com/electron/electron/pull/48519), [39](https://github.com/electron/electron/pull/48521))</span> - Fixed addBrowserView to prevent unnecessary removal and re-adding of the same BrowserView. [#&#8203;48200](https://github.com/electron/electron/pull/48200) <span style="font-size:small;">(Also in [38](https://github.com/electron/electron/pull/48201))</span> - Fixed an issue where authentication via websockets can crash. [#&#8203;48540](https://github.com/electron/electron/pull/48540) <span style="font-size:small;">(Also in [38](https://github.com/electron/electron/pull/48539), [39](https://github.com/electron/electron/pull/48541))</span> #### Other Changes - Fixed a development issue where the metal toolchain could not be found when building on macOS 26. [#&#8203;48471](https://github.com/electron/electron/pull/48471) <span style="font-size:small;">(Also in [38](https://github.com/electron/electron/pull/48473), [39](https://github.com/electron/electron/pull/48472))</span> - Updated Node.js to v22.20.0. [#&#8203;48380](https://github.com/electron/electron/pull/48380) ### [`v37.6.1`](https://github.com/electron/electron/releases/tag/v37.6.1): electron v37.6.1 [Compare Source](https://github.com/electron/electron/compare/v37.6.0...v37.6.1) ### Release Notes for v37.6.1 #### Fixes - AccentColor set distinguishes the frame. [#&#8203;48449](https://github.com/electron/electron/pull/48449) <span style="font-size:small;">(Also in [38](https://github.com/electron/electron/pull/48451), [39](https://github.com/electron/electron/pull/48450))</span> - Fix: runtime JS error that crashes `GetPackageJSON`. [#&#8203;48423](https://github.com/electron/electron/pull/48423) <span style="font-size:small;">(Also in [38](https://github.com/electron/electron/pull/48424), [39](https://github.com/electron/electron/pull/48425))</span> - Fixed an issue where snapped windows aren't correctly snapped when minimized and then unminimized. [#&#8203;48439](https://github.com/electron/electron/pull/48439) <span style="font-size:small;">(Also in [38](https://github.com/electron/electron/pull/48437), [39](https://github.com/electron/electron/pull/48438))</span> ### [`v37.6.0`](https://github.com/electron/electron/releases/tag/v37.6.0): electron v37.6.0 [Compare Source](https://github.com/electron/electron/compare/v37.5.1...v37.6.0) ### Release Notes for v37.6.0 #### Features - Allowed for persisting File System API grant status within a given session. [#&#8203;48328](https://github.com/electron/electron/pull/48328) <span style="font-size:small;">(Also in [38](https://github.com/electron/electron/pull/48327))</span> #### Fixes - Fixed excessive WindowServer GPU usage on macOS Tahoe 26. [#&#8203;48400](https://github.com/electron/electron/pull/48400) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/48401), [39](https://github.com/electron/electron/pull/48399))</span> - Fixed high CPU usage with `<input>` tag on macOS 26. [#&#8203;48392](https://github.com/electron/electron/pull/48392) <span style="font-size:small;">(Also in [39](https://github.com/electron/electron/pull/48393))</span> ### [`v37.5.1`](https://github.com/electron/electron/releases/tag/v37.5.1): electron v37.5.1 [Compare Source](https://github.com/electron/electron/compare/v37.5.0...v37.5.1) ### Release Notes for v37.5.1 #### Other Changes - Use Local Execution, Remote Caching (LERC) for fork PRs [(#&#8203;48324)](https://github.com/electron/electron/pull/48324) - Updated v8 [(#&#8203;48338)](https://github.com/electron/electron/pull/48338) ### [`v37.5.0`](https://github.com/electron/electron/releases/tag/v37.5.0): electron v37.5.0 [Compare Source](https://github.com/electron/electron/compare/v37.4.0...v37.5.0) ### Release Notes for v37.5.0 #### Features - Added `fileBacked` and `purgeable` fields to `process.getSystemMemoryInfo()` for macOS. [#&#8203;48143](https://github.com/electron/electron/pull/48143) <span style="font-size:small;">(Also in [38](https://github.com/electron/electron/pull/48146))</span> #### Fixes - Fixed an issue where `dialog.showMessageDialog` showed a window incorrectly centered to monitor instead of parent window when passed. [#&#8203;48213](https://github.com/electron/electron/pull/48213) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/48214), [38](https://github.com/electron/electron/pull/48215))</span> - Fixed an issue where a file-only picker incorrectly allowed some directories. [#&#8203;48230](https://github.com/electron/electron/pull/48230) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/48229), [38](https://github.com/electron/electron/pull/48231))</span> - Fixed an issue where dragging sometimes didn't work after the `contextmenu` event was emitted. [#&#8203;48226](https://github.com/electron/electron/pull/48226) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/48225), [38](https://github.com/electron/electron/pull/48224))</span> #### Other Changes - Updated Chromium to 138.0.7204.251. [#&#8203;48184](https://github.com/electron/electron/pull/48184) - Updated Node.js to v22.19.0. [#&#8203;48220](https://github.com/electron/electron/pull/48220) ### [`v37.4.0`](https://github.com/electron/electron/releases/tag/v37.4.0): electron v37.4.0 [Compare Source](https://github.com/electron/electron/compare/v37.3.1...v37.4.0) ### Release Notes for v37.4.0 #### Features - Added support for `guid` `Tray` constructor option on macOS to allow tray icons to maintain position across launches. [#&#8203;48076](https://github.com/electron/electron/pull/48076) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/48078), [38](https://github.com/electron/electron/pull/48077))</span> #### Fixes - Fixed an issue where `net.isOnline()` always returned `true` in utilityProcesses. [#&#8203;48152](https://github.com/electron/electron/pull/48152) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/48153), [38](https://github.com/electron/electron/pull/48151))</span> - Fixed an issue where snapped corner state wasn't properly restored after minimizing and then restoring. [#&#8203;48156](https://github.com/electron/electron/pull/48156) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/48155), [38](https://github.com/electron/electron/pull/48157))</span> - Fixed an issue where the accent color would be accidentally inverted when set to match the system color. [#&#8203;48107](https://github.com/electron/electron/pull/48107) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/48109), [38](https://github.com/electron/electron/pull/48108))</span> #### Other Changes - Updated Chromium to 138.0.7204.243. [#&#8203;48119](https://github.com/electron/electron/pull/48119) ### [`v37.3.1`](https://github.com/electron/electron/releases/tag/v37.3.1): electron v37.3.1 [Compare Source](https://github.com/electron/electron/compare/v37.3.0...v37.3.1) ### Release Notes for v37.3.1 #### Fixes - Fixed an issue where `shell.openPath` was not non-blocking as expected. [#&#8203;48088](https://github.com/electron/electron/pull/48088) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/48087), [38](https://github.com/electron/electron/pull/48089))</span> - Fixed an issue where windows opened with `window.open` would never be offscreen. [#&#8203;48070](https://github.com/electron/electron/pull/48070) <span style="font-size:small;">(Also in [38](https://github.com/electron/electron/pull/48026))</span> - Fixed potential deadlock inside `app.getLoginItemSettings` on macOS. [#&#8203;48096](https://github.com/electron/electron/pull/48096) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/48095))</span> #### Other Changes - Updated Chromium to 138.0.7204.235. [#&#8203;48066](https://github.com/electron/electron/pull/48066) ### [`v37.3.0`](https://github.com/electron/electron/releases/tag/v37.3.0): electron v37.3.0 [Compare Source](https://github.com/electron/electron/compare/v37.2.6...v37.3.0) ### Release Notes for v37.3.0 #### Features - Added support for `app.getRecentDocuments()` on Windows and macOS. [#&#8203;47923](https://github.com/electron/electron/pull/47923) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/47925), [38](https://github.com/electron/electron/pull/47924))</span> - Adds the ability to change window accent color on Windows after initial window initialization via `{get|set}AccentColor`. [#&#8203;48017](https://github.com/electron/electron/pull/48017) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/48018), [38](https://github.com/electron/electron/pull/47939))</span> - Internally switched to using `DIR_ASSETS` instead of `DIR_MODULE`/`DIR_EXE` to locate assets and resources, and added "assets" as a key that can be queried via `app.getPath`. [#&#8203;47951](https://github.com/electron/electron/pull/47951) <span style="font-size:small;">(Also in [38](https://github.com/electron/electron/pull/47950))</span> #### Fixes - Fixed a crash possible when calling `webContents.loadURL()` from a failed `webContents.loadURL()` call's catch handler. [#&#8203;48045](https://github.com/electron/electron/pull/48045) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/48044), [38](https://github.com/electron/electron/pull/48043))</span> - Fixed an issue where `app.accessibilitySupportEnabled` didn't work as expected. [#&#8203;48061](https://github.com/electron/electron/pull/48061) <span style="font-size:small;">(Also in [38](https://github.com/electron/electron/pull/48060))</span> - Fixed an issue where importing from `electron/utility` in an ESM file threw an error at runtime. [#&#8203;48021](https://github.com/electron/electron/pull/48021) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/48020), [38](https://github.com/electron/electron/pull/48019))</span> - Fixed an issue where importing from `electron/utility` threw a `ERR_MODULE_NOT_FOUND` error at runtime. [#&#8203;47988](https://github.com/electron/electron/pull/47988) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/47987), [38](https://github.com/electron/electron/pull/47989))</span> - Fixed an issue where the accent border was drawn on all windows regardless of the window's active focused status. [#&#8203;48011](https://github.com/electron/electron/pull/48011) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/48012), [38](https://github.com/electron/electron/pull/47802))</span> - Fixed compilation error when disabling extensions and pdf_viewer. [#&#8203;47994](https://github.com/electron/electron/pull/47994) <span style="font-size:small;">(Also in [38](https://github.com/electron/electron/pull/47993))</span> #### Other Changes - Updated Chromium to 138.0.7204.224. [#&#8203;47974](https://github.com/electron/electron/pull/47974) - Updated Node.js to v22.18.0. [#&#8203;47935](https://github.com/electron/electron/pull/47935) ### [`v37.2.6`](https://github.com/electron/electron/releases/tag/v37.2.6): electron v37.2.6 [Compare Source](https://github.com/electron/electron/compare/v37.2.5...v37.2.6) ### Release Notes for v37.2.6 #### Fixes - Fixed a bug where the `Referer` header was not being set correctly when using `webContents.downloadURL()`. [#&#8203;47865](https://github.com/electron/electron/pull/47865) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/47866), [38](https://github.com/electron/electron/pull/47867))</span> - Fixed a crash when calling some `webContents` functions after `window.close()`. [#&#8203;47954](https://github.com/electron/electron/pull/47954) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/47953), [38](https://github.com/electron/electron/pull/47952))</span> - Fixed an issue on some older Windows versions where `setContentProtection` didn't work as expected. [#&#8203;47887](https://github.com/electron/electron/pull/47887) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/47888), [38](https://github.com/electron/electron/pull/47886))</span> - Fixed an issue where an invalid color passed as a string to `accentColor` would result in a white accent color. [#&#8203;47800](https://github.com/electron/electron/pull/47800) <span style="font-size:small;">(Also in [38](https://github.com/electron/electron/pull/47684))</span> - Fixed an issue where video scrubbing would not correctly hold the new position on playback. [#&#8203;47971](https://github.com/electron/electron/pull/47971) <span style="font-size:small;">(Also in [38](https://github.com/electron/electron/pull/47965))</span> - Fixed an issue where windows used dark theme on Linux all the time without reacting to system theme changes. [#&#8203;47920](https://github.com/electron/electron/pull/47920) <span style="font-size:small;">(Also in [38](https://github.com/electron/electron/pull/47919))</span> - Fixed applying background material correctly when creating windows on Windows, restored animations, and also fixed the issue where dynamically setting the background material had no effect. [#&#8203;47956](https://github.com/electron/electron/pull/47956) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/47957), [38](https://github.com/electron/electron/pull/47814))</span> #### Other Changes - Updated Chromium to 138.0.7204.185. [#&#8203;47909](https://github.com/electron/electron/pull/47909) ### [`v37.2.5`](https://github.com/electron/electron/releases/tag/v37.2.5): electron v37.2.5 [Compare Source](https://github.com/electron/electron/compare/v37.2.4...v37.2.5) ### Release Notes for v37.2.5 #### Other Changes - Updated Chromium to 138.0.7204.168. [#&#8203;47861](https://github.com/electron/electron/pull/47861) ### [`v37.2.4`](https://github.com/electron/electron/releases/tag/v37.2.4): electron v37.2.4 [Compare Source](https://github.com/electron/electron/compare/v37.2.3...v37.2.4) ### Release Notes for v37.2.4 #### Fixes - Fixed a bug where `app` extensions filters didn't allow for selecting app bundles in macOS file dialogs. [#&#8203;47839](https://github.com/electron/electron/pull/47839) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/47840), [38](https://github.com/electron/electron/pull/47841))</span> - Fixed an issue where certain operations performed in a window close callback could trigger a crash. [#&#8203;47813](https://github.com/electron/electron/pull/47813) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/47811), [38](https://github.com/electron/electron/pull/47812))</span> #### Other Changes - Updated Chromium to 138.0.7204.157. [#&#8203;47773](https://github.com/electron/electron/pull/47773) - Updated Node.js to v22.17.1. [#&#8203;47774](https://github.com/electron/electron/pull/47774) ### [`v37.2.3`](https://github.com/electron/electron/releases/tag/v37.2.3): electron v37.2.3 [Compare Source](https://github.com/electron/electron/compare/v37.2.2...v37.2.3) ### Release Notes for v37.2.3 #### Fixes - Fixed a child process crash on macOS when the running application is replaced with one that has a newer implementation triggering the sandbox. [#&#8203;47784](https://github.com/electron/electron/pull/47784) <span style="font-size:small;">(Also in [38](https://github.com/electron/electron/pull/47783))</span> - Fixed a crash when adding the `-electron-corner-smoothing` CSS rule to a stylesheet with no associated document. [#&#8203;47792](https://github.com/electron/electron/pull/47792) - Fixed an issue where `require('node:sqlite')` didn't work. [#&#8203;47756](https://github.com/electron/electron/pull/47756) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/47755), [38](https://github.com/electron/electron/pull/47757))</span> ### [`v37.2.2`](https://github.com/electron/electron/releases/tag/v37.2.2): electron v37.2.2 [Compare Source](https://github.com/electron/electron/compare/v37.2.1...v37.2.2) ### Release Notes for v37.2.2 #### Other Changes - Updated Chromium to 138.0.7204.100. [#&#8203;47701](https://github.com/electron/electron/pull/47701) ### [`v37.2.1`](https://github.com/electron/electron/releases/tag/v37.2.1): electron v37.2.1 [Compare Source](https://github.com/electron/electron/compare/v37.2.0...v37.2.1) ### Release Notes for v37.2.1 #### Fixes - Fixed a crash when calling `desktopCapturer.getSources` with an empty thumbnail size. [#&#8203;47653](https://github.com/electron/electron/pull/47653) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/47651), [38](https://github.com/electron/electron/pull/47652))</span> - Fixed an issue where child windows could crash if they were opened from a fullscreen parent and have `roundedCorners` set to `false`. [#&#8203;47682](https://github.com/electron/electron/pull/47682) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/47683), [38](https://github.com/electron/electron/pull/47681))</span> - Fixed an issue where the window required restart in order to recognize system accent color setting change. [#&#8203;47656](https://github.com/electron/electron/pull/47656) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/47657), [38](https://github.com/electron/electron/pull/47658))</span> ### [`v37.2.0`](https://github.com/electron/electron/releases/tag/v37.2.0): electron v37.2.0 [Compare Source](https://github.com/electron/electron/compare/v37.1.0...v37.2.0) ### Release Notes for v37.2.0 #### Other Changes - Updated Chromium to 138.0.7204.97. [#&#8203;47619](https://github.com/electron/electron/pull/47619) - Updated Node.js to v22.17.0. [#&#8203;47555](https://github.com/electron/electron/pull/47555) ### [`v37.1.0`](https://github.com/electron/electron/releases/tag/v37.1.0): electron v37.1.0 [Compare Source](https://github.com/electron/electron/compare/v37.0.0...v37.1.0) ### Release Notes for v37.1.0 #### Features - Added support for customizing system accent color and highlighting of active window border. [#&#8203;47537](https://github.com/electron/electron/pull/47537) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/47539), [36](https://github.com/electron/electron/pull/47538))</span> #### Fixes - Fixed an issue where utility processes could leak file handles. [#&#8203;47543](https://github.com/electron/electron/pull/47543) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/47542), [36](https://github.com/electron/electron/pull/47541))</span> ### [`v37.0.0`](https://github.com/electron/electron/releases/tag/v37.0.0): electron v37.0.0 [Compare Source](https://github.com/electron/electron/compare/v36.9.5...v37.0.0) ### Release Notes for v37.0.0 #### Stack Upgrades - Chromium `138.0.7204.35` - [New in 138](https://developer.chrome.com/blog/new-in-chrome-138/) - [New in 137](https://developer.chrome.com/blog/new-in-chrome-137/) - Node`22.16.0` - [Node 22.16.0 blog post](https://nodejs.org/en/blog/release/v22.16.0/) - V8 `13.8` #### Breaking Changes - Added support for Web Serial & WebUSB blocklists. [#&#8203;46600](https://github.com/electron/electron/pull/46600) - Fixed an issue where utility processes crashed on unhandled rejections. [#&#8203;45921](https://github.com/electron/electron/pull/45921) - Fixed utilityProcess running user script after process.exit is called. [#&#8203;47492](https://github.com/electron/electron/pull/47492) - Removed deprecated feature of creating a new random session by setting `ProtocolResponse.session`'s property to `null`. [#&#8203;46264](https://github.com/electron/electron/pull/46264) #### Features ##### Additions - Added `BrowserWindow.isSnapped()` to indicate whether a given window has been arranged via Snap. [#&#8203;46079](https://github.com/electron/electron/pull/46079) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/46226))</span> - Added `before-mouse-event` to allow intercepting and preventing mouse events in WebContents. [#&#8203;47364](https://github.com/electron/electron/pull/47364) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/47365))</span> - Added `ffmpeg.dll` to delay load configuration. [#&#8203;46151](https://github.com/electron/electron/pull/46151) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46174), [35](https://github.com/electron/electron/pull/46172), [36](https://github.com/electron/electron/pull/46173))</span> - Added `innerWidth` and `innerHeight` options for window\.open. [#&#8203;47039](https://github.com/electron/electron/pull/47039) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/47045), [36](https://github.com/electron/electron/pull/47038))</span> - Added `nativeTheme.shouldUseDarkColorsForSystemIntegratedUI` to distinguish system and app theme. [#&#8203;46438](https://github.com/electron/electron/pull/46438) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46599), [36](https://github.com/electron/electron/pull/46598))</span> - Added `scriptURL` property to `ServiceWorkerMain`. [#&#8203;45863](https://github.com/electron/electron/pull/45863) - Added a CSS rule for smooth corners. [#&#8203;45185](https://github.com/electron/electron/pull/45185) - Added sublabel functionality for menus on macOS >= 14.4. [#&#8203;47042](https://github.com/electron/electron/pull/47042) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/47041), [36](https://github.com/electron/electron/pull/47040))</span> - Added support for Autofill, Writing Tools and Services macOS level menu items in context menus via the new `frame` option in `menu.popup`. [#&#8203;45138](https://github.com/electron/electron/pull/45138) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/46350))</span> - Added support for `HIDDevice.collections`. [#&#8203;47483](https://github.com/electron/electron/pull/47483) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/47484))</span> - Added support for `--no-experimental-global-navigator` flag. [#&#8203;47418](https://github.com/electron/electron/pull/47418) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/47416), [36](https://github.com/electron/electron/pull/47417))</span> - Added support for `screen.dipToScreenPoint(point)` and `screen.screenToDipPoint(point)` on Linux X11. [#&#8203;46895](https://github.com/electron/electron/pull/46895) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/47124), [36](https://github.com/electron/electron/pull/47125))</span> - Added support for `system-context-menu` on Linux. [#&#8203;45848](https://github.com/electron/electron/pull/45848) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46977), [36](https://github.com/electron/electron/pull/46399))</span> - Added support for menu item role `palette` and `header` on macOS. [#&#8203;47245](https://github.com/electron/electron/pull/47245) - Added support for node option `--experimental-network-inspection`. [#&#8203;47031](https://github.com/electron/electron/pull/47031) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/47029), [36](https://github.com/electron/electron/pull/47030))</span> - Added the priority and priorityIncremental options to net.request(). [#&#8203;47321](https://github.com/electron/electron/pull/47321) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/47320))</span> - Exposed `win.isContentProtected()` to allow developers to check window protection status. [#&#8203;47310](https://github.com/electron/electron/pull/47310) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/47311))</span> ##### Improvements - Improved ASAR integrity checks on Windows. [#&#8203;46509](https://github.com/electron/electron/pull/46509) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/46537))</span> - Improved performance of desktopCapturer.getSources when not requesting thumbnails on macOS. [#&#8203;46138](https://github.com/electron/electron/pull/46138) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46250), [35](https://github.com/electron/electron/pull/46249), [36](https://github.com/electron/electron/pull/46251))</span> ##### Removed/Deprecated - Deprecated `NativeImage.getBitmap()` and fixed incorrect documentation. [#&#8203;46696](https://github.com/electron/electron/pull/46696) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/46736))</span> #### Fixes - Fixed an issue on application close on Windows, where not all processes are quit on close. [#&#8203;47485](https://github.com/electron/electron/pull/47485) - Fixed an issue where printing PDFs with `webContents.print({ silent: true })` would fail. [#&#8203;47397](https://github.com/electron/electron/pull/47397) ##### Also in earlier versions... - Fix: don't copy 'package.json's out of ASAR file. [#&#8203;46390](https://github.com/electron/electron/pull/46390) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46478), [36](https://github.com/electron/electron/pull/46477))</span> - Fix: osr stutter fix backport for electron. [#&#8203;46650](https://github.com/electron/electron/pull/46650) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/46709))</span> - Fixed ElectronAccessibilityUI bug. [#&#8203;46562](https://github.com/electron/electron/pull/46562) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/46589), [34](https://github.com/electron/electron/pull/46588), [35](https://github.com/electron/electron/pull/46591), [36](https://github.com/electron/electron/pull/46590))</span> - Fixed Minimize menu button to follow set window minimizability on Windows. [#&#8203;46279](https://github.com/electron/electron/pull/46279) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46716), [35](https://github.com/electron/electron/pull/46715), [36](https://github.com/electron/electron/pull/46714))</span> - Fixed NODE_OPTIONS parsing for child processes on macOS. [#&#8203;46209](https://github.com/electron/electron/pull/46209) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46242), [35](https://github.com/electron/electron/pull/46244), [36](https://github.com/electron/electron/pull/46243))</span> - Fixed `addChildView()` crashes when adding a closed WebContentsView. [#&#8203;47338](https://github.com/electron/electron/pull/47338) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/47339), [36](https://github.com/electron/electron/pull/47340))</span> - Fixed `electron.shell.openExternal` and `electron.shell.openPath` to honor user-defined system defaults on Linux. [#&#8203;45310](https://github.com/electron/electron/pull/45310) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/46787), [34](https://github.com/electron/electron/pull/46791), [35](https://github.com/electron/electron/pull/46789), [36](https://github.com/electron/electron/pull/46788))</span> - Fixed `getNativeWindowHandle()` crash that affected 36 betas on macOS. [#&#8203;46733](https://github.com/electron/electron/pull/46733) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/46750))</span> - Fixed a bug that could cause some maximized windows on Linux to report an incorrect window state. [#&#8203;46450](https://github.com/electron/electron/pull/46450) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46462), [35](https://github.com/electron/electron/pull/46464), [36](https://github.com/electron/electron/pull/46463))</span> - Fixed a crash seen on Linux when calling `webContents.print()`. [#&#8203;46087](https://github.com/electron/electron/pull/46087) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46147), [36](https://github.com/electron/electron/pull/46146))</span> - Fixed a crash that could occur when dragging and dropping files into the browser. [#&#8203;46253](https://github.com/electron/electron/pull/46253) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46311), [36](https://github.com/electron/electron/pull/46312))</span> - Fixed a crash that could occur when opening some dialogs as windows are closing on macOS. [#&#8203;46952](https://github.com/electron/electron/pull/46952) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46953), [36](https://github.com/electron/electron/pull/46951))</span> - Fixed a possible BrowserWindow crash caused by closing a parent window with focus or blur events. [#&#8203;46559](https://github.com/electron/electron/pull/46559) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46582), [35](https://github.com/electron/electron/pull/46581), [36](https://github.com/electron/electron/pull/46580))</span> - Fixed a possible crash in `shell.readShortcutLink`. [#&#8203;46294](https://github.com/electron/electron/pull/46294) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/47226), [36](https://github.com/electron/electron/pull/46324))</span> - Fixed a possible crash using Node.js on some arm32 devices. [#&#8203;46435](https://github.com/electron/electron/pull/46435) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46461), [36](https://github.com/electron/electron/pull/46460))</span> - Fixed a possible crash using the WebView tag and calling focus. [#&#8203;47036](https://github.com/electron/electron/pull/47036) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/47035), [36](https://github.com/electron/electron/pull/47037))</span> - Fixed a possible crash when using `navigator.bluetooth.requestDevice` and the `select-bluetooth-device` event. [#&#8203;46745](https://github.com/electron/electron/pull/46745) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46783), [35](https://github.com/electron/electron/pull/46784), [36](https://github.com/electron/electron/pull/46782))</span> - Fixed a potential crash in `parentPort`. [#&#8203;46437](https://github.com/electron/electron/pull/46437) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46494), [35](https://github.com/electron/electron/pull/46495), [36](https://github.com/electron/electron/pull/46496))</span> - Fixed a potential crash in `utilityProcess.postMessage` when calling with an invalid transferable. [#&#8203;46639](https://github.com/electron/electron/pull/46639) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46666), [36](https://github.com/electron/electron/pull/46667))</span> - Fixed a potential crash using `session.clearData` in some circumstances. [#&#8203;47412](https://github.com/electron/electron/pull/47412) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/47410), [36](https://github.com/electron/electron/pull/47411))</span> - Fixed a potential crash when closing a window with child windows. [#&#8203;46758](https://github.com/electron/electron/pull/46758) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46775), [35](https://github.com/electron/electron/pull/46774), [36](https://github.com/electron/electron/pull/46773))</span> - Fixed an error when calling `window.emit('close')` after toggling fullscreen mode. [#&#8203;46605](https://github.com/electron/electron/pull/46605) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46620), [36](https://github.com/electron/electron/pull/46621))</span> - Fixed an error when importing `electron` for the first time from an ESM module loaded by a CJS module in a packaged app. [#&#8203;47342](https://github.com/electron/electron/pull/47342) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/47344), [36](https://github.com/electron/electron/pull/47343))</span> - Fixed an inverted conditional in the above PR that caused broken window borders in some circumstances on Wayland. [#&#8203;46624](https://github.com/electron/electron/pull/46624) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/46645), [34](https://github.com/electron/electron/pull/46643), [35](https://github.com/electron/electron/pull/46644), [36](https://github.com/electron/electron/pull/46642))</span> - Fixed an issue where Node.js OOM errors terminate the process directly without raising an OOM exception. [#&#8203;45895](https://github.com/electron/electron/pull/45895) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/45911), [36](https://github.com/electron/electron/pull/45912))</span> - Fixed an issue where Web Workers crashed on unhandled rejections. [#&#8203;45992](https://github.com/electron/electron/pull/45992) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46019), [35](https://github.com/electron/electron/pull/46020), [36](https://github.com/electron/electron/pull/46021))</span> - Fixed an issue where `context-menu` event weren't emitted as expected on Windows in draggable regions. [#&#8203;45851](https://github.com/electron/electron/pull/45851) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46328), [35](https://github.com/electron/electron/pull/46334), [36](https://github.com/electron/electron/pull/46032))</span> - Fixed an issue where `navigationHistory.restore()` failed to restore the `userAgent` if it was overridden. [#&#8203;46260](https://github.com/electron/electron/pull/46260) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46298), [35](https://github.com/electron/electron/pull/46300), [36](https://github.com/electron/electron/pull/46299))</span> - Fixed an issue where `system-context-menu` incorrectly fired for all regions in frameless windows. [#&#8203;45893](https://github.com/electron/electron/pull/45893) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/46025), [34](https://github.com/electron/electron/pull/46175), [35](https://github.com/electron/electron/pull/46178), [36](https://github.com/electron/electron/pull/46002))</span> - Fixed an issue where `webContents.printToPDF()` didn't work as expected with cross-process subframes. [#&#8203;46218](https://github.com/electron/electron/pull/46218) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46258), [35](https://github.com/electron/electron/pull/46257), [36](https://github.com/electron/electron/pull/46259))</span> - Fixed an issue where `webContents.print` did not work as expected when `mediaSize` was not passed. [#&#8203;46971](https://github.com/electron/electron/pull/46971) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/46972))</span> - Fixed an issue where badly formatted switches could cause crashes in `app.commandLine` functions. [#&#8203;46004](https://github.com/electron/electron/pull/46004) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46631), [36](https://github.com/electron/electron/pull/46446))</span> - Fixed an issue where calling `Fetch.continueResponse` via debugger with `WebContentsView` could cause a crash. [#&#8203;47444](https://github.com/electron/electron/pull/47444) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/47443), [36](https://github.com/electron/electron/pull/47442))</span> - Fixed an issue where calling `UtilityProcess.fork` prior to the app ready event would cause a crash. [#&#8203;46380](https://github.com/electron/electron/pull/46380) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46405), [35](https://github.com/electron/electron/pull/46403), [36](https://github.com/electron/electron/pull/46404))</span> - Fixed an issue where context menu actions such as copy/paste did not correctly fire when a frame was not passed in. [#&#8203;46595](https://github.com/electron/electron/pull/46595) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/46619))</span> - Fixed an issue where filters wouldn't apply in the specific case only one was passed. [#&#8203;46946](https://github.com/electron/electron/pull/46946) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/46945))</span> - Fixed an issue where packages could be mistakenly not found in asar. [#&#8203;45997](https://github.com/electron/electron/pull/45997) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46022), [36](https://github.com/electron/electron/pull/46023))</span> - Fixed an issue where printing from the renderer process crashes the main process when no printers are installed in the system or there's not a default printer. [#&#8203;46587](https://github.com/electron/electron/pull/46587) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46618), [35](https://github.com/electron/electron/pull/46616), [36](https://github.com/electron/electron/pull/46617))</span> - Fixed an issue where protected transparent windows inappropriately showed a titlebar after visibility change. [#&#8203;47266](https://github.com/electron/electron/pull/47266) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/47265), [36](https://github.com/electron/electron/pull/47264))</span> - Fixed an issue where snapped windows in Windows may sometimes be improperly restored. [#&#8203;46006](https://github.com/electron/electron/pull/46006) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/46038), [34](https://github.com/electron/electron/pull/46039), [35](https://github.com/electron/electron/pull/46040), [36](https://github.com/electron/electron/pull/46041))</span> - Fixed an issue where the 'suspend' and 'resume' events could be emitted in duplicate. [#&#8203;47188](https://github.com/electron/electron/pull/47188) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/47190), [36](https://github.com/electron/electron/pull/47189))</span> - Fixed an issue where the `backgroundMaterial` feature did not work in a frameless window on initial window creation. [#&#8203;46657](https://github.com/electron/electron/pull/46657) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/47236), [36](https://github.com/electron/electron/pull/46792))</span> - Fixed an issue where the resizing border didn't work as expected on Wayland windows. [#&#8203;46155](https://github.com/electron/electron/pull/46155) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/46222), [34](https://github.com/electron/electron/pull/46223), [35](https://github.com/electron/electron/pull/46224), [36](https://github.com/electron/electron/pull/46225))</span> - Fixed an issue where the window flickers with either a light or dark color before loading the desired background color. [#&#8203;47051](https://github.com/electron/electron/pull/47051) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/47052), [36](https://github.com/electron/electron/pull/47053))</span> - Fixed an issue where transparent child windows on macOS were rendering a grey block as opposed to their correct contents. [#&#8203;46891](https://github.com/electron/electron/pull/46891) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46889), [36](https://github.com/electron/electron/pull/46890))</span> - Fixed an issue with `--inspect-brk` failing in packaged apps. [#&#8203;46560](https://github.com/electron/electron/pull/46560) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46583), [36](https://github.com/electron/electron/pull/46584))</span> - Fixed an issue with the `assert` Node.js module in the renderer process. [#&#8203;46528](https://github.com/electron/electron/pull/46528) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46632), [36](https://github.com/electron/electron/pull/46561))</span> - Fixed an issue with token formatting for tokens received after calling `pushNotifications.registerForAPNSNotifications()`. [#&#8203;46101](https://github.com/electron/electron/pull/46101) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46150), [35](https://github.com/electron/electron/pull/46148), [36](https://github.com/electron/electron/pull/46149))</span> - Fixed build error with `enable_electron_extensions=false`. [#&#8203;46812](https://github.com/electron/electron/pull/46812) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46841), [35](https://github.com/electron/electron/pull/46840), [36](https://github.com/electron/electron/pull/46842))</span> - Fixed build failure when building with printing disabled. [#&#8203;46283](https://github.com/electron/electron/pull/46283) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46286), [35](https://github.com/electron/electron/pull/46285), [36](https://github.com/electron/electron/pull/46284))</span> - Fixed case where file dialog filters would get mixed up, if a `*` filter was included. [#&#8203;46660](https://github.com/electron/electron/pull/46660) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46720), [35](https://github.com/electron/electron/pull/46721), [36](https://github.com/electron/electron/pull/46722))</span> - Fixed crash in `autoUpdater` on macOS when zip extraction failed. [#&#8203;47302](https://github.com/electron/electron/pull/47302) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/47301), [35](https://github.com/electron/electron/pull/47299), [36](https://github.com/electron/electron/pull/47300))</span> - Fixed crash in xdg portal version detection on startup. [#&#8203;47023](https://github.com/electron/electron/pull/47023) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/47025), [36](https://github.com/electron/electron/pull/47024))</span> - Fixed crash on Linux when PipeWire screenshare source selection is cancelled. [#&#8203;46112](https://github.com/electron/electron/pull/46112) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46234), [36](https://github.com/electron/electron/pull/46235))</span> - Fixed crash on application exit with pending `app.getGPUInfo` promise. [#&#8203;46434](https://github.com/electron/electron/pull/46434) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46472), [35](https://github.com/electron/electron/pull/46470), [36](https://github.com/electron/electron/pull/46471))</span> - Fixed crash on reconversion with google IME and editcontext on macOS. [#&#8203;46688](https://github.com/electron/electron/pull/46688) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46701), [35](https://github.com/electron/electron/pull/46700), [36](https://github.com/electron/electron/pull/46699))</span> - Fixed crash when renderer process crashes while webview is reloading. [#&#8203;46735](https://github.com/electron/electron/pull/46735) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46770), [35](https://github.com/electron/electron/pull/46769), [36](https://github.com/electron/electron/pull/46768))</span> - Fixed crash with out-of-bounds string read when parsing NODE_OPTIONS. [#&#8203;46210](https://github.com/electron/electron/pull/46210) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46246), [35](https://github.com/electron/electron/pull/46248), [36](https://github.com/electron/electron/pull/46247))</span> - Fixed flickering and ghosting artifacts in transparent windows on macOS. [#&#8203;46353](https://github.com/electron/electron/pull/46353) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46392), [36](https://github.com/electron/electron/pull/46393))</span> - Fixed incorrect titlebar in file save dialogs. [#&#8203;46067](https://github.com/electron/electron/pull/46067) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/46075), [34](https://github.com/electron/electron/pull/46076), [35](https://github.com/electron/electron/pull/46074), [36](https://github.com/electron/electron/pull/46077))</span> - Fixed log files written to the current working directory on Windows. [#&#8203;46910](https://github.com/electron/electron/pull/46910) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46911), [36](https://github.com/electron/electron/pull/46912))</span> - Fixed memory leak in AutofillPopupView. [#&#8203;46384](https://github.com/electron/electron/pull/46384) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46411), [35](https://github.com/electron/electron/pull/46413), [36](https://github.com/electron/electron/pull/46412))</span> - Fixed opening package paths as directory when `treatPackageAsDirectory` is enabled on macOS. [#&#8203;47108](https://github.com/electron/electron/pull/47108) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/47110), [36](https://github.com/electron/electron/pull/47109))</span> - Fixed regression with directory selection in macOS dialogs. [#&#8203;47277](https://github.com/electron/electron/pull/47277) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/47276), [36](https://github.com/electron/electron/pull/47278))</span> - Fixed several paint and white flash issues on macOS. [#&#8203;46615](https://github.com/electron/electron/pull/46615) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46628), [36](https://github.com/electron/electron/pull/46629))</span> - Fixed the border style of windows with vibrancy on macOS. [#&#8203;46648](https://github.com/electron/electron/pull/46648) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46772), [36](https://github.com/electron/electron/pull/46771))</span> - Fixed the issue where maximizing and restoring the window does not respect the corner radius settings, and the corner radius is incorrect in fullscreen mode. [#&#8203;46641](https://github.com/electron/electron/pull/46641) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46847), [36](https://github.com/electron/electron/pull/46848))</span> - Fixed the issue where rounded corners disappear momentarily when closing on Windows 11. [#&#8203;46382](https://github.com/electron/electron/pull/46382) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46408), [36](https://github.com/electron/electron/pull/46407))</span> - Fixed title changes to not occur while navigating within a page. [#&#8203;45981](https://github.com/electron/electron/pull/45981) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46034), [35](https://github.com/electron/electron/pull/46035), [36](https://github.com/electron/electron/pull/46036))</span> - Fixed xdg portal version detection for file dialogs on linux. [#&#8203;46922](https://github.com/electron/electron/pull/46922) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46936), [36](https://github.com/electron/electron/pull/46923))</span> - Improved webContents loading time when resolving fonts for uncommon scripts. [#&#8203;45905](https://github.com/electron/electron/pull/45905) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/45917), [35](https://github.com/electron/electron/pull/45918), [36](https://github.com/electron/electron/pull/45919))</span> - Microtasks are no longer (incorrectly) run by serializing values, including when sending IPC. [#&#8203;46668](https://github.com/electron/electron/pull/46668) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46683), [35](https://github.com/electron/electron/pull/46684), [36](https://github.com/electron/electron/pull/46682))</span> - Partially fixes an issue with printing a PDF via `webContents.print()` where the callback would not be called. [#&#8203;47398](https://github.com/electron/electron/pull/47398) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/47399), [36](https://github.com/electron/electron/pull/47400))</span> - Restored previous window-hiding behavior of `win.setContentProtected()` on Windows. [#&#8203;47033](https://github.com/electron/electron/pull/47033) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/47034), [36](https://github.com/electron/electron/pull/47032))</span> - When a menu item on macOS is disabled (`enabled = false`), it is now greyed out. [#&#8203;46307](https://github.com/electron/electron/pull/46307) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46340), [35](https://github.com/electron/electron/pull/46341), [36](https://github.com/electron/electron/pull/46342))</span> #### Other Changes - Backported fix for [`4010597`](https://github.com/electron/electron/commit/401059730). [#&#8203;45936](https://github.com/electron/electron/pull/45936) - Backported fix for [`4010597`](https://github.com/electron/electron/commit/401059730). [#&#8203;45941](https://github.com/electron/electron/pull/45941) - Backported fix for [`4090597`](https://github.com/electron/electron/commit/409059706). [#&#8203;47358](https://github.com/electron/electron/pull/47358) - Backported fix for [`4206375`](https://github.com/electron/electron/commit/420637585). [#&#8203;47356](https://github.com/electron/electron/pull/47356) - Fixed an issue where Electron could fail to load on some older Linux distributions. [#&#8203;45974](https://github.com/electron/electron/pull/45974) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/45982), [35](https://github.com/electron/electron/pull/45983), [36](https://github.com/electron/electron/pull/45984))</span> - Reverts a change that greyed out disabled menu items on macOS ([#&#8203;46307](https://github.com/electron/electron/pull/46307)). [#&#8203;46502](https://github.com/electron/electron/pull/46502) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46522), [35](https://github.com/electron/electron/pull/46521), [36](https://github.com/electron/electron/pull/46523))</span> - Security: backported fix for CVE-2025-5419. [#&#8203;47352](https://github.com/electron/electron/pull/47352) #### Documentation - Documentation change - [#&#8203;46073](https://github.com/electron/electron/pull/46073) - [#&#8203;46130](https://github.com/electron/electron/pull/46130) - [#&#8203;47297](https://github.com/electron/electron/pull/47297) #### Notices ##### End of Support for 34.x.y Electron 34.x.y has reached end-of-support as per the project's [support policy](https://www.electronjs.org/docs/latest/tutorial/electron-timelines#version-support-policy). Developers and applications are encouraged to upgrade to a newer version of Electron. ### [`v36.9.5`](https://github.com/electron/electron/releases/tag/v36.9.5): electron v36.9.5 [Compare Source](https://github.com/electron/electron/compare/v36.9.4...v36.9.5) ### Release Notes for v36.9.5 > \[!WARNING] > Electron 36 has reached end-of-support as per the project's [support policy](https://www.electronjs.org/docs/latest/tutorial/electron-timelines#version-support-policy). Developers and applications are encouraged to upgrade to a newer version of Electron. #### Fixes - Fixed Windows `dialog.showMessageBox` default button handling. [#&#8203;48522](https://github.com/electron/electron/pull/48522) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/48520), [38](https://github.com/electron/electron/pull/48519), [39](https://github.com/electron/electron/pull/48521))</span> ### [`v36.9.4`](https://github.com/electron/electron/releases/tag/v36.9.4): electron v36.9.4 [Compare Source](https://github.com/electron/electron/compare/v36.9.3...v36.9.4) ### Release Notes for v36.9.4 ##### Other Changes - Test: Rerun failed tests individually [#&#8203;48397](https://github.com/electron/electron/pull/48397) ### [`v36.9.3`](https://github.com/electron/electron/releases/tag/v36.9.3): electron v36.9.3 [Compare Source](https://github.com/electron/electron/compare/v36.9.2...v36.9.3) ### Release Notes for v36.9.3 #### Fixes - Fixed high CPU usage with `<input>` tag on macOS 26. [#&#8203;48419](https://github.com/electron/electron/pull/48419) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/48392), [38](https://github.com/electron/electron/pull/48394), [39](https://github.com/electron/electron/pull/48393))</span> ### [`v36.9.2`](https://github.com/electron/electron/releases/tag/v36.9.2): electron v36.9.2 [Compare Source](https://github.com/electron/electron/compare/v36.9.1...v36.9.2) ### Release Notes for v36.9.2 #### Fixes - Fixed excessive WindowServer GPU usage on macOS Tahoe 26. [#&#8203;48401](https://github.com/electron/electron/pull/48401) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/48400), [39](https://github.com/electron/electron/pull/48399))</span> ### [`v36.9.1`](https://github.com/electron/electron/releases/tag/v36.9.1): electron v36.9.1 [Compare Source](https://github.com/electron/electron/compare/v36.9.0...v36.9.1) ### Release Notes for v36.9.1 #### Other Changes - Use Local Execution, Remote Caching (LERC) for fork PRs [(#&#8203;48324)](https://github.com/electron/electron/pull/48324) - Updated v8 [(#&#8203;48338)](https://github.com/electron/electron/pull/48338) ### [`v36.9.0`](https://github.com/electron/electron/releases/tag/v36.9.0): electron v36.9.0 [Compare Source](https://github.com/electron/electron/compare/v36.8.1...v36.9.0) ### Release Notes for v36.9.0 #### Features - Added support for `guid` `Tray` constructor option on macOS to allow tray icons to maintain position across launches. [#&#8203;48078](https://github.com/electron/electron/pull/48078) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/48076), [38](https://github.com/electron/electron/pull/48077))</span> #### Fixes - Fixed an issue where `dialog.showMessageDialog` showed a window incorrectly centered to monitor instead of parent window when passed. [#&#8203;48214](https://github.com/electron/electron/pull/48214) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/48213), [38](https://github.com/electron/electron/pull/48215))</span> - Fixed an issue where `net.isOnline()` always returned `true` in utilityProcesses. [#&#8203;48153](https://github.com/electron/electron/pull/48153) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/48152), [38](https://github.com/electron/electron/pull/48151))</span> - Fixed an issue where a file-only picker incorrectly allowed some directories. [#&#8203;48229](https://github.com/electron/electron/pull/48229) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/48230), [38](https://github.com/electron/electron/pull/48231))</span> - Fixed an issue where dragging sometimes didn't work after the `contextmenu` event was emitted. [#&#8203;48225](https://github.com/electron/electron/pull/48225) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/48226), [38](https://github.com/electron/electron/pull/48224))</span> - Fixed an issue where snapped corner state wasn't properly restored after minimizing and then restoring. [#&#8203;48155](https://github.com/electron/electron/pull/48155) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/48156), [38](https://github.com/electron/electron/pull/48157))</span> - Fixed an issue where the accent color would be accidentally inverted when set to match the system color. [#&#8203;48109](https://github.com/electron/electron/pull/48109) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/48107), [38](https://github.com/electron/electron/pull/48108))</span> #### Other Changes - Updated Node.js to v22.19.0. [#&#8203;48219](https://github.com/electron/electron/pull/48219) ### [`v36.8.1`](https://github.com/electron/electron/releases/tag/v36.8.1): electron v36.8.1 [Compare Source](https://github.com/electron/electron/compare/v36.8.0...v36.8.1) ### Release Notes for v36.8.1 #### Fixes - Fixed an issue where `shell.openPath` was not non-blocking as expected. [#&#8203;48087](https://github.com/electron/electron/pull/48087) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/48088), [38](https://github.com/electron/electron/pull/48089))</span> - Fixed potential deadlock inside `app.getLoginItemSettings` on macOS. [#&#8203;48095](https://github.com/electron/electron/pull/48095) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/48096))</span> ### [`v36.8.0`](https://github.com/electron/electron/releases/tag/v36.8.0): electron v36.8.0 [Compare Source](https://github.com/electron/electron/compare/v36.7.4...v36.8.0) ### Release Notes for v36.8.0 #### Features - Added support for `app.getRecentDocuments()` on Windows and macOS. [#&#8203;47925](https://github.com/electron/electron/pull/47925) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/47923), [38](https://github.com/electron/electron/pull/47924))</span> - Adds the ability to change window accent color on Windows after initial window initialization via `{get|set}AccentColor`. [#&#8203;48018](https://github.com/electron/electron/pull/48018) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/48017), [38](https://github.com/electron/electron/pull/47939))</span> #### Fixes - Fixed a crash possible when calling `webContents.loadURL()` from a failed `webContents.loadURL()` call's catch handler. [#&#8203;48044](https://github.com/electron/electron/pull/48044) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/48045), [38](https://github.com/electron/electron/pull/48043))</span> - Fixed an issue where importing from `electron/utility` in an ESM file threw an error at runtime. [#&#8203;48020](https://github.com/electron/electron/pull/48020) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/48021), [38](https://github.com/electron/electron/pull/48019))</span> - Fixed an issue where importing from `electron/utility` threw a `ERR_MODULE_NOT_FOUND` error at runtime. [#&#8203;47987](https://github.com/electron/electron/pull/47987) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/47988), [38](https://github.com/electron/electron/pull/47989))</span> - Fixed an issue where the accent border was drawn on all windows regardless of the window's active focused status. [#&#8203;48012](https://github.com/electron/electron/pull/48012) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/48011), [38](https://github.com/electron/electron/pull/47802))</span> #### Other Changes - Updated Node.js to v22.18.0. [#&#8203;47934](https://github.com/electron/electron/pull/47934) ### [`v36.7.4`](https://github.com/electron/electron/releases/tag/v36.7.4): electron v36.7.4 [Compare Source](https://github.com/electron/electron/compare/v36.7.3...v36.7.4) ### Release Notes for v36.7.4 #### Fixes - Fixed a bug where the `Referer` header was not being set correctly when using `webContents.downloadURL()`. [#&#8203;47866](https://github.com/electron/electron/pull/47866) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/47865), [38](https://github.com/electron/electron/pull/47867))</span> - Fixed a crash when calling some `webContents` functions after `window.close()`. [#&#8203;47953](https://github.com/electron/electron/pull/47953) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/47954), [38](https://github.com/electron/electron/pull/47952))</span> - Fixed an issue on some older Windows versions where `setContentProtection` didn't work as expected. [#&#8203;47888](https://github.com/electron/electron/pull/47888) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/47887), [38](https://github.com/electron/electron/pull/47886))</span> - Fixed an issue where an invalid color passed as a string to `accentColor` would result in a white accent color. [#&#8203;47921](https://github.com/electron/electron/pull/47921) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/47800), [38](https://github.com/electron/electron/pull/47684))</span> - Fixed applying background material correctly when creating windows on Windows, restored animations, and also fixed the issue where dynamically setting the background material had no effect. [#&#8203;47957](https://github.com/electron/electron/pull/47957) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/47956), [38](https://github.com/electron/electron/pull/47814))</span> ### [`v36.7.3`](https://github.com/electron/electron/releases/tag/v36.7.3): electron v36.7.3 [Compare Source](https://github.com/electron/electron/compare/v36.7.1...v36.7.3) ### Release Notes for v36.7.3 #### Fixes - Fixed a bug where `app` extensions filters didn't allow for selecting app bundles in macOS file dialogs. [#&#8203;47840](https://github.com/electron/electron/pull/47840) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/47839), [38](https://github.com/electron/electron/pull/47841))</span> - Fixed an issue where `require('node:sqlite')` didn't work. [#&#8203;47755](https://github.com/electron/electron/pull/47755) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/47756), [38](https://github.com/electron/electron/pull/47757))</span> - Fixed an issue where certain operations performed in a window close callback could trigger a crash. [#&#8203;47811](https://github.com/electron/electron/pull/47811) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/47813), [38](https://github.com/electron/electron/pull/47812))</span> #### Other Changes - Updated Node.js to v22.17.1. [#&#8203;47772](https://github.com/electron/electron/pull/47772) ### [`v36.7.1`](https://github.com/electron/electron/releases/tag/v36.7.1): electron v36.7.1 [Compare Source](https://github.com/electron/electron/compare/v36.7.0...v36.7.1) ### Release Notes for v36.7.1 #### Fixes - Fixed a crash when calling `desktopCapturer.getSources` with an empty thumbnail size. [#&#8203;47651](https://github.com/electron/electron/pull/47651) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/47653), [38](https://github.com/electron/electron/pull/47652))</span> - Fixed an issue where child windows could crash if they were opened from a fullscreen parent and have `roundedCorners` set to `false`. [#&#8203;47683](https://github.com/electron/electron/pull/47683) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/47682), [38](https://github.com/electron/electron/pull/47681))</span> - Fixed an issue where printing PDFs with `webContents.print({ silent: true })` would fail. [#&#8203;47624](https://github.com/electron/electron/pull/47624) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/47397))</span> - Fixed an issue where the window required restart in order to recognize system accent color setting change. [#&#8203;47657](https://github.com/electron/electron/pull/47657) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/47656), [38](https://github.com/electron/electron/pull/47658))</span> ### [`v36.7.0`](https://github.com/electron/electron/releases/tag/v36.7.0): electron v36.7.0 [Compare Source](https://github.com/electron/electron/compare/v36.6.0...v36.7.0) ### Release Notes for v36.7.0 #### Other Changes - Updated Node.js to v22.17.0. [#&#8203;47554](https://github.com/electron/electron/pull/47554) ### [`v36.6.0`](https://github.com/electron/electron/releases/tag/v36.6.0): electron v36.6.0 [Compare Source](https://github.com/electron/electron/compare/v36.5.0...v36.6.0) ### Release Notes for v36.6.0 #### Features - Added support for `--no-experimental-global-navigator` flag. [#&#8203;47417](https://github.com/electron/electron/pull/47417) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/47416), [37](https://github.com/electron/electron/pull/47418))</span> - Added support for `HIDDevice.collections`. [#&#8203;47484](https://github.com/electron/electron/pull/47484) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/47483))</span> - Added support for customizing system accent color and highlighting of active window border. [#&#8203;47538](https://github.com/electron/electron/pull/47538) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/47539), [37](https://github.com/electron/electron/pull/47537))</span> #### Fixes - Fixed an issue where utility processes could leak file handles. [#&#8203;47541](https://github.com/electron/electron/pull/47541) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/47542), [37](https://github.com/electron/electron/pull/47543))</span> #### Other Changes - Updated Chromium to 136.0.7103.177. [#&#8203;47500](https://github.com/electron/electron/pull/47500) ### [`v36.5.0`](https://github.com/electron/electron/releases/tag/v36.5.0): electron v36.5.0 [Compare Source](https://github.com/electron/electron/compare/v36.4.0...v36.5.0) ### Release Notes for v36.5.0 #### Features - Added `before-mouse-event` to allow intercepting and preventing mouse events in WebContents. [#&#8203;47365](https://github.com/electron/electron/pull/47365) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/47364))</span> - Added the priority and priorityIncremental options to net.request(). [#&#8203;47320](https://github.com/electron/electron/pull/47320) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/47321))</span> - Exposed `win.isContentProtected()` to allow developers to check window protection status. [#&#8203;47311](https://github.com/electron/electron/pull/47311) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/47310))</span> #### Fixes - Fixed `addChildView()` crashes when adding a closed WebContentsView. [#&#8203;47340](https://github.com/electron/electron/pull/47340) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/47339), [37](https://github.com/electron/electron/pull/47338))</span> - Fixed a potential crash using `session.clearData` in some circumstances. [#&#8203;47411](https://github.com/electron/electron/pull/47411) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/47410), [37](https://github.com/electron/electron/pull/47412))</span> - Fixed an error when importing `electron` for the first time from an ESM module loaded by a CJS module in a packaged app. [#&#8203;47343](https://github.com/electron/electron/pull/47343) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/47344), [37](https://github.com/electron/electron/pull/47342))</span> - Fixed an issue where calling `Fetch.continueResponse` via debugger with `WebContentsView` could cause a crash. [#&#8203;47442](https://github.com/electron/electron/pull/47442) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/47443), [37](https://github.com/electron/electron/pull/47444))</span> - Partially fixes an issue with printing a PDF via `webContents.print()` where the callback would not be called. [#&#8203;47400](https://github.com/electron/electron/pull/47400) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/47399), [37](https://github.com/electron/electron/pull/47398))</span> #### Other Changes - Backported fix for [`4206375`](https://github.com/electron/electron/commit/420637585). [#&#8203;47368](https://github.com/electron/electron/pull/47368) - Updated Chromium to 136.0.7103.168. [#&#8203;47441](https://github.com/electron/electron/pull/47441) - Updated Node.js to v22.16.0. [#&#8203;47214](https://github.com/electron/electron/pull/47214) ### [`v36.4.0`](https://github.com/electron/electron/releases/tag/v36.4.0): electron v36.4.0 [Compare Source](https://github.com/electron/electron/compare/v36.3.2...v36.4.0) ### Release Notes for v36.4.0 #### Fixes - Fixed crash in `autoUpdater` on macOS when zip extraction failed. [#&#8203;47300](https://github.com/electron/electron/pull/47300) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/47301), [35](https://github.com/electron/electron/pull/47299), [37](https://github.com/electron/electron/pull/47302))</span> #### Other Changes - Security: backported fix for CVE-2025-5419. [#&#8203;47353](https://github.com/electron/electron/pull/47353) - Updated Chromium to 136.0.7103.149. [#&#8203;47295](https://github.com/electron/electron/pull/47295) #### Documentation - Documentation changes: [#&#8203;47298](https://github.com/electron/electron/pull/47298) ### [`v36.3.2`](https://github.com/electron/electron/releases/tag/v36.3.2): electron v36.3.2 [Compare Source](https://github.com/electron/electron/compare/v36.3.1...v36.3.2) ### Release Notes for v36.3.2 #### Fixes - Fixed an issue where protected transparent windows inappropriately showed a titlebar after visibility change. [#&#8203;47264](https://github.com/electron/electron/pull/47264) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/47265), [37](https://github.com/electron/electron/pull/47266))</span> - Fixed regression with directory selection in macOS dialogs. [#&#8203;47278](https://github.com/electron/electron/pull/47278) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/47276), [37](https://github.com/electron/electron/pull/47277))</span> #### Other Changes - Updated Chromium to 136.0.7103.115. [#&#8203;47215](https://github.com/electron/electron/pull/47215) ### [`v36.3.1`](https://github.com/electron/electron/releases/tag/v36.3.1): electron v36.3.1 [Compare Source](https://github.com/electron/electron/compare/v36.3.0...v36.3.1) ### Release Notes for v36.3.1 #### Other Changes - Backported fix for [`4172564`](https://github.com/electron/electron/commit/417256410). [#&#8203;47233](https://github.com/electron/electron/pull/47233) ### [`v36.3.0`](https://github.com/electron/electron/releases/tag/v36.3.0): electron v36.3.0 [Compare Source](https://github.com/electron/electron/compare/v36.2.1...v36.3.0) ### Release Notes for v36.3.0 #### Features - Added `innerWidth` and `innerHeight` options for window\.open. [#&#8203;47038](https://github.com/electron/electron/pull/47038) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/47045), [37](https://github.com/electron/electron/pull/47039))</span> - Added sublabel functionality for menus on macOS >= 14.4. [#&#8203;47040](https://github.com/electron/electron/pull/47040) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/47041), [37](https://github.com/electron/electron/pull/47042))</span> - Added support for `screen.dipToScreenPoint(point)` and `screen.screenToDipPoint(point)` on Linux X11. [#&#8203;47125](https://github.com/electron/electron/pull/47125) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/47124), [37](https://github.com/electron/electron/pull/46895))</span> - Added support for node option `--experimental-network-inspection`. [#&#8203;47030](https://github.com/electron/electron/pull/47030) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/47029), [37](https://github.com/electron/electron/pull/47031))</span> #### Fixes - Fixed an issue where the 'suspend' and 'resume' events could be emitted in duplicate. [#&#8203;47189](https://github.com/electron/electron/pull/47189) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/47188))</span> - Fixed opening package paths as directory when `treatPackageAsDirectory` is enabled on macOS. [#&#8203;47109](https://github.com/electron/electron/pull/47109) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/47110), [37](https://github.com/electron/electron/pull/47108))</span> #### Other Changes - Updated Chromium to 136.0.7103.113. [#&#8203;47093](https://github.com/electron/electron/pull/47093) - Updated Node.js to v22.15.1. [#&#8203;47103](https://github.com/electron/electron/pull/47103) ### [`v36.2.1`](https://github.com/electron/electron/releases/tag/v36.2.1): electron v36.2.1 [Compare Source](https://github.com/electron/electron/compare/v36.2.0...v36.2.1) ### Release Notes for v36.2.1 #### Fixes - Fixed a possible crash using the WebView tag and calling focus. [#&#8203;47037](https://github.com/electron/electron/pull/47037) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/47035), [37](https://github.com/electron/electron/pull/47036))</span> - Fixed an issue where the window flickers with either a light or dark color before loading the desired background color. [#&#8203;47053](https://github.com/electron/electron/pull/47053) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/47052), [37](https://github.com/electron/electron/pull/47051))</span> - Fixed crash in xdg portal version detection on startup. [#&#8203;47024](https://github.com/electron/electron/pull/47024) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/47025), [37](https://github.com/electron/electron/pull/47023))</span> - Restored previous window-hiding behavior of `win.setContentProtected()` on Windows. [#&#8203;47032](https://github.com/electron/electron/pull/47032) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/47034), [37](https://github.com/electron/electron/pull/47033))</span> #### Other Changes - Updated Chromium to 136.0.7103.93. [#&#8203;46974](https://github.com/electron/electron/pull/46974) ### [`v36.2.0`](https://github.com/electron/electron/releases/tag/v36.2.0): electron v36.2.0 [Compare Source](https://github.com/electron/electron/compare/v36.1.0...v36.2.0) ### Release Notes for v36.2.0 #### Fixes - Fixed a crash that could occur when opening some dialogs as windows are closing on macOS. [#&#8203;46951](https://github.com/electron/electron/pull/46951) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46953), [37](https://github.com/electron/electron/pull/46952))</span> - Fixed an issue where `webContents.print` did not work as expected when `mediaSize` was not passed. [#&#8203;46972](https://github.com/electron/electron/pull/46972) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/46971))</span> - Fixed an issue where filters wouldn't apply in the specific case only one was passed. [#&#8203;46945](https://github.com/electron/electron/pull/46945) <span style="font-size:small;">(Also in [37](https://github.com/electron/electron/pull/46946))</span> - Fixed log files written to the current working directory on Windows. [#&#8203;46912](https://github.com/electron/electron/pull/46912) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46911), [37](https://github.com/electron/electron/pull/46910))</span> - Fixed xdg portal version detection for file dialogs on linux. [#&#8203;46923](https://github.com/electron/electron/pull/46923) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46936), [37](https://github.com/electron/electron/pull/46922))</span> #### Other Changes - Updated Node.js to v22.15.0. [#&#8203;46741](https://github.com/electron/electron/pull/46741) ### [`v36.1.0`](https://github.com/electron/electron/releases/tag/v36.1.0): electron v36.1.0 [Compare Source](https://github.com/electron/electron/compare/v36.0.1...v36.1.0) ### Release Notes for v36.1.0 #### Fixes - Fixed an issue where transparent child windows on macOS were rendering a grey block as opposed to their correct contents. [#&#8203;46890](https://github.com/electron/electron/pull/46890) - Fixed display id validation errors on certain versions of windows 10. [#&#8203;46874](https://github.com/electron/electron/pull/46874) #### Other Changes - Added support for `--js-flags=--perf-prof` on macOS. [#&#8203;46876](https://github.com/electron/electron/pull/46876) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46877))</span> - Updated Chromium to 136.0.7103.49. [#&#8203;46870](https://github.com/electron/electron/pull/46870) ### [`v36.0.1`](https://github.com/electron/electron/releases/tag/v36.0.1): electron v36.0.1 [Compare Source](https://github.com/electron/electron/compare/v36.0.0...v36.0.1) ### Release Notes for v36.0.1 #### Fixes - Fixed the `visibleOnAllWorkspaces` property on Linux. [#&#8203;46850](https://github.com/electron/electron/pull/46850) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46861))</span> - Fixed the issue where maximizing and restoring the window does not respect the corner radius settings, and the corner radius is incorrect in fullscreen mode. [#&#8203;46848](https://github.com/electron/electron/pull/46848) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46847))</span> ### [`v36.0.0`](https://github.com/electron/electron/releases/tag/v36.0.0): electron v36.0.0 [Compare Source](https://github.com/electron/electron/compare/v35.7.5...v36.0.0) ### Release Notes for v36.0.0 #### Stack Upgrades - Chromium `136.0.7103.48` - [New in 136](https://developer.chrome.com/blog/new-in-chrome-136/) - [New in 135](https://developer.chrome.com/blog/new-in-chrome-135/) - Node `22.14.0` - [Node 22.14.0 blog post](https://nodejs.org/en/blog/release/v22.14.0/) - V8 `13.6` #### Breaking Changes - Deprecated `NativeImage.getBitmap()` and fixed incorrect documentation. [#&#8203;46736](https://github.com/electron/electron/pull/46736) - Fixed an issue where badly formatted switches could cause crashes in app.commandLine functions. [#&#8203;46446](https://github.com/electron/electron/pull/46446) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46631))</span> - Moved `Session` extension APIs to `Session.extensions`. [#&#8203;45597](https://github.com/electron/electron/pull/45597) - The deprecated `systemPreferences.isAeroGlassEnabled()` API has been removed. [#&#8203;45563](https://github.com/electron/electron/pull/45563) - Updated Chromium to 135.0.7015.0 refactor: remove status, isDefault properties from PrinterInfo in [5b65cc7](https://github.com/electron/electron/pull/45500/commits/5b65cc739859c8b377209b5949fb729a6f89892d) [#&#8203;45500](https://github.com/electron/electron/pull/45500) - Updated Chromium to 135.0.7047.0 docs: call out breaking change for GTK 4 default on GNOME in [02353aa](https://github.com/electron/electron/pull/46800/commits/02353aa9e403aff4e20e5bae495be84933b27f69) [#&#8203;45859](https://github.com/electron/electron/pull/45859) - Updated Chromium to 136.0.7054.0. Removed `ses.clearDataStorage({ quota: 'syncable' })` in [c180524](https://github.com/electron/electron/commit/c180524c6bfe29fdf6a9bda1a0d2bfeebdc96918) [#&#8203;45923](https://github.com/electron/electron/pull/45923) #### Features ##### Additions - Added `BrowserWindow.isSnapped()` to indicate whether a given window has been arranged via Snap. [#&#8203;46226](https://github.com/electron/electron/pull/46226) - Added `ServiceWorkerMain` class to interact with service workers in the main process. - Added `fromVersionID` on `ServiceWorkers` to get an instance of `ServiceWorkerMain`. - Added `running-status-changed` event on `ServiceWorkers` to indicate when a service worker's running status has changed. - Added `startWorkerForScope` on `ServiceWorkers` to start a worker that may have been previously stopped. [#&#8203;45232](https://github.com/electron/electron/pull/45232) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/45341))</span> - Added `WebContents.focusedFrame` to get the focused frame. - Fixed `WebContents.opener` to specify potential `null` type. [#&#8203;45667](https://github.com/electron/electron/pull/45667) - Added `contextBridge.executeInMainWorld` to safely execute code across world boundaries. [#&#8203;45229](https://github.com/electron/electron/pull/45229) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/45330))</span> - Added `ffmpeg.dll` to delay load configuration. [#&#8203;46173](https://github.com/electron/electron/pull/46173) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46174), [35](https://github.com/electron/electron/pull/46172))</span> - Added `nativeTheme.shouldUseDarkColorsForSystemIntegratedUI` to distinguish system and app theme. [#&#8203;46598](https://github.com/electron/electron/pull/46598) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46599))</span> - Added `view.getVisible()`. [#&#8203;44999](https://github.com/electron/electron/pull/44999) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/45410), [35](https://github.com/electron/electron/pull/45409))</span> - Added `webContents.navigationHistory.restore(index, entries)` API that allows restoration of navigation history. [#&#8203;45433](https://github.com/electron/electron/pull/45433) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/45584), [35](https://github.com/electron/electron/pull/45583))</span> - Added excludeUrls to webRequest filter and deprecated the use of empty arrays in `urls` property. [#&#8203;44692](https://github.com/electron/electron/pull/44692) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/45678))</span> - Added permission support for `document.executeCommand("paste")`. [#&#8203;45377](https://github.com/electron/electron/pull/45377) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/45473), [34](https://github.com/electron/electron/pull/45472), [35](https://github.com/electron/electron/pull/45471))</span> - Added support for Autofill, Writing Tools and Services macOS level menu items in context menus via the new `frame` option in `menu.popup`. [#&#8203;46350](https://github.com/electron/electron/pull/46350) - Added support for `roundedCorners` BrowserWindow constructor option on Windows. [#&#8203;45594](https://github.com/electron/electron/pull/45594) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/45739), [35](https://github.com/electron/electron/pull/45740))</span> - Added support for `system-context-menu` on Linux. [#&#8203;46399](https://github.com/electron/electron/pull/46399) - Added support for service worker preload scripts. [#&#8203;44411](https://github.com/electron/electron/pull/44411) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/45408))</span> - Redesigned preload script APIs by introducing `registerPreloadScript`, `unregisterPreloadScript`, `getPreloadScripts` on `Session`. - Deprecated `getPreloads` and `setPreloads` on `Session`. [#&#8203;45230](https://github.com/electron/electron/pull/45230) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/45329))</span> - Removed 240 FPS limit when use shared texture OSR. [#&#8203;45669](https://github.com/electron/electron/pull/45669) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/45781))</span> - Support Portal's globalShortcuts. Electron must be run with --enable-features=GlobalShortcutsPortal in order to have the feature working. [#&#8203;45171](https://github.com/electron/electron/pull/45171) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/45297))</span> ##### Improvements - Improved ASAR integrity checks on Windows. [#&#8203;46537](https://github.com/electron/electron/pull/46537) - Improved performance of desktopCapturer.getSources when not requesting thumbnails on macOS. [#&#8203;46251](https://github.com/electron/electron/pull/46251) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46250), [35](https://github.com/electron/electron/pull/46249))</span> ##### Removed/Deprecated - The `systemPreferences.isAeroGlassEnabled()` API has been deprecated and will be removed without replacement. [#&#8203;45434](https://github.com/electron/electron/pull/45434) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/45554))</span> #### Fixes - Fix: osr stutter fix backport for electron. [#&#8203;46709](https://github.com/electron/electron/pull/46709) - Fixed `getNativeWindowHandle()` crash that affected 36 betas on macOS. [#&#8203;46750](https://github.com/electron/electron/pull/46750) - Fixed a possible crash in `shell.readShortcutLink`. [#&#8203;46324](https://github.com/electron/electron/pull/46324) - Fixed an issue where the backgroundMaterial feature did not work in a frameless window on initial window creation. [#&#8203;46792](https://github.com/electron/electron/pull/46792) - Fixed an issue where context menu actions such as copy/paste did not correctly fire when a frame was not passed in. [#&#8203;46619](https://github.com/electron/electron/pull/46619) ##### Also in earlier versions... - Addressed two possible crashes in the File System Access API. [#&#8203;45233](https://github.com/electron/electron/pull/45233) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/45260), [35](https://github.com/electron/electron/pull/45261))</span> - Backported fix for a upstream bug that cause Offscreen Rendering to stutter. [#&#8203;45572](https://github.com/electron/electron/pull/45572) <span style="font-size:small;">(Also in [32](https://github.com/electron/electron/pull/45657), [33](https://github.com/electron/electron/pull/45658), [34](https://github.com/electron/electron/pull/45659), [35](https://github.com/electron/electron/pull/45660))</span> - Fix: don't copy 'package.json's out of ASAR file. [#&#8203;46477](https://github.com/electron/electron/pull/46477) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46478))</span> - Fixed ElectronAccessibilityUI bug. [#&#8203;46590](https://github.com/electron/electron/pull/46590) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/46589), [34](https://github.com/electron/electron/pull/46588), [35](https://github.com/electron/electron/pull/46591))</span> - Fixed Minimize menu button to follow set window minimizability on Windows. [#&#8203;46714](https://github.com/electron/electron/pull/46714) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46716), [35](https://github.com/electron/electron/pull/46715))</span> - Fixed NODE_OPTIONS parsing for child processes on macOS. [#&#8203;46243](https://github.com/electron/electron/pull/46243) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46242), [35](https://github.com/electron/electron/pull/46244))</span> - Fixed WebFrameMain crash related to accessing speculative frames that have been destroyed. [#&#8203;45609](https://github.com/electron/electron/pull/45609) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/45688), [34](https://github.com/electron/electron/pull/45687), [35](https://github.com/electron/electron/pull/45686))</span> - Fixed `electron.shell.openExternal` and `electron.shell.openPath` to honor user-defined system defaults on Linux. [#&#8203;46788](https://github.com/electron/electron/pull/46788) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/46787), [34](https://github.com/electron/electron/pull/46791), [35](https://github.com/electron/electron/pull/46789))</span> - Fixed `v8.setHeapSnapshotNearHeapLimit` api in main and utility process, along with support for `--diagnostic-dir` Node.js cli flag to specify the directory to save the heap snapshots. [#&#8203;45606](https://github.com/electron/electron/pull/45606) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/45645), [34](https://github.com/electron/electron/pull/45644), [35](https://github.com/electron/electron/pull/45632))</span> - Fixed `webContents.print()` after switch to OOP printing on macOS and Linux. [#&#8203;45266](https://github.com/electron/electron/pull/45266) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/45285))</span> - Fixed a bug that could cause some maximized windows on Linux to report an incorrect window state. [#&#8203;46463](https://github.com/electron/electron/pull/46463) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46462), [35](https://github.com/electron/electron/pull/46464))</span> - Fixed a bug where the default path didn't always correctly fill the Name field in KDialogs on Linux. [#&#8203;45402](https://github.com/electron/electron/pull/45402) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/45419), [35](https://github.com/electron/electron/pull/45420))</span> - Fixed a crash seen on Linux when calling `webContents.print()`. [#&#8203;46146](https://github.com/electron/electron/pull/46146) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46147))</span> - Fixed a crash that could occur in OSR on window close. [#&#8203;45573](https://github.com/electron/electron/pull/45573) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/45629), [35](https://github.com/electron/electron/pull/45630))</span> - Fixed a crash that could occur when dragging and dropping files into the browser. [#&#8203;46312](https://github.com/electron/electron/pull/46312) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46311))</span> - Fixed a crash when calling `shell.readShortcutLink` caused by `PKEY_AppUserModel_ToastActivatorCLSID` sometimes being represented by a string uuid. [#&#8203;45195](https://github.com/electron/electron/pull/45195) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/45349), [34](https://github.com/electron/electron/pull/45350), [35](https://github.com/electron/electron/pull/45348))</span> - Fixed a possible BrowserWindow crash caused by closing a parent window with focus or blur events. [#&#8203;46580](https://github.com/electron/electron/pull/46580) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46582), [35](https://github.com/electron/electron/pull/46581))</span> - Fixed a possible crash using Node.js on some arm32 devices. [#&#8203;46460](https://github.com/electron/electron/pull/46460) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46461))</span> - Fixed a possible crash when using `navigator.bluetooth.requestDevice` and the `select-bluetooth-device` event. [#&#8203;46782](https://github.com/electron/electron/pull/46782) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46783), [35](https://github.com/electron/electron/pull/46784))</span> - Fixed a potential crash in `chrome.tabs.update()`. [#&#8203;45276](https://github.com/electron/electron/pull/45276) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/45303), [34](https://github.com/electron/electron/pull/45304), [35](https://github.com/electron/electron/pull/45302))</span> - Fixed a potential crash in `parentPort`. [#&#8203;46496](https://github.com/electron/electron/pull/46496) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46494), [35](https://github.com/electron/electron/pull/46495))</span> - Fixed a potential crash in `utilityProcess.postMessage` when calling with an invalid transferable. [#&#8203;46667](https://github.com/electron/electron/pull/46667) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46666))</span> - Fixed a potential crash when calling legacy `getUserMedia` with an invalid `chromeMediaSourceId`. [#&#8203;45733](https://github.com/electron/electron/pull/45733) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/45756), [35](https://github.com/electron/electron/pull/45755))</span> - Fixed a potential crash when closing a window with child windows. [#&#8203;46773](https://github.com/electron/electron/pull/46773) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46775), [35](https://github.com/electron/electron/pull/46774))</span> - Fixed a potential issues permissions in the Pointer Lock API after focus loss and regain. [#&#8203;45574](https://github.com/electron/electron/pull/45574) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/45627), [35](https://github.com/electron/electron/pull/45628))</span> - Fixed an error when calling `window.emit('close')` after toggling fullscreen mode. [#&#8203;46621](https://github.com/electron/electron/pull/46621) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46620))</span> - Fixed an inverted conditional in the above PR that caused broken window borders in some circumstances on Wayland. [#&#8203;46642](https://github.com/electron/electron/pull/46642) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/46645), [34](https://github.com/electron/electron/pull/46643), [35](https://github.com/electron/electron/pull/46644))</span> - Fixed an issue where Electron could fail to load on some older Linux distributions. [#&#8203;45984](https://github.com/electron/electron/pull/45984) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/45982), [35](https://github.com/electron/electron/pull/45983))</span> - Fixed an issue where Node.js OOM errors terminate the process directly without raising an OOM exception. [#&#8203;45912](https://github.com/electron/electron/pull/45912) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/45911))</span> - Fixed an issue where RTL tooltips could be incorrect when using WCO on Windows. [#&#8203;45405](https://github.com/electron/electron/pull/45405) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/45424), [34](https://github.com/electron/electron/pull/45426), [35](https://github.com/electron/electron/pull/45425))</span> - Fixed an issue where Web Workers crashed on unhandled rejections. [#&#8203;46021](https://github.com/electron/electron/pull/46021) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46019), [35](https://github.com/electron/electron/pull/46020))</span> - Fixed an issue where Windows Control Overlay didn't work with some window configurations. [#&#8203;45422](https://github.com/electron/electron/pull/45422) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/45476), [34](https://github.com/electron/electron/pull/45478), [35](https://github.com/electron/electron/pull/45477))</span> - Fixed an issue where `context-menu` event weren't emitted as expected on Windows in draggable regions. [#&#8203;46032](https://github.com/electron/electron/pull/46032) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46328), [35](https://github.com/electron/electron/pull/46334))</span> - Fixed an issue where `contextmenu` events wouldn't be correctly dispatched in draggable regions on Linux. [#&#8203;45813](https://github.com/electron/electron/pull/45813) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/45840), [35](https://github.com/electron/electron/pull/45841))</span> - Fixed an issue where `navigationHistory.restore()` failed to restore the `userAgent` if it was overridden. [#&#8203;46299](https://github.com/electron/electron/pull/46299) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46298), [35](https://github.com/electron/electron/pull/46300))</span> - Fixed an issue where `setContentProtection(true)` was reverted when a given window was hidden. [#&#8203;45868](https://github.com/electron/electron/pull/45868) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/45890), [35](https://github.com/electron/electron/pull/45889))</span> - Fixed an issue where `system-context-menu` incorrectly fired for all regions in frameless windows. [#&#8203;46002](https://github.com/electron/electron/pull/46002) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/46025), [34](https://github.com/electron/electron/pull/46175), [35](https://github.com/electron/electron/pull/46178))</span> - Fixed an issue where `webContents.printToPDF()` didn't work as expected with cross-process subframes. [#&#8203;46259](https://github.com/electron/electron/pull/46259) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46258), [35](https://github.com/electron/electron/pull/46257))</span> - Fixed an issue where calling `UtilityProcess.fork` prior to the app ready event would cause a crash. [#&#8203;46404](https://github.com/electron/electron/pull/46404) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46405), [35](https://github.com/electron/electron/pull/46403))</span> - Fixed an issue where drag-dropping two directories would cause `getAsFileSystemHandle` to never resolve. [#&#8203;45234](https://github.com/electron/electron/pull/45234) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/45257), [34](https://github.com/electron/electron/pull/45258), [35](https://github.com/electron/electron/pull/45256))</span> - Fixed an issue where packages could be mistakenly not found in asar. [#&#8203;46023](https://github.com/electron/electron/pull/46023) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46022))</span> - Fixed an issue where print scaling could be too small during silent print. [#&#8203;45218](https://github.com/electron/electron/pull/45218) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/45283), [35](https://github.com/electron/electron/pull/45262))</span> - Fixed an issue where printing from the renderer process crashes the main process when no printers are installed in the system or there's not a default printer. [#&#8203;46617](https://github.com/electron/electron/pull/46617) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46618), [35](https://github.com/electron/electron/pull/46616))</span> - Fixed an issue where selection of multiple directories with the `dialog` module didn't work on Linux. [#&#8203;45373](https://github.com/electron/electron/pull/45373) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/45395), [35](https://github.com/electron/electron/pull/45394))</span> - Fixed an issue where snapped windows in Windows may sometimes be improperly restored. [#&#8203;46041](https://github.com/electron/electron/pull/46041) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/46038), [34](https://github.com/electron/electron/pull/46039), [35](https://github.com/electron/electron/pull/46040))</span> - Fixed an issue where the renderer process crashed when loading `about:blank` in subframes. [#&#8203;45694](https://github.com/electron/electron/pull/45694) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/45758))</span> - Fixed an issue where the resizing border didn't work as expected on Wayland windows. [#&#8203;46225](https://github.com/electron/electron/pull/46225) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/46222), [34](https://github.com/electron/electron/pull/46223), [35](https://github.com/electron/electron/pull/46224))</span> - Fixed an issue where windows on Windows with `backgroundMaterial` lost effect on maximization. [#&#8203;45456](https://github.com/electron/electron/pull/45456) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/45526), [35](https://github.com/electron/electron/pull/45525))</span> - Fixed an issue with `--inspect-brk` failing in packaged apps. [#&#8203;46584](https://github.com/electron/electron/pull/46584) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46583))</span> - Fixed an issue with the `assert` Node.js module in the renderer process. [#&#8203;46561](https://github.com/electron/electron/pull/46561) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46632))</span> - Fixed an issue with token formatting for tokens received after calling `pushNotifications.registerForAPNSNotifications()`. [#&#8203;46149](https://github.com/electron/electron/pull/46149) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46150), [35](https://github.com/electron/electron/pull/46148))</span> - Fixed broken OOP `window.print()` on macOS/Linux. [#&#8203;45214](https://github.com/electron/electron/pull/45214) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/45259))</span> - Fixed build error with `enable_electron_extensions=false`. [#&#8203;46842](https://github.com/electron/electron/pull/46842) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46841), [35](https://github.com/electron/electron/pull/46840))</span> - Fixed build failure when building with printing disabled. [#&#8203;46284](https://github.com/electron/electron/pull/46284) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46286), [35](https://github.com/electron/electron/pull/46285))</span> - Fixed case where file dialog filters would get mixed up, if a `*` filter was included. [#&#8203;46722](https://github.com/electron/electron/pull/46722) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46720), [35](https://github.com/electron/electron/pull/46721))</span> - Fixed crash in gin::wrappable::secondweakcallback. [#&#8203;45368](https://github.com/electron/electron/pull/45368) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/45379), [34](https://github.com/electron/electron/pull/45376), [35](https://github.com/electron/electron/pull/45378))</span> - Fixed crash on Linux when PipeWire screenshare source selection is cancelled. [#&#8203;46235](https://github.com/electron/electron/pull/46235) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46234))</span> - Fixed crash on application exit with pending `app.getGPUInfo` promise. [#&#8203;46471](https://github.com/electron/electron/pull/46471) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46472), [35](https://github.com/electron/electron/pull/46470))</span> - Fixed crash on reconversion with google IME and editcontext on macOS. [#&#8203;46699](https://github.com/electron/electron/pull/46699) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46701), [35](https://github.com/electron/electron/pull/46700))</span> - Fixed crash on startup with asan build on macOS. [#&#8203;45541](https://github.com/electron/electron/pull/45541) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/45568), [34](https://github.com/electron/electron/pull/45567), [35](https://github.com/electron/electron/pull/45569))</span> - Fixed crash when accessing WebFrameMain frames and name attributes on destroyed frames. [#&#8203;45487](https://github.com/electron/electron/pull/45487) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/45509), [34](https://github.com/electron/electron/pull/45510), [35](https://github.com/electron/electron/pull/45508))</span> - Fixed crash when renderer process crashes while webview is reloading. [#&#8203;46768](https://github.com/electron/electron/pull/46768) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46770), [35](https://github.com/electron/electron/pull/46769))</span> - Fixed crash with out-of-bounds string read when parsing NODE_OPTIONS. [#&#8203;46247](https://github.com/electron/electron/pull/46247) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46246), [35](https://github.com/electron/electron/pull/46248))</span> - Fixed displaying content on macOS when using `BaseWindow.showInactive`. [#&#8203;45427](https://github.com/electron/electron/pull/45427) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/45502))</span> - Fixed documentation to mark `Window.autoHideMenuBar` as supported on Linux and Windows. [#&#8203;46830](https://github.com/electron/electron/pull/46830) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46831), [35](https://github.com/electron/electron/pull/46829))</span> - Fixed drag and drop icons not showing on Windows. [#&#8203;45767](https://github.com/electron/electron/pull/45767) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/45778), [35](https://github.com/electron/electron/pull/45777))</span> - Fixed file preview window reappearing when calling `win.closeFilePreview` twice on macOS. [#&#8203;45319](https://github.com/electron/electron/pull/45319) <span style="font-size:small;">(Also in [32](https://github.com/electron/electron/pull/45661), [33](https://github.com/electron/electron/pull/45663), [34](https://github.com/electron/electron/pull/45662), [35](https://github.com/electron/electron/pull/45664))</span> - Fixed flickering and ghosting artifacts in transparent windows on macOS. [#&#8203;46393](https://github.com/electron/electron/pull/46393) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46392))</span> - Fixed incorrect titlebar in file save dialogs. [#&#8203;46077](https://github.com/electron/electron/pull/46077) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/46075), [34](https://github.com/electron/electron/pull/46076), [35](https://github.com/electron/electron/pull/46074))</span> - Fixed invalid memory access in pdf viewer which lead to random crashes. [#&#8203;45389](https://github.com/electron/electron/pull/45389) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/46003), [34](https://github.com/electron/electron/pull/45880), [35](https://github.com/electron/electron/pull/45879))</span> - Fixed memory leak in AutofillPopupView. [#&#8203;46412](https://github.com/electron/electron/pull/46412) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46411), [35](https://github.com/electron/electron/pull/46413))</span> - Fixed several paint and white flash issues on macOS. [#&#8203;46629](https://github.com/electron/electron/pull/46629) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46628))</span> - Fixed spellcheck suggestions not correctly populating on Windows. [#&#8203;45712](https://github.com/electron/electron/pull/45712) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/45763))</span> - Fixed the border style of windows with vibrancy on macOS. [#&#8203;46771](https://github.com/electron/electron/pull/46771) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46772))</span> - Fixed the issue where maximizing and restoring the window does not respect the corner radius settings, and the corner radius is incorrect in fullscreen mode. [#&#8203;46848](https://github.com/electron/electron/pull/46848) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46847))</span> - Fixed the issue where rounded corners disappear momentarily when closing on Windows 11. [#&#8203;46407](https://github.com/electron/electron/pull/46407) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46408))</span> - Fixed the path for a needed library used for mksnapshot. [#&#8203;45488](https://github.com/electron/electron/pull/45488) <span style="font-size:small;">(Also in [32](https://github.com/electron/electron/pull/45545), [33](https://github.com/electron/electron/pull/45547), [34](https://github.com/electron/electron/pull/45544), [35](https://github.com/electron/electron/pull/45546))</span> - Fixed title changes to not occur while navigating within a page. [#&#8203;46036](https://github.com/electron/electron/pull/46036) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46034), [35](https://github.com/electron/electron/pull/46035))</span> - Fixed web worker scripts failing to load for chrome extensions. [#&#8203;45698](https://github.com/electron/electron/pull/45698) <span style="font-size:small;">(Also in [32](https://github.com/electron/electron/pull/45709), [33](https://github.com/electron/electron/pull/45711), [34](https://github.com/electron/electron/pull/45710), [35](https://github.com/electron/electron/pull/45708))</span> - Improved webContents loading time when resolving fonts for uncommon scripts. [#&#8203;45919](https://github.com/electron/electron/pull/45919) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/45917), [35](https://github.com/electron/electron/pull/45918))</span> - Microtasks are no longer (incorrectly) run by serializing values, including when sending IPC. [#&#8203;46682](https://github.com/electron/electron/pull/46682) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46683), [35](https://github.com/electron/electron/pull/46684))</span> - Optimized `webFrame.getZoomLevel` and `webFrame.getZoomFactor` APIs. [#&#8203;45499](https://github.com/electron/electron/pull/45499) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/45557))</span> - Re-enables the MacWebContentsOcclusion feature flag for Mac, with plans to make it enabled by default in a future release. [#&#8203;45775](https://github.com/electron/electron/pull/45775) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/45801))</span> - Reverts a change that greyed out disabled menu items on macOS ([#&#8203;46307](https://github.com/electron/electron/pull/46307)). [#&#8203;46523](https://github.com/electron/electron/pull/46523) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46522), [35](https://github.com/electron/electron/pull/46521))</span> - When a menu item on macOS is disabled (`enabled = false`), it is now greyed out. [#&#8203;46342](https://github.com/electron/electron/pull/46342) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46340), [35](https://github.com/electron/electron/pull/46341))</span> #### Other Changes - Added `NSPrefersDisplaySafeAreaCompatibilityMode` = `false` to Info.plist to remove "Scale to fit below built-in camera." from app options. [#&#8203;45318](https://github.com/electron/electron/pull/45318) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/45470), [34](https://github.com/electron/electron/pull/45469), [35](https://github.com/electron/electron/pull/45357))</span> - Added more helpful logging if Node.js fails to initialize. [#&#8203;45286](https://github.com/electron/electron/pull/45286) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/45317))</span> - Backported fix for [`3872580`](https://github.com/electron/electron/commit/387258077),383070811. [#&#8203;45495](https://github.com/electron/electron/pull/45495) - Backported fix for [`4010597`](https://github.com/electron/electron/commit/401059730). [#&#8203;45937](https://github.com/electron/electron/pull/45937) - Backported fix for [`4010597`](https://github.com/electron/electron/commit/401059730). [#&#8203;45942](https://github.com/electron/electron/pull/45942) #### Documentation - Documentation change - [#&#8203;45392](https://github.com/electron/electron/pull/45392) - [#&#8203;45670](https://github.com/electron/electron/pull/45670) - [#&#8203;46103](https://github.com/electron/electron/pull/46103) - [#&#8203;46208](https://github.com/electron/electron/pull/46208) - [#&#8203;46366](https://github.com/electron/electron/pull/46366) #### Notices ##### End of Support for 33.x.y Electron 33.x.y has reached end-of-support as per the project's [support policy](https://www.electronjs.org/docs/latest/tutorial/electron-timelines#version-support-policy). Developers and applications are encouraged to upgrade to a newer version of Electron. ### [`v35.7.5`](https://github.com/electron/electron/releases/tag/v35.7.5): electron v35.7.5 [Compare Source](https://github.com/electron/electron/compare/v35.7.4...v35.7.5) ### Release Notes for v35.7.5 > \[!WARNING] > Electron 35.x.y has reached end-of-support as per the project's [support policy](https://www.electronjs.org/docs/latest/tutorial/electron-timelines#version-support-policy). Developers and applications are encouraged to upgrade to a newer version of Electron. #### Fixes - Fixed an issue where `shell.openPath` was not non-blocking as expected. [#&#8203;48079](https://github.com/electron/electron/pull/48079) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/48088), [37](https://github.com/electron/electron/pull/48088), [38](https://github.com/electron/electron/pull/48088))</span> ### [`v35.7.4`](https://github.com/electron/electron/releases/tag/v35.7.4): electron v35.7.4 [Compare Source](https://github.com/electron/electron/compare/v35.7.2...v35.7.4) ### Release Notes for v35.7.4 - Fix ffmpeg generation on Windows non-x64 ### [`v35.7.2`](https://github.com/electron/electron/releases/tag/v35.7.2): electron v35.7.2 [Compare Source](https://github.com/electron/electron/compare/v35.7.0...v35.7.2) ### Release Notes for v35.7.2 #### Fixes - Fixed an issue where printing PDFs with `webContents.print({ silent: true })` would fail. [#&#8203;47645](https://github.com/electron/electron/pull/47645) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/47624), [37](https://github.com/electron/electron/pull/47397))</span> ### [`v35.7.0`](https://github.com/electron/electron/releases/tag/v35.7.0): electron v35.7.0 [Compare Source](https://github.com/electron/electron/compare/v35.6.0...v35.7.0) ### Release Notes for v35.7.0 #### Other Changes - Updated Node.js to v22.16.0. [#&#8203;47213](https://github.com/electron/electron/pull/47213) ### [`v35.6.0`](https://github.com/electron/electron/releases/tag/v35.6.0): electron v35.6.0 [Compare Source](https://github.com/electron/electron/compare/v35.5.1...v35.6.0) ### Release Notes for v35.6.0 #### Features - Added support for `--no-experimental-global-navigator` flag. [#&#8203;47416](https://github.com/electron/electron/pull/47416) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/47417), [37](https://github.com/electron/electron/pull/47418))</span> - Added support for customizing system accent color and highlighting of active window border. [#&#8203;47539](https://github.com/electron/electron/pull/47539) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/47538), [37](https://github.com/electron/electron/pull/47537))</span> #### Fixes - Fixed a potential crash using `session.clearData` in some circumstances. [#&#8203;47410](https://github.com/electron/electron/pull/47410) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/47411), [37](https://github.com/electron/electron/pull/47412))</span> - Fixed an error when importing `electron` for the first time from an ESM module loaded by a CJS module in a packaged app. [#&#8203;47344](https://github.com/electron/electron/pull/47344) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/47343), [37](https://github.com/electron/electron/pull/47342))</span> - Fixed an issue where calling `Fetch.continueResponse` via debugger with `WebContentsView` could cause a crash. [#&#8203;47443](https://github.com/electron/electron/pull/47443) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/47442), [37](https://github.com/electron/electron/pull/47444))</span> - Fixed an issue where utility processes could leak file handles. [#&#8203;47542](https://github.com/electron/electron/pull/47542) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/47541), [37](https://github.com/electron/electron/pull/47543))</span> - Partially fixes an issue with printing a PDF via `webContents.print()` where the callback would not be called. [#&#8203;47399](https://github.com/electron/electron/pull/47399) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/47400), [37](https://github.com/electron/electron/pull/47398))</span> #### Other Changes - Backported fix for [`4206375`](https://github.com/electron/electron/commit/420637585). [#&#8203;47369](https://github.com/electron/electron/pull/47369) ### [`v35.5.1`](https://github.com/electron/electron/releases/tag/v35.5.1): electron v35.5.1 [Compare Source](https://github.com/electron/electron/compare/v35.5.0...v35.5.1) ### Release Notes for v35.5.1 #### Fixes - Fixed `addChildView()` crashes when adding a closed WebContentsView. [#&#8203;47339](https://github.com/electron/electron/pull/47339) - Fixed crash in `autoUpdater` on macOS when zip extraction failed. [#&#8203;47299](https://github.com/electron/electron/pull/47299) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/47301), [36](https://github.com/electron/electron/pull/47300), [37](https://github.com/electron/electron/pull/47302))</span> - Fixed crash when pausing in loops due to missing context when desugared. [#&#8203;47286](https://github.com/electron/electron/pull/47286) #### Other Changes - Security: backported fix for CVE-2025-5419. [#&#8203;47354](https://github.com/electron/electron/pull/47354) ### [`v35.5.0`](https://github.com/electron/electron/releases/tag/v35.5.0): electron v35.5.0 [Compare Source](https://github.com/electron/electron/compare/v35.4.0...v35.5.0) ### Release Notes for v35.5.0 #### Features - Added innerWidth and innerHeight options for window\.open. [#&#8203;47045](https://github.com/electron/electron/pull/47045) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/47038), [37](https://github.com/electron/electron/pull/47039))</span> - Added sublabel functionality for menus on macOS >= 14.4. [#&#8203;47041](https://github.com/electron/electron/pull/47041) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/47040), [37](https://github.com/electron/electron/pull/47042))</span> - Added support for `screen.dipToScreenPoint(point)` and `screen.screenToDipPoint(point)` on Linux X11. [#&#8203;47124](https://github.com/electron/electron/pull/47124) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/47125), [37](https://github.com/electron/electron/pull/46895))</span> - Added support for node option `--experimental-network-inspection`. [#&#8203;47029](https://github.com/electron/electron/pull/47029) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/47030), [37](https://github.com/electron/electron/pull/47031))</span> #### Fixes - Fixed a possible crash in `shell.readShortcutLink`. [#&#8203;47226](https://github.com/electron/electron/pull/47226) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/46324))</span> - Fixed an issue where protected transparent windows inappropriately showed a titlebar after visibility change. [#&#8203;47265](https://github.com/electron/electron/pull/47265) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/47264), [37](https://github.com/electron/electron/pull/47266))</span> - Fixed an issue where the 'suspend' and 'resume' events could be emitted in duplicate. [#&#8203;47190](https://github.com/electron/electron/pull/47190) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/47189), [37](https://github.com/electron/electron/pull/47188))</span> - Fixed an issue where the `backgroundMaterial` feature did not work in a frameless window on initial window creation. [#&#8203;47236](https://github.com/electron/electron/pull/47236) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/46792))</span> - Fixed opening package paths as directory when `treatPackageAsDirectory` is enabled on macOS. [#&#8203;47110](https://github.com/electron/electron/pull/47110) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/47109), [37](https://github.com/electron/electron/pull/47108))</span> - Fixed regression with directory selection in macOS dialogs. [#&#8203;47276](https://github.com/electron/electron/pull/47276) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/47278), [37](https://github.com/electron/electron/pull/47277))</span> #### Other Changes - Security: backported fix for [`4033643`](https://github.com/electron/electron/commit/403364367). [#&#8203;47069](https://github.com/electron/electron/pull/47069) - Security: backported fix for CVE-2025-4609. - Security: backported fix for CVE-2025-4664. [#&#8203;47175](https://github.com/electron/electron/pull/47175) - Updated Node.js to v22.15.1. [#&#8203;47102](https://github.com/electron/electron/pull/47102) ### [`v35.4.0`](https://github.com/electron/electron/releases/tag/v35.4.0): electron v35.4.0 [Compare Source](https://github.com/electron/electron/compare/v35.3.0...v35.4.0) ### Release Notes for v35.4.0 #### Features - Added support for `system-context-menu` on Linux. [#&#8203;46977](https://github.com/electron/electron/pull/46977) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/46399))</span> #### Fixes - Fixed a possible crash using the WebView tag and calling focus. [#&#8203;47035](https://github.com/electron/electron/pull/47035) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/47037), [37](https://github.com/electron/electron/pull/47036))</span> - Fixed an issue where the window flickers with either a light or dark color before loading the desired background color. [#&#8203;47052](https://github.com/electron/electron/pull/47052) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/47053), [37](https://github.com/electron/electron/pull/47051))</span> - Fixed crash in xdg portal version detection on startup. [#&#8203;47025](https://github.com/electron/electron/pull/47025) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/47024), [37](https://github.com/electron/electron/pull/47023))</span> - Restored previous window-hiding behavior of `win.setContentProtected()` on Windows. [#&#8203;47034](https://github.com/electron/electron/pull/47034) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/47032), [37](https://github.com/electron/electron/pull/47033))</span> #### Other Changes - Updated Node.js to v22.15.0. [#&#8203;46740](https://github.com/electron/electron/pull/46740) ### [`v35.3.0`](https://github.com/electron/electron/releases/tag/v35.3.0): electron v35.3.0 [Compare Source](https://github.com/electron/electron/compare/v35.2.2...v35.3.0) ### Release Notes for v35.3.0 #### Fixes - Fixed a crash that could occur when opening some dialogs as windows are closing on macOS. [#&#8203;46953](https://github.com/electron/electron/pull/46953) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/46951), [37](https://github.com/electron/electron/pull/46952))</span> - Fixed an issue where transparent child windows on macOS were rendering a grey block as opposed to their correct contents. [#&#8203;46889](https://github.com/electron/electron/pull/46889) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/46890), [37](https://github.com/electron/electron/pull/46891))</span> - Fixed display id validation errors on certain versions of windows 10. [#&#8203;46873](https://github.com/electron/electron/pull/46873) - Fixed log files written to the current working directory on Windows. [#&#8203;46911](https://github.com/electron/electron/pull/46911) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/46912), [37](https://github.com/electron/electron/pull/46910))</span> - Fixed xdg portal version detection for file dialogs on linux. [#&#8203;46936](https://github.com/electron/electron/pull/46936) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/46923), [37](https://github.com/electron/electron/pull/46922))</span> #### Other Changes - Added support for `--js-flags=--perf-prof` on macOS. [#&#8203;46877](https://github.com/electron/electron/pull/46877) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/46876))</span> ### [`v35.2.2`](https://github.com/electron/electron/releases/tag/v35.2.2): electron v35.2.2 [Compare Source](https://github.com/electron/electron/compare/v35.2.1...v35.2.2) ### Release Notes for v35.2.2 #### Fixes - Fixed `electron.shell.openExternal` and `electron.shell.openPath` to honor user-defined system defaults on Linux. [#&#8203;46789](https://github.com/electron/electron/pull/46789) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/46787), [34](https://github.com/electron/electron/pull/46791), [36](https://github.com/electron/electron/pull/46788))</span> - Fixed a possible crash when using `navigator.bluetooth.requestDevice` and the `select-bluetooth-device` event. [#&#8203;46784](https://github.com/electron/electron/pull/46784) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46783), [36](https://github.com/electron/electron/pull/46782))</span> - Fixed a potential crash when closing a window with child windows. [#&#8203;46774](https://github.com/electron/electron/pull/46774) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46775), [36](https://github.com/electron/electron/pull/46773))</span> - Fixed build error with `enable_electron_extensions=false`. [#&#8203;46840](https://github.com/electron/electron/pull/46840) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46841), [36](https://github.com/electron/electron/pull/46842))</span> - Fixed crash when renderer process crashes while webview is reloading. [#&#8203;46769](https://github.com/electron/electron/pull/46769) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46770), [36](https://github.com/electron/electron/pull/46768))</span> - Fixed documentation to mark `Window.autoHideMenuBar` as supported on Linux and Windows. [#&#8203;46829](https://github.com/electron/electron/pull/46829) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46831), [36](https://github.com/electron/electron/pull/46830))</span> - Fixed the `visibleOnAllWorkspaces` property on Linux. [#&#8203;46861](https://github.com/electron/electron/pull/46861) - Fixed the border style of windows with vibrancy on macOS. [#&#8203;46772](https://github.com/electron/electron/pull/46772) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/46771))</span> - Fixed the issue where maximizing and restoring the window does not respect the corner radius settings, and the corner radius is incorrect in fullscreen mode. [#&#8203;46847](https://github.com/electron/electron/pull/46847) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/46848))</span> ### [`v35.2.1`](https://github.com/electron/electron/releases/tag/v35.2.1): electron v35.2.1 [Compare Source](https://github.com/electron/electron/compare/v35.2.0...v35.2.1) ### Release Notes for v35.2.1 #### Fixes - Fixed Minimize menu button to follow set window minimizability on Windows. [#&#8203;46715](https://github.com/electron/electron/pull/46715) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46716), [36](https://github.com/electron/electron/pull/46714))</span> - Fixed a potential crash in `utilityProcess.postMessage` when calling with an invalid transferable. [#&#8203;46666](https://github.com/electron/electron/pull/46666) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/46667))</span> - Fixed case where file dialog filters would get mixed up, if a `*` filter was included. [#&#8203;46721](https://github.com/electron/electron/pull/46721) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46720), [36](https://github.com/electron/electron/pull/46722))</span> - Fixed crash on reconversion with google IME and editcontext on macOS. [#&#8203;46700](https://github.com/electron/electron/pull/46700) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46701), [36](https://github.com/electron/electron/pull/46699))</span> - Microtasks are no longer (incorrectly) run by serializing values, including when sending IPC. [#&#8203;46684](https://github.com/electron/electron/pull/46684) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46683), [36](https://github.com/electron/electron/pull/46682))</span> ### [`v35.2.0`](https://github.com/electron/electron/releases/tag/v35.2.0): electron v35.2.0 [Compare Source](https://github.com/electron/electron/compare/v35.1.5...v35.2.0) ### Release Notes for v35.2.0 #### Features - Added `nativeTheme.shouldUseDarkColorsForSystemIntegratedUI` to distinguish system and app theme. [#&#8203;46599](https://github.com/electron/electron/pull/46599) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/46598))</span> #### Fixes - Fixed ElectronAccessibilityUI bug. [#&#8203;46591](https://github.com/electron/electron/pull/46591) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/46589), [34](https://github.com/electron/electron/pull/46588), [36](https://github.com/electron/electron/pull/46590))</span> - Fixed a possible BrowserWindow crash caused by closing a parent window with focus or blur events. [#&#8203;46581](https://github.com/electron/electron/pull/46581) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46582), [36](https://github.com/electron/electron/pull/46580))</span> - Fixed an error when calling `window.emit('close')` after toggling fullscreen mode. [#&#8203;46620](https://github.com/electron/electron/pull/46620) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/46621))</span> - Fixed an inverted conditional in the above PR that caused broken window borders in some circumstances on Wayland. [#&#8203;46644](https://github.com/electron/electron/pull/46644) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/46645), [34](https://github.com/electron/electron/pull/46643), [36](https://github.com/electron/electron/pull/46642))</span> - Fixed an issue where badly formatted switches could cause crashes in `app.commandLine` functions. [#&#8203;46631](https://github.com/electron/electron/pull/46631) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/46446))</span> - Fixed an issue with `--inspect-brk` failing in packaged apps. [#&#8203;46583](https://github.com/electron/electron/pull/46583) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/46584))</span> - Fixed an issue with the `assert` Node.js module in the renderer process. [#&#8203;46632](https://github.com/electron/electron/pull/46632) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/46561))</span> - Fixed several paint and white flash issues on macOS. [#&#8203;46628](https://github.com/electron/electron/pull/46628) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/46629))</span> #### Other Changes - Fixed an issue where printing from the renderer process crashes the main process when no printers are installed in the system or there's not a default printer. [#&#8203;46616](https://github.com/electron/electron/pull/46616) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46618), [36](https://github.com/electron/electron/pull/46617))</span> - Updated Chromium to 134.0.6998.205. [#&#8203;46655](https://github.com/electron/electron/pull/46655) ### [`v35.1.5`](https://github.com/electron/electron/releases/tag/v35.1.5): electron v35.1.5 [Compare Source](https://github.com/electron/electron/compare/v35.1.4...v35.1.5) ### Release Notes for v35.1.5 #### Fixes - Fixed a potential crash in `parentPort`. [#&#8203;46495](https://github.com/electron/electron/pull/46495) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46494), [36](https://github.com/electron/electron/pull/46496))</span> #### Unknown - Reverts a change that greyed out disabled menu items on macOS ([#&#8203;46307](https://github.com/electron/electron/pull/46307)). [#&#8203;46521](https://github.com/electron/electron/pull/46521) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46522), [36](https://github.com/electron/electron/pull/46523))</span> ### [`v35.1.4`](https://github.com/electron/electron/releases/tag/v35.1.4): electron v35.1.4 [Compare Source](https://github.com/electron/electron/compare/v35.1.3...v35.1.4) ### Release Notes for v35.1.4 #### Fixes - Fix: don't copy 'package.json's out of ASAR file. [#&#8203;46478](https://github.com/electron/electron/pull/46478) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/46477))</span> - Fixed a bug that could cause some maximized windows on Linux to report an incorrect window state. [#&#8203;46464](https://github.com/electron/electron/pull/46464) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46462), [36](https://github.com/electron/electron/pull/46463))</span> - Fixed a possible crash using Node.js on some arm32 devices. [#&#8203;46461](https://github.com/electron/electron/pull/46461) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/46460))</span> - Fixed crash on application exit with pending `app.getGPUInfo` promise. [#&#8203;46470](https://github.com/electron/electron/pull/46470) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46472), [36](https://github.com/electron/electron/pull/46471))</span> ### [`v35.1.3`](https://github.com/electron/electron/releases/tag/v35.1.3): electron v35.1.3 [Compare Source](https://github.com/electron/electron/compare/v35.1.2...v35.1.3) ### Release Notes for v35.1.3 #### Fixes - Fixed a crash that could occur when dragging and dropping files into the browser. [#&#8203;46311](https://github.com/electron/electron/pull/46311) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/46312))</span> - Fixed an issue where `context-menu` event weren't emitted as expected on Windows in draggable regions. [#&#8203;46334](https://github.com/electron/electron/pull/46334) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46328), [36](https://github.com/electron/electron/pull/46032))</span> - Fixed an issue where calling `UtilityProcess.fork` prior to the app ready event would cause a crash. [#&#8203;46403](https://github.com/electron/electron/pull/46403) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46405), [36](https://github.com/electron/electron/pull/46404))</span> - Fixed flickering and ghosting artifacts in transparent windows on macOS. [#&#8203;46392](https://github.com/electron/electron/pull/46392) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/46393))</span> - Fixed memory leak in AutofillPopupView. [#&#8203;46413](https://github.com/electron/electron/pull/46413) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46411), [36](https://github.com/electron/electron/pull/46412))</span> - Fixed the issue where rounded corners disappear momentarily when closing on Windows 11. [#&#8203;46408](https://github.com/electron/electron/pull/46408) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/46407))</span> - When a menu item on macOS is disabled (`enabled = false`), it is now greyed out. [#&#8203;46341](https://github.com/electron/electron/pull/46341) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46340), [36](https://github.com/electron/electron/pull/46342))</span> #### Other Changes - Updated Chromium to 134.0.6998.179. [#&#8203;46313](https://github.com/electron/electron/pull/46313) ### [`v35.1.2`](https://github.com/electron/electron/releases/tag/v35.1.2): electron v35.1.2 [Compare Source](https://github.com/electron/electron/compare/v35.1.1...v35.1.2) ### Release Notes for v35.1.2 #### Fixes - Fixed an issue where `navigationHistory.restore()` failed to restore the `userAgent` if it was overridden. [#&#8203;46300](https://github.com/electron/electron/pull/46300) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46298), [36](https://github.com/electron/electron/pull/46299))</span> #### Other Changes - Security: backported fix for CVE-2025-2783. [#&#8203;46303](https://github.com/electron/electron/pull/46303) - Updated Chromium to 134.0.6998.178. [#&#8203;46287](https://github.com/electron/electron/pull/46287) ### [`v35.1.1`](https://github.com/electron/electron/releases/tag/v35.1.1): electron v35.1.1 [Compare Source](https://github.com/electron/electron/compare/v35.1.0...v35.1.1) ### Release Notes for v35.1.1 #### Fixes - Fixed build failure when building with printing disabled. [#&#8203;46285](https://github.com/electron/electron/pull/46285) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46286), [36](https://github.com/electron/electron/pull/46284))</span> ### [`v35.1.0`](https://github.com/electron/electron/releases/tag/v35.1.0): electron v35.1.0 [Compare Source](https://github.com/electron/electron/compare/v35.0.3...v35.1.0) ### Release Notes for v35.1.0 #### Features - Added `ffmpeg.dll` to delay load configuration. [#&#8203;46172](https://github.com/electron/electron/pull/46172) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46174), [36](https://github.com/electron/electron/pull/46173))</span> #### Fixes - Fixed NODE_OPTIONS parsing for child processes on macOS. [#&#8203;46244](https://github.com/electron/electron/pull/46244) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46242), [36](https://github.com/electron/electron/pull/46243))</span> - Fixed a crash seen on Linux when calling `webContents.print()`. [#&#8203;46147](https://github.com/electron/electron/pull/46147) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/46146))</span> - Fixed an issue where `system-context-menu` incorrectly fired for all regions in frameless windows. [#&#8203;46178](https://github.com/electron/electron/pull/46178) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/46025), [34](https://github.com/electron/electron/pull/46175), [36](https://github.com/electron/electron/pull/46002))</span> - Fixed an issue where `webContents.printToPDF()` didn't work as expected with cross-process subframes. [#&#8203;46257](https://github.com/electron/electron/pull/46257) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46258), [36](https://github.com/electron/electron/pull/46259))</span> - Fixed an issue where the resizing border didn't work as expected on Wayland windows. [#&#8203;46224](https://github.com/electron/electron/pull/46224) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/46222), [34](https://github.com/electron/electron/pull/46223), [36](https://github.com/electron/electron/pull/46225))</span> - Fixed an issue with token formatting for tokens received after calling `pushNotifications.registerForAPNSNotifications()`. [#&#8203;46148](https://github.com/electron/electron/pull/46148) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46150), [36](https://github.com/electron/electron/pull/46149))</span> - Fixed crash on Linux when PipeWire screenshare source selection is cancelled. [#&#8203;46234](https://github.com/electron/electron/pull/46234) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/46235))</span> - Fixed crash with out-of-bounds string read when parsing NODE_OPTIONS. [#&#8203;46248](https://github.com/electron/electron/pull/46248) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46246), [36](https://github.com/electron/electron/pull/46247))</span> #### Other Changes - Improved performance of desktopCapturer.getSources when not requesting thumbnails on macOS. [#&#8203;46249](https://github.com/electron/electron/pull/46249) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46250), [36](https://github.com/electron/electron/pull/46251))</span> - Updated Chromium to 134.0.6998.165. [#&#8203;46196](https://github.com/electron/electron/pull/46196) ### [`v35.0.3`](https://github.com/electron/electron/releases/tag/v35.0.3): electron v35.0.3 [Compare Source](https://github.com/electron/electron/compare/v35.0.2...v35.0.3) ### Release Notes for v35.0.3 #### Fixes - Fixed an issue where snapped windows in Windows may sometimes be improperly restored. [#&#8203;46040](https://github.com/electron/electron/pull/46040) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/46038), [34](https://github.com/electron/electron/pull/46039), [36](https://github.com/electron/electron/pull/46041))</span> - Fixed incorrect titlebar in file save dialogs. [#&#8203;46074](https://github.com/electron/electron/pull/46074) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/46075), [34](https://github.com/electron/electron/pull/46076), [36](https://github.com/electron/electron/pull/46077))</span> #### Documentation - Documentation changes: [#&#8203;46102](https://github.com/electron/electron/pull/46102) ### [`v35.0.2`](https://github.com/electron/electron/releases/tag/v35.0.2): electron v35.0.2 [Compare Source](https://github.com/electron/electron/compare/v35.0.1...v35.0.2) ### Release Notes for v35.0.2 #### Fixes - Fixed an issue where Web Workers crashed on unhandled rejections. [#&#8203;46020](https://github.com/electron/electron/pull/46020) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46019), [36](https://github.com/electron/electron/pull/46021))</span> - Fixed an issue where packages could be mistakenly not found in asar. [#&#8203;46022](https://github.com/electron/electron/pull/46022) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/46023))</span> - Fixed title changes to not occur while navigating within a page. [#&#8203;46035](https://github.com/electron/electron/pull/46035) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/46034), [36](https://github.com/electron/electron/pull/46036))</span> #### Other Changes - Fixed an issue where Electron could fail to load on some older Linux distributions. [#&#8203;45983](https://github.com/electron/electron/pull/45983) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/45982), [36](https://github.com/electron/electron/pull/45984))</span> - Updated Chromium to 134.0.6998.88. [#&#8203;45972](https://github.com/electron/electron/pull/45972) ### [`v35.0.1`](https://github.com/electron/electron/releases/tag/v35.0.1): electron v35.0.1 [Compare Source](https://github.com/electron/electron/compare/v35.0.0...v35.0.1) ### Release Notes for v35.0.1 #### Fixes - Fixed an issue where Node.js OOM errors terminate the process directly without raising an OOM exception. [#&#8203;45911](https://github.com/electron/electron/pull/45911) <span style="font-size:small;">(Also in [36](https://github.com/electron/electron/pull/45912))</span> - Fixed an issue where `setContentProtection(true)` was reverted when a given window was hidden. [#&#8203;45889](https://github.com/electron/electron/pull/45889) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/45890))</span> - Fixed invalid memory access in pdf viewer which lead to random crashes. [#&#8203;45879](https://github.com/electron/electron/pull/45879) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/45880))</span> - Improved webContents loading time when resolving fonts for uncommon scripts. [#&#8203;45918](https://github.com/electron/electron/pull/45918) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/45917), [36](https://github.com/electron/electron/pull/45919))</span> #### Other Changes - Backported fix for [`4010597`](https://github.com/electron/electron/commit/401059730). [#&#8203;45938](https://github.com/electron/electron/pull/45938) - Backported fix for [`4010597`](https://github.com/electron/electron/commit/401059730). [#&#8203;45943](https://github.com/electron/electron/pull/45943) ### [`v35.0.0`](https://github.com/electron/electron/releases/tag/v35.0.0): electron v35.0.0 [Compare Source](https://github.com/electron/electron/compare/v34.5.8...v35.0.0) ### Release Notes for v35.0.0 #### Stack Upgrades - Chromium `134.0.6998.44` - [New in 134](https://developer.chrome.com/blog/new-in-chrome-134/) - [New in 133](https://developer.chrome.com/blog/new-in-chrome-133/) - Node `22.14.0` - [Node 22.14.0 blog post](https://nodejs.org/en/blog/release/v22.14.0/) - V8 `13.4` #### Breaking Changes - Added excludeUrls to webRequest filter and deprecated the use of empty arrays in urls property. [#&#8203;45678](https://github.com/electron/electron/pull/45678) - Added `fromVersionID` on `ServiceWorkers` to get an instance of `ServiceWorkerMain`. [#&#8203;45341](https://github.com/electron/electron/pull/45341) - Deprecated `getPreloads` and `setPreloads` on `Session`. [#&#8203;45329](https://github.com/electron/electron/pull/45329) - Fixed file chooser dialogs for flaptak applications. [#&#8203;44426](https://github.com/electron/electron/pull/44426) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/44681))</span> - Moved 'console-message' arguments into event object. [#&#8203;43617](https://github.com/electron/electron/pull/43617) - The `systemPreferences.isAeroGlassEnabled()` API has been deprecated and will be removed without replacement. [#&#8203;45554](https://github.com/electron/electron/pull/45554) #### Features ##### Additions - Added APIs to manage shared dictionaries for compression efficiency using Brotli or ZStandard. The new APIs are `session.getSharedDictionaryUsageInfo()`, `session.getSharedDictionaryInfo(options)`, `session.clearSharedDictionaryCache()`, and `session.clearSharedDictionaryCacheForIsolationKey(options)`. [#&#8203;44750](https://github.com/electron/electron/pull/44750) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/44951), [34](https://github.com/electron/electron/pull/44950))</span> - Added `NSPrefersDisplaySafeAreaCompatibilityMode` = `false` to Info.plist to remove "Scale to fit below built-in camera." from app options. [#&#8203;45357](https://github.com/electron/electron/pull/45357) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/45470), [34](https://github.com/electron/electron/pull/45469))</span> - Added `ServiceWorkerMain` class to interact with service workers in the main process. [#&#8203;45341](https://github.com/electron/electron/pull/45341) - Added `running-status-changed` event on `ServiceWorkers` to indicate when a service worker's running status has changed. - Added `startWorkerForScope` on `ServiceWorkers` to start a worker that may have been previously stopped. - Added `WebFrameMain.collectJavaScriptCallStack()` for accessing the JavaScript call stack of unresponsive renderers. [#&#8203;44204](https://github.com/electron/electron/pull/44204) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/44937), [34](https://github.com/electron/electron/pull/44938))</span> - Added `contextBridge.executeInMainWorld` to safely execute code across world boundaries. [#&#8203;45330](https://github.com/electron/electron/pull/45330) - Added `frame` to 'console-message' event. [#&#8203;43617](https://github.com/electron/electron/pull/43617) - Added `query-session-end` event and improved `session-end` events on Windows. [#&#8203;44598](https://github.com/electron/electron/pull/44598) - Added `view.getVisible()`. [#&#8203;45409](https://github.com/electron/electron/pull/45409) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/45410))</span> - Added `webContents.navigationHistory.restore(index, entries)` API that allows restoration of navigation history. [#&#8203;45583](https://github.com/electron/electron/pull/45583) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/45584))</span> - Added optional animation parameter to BrowserWindow\.setVibrancy. [#&#8203;35987](https://github.com/electron/electron/pull/35987) - Added permission support for `document.executeCommand("paste")`. [#&#8203;45471](https://github.com/electron/electron/pull/45471) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/45473), [34](https://github.com/electron/electron/pull/45472))</span> - Added support for `roundedCorners` BrowserWindow constructor option on Windows. [#&#8203;45740](https://github.com/electron/electron/pull/45740) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/45739))</span> - Added support for service worker preload scripts. [#&#8203;45408](https://github.com/electron/electron/pull/45408) - Support Portal's globalShortcuts. Electron must be run with --enable-features=GlobalShortcutsPortal in order to have the feature working. [#&#8203;45297](https://github.com/electron/electron/pull/45297) ##### Improvements - Performance improvements when processing microtasks. [#&#8203;44439](https://github.com/electron/electron/pull/44439) <span style="font-size:small;">(Also in [32](https://github.com/electron/electron/pull/44472), [33](https://github.com/electron/electron/pull/44473), [34](https://github.com/electron/electron/pull/44471))</span> - Redesigned preload script APIs by introducing `registerPreloadScript`, `unregisterPreloadScript`, `getPreloadScripts` on `Session`.[#&#8203;45329](https://github.com/electron/electron/pull/45329) ##### Removed/Deprecated - Removed 240 FPS limit when use shared texture OSR. [#&#8203;45781](https://github.com/electron/electron/pull/45781) #### Fixes - Fixed `webContents.print()` after switch to OOP printing on macOS and Linux. [#&#8203;45285](https://github.com/electron/electron/pull/45285) - Fixed an issue where the renderer process crashed when loading about:blank in subframes. [#&#8203;45758](https://github.com/electron/electron/pull/45758) - Fixed broken OOP `window.print()` on macOS/Linux. [#&#8203;45259](https://github.com/electron/electron/pull/45259) - Fixed desktopCapturer.getSources not returning electron windows on Windows. [#&#8203;45000](https://github.com/electron/electron/pull/45000) - Fixed spellcheck suggestions not correctly populating on Windows. [#&#8203;45763](https://github.com/electron/electron/pull/45763) - Optimized `webFrame.getZoomLevel` and `webFrame.getZoomFactor` APIs. [#&#8203;45557](https://github.com/electron/electron/pull/45557) - Re-enables the MacWebContentsOcclusion feature flag for Mac, with plans to make it enabled by default in a future release. [#&#8203;45801](https://github.com/electron/electron/pull/45801) ##### Also in earlier versions... - Addressed two possible crashes in the File System Access API. [#&#8203;45261](https://github.com/electron/electron/pull/45261) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/45260))</span> - Backported fix for a upstream bug that cause Offscreen Rendering to stutter. [#&#8203;45660](https://github.com/electron/electron/pull/45660) <span style="font-size:small;">(Also in [32](https://github.com/electron/electron/pull/45657), [33](https://github.com/electron/electron/pull/45658), [34](https://github.com/electron/electron/pull/45659))</span> - Fixed WebFrameMain crash related to accessing speculative frames that have been destroyed. [#&#8203;45686](https://github.com/electron/electron/pull/45686) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/45688), [34](https://github.com/electron/electron/pull/45687))</span> - Fixed `chrome.i18n` extension API being unavailable in service workers. [#&#8203;45031](https://github.com/electron/electron/pull/45031) <span style="font-size:small;">(Also in [31](https://github.com/electron/electron/pull/45035), [32](https://github.com/electron/electron/pull/45038), [33](https://github.com/electron/electron/pull/45037), [34](https://github.com/electron/electron/pull/45036))</span> - Fixed `trace-startup` not working on macOS. [#&#8203;44257](https://github.com/electron/electron/pull/44257) <span style="font-size:small;">(Also in [32](https://github.com/electron/electron/pull/44292), [33](https://github.com/electron/electron/pull/44276), [34](https://github.com/electron/electron/pull/44275))</span> - Fixed `v8.setHeapSnapshotNearHeapLimit` api in main and utility process, along with support for `--diagnostic-dir` Node.js cli flag to specify the directory to save the heap snapshots. [#&#8203;45632](https://github.com/electron/electron/pull/45632) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/45645), [34](https://github.com/electron/electron/pull/45644))</span> - Fixed a bug where the default path didn't always correctly fill the Name field in KDialogs on Linux. [#&#8203;45420](https://github.com/electron/electron/pull/45420) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/45419))</span> - Fixed a crash that could occur in OSR on window close. [#&#8203;45630](https://github.com/electron/electron/pull/45630) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/45629))</span> - Fixed a crash that could occur when calling `shell.readShortcutLink` on Windows. [#&#8203;44784](https://github.com/electron/electron/pull/44784) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/44803), [34](https://github.com/electron/electron/pull/44804))</span> - Fixed a crash when calling `shell.readShortcutLink` caused by `PKEY_AppUserModel_ToastActivatorCLSID` sometimes being represented by a string uuid. [#&#8203;45348](https://github.com/electron/electron/pull/45348) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/45349), [34](https://github.com/electron/electron/pull/45350))</span> - Fixed a potential crash in `chrome.tabs.update()`. [#&#8203;45302](https://github.com/electron/electron/pull/45302) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/45303), [34](https://github.com/electron/electron/pull/45304))</span> - Fixed a potential crash when calling legacy `getUserMedia` with an invalid `chromeMediaSourceId`. [#&#8203;45755](https://github.com/electron/electron/pull/45755) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/45756))</span> - Fixed a potential issues permissions in the Pointer Lock API after focus loss and regain. [#&#8203;45628](https://github.com/electron/electron/pull/45628) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/45627))</span> - Fixed an issue where RTL tooltips could be incorrect when using WCO on Windows. [#&#8203;45425](https://github.com/electron/electron/pull/45425) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/45424), [34](https://github.com/electron/electron/pull/45426))</span> - Fixed an issue where Windows Control Overlay didn't work with some window configurations. [#&#8203;45477](https://github.com/electron/electron/pull/45477) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/45476), [34](https://github.com/electron/electron/pull/45478))</span> - Fixed an issue where `EventSource` was `undefined` in both renderer and worker processes when Node.js integration was enabled. [#&#8203;44475](https://github.com/electron/electron/pull/44475) <span style="font-size:small;">(Also in [32](https://github.com/electron/electron/pull/44497), [33](https://github.com/electron/electron/pull/44496), [34](https://github.com/electron/electron/pull/44495))</span> - Fixed an issue where `WebContentsView`s were being improperly removed. [#&#8203;44656](https://github.com/electron/electron/pull/44656) <span style="font-size:small;">(Also in [31](https://github.com/electron/electron/pull/44673), [32](https://github.com/electron/electron/pull/44672), [33](https://github.com/electron/electron/pull/44671), [34](https://github.com/electron/electron/pull/44670))</span> - Fixed an issue where `contextmenu` events wouldn't be correctly dispatched in draggable regions on Linux. [#&#8203;45841](https://github.com/electron/electron/pull/45841) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/45840))</span> - Fixed an issue where `resize` wasn't being emitted for single-pixel resizes on Windows. [#&#8203;44700](https://github.com/electron/electron/pull/44700) <span style="font-size:small;">(Also in [32](https://github.com/electron/electron/pull/44724), [33](https://github.com/electron/electron/pull/44723), [34](https://github.com/electron/electron/pull/44722))</span> - Fixed an issue where a `utilityProcess` pid would not be `undefined` after exit. [#&#8203;44677](https://github.com/electron/electron/pull/44677) <span style="font-size:small;">(Also in [32](https://github.com/electron/electron/pull/44693), [33](https://github.com/electron/electron/pull/44694), [34](https://github.com/electron/electron/pull/44695))</span> - Fixed an issue where buttons shown under the Window Controls Overlay API were missing tooltips. [#&#8203;44721](https://github.com/electron/electron/pull/44721) <span style="font-size:small;">(Also in [32](https://github.com/electron/electron/pull/44758), [33](https://github.com/electron/electron/pull/44757), [34](https://github.com/electron/electron/pull/44759))</span> - Fixed an issue where closing a window after printing on Linux triggered a crash. [#&#8203;44246](https://github.com/electron/electron/pull/44246) <span style="font-size:small;">(Also in [31](https://github.com/electron/electron/pull/44283), [32](https://github.com/electron/electron/pull/44282), [33](https://github.com/electron/electron/pull/44285), [34](https://github.com/electron/electron/pull/44284))</span> - Fixed an issue where drag-dropping two directories would cause `getAsFileSystemHandle` to never resolve. [#&#8203;45256](https://github.com/electron/electron/pull/45256) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/45257), [34](https://github.com/electron/electron/pull/45258))</span> - Fixed an issue where print scaling could be too small during silent print. [#&#8203;45262](https://github.com/electron/electron/pull/45262) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/45283))</span> - Fixed an issue where selection of multiple directories with the `dialog` module didn't work on Linux. [#&#8203;45394](https://github.com/electron/electron/pull/45394) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/45395))</span> - Fixed an issue where the `exit` event could be emitted twice from the `utilityProcess`. [#&#8203;44243](https://github.com/electron/electron/pull/44243) <span style="font-size:small;">(Also in [31](https://github.com/electron/electron/pull/44267), [32](https://github.com/electron/electron/pull/44268), [33](https://github.com/electron/electron/pull/44266), [34](https://github.com/electron/electron/pull/44265))</span> - Fixed an issue where the webContents `context-menu` event was not emitted when using `-webkit-app-region: drag`. [#&#8203;44761](https://github.com/electron/electron/pull/44761) <span style="font-size:small;">(Also in [32](https://github.com/electron/electron/pull/44798), [33](https://github.com/electron/electron/pull/44800), [34](https://github.com/electron/electron/pull/44799))</span> - Fixed an issue where the windows control overlay was unexpectedly visible in fullscreen on Linux. [#&#8203;44621](https://github.com/electron/electron/pull/44621) <span style="font-size:small;">(Also in [31](https://github.com/electron/electron/pull/44643), [32](https://github.com/electron/electron/pull/44642), [33](https://github.com/electron/electron/pull/44640), [34](https://github.com/electron/electron/pull/44641))</span> - Fixed an issue where windows on Windows with `backgroundMaterial` lost effect on maximization. [#&#8203;45525](https://github.com/electron/electron/pull/45525) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/45526))</span> - Fixed an possible crash when using draggable regions and BaseWindows to get the `context-menu` event. [#&#8203;44940](https://github.com/electron/electron/pull/44940) <span style="font-size:small;">(Also in [32](https://github.com/electron/electron/pull/44954), [33](https://github.com/electron/electron/pull/44953), [34](https://github.com/electron/electron/pull/44952))</span> - Fixed build failure when the PDF viewer is disabled. [#&#8203;44960](https://github.com/electron/electron/pull/44960) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/44965), [34](https://github.com/electron/electron/pull/44964))</span> - Fixed calling setAlwaysOnTop on a hidden window which is then shown with showInactive on Linux under X11. [#&#8203;44078](https://github.com/electron/electron/pull/44078) <span style="font-size:small;">(Also in [31](https://github.com/electron/electron/pull/44323), [32](https://github.com/electron/electron/pull/44325), [33](https://github.com/electron/electron/pull/44324), [34](https://github.com/electron/electron/pull/44322))</span> - Fixed crash in gin::wrappable::secondweakcallback. [#&#8203;45378](https://github.com/electron/electron/pull/45378) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/45379), [34](https://github.com/electron/electron/pull/45376))</span> - Fixed crash in net api when utility process exits. [#&#8203;44574](https://github.com/electron/electron/pull/44574) <span style="font-size:small;">(Also in [32](https://github.com/electron/electron/pull/44730), [33](https://github.com/electron/electron/pull/44729), [34](https://github.com/electron/electron/pull/44731))</span> - Fixed crash on startup with asan build on macOS. [#&#8203;45569](https://github.com/electron/electron/pull/45569) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/45568), [34](https://github.com/electron/electron/pull/45567))</span> - Fixed crash when accessing WebFrameMain frames and name attributes on destroyed frames. [#&#8203;45508](https://github.com/electron/electron/pull/45508) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/45509), [34](https://github.com/electron/electron/pull/45510))</span> - Fixed crash when network process terminates while a net log is running. [#&#8203;44406](https://github.com/electron/electron/pull/44406) <span style="font-size:small;">(Also in [31](https://github.com/electron/electron/pull/44421), [32](https://github.com/electron/electron/pull/44419), [33](https://github.com/electron/electron/pull/44420), [34](https://github.com/electron/electron/pull/44418))</span> - Fixed crash when rendering super menu accelerator on linux. [#&#8203;44341](https://github.com/electron/electron/pull/44341) <span style="font-size:small;">(Also in [32](https://github.com/electron/electron/pull/44623), [33](https://github.com/electron/electron/pull/44520), [34](https://github.com/electron/electron/pull/44346))</span> - Fixed custom spell checker getting stuck in infinite loop using 100% CPU. [#&#8203;45001](https://github.com/electron/electron/pull/45001) <span style="font-size:small;">(Also in [31](https://github.com/electron/electron/pull/45022), [32](https://github.com/electron/electron/pull/45019), [33](https://github.com/electron/electron/pull/45021), [34](https://github.com/electron/electron/pull/45020))</span> - Fixed drag and drop icons not showing on Windows. [#&#8203;45777](https://github.com/electron/electron/pull/45777) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/45778))</span> - Fixed external window focus when using shell.openExternal. [#&#8203;44408](https://github.com/electron/electron/pull/44408) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/44468), [34](https://github.com/electron/electron/pull/44469))</span> - Fixed file preview window reappearing when calling `win.closeFilePreview` twice on macOS. [#&#8203;45664](https://github.com/electron/electron/pull/45664) <span style="font-size:small;">(Also in [32](https://github.com/electron/electron/pull/45661), [33](https://github.com/electron/electron/pull/45663), [34](https://github.com/electron/electron/pull/45662))</span> - Fixed issue where 'contextmenu' event is emitted twice on macOS. [#&#8203;44978](https://github.com/electron/electron/pull/44978) <span style="font-size:small;">(Also in [34](https://github.com/electron/electron/pull/44997))</span> - Fixed issue with missing index arg for `webContents.canGoToOffset`. [#&#8203;44989](https://github.com/electron/electron/pull/44989) <span style="font-size:small;">(Also in [32](https://github.com/electron/electron/pull/45007), [33](https://github.com/electron/electron/pull/45006), [34](https://github.com/electron/electron/pull/45008))</span> - Fixed race condition in which WebContents appears as white screen on VDI machines without hardware acceleration capabilities. [#&#8203;44318](https://github.com/electron/electron/pull/44318) <span style="font-size:small;">(Also in [32](https://github.com/electron/electron/pull/44351), [33](https://github.com/electron/electron/pull/44352), [34](https://github.com/electron/electron/pull/44350))</span> - Fixed regression with dynamic dependency on `libgdk_pixbuf`. [#&#8203;44423](https://github.com/electron/electron/pull/44423) <span style="font-size:small;">(Also in [32](https://github.com/electron/electron/pull/44437), [33](https://github.com/electron/electron/pull/44436), [34](https://github.com/electron/electron/pull/44438))</span> - Fixed segfault when moving WebContentsView between BrowserWindows. [#&#8203;44599](https://github.com/electron/electron/pull/44599) <span style="font-size:small;">(Also in [31](https://github.com/electron/electron/pull/44614), [32](https://github.com/electron/electron/pull/44615), [33](https://github.com/electron/electron/pull/44613), [34](https://github.com/electron/electron/pull/44612))</span> - Fixed the path for a needed library used for mksnapshot. [#&#8203;45546](https://github.com/electron/electron/pull/45546) <span style="font-size:small;">(Also in [32](https://github.com/electron/electron/pull/45545), [33](https://github.com/electron/electron/pull/45547), [34](https://github.com/electron/electron/pull/45544))</span> - Fixed theme does not work in DevTools. [#&#8203;44114](https://github.com/electron/electron/pull/44114) <span style="font-size:small;">(Also in [32](https://github.com/electron/electron/pull/44639), [33](https://github.com/electron/electron/pull/44635), [34](https://github.com/electron/electron/pull/44636))</span> - Fixed update file extension bug. [#&#8203;44296](https://github.com/electron/electron/pull/44296) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/44771), [34](https://github.com/electron/electron/pull/44770))</span> - Fixed web worker scripts failing to load for chrome extensions. [#&#8203;45708](https://github.com/electron/electron/pull/45708) <span style="font-size:small;">(Also in [32](https://github.com/electron/electron/pull/45709), [33](https://github.com/electron/electron/pull/45711), [34](https://github.com/electron/electron/pull/45710))</span> - Return 0 exit code for normal termination of the utility process. [#&#8203;44726](https://github.com/electron/electron/pull/44726) <span style="font-size:small;">(Also in [32](https://github.com/electron/electron/pull/44749), [33](https://github.com/electron/electron/pull/44732), [34](https://github.com/electron/electron/pull/44733))</span> - The `avoidClosingConnections` option for `session.clearData` now properly defaults to `false` when the `dataTypes` option is not set. [#&#8203;45187](https://github.com/electron/electron/pull/45187) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/45207), [34](https://github.com/electron/electron/pull/45208))</span> #### Other Changes - Added more helpful logging if Node.js fails to initialize. [#&#8203;45317](https://github.com/electron/electron/pull/45317) - Backported fix for [`3872580`](https://github.com/electron/electron/commit/387258077),383070811. [#&#8203;45496](https://github.com/electron/electron/pull/45496) - Fixed all `-Wunsafe-buffer-usage` Clang warnings and enabled the compiler warning in new builds. [#&#8203;44056](https://github.com/electron/electron/pull/44056) - Fixed an issue where a deprecation warning was being incorrectly emitted for frameless windows on macOS. [#&#8203;44728](https://github.com/electron/electron/pull/44728) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/44767), [34](https://github.com/electron/electron/pull/44768))</span> #### Documentation - Documentation change - [#&#8203;44391](https://github.com/electron/electron/pull/44391) - [#&#8203;44851](https://github.com/electron/electron/pull/44851) - [#&#8203;45173](https://github.com/electron/electron/pull/45173) #### Notices ##### End of Support for 32.x.y Electron 32.x.y has reached end-of-support as per the project's [support policy](https://www.electronjs.org/docs/latest/tutorial/electron-timelines#version-support-policy). Developers and applications are encouraged to upgrade to a newer version of Electron. ### [`v34.5.8`](https://github.com/electron/electron/releases/tag/v34.5.8): electron v34.5.8 [Compare Source](https://github.com/electron/electron/compare/v34.5.7...v34.5.8) ### Release Notes for v34.5.8 > \[!WARNING] > Electron 34.x.y has reached end-of-support as per the project's [support policy](https://www.electronjs.org/docs/latest/tutorial/electron-timelines#version-support-policy). Developers and applications are encouraged to upgrade to a newer version of Electron. #### Fixes - Fixed crash in `autoUpdater` on macOS when zip extraction failed. [#&#8203;47301](https://github.com/electron/electron/pull/47301) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/47299), [36](https://github.com/electron/electron/pull/47300), [37](https://github.com/electron/electron/pull/47302))</span> #### Other Changes - Security: backported fix for CVE-2025-5419. [#&#8203;47355](https://github.com/electron/electron/pull/47355) ### [`v34.5.7`](https://github.com/electron/electron/releases/tag/v34.5.7): electron v34.5.7 [Compare Source](https://github.com/electron/electron/compare/v34.5.6...v34.5.7) ### Release Notes for v34.5.7 #### Other Changes - Security: backported fix for [`4033643`](https://github.com/electron/electron/commit/403364367). [#&#8203;47070](https://github.com/electron/electron/pull/47070) - Security: backported fix for CVE-2025-4609. - Security: backported fix for CVE-2025-4664. [#&#8203;47176](https://github.com/electron/electron/pull/47176) ### [`v34.5.6`](https://github.com/electron/electron/releases/tag/v34.5.6): electron v34.5.6 [Compare Source](https://github.com/electron/electron/compare/v34.5.5...v34.5.6) ### Release Notes for v34.5.6 ##### Other Changes - Updated hasher return value [#&#8203;47013](https://github.com/electron/electron/pull/47013) ### [`v34.5.5`](https://github.com/electron/electron/releases/tag/v34.5.5): electron v34.5.5 [Compare Source](https://github.com/electron/electron/compare/v34.5.4...v34.5.5) ### Release Notes for v34.5.5 #### Fixes - Fixed the `visibleOnAllWorkspaces` property on Linux. [#&#8203;46862](https://github.com/electron/electron/pull/46862) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46861))</span> #### Other Changes - Updated Node.js to v20.19.1. [#&#8203;46739](https://github.com/electron/electron/pull/46739) ### [`v34.5.4`](https://github.com/electron/electron/releases/tag/v34.5.4): electron v34.5.4 [Compare Source](https://github.com/electron/electron/compare/v34.5.3...v34.5.4) ### Release Notes for v34.5.4 #### Fixes - Fixed `electron.shell.openExternal` and `electron.shell.openPath` to honor user-defined system defaults on Linux. [#&#8203;46791](https://github.com/electron/electron/pull/46791) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/46787), [35](https://github.com/electron/electron/pull/46789), [36](https://github.com/electron/electron/pull/46788))</span> - Fixed a possible crash when using `navigator.bluetooth.requestDevice` and the `select-bluetooth-device` event. [#&#8203;46783](https://github.com/electron/electron/pull/46783) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46784), [36](https://github.com/electron/electron/pull/46782))</span> - Fixed a potential crash when closing a window with child windows. [#&#8203;46775](https://github.com/electron/electron/pull/46775) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46774), [36](https://github.com/electron/electron/pull/46773))</span> - Fixed build error with `enable_electron_extensions=false`. [#&#8203;46841](https://github.com/electron/electron/pull/46841) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46840), [36](https://github.com/electron/electron/pull/46842))</span> - Fixed crash when renderer process crashes while webview is reloading. [#&#8203;46770](https://github.com/electron/electron/pull/46770) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46769), [36](https://github.com/electron/electron/pull/46768))</span> - Fixed documentation to mark `Window.autoHideMenuBar` as supported on Linux and Windows. [#&#8203;46831](https://github.com/electron/electron/pull/46831) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46829), [36](https://github.com/electron/electron/pull/46830))</span> ### [`v34.5.3`](https://github.com/electron/electron/releases/tag/v34.5.3): electron v34.5.3 [Compare Source](https://github.com/electron/electron/compare/v34.5.2...v34.5.3) ### Release Notes for v34.5.3 #### Fixes - Fixed Minimize menu button to follow set window minimizability on Windows. [#&#8203;46716](https://github.com/electron/electron/pull/46716) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46715), [36](https://github.com/electron/electron/pull/46714))</span> - Fixed case where file dialog filters would get mixed up, if a `*` filter was included. [#&#8203;46720](https://github.com/electron/electron/pull/46720) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46721), [36](https://github.com/electron/electron/pull/46722))</span> - Fixed crash on reconversion with google IME and editcontext on macOS. [#&#8203;46701](https://github.com/electron/electron/pull/46701) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46700), [36](https://github.com/electron/electron/pull/46699))</span> - Microtasks are no longer (incorrectly) run by serializing values, including when sending IPC. [#&#8203;46683](https://github.com/electron/electron/pull/46683) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46684), [36](https://github.com/electron/electron/pull/46682))</span> #### Other Changes - Backported fix for [`4052926`](https://github.com/electron/electron/commit/405292639). [#&#8203;46728](https://github.com/electron/electron/pull/46728) ### [`v34.5.2`](https://github.com/electron/electron/releases/tag/v34.5.2): electron v34.5.2 [Compare Source](https://github.com/electron/electron/compare/v34.5.1...v34.5.2) ### Release Notes for v34.5.2 #### Fixes - Fixed ElectronAccessibilityUI bug. [#&#8203;46588](https://github.com/electron/electron/pull/46588) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/46589), [35](https://github.com/electron/electron/pull/46591), [36](https://github.com/electron/electron/pull/46590))</span> - Fixed a possible BrowserWindow crash caused by closing a parent window with focus or blur events. [#&#8203;46582](https://github.com/electron/electron/pull/46582) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46581), [36](https://github.com/electron/electron/pull/46580))</span> - Fixed an inverted conditional in the above PR that caused broken window borders in some circumstances on Wayland. [#&#8203;46643](https://github.com/electron/electron/pull/46643) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/46645), [35](https://github.com/electron/electron/pull/46644), [36](https://github.com/electron/electron/pull/46642))</span> #### Other Changes - Fixed an issue where printing from the renderer process crashes the main process when no printers are installed in the system or there's not a default printer. [#&#8203;46618](https://github.com/electron/electron/pull/46618) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46616), [36](https://github.com/electron/electron/pull/46617))</span> ### [`v34.5.1`](https://github.com/electron/electron/releases/tag/v34.5.1): electron v34.5.1 [Compare Source](https://github.com/electron/electron/compare/v34.5.0...v34.5.1) ### Release Notes for v34.5.1 #### Fixes - Fixed a Linux-only issue where the context menu runs the action under the cursor when opened and should not. [#&#8203;46436](https://github.com/electron/electron/pull/46436) - Fixed a bug that could cause some maximized windows on Linux to report an incorrect window state. [#&#8203;46462](https://github.com/electron/electron/pull/46462) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46464), [36](https://github.com/electron/electron/pull/46463))</span> - Fixed a potential crash in `parentPort`. [#&#8203;46494](https://github.com/electron/electron/pull/46494) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46495), [36](https://github.com/electron/electron/pull/46496))</span> - Fixed crash on application exit with pending `app.getGPUInfo` promise. [#&#8203;46472](https://github.com/electron/electron/pull/46472) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46470), [36](https://github.com/electron/electron/pull/46471))</span> #### Unknown - Reverts a change that greyed out disabled menu items on macOS ([#&#8203;46307](https://github.com/electron/electron/pull/46307)). [#&#8203;46522](https://github.com/electron/electron/pull/46522) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46521), [36](https://github.com/electron/electron/pull/46523))</span> ### [`v34.5.0`](https://github.com/electron/electron/releases/tag/v34.5.0): electron v34.5.0 [Compare Source](https://github.com/electron/electron/compare/v34.4.1...v34.5.0) ### Release Notes for v34.5.0 #### Fixes - Fixed an issue where `context-menu` event weren't emitted as expected on Windows in draggable regions. [#&#8203;46328](https://github.com/electron/electron/pull/46328) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46334), [36](https://github.com/electron/electron/pull/46032))</span> - Fixed an issue where calling `UtilityProcess.fork` prior to the app ready event would cause a crash. [#&#8203;46405](https://github.com/electron/electron/pull/46405) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46403), [36](https://github.com/electron/electron/pull/46404))</span> - Fixed memory leak in AutofillPopupView. [#&#8203;46411](https://github.com/electron/electron/pull/46411) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46413), [36](https://github.com/electron/electron/pull/46412))</span> - When a menu item on macOS is disabled (`enabled = false`), it is now greyed out. [#&#8203;46340](https://github.com/electron/electron/pull/46340) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46341), [36](https://github.com/electron/electron/pull/46342))</span> #### Other Changes - Updated Node.js to v20.19.0. [#&#8203;46037](https://github.com/electron/electron/pull/46037) ### [`v34.4.1`](https://github.com/electron/electron/releases/tag/v34.4.1): electron v34.4.1 [Compare Source](https://github.com/electron/electron/compare/v34.4.0...v34.4.1) ### Release Notes for v34.4.1 #### Fixes - Fixed an issue where `navigationHistory.restore()` failed to restore the `userAgent` if it was overridden. [#&#8203;46298](https://github.com/electron/electron/pull/46298) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46300), [36](https://github.com/electron/electron/pull/46299))</span> #### Other Changes - Security: backported fix for CVE-2025-2783. [#&#8203;46304](https://github.com/electron/electron/pull/46304) ### [`v34.4.0`](https://github.com/electron/electron/releases/tag/v34.4.0): electron v34.4.0 [Compare Source](https://github.com/electron/electron/compare/v34.3.4...v34.4.0) ### Release Notes for v34.4.0 #### Features - Added `ffmpeg.dll` to delay load configuration. [#&#8203;46174](https://github.com/electron/electron/pull/46174) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46172), [36](https://github.com/electron/electron/pull/46173))</span> #### Fixes - Fixed NODE_OPTIONS parsing for child processes on macOS. [#&#8203;46242](https://github.com/electron/electron/pull/46242) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46244), [36](https://github.com/electron/electron/pull/46243))</span> - Fixed an issue where `system-context-menu` incorrectly fired for all regions in frameless windows. [#&#8203;46175](https://github.com/electron/electron/pull/46175) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/46025), [35](https://github.com/electron/electron/pull/46178), [36](https://github.com/electron/electron/pull/46002))</span> - Fixed an issue where `webContents.printToPDF()` didn't work as expected with cross-process subframes. [#&#8203;46258](https://github.com/electron/electron/pull/46258) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46257), [36](https://github.com/electron/electron/pull/46259))</span> - Fixed an issue where the resizing border didn't work as expected on Wayland windows. [#&#8203;46223](https://github.com/electron/electron/pull/46223) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/46222), [35](https://github.com/electron/electron/pull/46224), [36](https://github.com/electron/electron/pull/46225))</span> - Fixed an issue with token formatting for tokens received after calling `pushNotifications.registerForAPNSNotifications()`. [#&#8203;46150](https://github.com/electron/electron/pull/46150) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46148), [36](https://github.com/electron/electron/pull/46149))</span> - Fixed build failure when building with printing disabled. [#&#8203;46286](https://github.com/electron/electron/pull/46286) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46285), [36](https://github.com/electron/electron/pull/46284))</span> - Fixed crash with out-of-bounds string read when parsing NODE_OPTIONS. [#&#8203;46246](https://github.com/electron/electron/pull/46246) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46248), [36](https://github.com/electron/electron/pull/46247))</span> #### Other Changes - Improved performance of desktopCapturer.getSources when not requesting thumbnails on macOS. [#&#8203;46250](https://github.com/electron/electron/pull/46250) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46249), [36](https://github.com/electron/electron/pull/46251))</span> ### [`v34.3.4`](https://github.com/electron/electron/releases/tag/v34.3.4): electron v34.3.4 [Compare Source](https://github.com/electron/electron/compare/v34.3.3...v34.3.4) ### Release Notes for v34.3.4 #### Fixes - Fixed an issue where Web Workers crashed on unhandled rejections. [#&#8203;46019](https://github.com/electron/electron/pull/46019) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46020), [36](https://github.com/electron/electron/pull/46021))</span> - Fixed an issue where snapped windows in Windows may sometimes be improperly restored. [#&#8203;46039](https://github.com/electron/electron/pull/46039) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/46038), [35](https://github.com/electron/electron/pull/46040), [36](https://github.com/electron/electron/pull/46041))</span> - Fixed incorrect titlebar in file save dialogs. [#&#8203;46076](https://github.com/electron/electron/pull/46076) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/46075), [35](https://github.com/electron/electron/pull/46074), [36](https://github.com/electron/electron/pull/46077))</span> - Fixed title changes to not occur while navigating within a page. [#&#8203;46034](https://github.com/electron/electron/pull/46034) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/46035), [36](https://github.com/electron/electron/pull/46036))</span> #### Other Changes - Security: backported fix for [`3820050`](https://github.com/electron/electron/commit/382005099). [#&#8203;46009](https://github.com/electron/electron/pull/46009) - Security: backported fix for [`3907431`](https://github.com/electron/electron/commit/390743124). [#&#8203;46008](https://github.com/electron/electron/pull/46008) - Security: backported fix for CVE-2025-1920. [#&#8203;46011](https://github.com/electron/electron/pull/46011) ### [`v34.3.3`](https://github.com/electron/electron/releases/tag/v34.3.3): electron v34.3.3 [Compare Source](https://github.com/electron/electron/compare/v34.3.2...v34.3.3) ### Release Notes for v34.3.3 #### Fixes - Backported fix for [`3919071`](https://github.com/electron/electron/commit/391907157), [`3613701`](https://github.com/electron/electron/commit/361370195). [#&#8203;45966](https://github.com/electron/electron/pull/45966) #### Other Changes - Fixed an issue where Electron could fail to load on some older Linux distributions. [#&#8203;45982](https://github.com/electron/electron/pull/45982) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/45983), [36](https://github.com/electron/electron/pull/45984))</span> ### [`v34.3.2`](https://github.com/electron/electron/releases/tag/v34.3.2): electron v34.3.2 [Compare Source](https://github.com/electron/electron/compare/v34.3.1...v34.3.2) ### Release Notes for v34.3.2 #### Fixes - Improved webContents loading time when resolving fonts for uncommon scripts. [#&#8203;45917](https://github.com/electron/electron/pull/45917) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/45918), [36](https://github.com/electron/electron/pull/45919))</span> #### Other Changes - Backported fix for [`4010597`](https://github.com/electron/electron/commit/401059730). [#&#8203;45939](https://github.com/electron/electron/pull/45939) - Backported fix for [`4010597`](https://github.com/electron/electron/commit/401059730). [#&#8203;45944](https://github.com/electron/electron/pull/45944) ### [`v34.3.1`](https://github.com/electron/electron/releases/tag/v34.3.1): electron v34.3.1 [Compare Source](https://github.com/electron/electron/compare/v34.3.0...v34.3.1) ### Release Notes for v34.3.1 #### Fixes - Fixed an issue where `contextmenu` events wouldn't be correctly dispatched in draggable regions on Linux. [#&#8203;45840](https://github.com/electron/electron/pull/45840) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/45841))</span> - Fixed an issue where `setContentProtection(true)` was reverted when a given window was hidden. [#&#8203;45890](https://github.com/electron/electron/pull/45890) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/45889))</span> - Fixed invalid memory access in pdf viewer which lead to random crashes. [#&#8203;45880](https://github.com/electron/electron/pull/45880) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/45879))</span> #### Other Changes - Fixed an issue where native Node.js addons including `uv.h` before `node.h` don't compile as expected. [#&#8203;45870](https://github.com/electron/electron/pull/45870) ### [`v34.3.0`](https://github.com/electron/electron/releases/tag/v34.3.0): electron v34.3.0 [Compare Source](https://github.com/electron/electron/compare/v34.2.0...v34.3.0) ### Release Notes for v34.3.0 #### Features - Added support for `roundedCorners` BrowserWindow constructor option on Windows. [#&#8203;45739](https://github.com/electron/electron/pull/45739) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/45740))</span> #### Fixes - Backported fix for a upstream bug that cause Offscreen Rendering to stutter. [#&#8203;45659](https://github.com/electron/electron/pull/45659) <span style="font-size:small;">(Also in [32](https://github.com/electron/electron/pull/45657), [33](https://github.com/electron/electron/pull/45658), [35](https://github.com/electron/electron/pull/45660))</span> - Fixed WebFrameMain crash related to accessing speculative frames that have been destroyed. [#&#8203;45687](https://github.com/electron/electron/pull/45687) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/45688), [35](https://github.com/electron/electron/pull/45686))</span> - Fixed `v8.setHeapSnapshotNearHeapLimit` api in main and utility process, along with support for `--diagnostic-dir` Node.js cli flag to specify the directory to save the heap snapshots. [#&#8203;45644](https://github.com/electron/electron/pull/45644) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/45645), [35](https://github.com/electron/electron/pull/45632))</span> - Fixed a crash that could occur in OSR on window close. [#&#8203;45629](https://github.com/electron/electron/pull/45629) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/45630))</span> - Fixed a potential crash when calling legacy `getUserMedia` with an invalid `chromeMediaSourceId`. [#&#8203;45756](https://github.com/electron/electron/pull/45756) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/45755))</span> - Fixed a potential issues permissions in the Pointer Lock API after focus loss and regain. [#&#8203;45627](https://github.com/electron/electron/pull/45627) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/45628))</span> - Fixed an issue where Electron may experience crashes on Linux with 16KiB pages. [#&#8203;45571](https://github.com/electron/electron/pull/45571) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/45602))</span> - Fixed crash on startup with asan build on macOS. [#&#8203;45567](https://github.com/electron/electron/pull/45567) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/45568), [35](https://github.com/electron/electron/pull/45569))</span> - Fixed drag and drop icons not showing on Windows. [#&#8203;45778](https://github.com/electron/electron/pull/45778) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/45777))</span> - Fixed file preview window reappearing when calling `win.closeFilePreview` twice on macOS. [#&#8203;45662](https://github.com/electron/electron/pull/45662) <span style="font-size:small;">(Also in [32](https://github.com/electron/electron/pull/45661), [33](https://github.com/electron/electron/pull/45663), [35](https://github.com/electron/electron/pull/45664))</span> - Fixed web worker scripts failing to load for chrome extensions. [#&#8203;45710](https://github.com/electron/electron/pull/45710) <span style="font-size:small;">(Also in [32](https://github.com/electron/electron/pull/45709), [33](https://github.com/electron/electron/pull/45711), [35](https://github.com/electron/electron/pull/45708))</span> #### Other Changes - Security: backported fix for [`3837725`](https://github.com/electron/electron/commit/383772517). [#&#8203;45704](https://github.com/electron/electron/pull/45704) - Updated Chromium to 132.0.6834.210. [#&#8203;45805](https://github.com/electron/electron/pull/45805) - Updated Node.js to v20.18.3. [#&#8203;45575](https://github.com/electron/electron/pull/45575) ### [`v34.2.0`](https://github.com/electron/electron/releases/tag/v34.2.0): electron v34.2.0 [Compare Source](https://github.com/electron/electron/compare/v34.1.1...v34.2.0) ### Release Notes for v34.2.0 #### Features - Added `webContents.navigationHistory.restore(index, entries)` API that allows restoration of navigation history. [#&#8203;45584](https://github.com/electron/electron/pull/45584) #### Fixes - Fixed an issue where windows on Windows with `backgroundMaterial` lost effect on maximization. [#&#8203;45526](https://github.com/electron/electron/pull/45526) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/45525))</span> - Fixed crash when accessing WebFrameMain frames and name attributes on destroyed frames. [#&#8203;45510](https://github.com/electron/electron/pull/45510) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/45509), [35](https://github.com/electron/electron/pull/45508))</span> - Fixed the path for a needed library used for mksnapshot. [#&#8203;45544](https://github.com/electron/electron/pull/45544) <span style="font-size:small;">(Also in [32](https://github.com/electron/electron/pull/45545), [33](https://github.com/electron/electron/pull/45547), [35](https://github.com/electron/electron/pull/45546))</span> #### Other Changes - Updated Chromium to 132.0.6834.196. [#&#8203;45516](https://github.com/electron/electron/pull/45516) - Updated Node.js to v20.18.2. [#&#8203;45300](https://github.com/electron/electron/pull/45300) ### [`v34.1.1`](https://github.com/electron/electron/releases/tag/v34.1.1): electron v34.1.1 [Compare Source](https://github.com/electron/electron/compare/v34.1.0...v34.1.1) ### Release Notes for v34.1.1 #### Other Changes - Backported fix for [`3872580`](https://github.com/electron/electron/commit/387258077),383070811. [#&#8203;45497](https://github.com/electron/electron/pull/45497) ### [`v34.1.0`](https://github.com/electron/electron/releases/tag/v34.1.0): electron v34.1.0 [Compare Source](https://github.com/electron/electron/compare/v34.0.2...v34.1.0) ### Release Notes for v34.1.0 #### Features - Added `view.getVisible()`. [#&#8203;45410](https://github.com/electron/electron/pull/45410) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/45409))</span> - Added permission support for `document.executeCommand("paste")`. [#&#8203;45472](https://github.com/electron/electron/pull/45472) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/45473), [35](https://github.com/electron/electron/pull/45471))</span> #### Fixes - Fixed a bug where the default path didn't always correctly fill the Name field in KDialogs on Linux. [#&#8203;45419](https://github.com/electron/electron/pull/45419) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/45420))</span> - Fixed an issue where RTL tooltips could be incorrect when using WCO on Windows. [#&#8203;45426](https://github.com/electron/electron/pull/45426) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/45424), [35](https://github.com/electron/electron/pull/45425))</span> - Fixed an issue where Windows Control Overlay didn't work with some window configurations. [#&#8203;45478](https://github.com/electron/electron/pull/45478) - Fixed an issue where selection of multiple directories with the `dialog` module didn't work on Linux. [#&#8203;45395](https://github.com/electron/electron/pull/45395) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/45394))</span> #### Other Changes - Added `NSPrefersDisplaySafeAreaCompatibilityMode` = `false` to Info.plist to remove "Scale to fit below built-in camera." from app options. [#&#8203;45469](https://github.com/electron/electron/pull/45469) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/45470), [35](https://github.com/electron/electron/pull/45357))</span> - Updated Chromium to 132.0.6834.194. [#&#8203;45480](https://github.com/electron/electron/pull/45480) ### [`v34.0.2`](https://github.com/electron/electron/releases/tag/v34.0.2): electron v34.0.2 [Compare Source](https://github.com/electron/electron/compare/v34.0.1...v34.0.2) ### Release Notes for v34.0.2 #### Fixes - Fixed a crash when calling `shell.readShortcutLink` caused by `PKEY_AppUserModel_ToastActivatorCLSID` sometimes being represented by a string uuid. [#&#8203;45350](https://github.com/electron/electron/pull/45350) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/45349))</span> - Fixed a potential crash in `chrome.tabs.update()`. [#&#8203;45304](https://github.com/electron/electron/pull/45304) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/45303), [35](https://github.com/electron/electron/pull/45302))</span> - Fixed an issue where print scaling could be too small during silent print. [#&#8203;45283](https://github.com/electron/electron/pull/45283) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/45262))</span> - Fixed crash in gin::wrappable::secondweakcallback. [#&#8203;45376](https://github.com/electron/electron/pull/45376) #### Other Changes - Updated Chromium to 132.0.6834.159. [#&#8203;45313](https://github.com/electron/electron/pull/45313) ### [`v34.0.1`](https://github.com/electron/electron/releases/tag/v34.0.1): electron v34.0.1 [Compare Source](https://github.com/electron/electron/compare/v34.0.0...v34.0.1) ### Release Notes for v34.0.1 #### Fixes - Addressed two possible crashes in the File System Access API. [#&#8203;45260](https://github.com/electron/electron/pull/45260) <span style="font-size:small;">(Also in [35](https://github.com/electron/electron/pull/45261))</span> - Fixed an issue where drag-dropping two directories would cause `getAsFileSystemHandle` to never resolve. [#&#8203;45258](https://github.com/electron/electron/pull/45258) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/45257), [35](https://github.com/electron/electron/pull/45256))</span> - The `avoidClosingConnections` option for `session.clearData` now properly defaults to `false` when the `dataTypes` option is not set. [#&#8203;45208](https://github.com/electron/electron/pull/45208) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/45207))</span> ### [`v34.0.0`](https://github.com/electron/electron/releases/tag/v34.0.0): electron v34.0.0 [Compare Source](https://github.com/electron/electron/compare/v33.4.11...v34.0.0) ### Release Notes for v34.0.0 #### Stack Upgrades - Chromium `132.0.6834.83` - [New in 132](https://developer.chrome.com/blog/new-in-chrome-132/) - [New in 131](https://developer.chrome.com/blog/new-in-chrome-131/) - Node `20.18.1` - [Node 20.18.1 blog post](https://nodejs.org/en/blog/release/v20.18.1/) - V8 `13.2` #### Breaking Changes - Made menu bar hidden on fullscreen in Windows. [#&#8203;43402](https://github.com/electron/electron/pull/43402) #### Features ##### Additions - Added APIs to manage shared dictionaries for compression efficiency using Brotli or ZStandard. The new APIs are `session.getSharedDictionaryUsageInfo()`, `session.getSharedDictionaryInfo(options)`, `session.clearSharedDictionaryCache()`, and `session.clearSharedDictionaryCacheForIsolationKey(options)`. [#&#8203;44950](https://github.com/electron/electron/pull/44950) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/44951))</span> - Added `WebFrameMain.collectJavaScriptCallStack()` for accessing the JavaScript call stack of unresponsive renderers. [#&#8203;44938](https://github.com/electron/electron/pull/44938) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/44937))</span> - Added `WebFrameMain.detached` for frames in an unloading state. - Added `WebFrameMain.isDestroyed()` to determine if a frame has been destroyed. - Fixed `webFrameMain.fromId(processId, frameId)` returning a `WebFrameMain` instance which doesn't match the given parameters when the frame is unloading. [#&#8203;43473](https://github.com/electron/electron/pull/43473) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/44209))</span> - Added error event in utility process to support diagnostic reports on V8 fatal errors. [#&#8203;43774](https://github.com/electron/electron/pull/43774) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/43997))</span> - Added support for the macOS system picker in `desktopCapturer` and `setDisplayMediaRequestHandler`. [#&#8203;43581](https://github.com/electron/electron/pull/43581) <span style="font-size:small;">(Also in [32](https://github.com/electron/electron/pull/43679), [33](https://github.com/electron/electron/pull/43680))</span> - Feat: GPU accelerated shared texture offscreen rendering. [#&#8203;42953](https://github.com/electron/electron/pull/42953) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/44511))</span> ##### Improvements - Performance improvements when processing microtasks. [#&#8203;44471](https://github.com/electron/electron/pull/44471) <span style="font-size:small;">(Also in [32](https://github.com/electron/electron/pull/44472), [33](https://github.com/electron/electron/pull/44473))</span> #### Fixes - Fixed file chooser dialogs for flaptak applications. [#&#8203;44681](https://github.com/electron/electron/pull/44681) - Fixed issue where 'contextmenu' event is emitted twice on macOS. [#&#8203;44997](https://github.com/electron/electron/pull/44997) ##### Also in earlier versions... - Fixed BrowserView auto resize issue. [#&#8203;43463](https://github.com/electron/electron/pull/43463) <span style="font-size:small;">(Also in [31](https://github.com/electron/electron/pull/43635), [32](https://github.com/electron/electron/pull/43637), [33](https://github.com/electron/electron/pull/43636))</span> - Fixed `MenuItem.click` handler not setting `focusedWindow` parameter when focused window is a `BaseWindow`. [#&#8203;43404](https://github.com/electron/electron/pull/43404) <span style="font-size:small;">(Also in [31](https://github.com/electron/electron/pull/43439), [32](https://github.com/electron/electron/pull/43437), [33](https://github.com/electron/electron/pull/43438))</span> - Fixed `chrome.i18n` extension API being unavailable in service workers. [#&#8203;45036](https://github.com/electron/electron/pull/45036) <span style="font-size:small;">(Also in [31](https://github.com/electron/electron/pull/45035), [32](https://github.com/electron/electron/pull/45038), [33](https://github.com/electron/electron/pull/45037))</span> - Fixed `trace-startup` not working on macOS. [#&#8203;44275](https://github.com/electron/electron/pull/44275) <span style="font-size:small;">(Also in [32](https://github.com/electron/electron/pull/44292), [33](https://github.com/electron/electron/pull/44276))</span> - Fixed a build failure when the `enable_plugins` build flag is false. [#&#8203;44003](https://github.com/electron/electron/pull/44003) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/44025))</span> - Fixed a crash that could occur when calling `shell.readShortcutLink` on Windows. [#&#8203;44804](https://github.com/electron/electron/pull/44804) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/44803))</span> - Fixed a crash when calling `focus` on a `WebView`'s `webContents`. [#&#8203;43921](https://github.com/electron/electron/pull/43921) <span style="font-size:small;">(Also in [31](https://github.com/electron/electron/pull/43933), [32](https://github.com/electron/electron/pull/43934), [33](https://github.com/electron/electron/pull/43932))</span> - Fixed a potential issue accessing a child window document when overriding browserWindow creation via `setWindowOpenHandler`. [#&#8203;43775](https://github.com/electron/electron/pull/43775) <span style="font-size:small;">(Also in [31](https://github.com/electron/electron/pull/43878), [32](https://github.com/electron/electron/pull/43877), [33](https://github.com/electron/electron/pull/43816))</span> - Fixed a potential issue with fillable PDF forms saving correctly in some circumstances. [#&#8203;43667](https://github.com/electron/electron/pull/43667) <span style="font-size:small;">(Also in [31](https://github.com/electron/electron/pull/44020), [32](https://github.com/electron/electron/pull/43687), [33](https://github.com/electron/electron/pull/43686))</span> - Fixed an issue when dragging to resize when using Window Controls Overlay on Linux. [#&#8203;43724](https://github.com/electron/electron/pull/43724) <span style="font-size:small;">(Also in [31](https://github.com/electron/electron/pull/43745), [32](https://github.com/electron/electron/pull/43743), [33](https://github.com/electron/electron/pull/43744))</span> - Fixed an issue where `BaseWindow.setTouchBar` didn't work as expected. [#&#8203;43353](https://github.com/electron/electron/pull/43353) <span style="font-size:small;">(Also in [30](https://github.com/electron/electron/pull/43419), [31](https://github.com/electron/electron/pull/43420), [32](https://github.com/electron/electron/pull/43421), [33](https://github.com/electron/electron/pull/43422))</span> - Fixed an issue where `EventSource` was `undefined` in both renderer and worker processes when Node.js integration was enabled. [#&#8203;44495](https://github.com/electron/electron/pull/44495) <span style="font-size:small;">(Also in [32](https://github.com/electron/electron/pull/44497), [33](https://github.com/electron/electron/pull/44496))</span> - Fixed an issue where `WebContentsView`s did not show correctly in some circumstances on macOS after being added as child views. [#&#8203;43638](https://github.com/electron/electron/pull/43638) <span style="font-size:small;">(Also in [31](https://github.com/electron/electron/pull/43697), [32](https://github.com/electron/electron/pull/43698), [33](https://github.com/electron/electron/pull/43696))</span> - Fixed an issue where `WebContentsView`s were being improperly removed. [#&#8203;44670](https://github.com/electron/electron/pull/44670) <span style="font-size:small;">(Also in [31](https://github.com/electron/electron/pull/44673), [32](https://github.com/electron/electron/pull/44672), [33](https://github.com/electron/electron/pull/44671))</span> - Fixed an issue where `defaultPath` did not work for all users on Linux when creating an open file dialog. [#&#8203;43570](https://github.com/electron/electron/pull/43570) <span style="font-size:small;">(Also in [30](https://github.com/electron/electron/pull/43631), [31](https://github.com/electron/electron/pull/43630), [32](https://github.com/electron/electron/pull/43629), [33](https://github.com/electron/electron/pull/43595))</span> - Fixed an issue where `resize` wasn't being emitted for single-pixel resizes on Windows. [#&#8203;44722](https://github.com/electron/electron/pull/44722) <span style="font-size:small;">(Also in [32](https://github.com/electron/electron/pull/44724), [33](https://github.com/electron/electron/pull/44723))</span> - Fixed an issue where a `utilityProcess` pid would not be `undefined` after exit. [#&#8203;44695](https://github.com/electron/electron/pull/44695) <span style="font-size:small;">(Also in [32](https://github.com/electron/electron/pull/44693), [33](https://github.com/electron/electron/pull/44694))</span> - Fixed an issue where an exception could be thrown on BrowserView after its owner BrowserWindow was closed. [#&#8203;43972](https://github.com/electron/electron/pull/43972) <span style="font-size:small;">(Also in [31](https://github.com/electron/electron/pull/43999), [32](https://github.com/electron/electron/pull/44001), [33](https://github.com/electron/electron/pull/44000))</span> - Fixed an issue where buttons shown under the Window Controls Overlay API were missing tooltips. [#&#8203;44759](https://github.com/electron/electron/pull/44759) <span style="font-size:small;">(Also in [32](https://github.com/electron/electron/pull/44758), [33](https://github.com/electron/electron/pull/44757))</span> - Fixed an issue where clicking the eyedropper icon did nothing instead of opening an eyedropper for color selection as expected. [#&#8203;43685](https://github.com/electron/electron/pull/43685) <span style="font-size:small;">(Also in [32](https://github.com/electron/electron/pull/43786), [33](https://github.com/electron/electron/pull/43700))</span> - Fixed an issue where closing a window after printing on Linux triggered a crash. [#&#8203;44284](https://github.com/electron/electron/pull/44284) <span style="font-size:small;">(Also in [31](https://github.com/electron/electron/pull/44283), [32](https://github.com/electron/electron/pull/44282), [33](https://github.com/electron/electron/pull/44285))</span> - Fixed an issue where the `exit` event could be emitted twice from the `utilityProcess`. [#&#8203;44265](https://github.com/electron/electron/pull/44265) <span style="font-size:small;">(Also in [31](https://github.com/electron/electron/pull/44267), [32](https://github.com/electron/electron/pull/44268), [33](https://github.com/electron/electron/pull/44266))</span> - Fixed an issue where the webContents `context-menu` event was not emitted when using `-webkit-app-region: drag`. [#&#8203;44799](https://github.com/electron/electron/pull/44799) <span style="font-size:small;">(Also in [32](https://github.com/electron/electron/pull/44798), [33](https://github.com/electron/electron/pull/44800))</span> - Fixed an issue where the windows control overlay was unexpectedly visible in fullscreen on Linux. [#&#8203;44641](https://github.com/electron/electron/pull/44641) <span style="font-size:small;">(Also in [31](https://github.com/electron/electron/pull/44643), [32](https://github.com/electron/electron/pull/44642), [33](https://github.com/electron/electron/pull/44640))</span> - Fixed an issue with `resize` events being emitted on Windows when the window was moved but not resized. [#&#8203;43431](https://github.com/electron/electron/pull/43431) <span style="font-size:small;">(Also in [32](https://github.com/electron/electron/pull/43644), [33](https://github.com/electron/electron/pull/43457))</span> - Fixed an possible crash when using draggable regions and BaseWindows to get the `context-menu` event. [#&#8203;44952](https://github.com/electron/electron/pull/44952) <span style="font-size:small;">(Also in [32](https://github.com/electron/electron/pull/44954), [33](https://github.com/electron/electron/pull/44953))</span> - Fixed bug where camera permissions affected screen sharing. [#&#8203;43517](https://github.com/electron/electron/pull/43517) <span style="font-size:small;">(Also in [32](https://github.com/electron/electron/pull/43544), [33](https://github.com/electron/electron/pull/43543))</span> - Fixed build failure when the PDF viewer is disabled. [#&#8203;44964](https://github.com/electron/electron/pull/44964) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/44965))</span> - Fixed calling setAlwaysOnTop on a hidden window which is then shown with showInactive on Linux under X11. [#&#8203;44322](https://github.com/electron/electron/pull/44322) <span style="font-size:small;">(Also in [31](https://github.com/electron/electron/pull/44323), [32](https://github.com/electron/electron/pull/44325), [33](https://github.com/electron/electron/pull/44324))</span> - Fixed closing a window with more than one attached sheet on macOS. [#&#8203;43706](https://github.com/electron/electron/pull/43706) <span style="font-size:small;">(Also in [31](https://github.com/electron/electron/pull/43953), [32](https://github.com/electron/electron/pull/43954), [33](https://github.com/electron/electron/pull/43952))</span> - Fixed crash in net api when utility process exits. [#&#8203;44731](https://github.com/electron/electron/pull/44731) <span style="font-size:small;">(Also in [32](https://github.com/electron/electron/pull/44730), [33](https://github.com/electron/electron/pull/44729))</span> - Fixed crash when network process terminates while a net log is running. [#&#8203;44418](https://github.com/electron/electron/pull/44418) <span style="font-size:small;">(Also in [31](https://github.com/electron/electron/pull/44421), [32](https://github.com/electron/electron/pull/44419), [33](https://github.com/electron/electron/pull/44420))</span> - Fixed crash when rendering super menu accelerator on linux. [#&#8203;44346](https://github.com/electron/electron/pull/44346) <span style="font-size:small;">(Also in [32](https://github.com/electron/electron/pull/44623), [33](https://github.com/electron/electron/pull/44520))</span> - Fixed crash when running `getDisplayMedia` from multiple iframes. [#&#8203;43905](https://github.com/electron/electron/pull/43905) <span style="font-size:small;">(Also in [33](https://github.com/electron/electron/pull/44228))</span> - Fixed custom spell checker getting stuck in infinite loop using 100% CPU. [#&#8203;45020](https://github.com/electron/electron/pull/45020) <span style="font-size:small;">(Also in [31](https://github.com/electron/electron/pull/45022), [32](https://github.com/electron/electron/pull/45019), [33](https://github.com/electron/electron/pull/45021))</span> - Fixed devtools to allow restoring saved dock state on Linux when WCO is enabled. [#&#8203;43490](https://github.com/electron/electron/pull/43490) <span style="font-size:small;">(Also in [31](https://github.com/electron/electron/pull/43500), [32](https://github.com/electron/electron/pull/43501), [33](https://github.com/electron/electron/pull/43499))</span> - Fixed electron app in ozone/wayland not bein > ❗ **Important** > > ✂ PR body was truncated to here.
First-time contributor

Title

Update dependency electron to v45 [SECURITY]


PR Type

Bug fix


Description

  • Updates Electron dependency to version 45.0.0

  • Resolves heap buffer overflow vulnerability (CVE-2024-46993)

  • Ensures security patches for nativeImage functions are applied


Diagram Walkthrough

flowchart LR
  Old["Electron v25.9.8"] -. "vulnerable" .-> New["Electron v45.0.0"]
  New -. "patched" .-> Fix["CVE-2024-46993 Fixed"]

File Walkthrough

Relevant files
Bug fix
package.json
Bump Electron major version to 45 for security patch         

package.json

  • Updated electron version from ^25.9.8 to ^45.0.0 in devDependencies
  • Removed outdated Electron version to address known security
    vulnerabilities
  • No other dependencies or configurations were modified in this change
+1/-1     

## Title <!-- pr-agent:describe:persistent --> Update dependency electron to v45 [SECURITY] ___ ### **PR Type** Bug fix ___ ### **Description** - Updates Electron dependency to version 45.0.0 - Resolves heap buffer overflow vulnerability (CVE-2024-46993) - Ensures security patches for `nativeImage` functions are applied ___ ### Diagram Walkthrough ```mermaid flowchart LR Old["Electron v25.9.8"] -. "vulnerable" .-> New["Electron v45.0.0"] New -. "patched" .-> Fix["CVE-2024-46993 Fixed"] ``` <details> <summary><h3> File Walkthrough</h3></summary> <table><thead><tr><th></th><th align="left">Relevant files</th></tr></thead><tbody><tr><td><strong>Bug fix</strong></td><td><table> <tr> <td> <details> <summary><strong>package.json</strong><dd><code>Bump Electron major version to 45 for security patch</code>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </dd></summary> <hr> package.json <ul><li>Updated <code>electron</code> version from <code>^25.9.8</code> to <code>^45.0.0</code> in devDependencies<br> <li> Removed outdated Electron version to address known security <br>vulnerabilities<br> <li> No other dependencies or configurations were modified in this change</ul> </details> </td> <td><a href="https://git.kreative-kompas.com/khyretos/LoquendoBot/src/branch/renovate/npm-electron-vulnerability/package.json">+1/-1</a>&nbsp; &nbsp; &nbsp; </td> </tr> </table></td></tr></tr></tbody></table> </details> ___
First-time contributor

PR Reviewer Guide 🔍

(Review updated until commit 28a55a4bf9)

Here are some key observations to aid the review process:

🧪 No relevant tests
🔒 No security concerns identified
⚡ No major issues detected
## PR Reviewer Guide 🔍 <!-- pr-agent:review:full --> #### (Review updated until commit https://git.kreative-kompas.com/khyretos/LoquendoBot/commit/28a55a4bf98ed3e2f19d54df49435bcb09f3347e) Here are some key observations to aid the review process: <table> <tr><td>🧪&nbsp;<strong>No relevant tests</strong></td></tr> <tr><td>🔒&nbsp;<strong>No security concerns identified</strong></td></tr> <tr><td>⚡&nbsp;<strong>No major issues detected</strong></td></tr> </table>
First-time contributor

/review

/review
First-time contributor

/review

/review
This pull request can be merged automatically.
You are not authorized to merge this pull request.
View command line instructions

Checkout

From your project repository, check out a new branch and test the changes.
git fetch -u origin renovate/npm-electron-vulnerability:renovate/npm-electron-vulnerability
git switch renovate/npm-electron-vulnerability

Merge

Merge the changes and update on Forgejo.

Warning: The "Autodetect manual merge" setting is not enabled for this repository, you will have to mark this pull request as manually merged afterwards.

git switch main
git merge --no-ff renovate/npm-electron-vulnerability
git switch renovate/npm-electron-vulnerability
git rebase main
git switch main
git merge --ff-only renovate/npm-electron-vulnerability
git switch renovate/npm-electron-vulnerability
git rebase main
git switch main
git merge --no-ff renovate/npm-electron-vulnerability
git switch main
git merge --squash renovate/npm-electron-vulnerability
git switch main
git merge --ff-only renovate/npm-electron-vulnerability
git switch main
git merge renovate/npm-electron-vulnerability
git push origin main
Sign in to join this conversation.
No description provided.