Electron v37.0.0
Release Notes
Stack Upgrades
Chromium
138.0.7204.35
Node
22.16.0
V8
13.8
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 tonull
. #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
andinnerHeight
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 toServiceWorkerMain
. #45863Added 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 inmenu.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)
andscreen.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
andheader
on macOS. #47245Added 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
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
andelectron.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 theselect-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 theuserAgent
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 whenmediaSize
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 withWebContentsView
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
Backported fix for 401059730. #45936
Backported fix for 401059730. #45941
Backported fix for 409059706. #47358
Backported fix for 420637585. #47356
Fixed an issue where Electron could fail to load on some older Linux distributions. #45974 (Also in 34, 35, 36)
Reverts a change that greyed out disabled menu items on macOS (https://github.com/electron/electron/pull/46307). #46502 (Also in 34, 35, 36)
Security: backported fix for CVE-2025-5419. #47352
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.