Skip to content

Releases: electron/electron

electron v42.0.0-alpha.1

14 Mar 18:51
f4a50a8

Choose a tag to compare

Pre-release

Note: This is an alpha release. Please file new issues for any bugs you find in it.

This release is published to npm under the alpha tag and can be installed via npm install electron@alpha, or npm install [email protected].

Release Notes for v42.0.0-alpha.1

Features

  • 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 app.isActive() to check if the app is the active/foreground application (macOS only). #49622
  • 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 add view.setBackgroundBlur. #48812
  • 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 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 the ability to disable auto-focusing of WebContents on navigation using webPreferences.focusOnNavigation. #49425 (Also in 40, 41)
  • Changed offscreen scale factor use 1.0f as default. #49683
  • 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
  • Enable 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 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)
  • 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, instead of using user's primary display's value. #48730 (Also in 40)
  • Fixed a crash that could occur when using the File System Access API. #49578 (Also in 39, 40, 41)
  • Fixed a macOS crash when creating a new tab from the tab overview. #49917 (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 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 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 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-ins...
Read more

electron v41.0.2

13 Mar 05:57
42d7f27

Choose a tag to compare

Release Notes for v41.0.2

Other Changes

  • Backported fix for b/491421267. #50234

electron v40.8.2

13 Mar 05:25
d32b8a6

Choose a tag to compare

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

electron v39.8.2

13 Mar 07:46
8e0f534

Choose a tag to compare

Release Notes for v39.8.2

Other Changes

  • Backported fix for b/491421267. #50230

electron v41.0.1

12 Mar 20:15
2396024

Choose a tag to compare

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

electron v40.8.1

12 Mar 14:51
9be5389

Choose a tag to compare

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

electron v39.8.1

12 Mar 19:06
bd3abf3

Choose a tag to compare

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

  • Backported fix for b/484983991. #50167
  • Backported fix for chromium:485622239. #50171
  • Updated Node.js to v22.22.1. #50100

electron v41.0.0

11 Mar 01:20
3678edf

Choose a tag to compare

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 b...
Read more

electron v38.8.6

10 Mar 22:06
fbc489c

Choose a tag to compare

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)

electron v41.0.0-beta.8

06 Mar 06:41
94bc0ec

Choose a tag to compare

Pre-release

Note: This is a beta release. Please file new issues for any bugs you find in it.

This release is published to npm under the beta tag and can be installed via npm install electron@beta, or npm install [email protected].

Release Notes for v41.0.0-beta.8

Features

  • 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)

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. #50006 (Also in 39, 40)
  • Fixed an issue where VideoFrame objects returned through contextBridge had an incorrect prototype. #50023 (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 build failure when printing is disabled. #50077
  • Fixed shutdown crash on windows when hidden titlebar is enabled. #50055 (Also in 39, 40)
  • Global shortcuts can now be registered more reliably on Wayland using the globalShortcut API. #50051

Unknown

  • Fixed CSS selector syntax in default app styles to properly apply animations to hero icons. #50033