Electron Releases

Filter by channel Filter by major release

Release Notes for v33.0.0

Stack Upgrades

Breaking Changes

  • Deprecated usage of textured BrowserWindow type option on macOS. #43133
  • Custom protocol URLs that use Windows file paths will no longer work correctly with the deprecated protocol.registerFileProtocol and the baseURLForDataURL property on BrowserWindow.loadURL, WebContents.loadURL, and <webview>.loadURL. #43977

Features

Additions

  • Added the event client-certificate-request-password to app. It is dispatched when a PIN is needed to unlock a cryptographic device. #41205
  • Added error event in utility process to support diagnostic reports on V8 fatal errors. #43997
  • Added View.setBorderRadius(radius) for customizing the border radius of views—with compatibility for WebContentsView. #42320
  • Added Linux support for the Windows Control Overlay API. #41769 (Also in 30, 31, 32)
  • Added support for the macOS system picker in desktopCapturer and setDisplayMediaRequestHandler. #43680 (Also in 32)
  • Added DownloadItem.getCurrentBytesPerSecond(), DownloadItem.getPercentComplete(), DownloadItem.getEndTime(). #42805 (Also in 30, 31, 32)
  • Added a new property prefersReducedTransparency to nativeTheme, which indicates whether the user has chosen to reduce OS-level transparency via system accessibility settings. #42862 (Also in 30, 31, 32)
  • Added support for responding to auth requests initiated from utility process via app#login event. #42631 (Also in 32)

Improvements

  • Extended navigationHistory API with 2 new functions for better history management. #42014
  • Ensured that the sender-id hint is set when creating desktop notifications on DBus. #43949 (Also in 31, 32)
  • Aligned failure pathway in File System Access API with upstream when attempting to open a file or directory in a blocked path. #42561 (Also in 30, 31, 32)
  • Enabled zstd compression in net http requests. #43150 (Also in 31, 32)
  • Expose systemPreferences to utilityProcess. #42203 (Also in 30, 31, 32)

Fixes

  • Fixed a build failure when the enable_plugins build flag is false. #44025
  • Fixed mouse cursor turning into loading spinner when starting utility process on Windows. #43731

Also in earlier versions...

  • Fixed BrowserView auto resize issue. #43636 (Also in 31, 32)
  • Fixed MenuItem.click handler not setting focusedWindow parameter when focused window is a BaseWindow. #43438 (Also in 31, 32)
  • Fixed a crash that could occur in some DevTools extensions containing draggable regions. #43179 (Also in 31, 32)
  • Fixed a crash when calling focus on a WebView's webContents. #43932 (Also in 31, 32)
  • Fixed a focus issue when calling BrowserWindow.setTopBrowserView. #42653 (Also in 30, 31, 32)
  • Fixed a potential crash when using off screen rendering. #42920 (Also in 30, 31, 32)
  • Fixed a potential error when calling webContents.close() on a BrowserView. #42633 (Also in 31, 32)
  • Fixed a potential issue accessing a child window document when overriding browserWindow creation via setWindowOpenHandler. #43816 (Also in 31, 32)
  • Fixed a potential issue with fillable PDF forms saving correctly in some circumstances. #43686 (Also in 31, 32)
  • Fixed an error where a minimized or hidden window would thrown an unresponsive error in the main process. #43034 (Also in 32)
  • Fixed an issue when dragging to resize when using Window Controls Overlay on Linux. #43744 (Also in 31, 32)
  • Fixed an issue where Chromium could crash on a dangling unretained pointer in one of several webRequest functions. #42647 (Also in 31, 32)
  • Fixed an issue where High Contrast Mode didn't apply to webContents on Windows. #42853 (Also in 31, 32)
  • Fixed an issue where MessagePorts could close unexpectedly with non-cloneable objects sent via postMessage. #42535 (Also in 30, 31, 32)
  • Fixed an issue where BaseWindow.setTouchBar didn't work as expected. #43422 (Also in 30, 31, 32)
  • Fixed an issue where WebContentsViews did not show correctly in some circumstances on macOS after being added as child views. #43696 (Also in 31, 32)
  • Fixed an issue where defaultPath did not work for all users on Linux when creating an open file dialog. #43595 (Also in 30, 31, 32)
  • Fixed an issue where fetch-dependent interfaces could be missing in Web Workers with nodeIntegrationInWorker enabled. #42579 (Also in 30, 31, 32)
  • Fixed an issue where navigator.mediaDevices.enumerateDevices could return broken results in some cases after calling session.setPermissionCheckHandler. #42775 (Also in 30, 31, 32)
  • Fixed an issue where navigator.mediaDevices.getUserMedia and navigator.getUserMedia should reject with a NotAllowedError if microphone or camera permissions have been denied at the system level on macOS. #42899 (Also in 30, 31, 32)
  • Fixed an issue where navigator.serial.getPorts() incorrectly returned an empty array in some cases. #43101 (Also in 30, 31, 32)
  • Fixed an issue where system-context-menu was not triggered as expected on Windows when using a frameless BrowserWindow. #43243 (Also in 30, 31, 32)
  • Fixed an issue where an exception could be thrown on BrowserView after its owner BrowserWindow was closed. #44000 (Also in 31, 32)
  • Fixed an issue where calling BrowserWindow.setBackgroundColor with some level of transparency could cause a crash. #42824 (Also in 31, 32)
  • Fixed an issue where calling desktopCapturer.getSources on macOS running 14.4 or later would make non-resizable windows resizable. #43013 (Also in 31, 32)
  • Fixed an issue where calling window.print(), webContents.print() or printToPDF from an existing PDF document resulted in a blank page. #43309 (Also in 31, 32)
  • Fixed an issue where calling window.showInactive on macOS did not actually show the window. #43079 (Also in 31, 32)
  • Fixed an issue where clicking the eyedropper icon did nothing instead of opening an eyedropper for color selection as expected. #43700 (Also in 32)
  • Fixed an issue where control could fail to return properly after saving a dialog using showOpenDialogSync on Linux. #42652 (Also in 29, 30, 31, 32)
  • Fixed an issue where sources returned by the desktopCapturer API and screen.getAllDisplays() no longer matched on Windows. #42781 (Also in 31, 32)
  • Fixed an issue where sources returned by the desktopCapturer API and screen.getAllDisplays() no longer matched on Windows. #42883 (Also in 31, 32)
  • Fixed an issue where the File System Access API did not remember the user's last picked directory as expected. #42850 (Also in 30, 31, 32)
  • Fixed an issue where the user-specified default path did not work in some circumstances when using Linux dialogs. #42655 (Also in 30, 31, 32)
  • Fixed an issue where users would be incorrectly notified of print failure upon intentional cancellation. #43337 (Also in 32)
  • Fixed an issue with resize events being emitted on Windows when the window was moved but not resized. #43457 (Also in 32)
  • Fixed behavior when entering/exiting fullscreen fails on macOS. #43112 (Also in 29, 30, 31, 32)
  • Fixed bug where camera permissions affected screen sharing. #43543 (Also in 32)
  • Fixed closing a window with more than one attached sheet on macOS. #43952 (Also in 31, 32)
  • Fixed crash when resolving proxy with session.resolveProxy api. #42878 (Also in 30, 31, 32)
  • Fixed devtools to allow restoring saved dock state on Linux when WCO is enabled. #43499 (Also in 31, 32)
  • Fixed electron app in ozone/wayland not being focused when launched from another app. #43546 (Also in 31, 32)
  • Fixed issues with the vibrancy view on macOS. #43078 (Also in 31, 32)
  • Fixed other apps not being focused when launched from electron ozone/wayland. #43579 (Also in 31, 32)
  • Fixed potential use-after-free during view removal on macOS. #43922 (Also in 31, 32)
  • Fixed several view hierarchy issues related to web contents view on MacOS. #43033 (Also in 31, 32)
  • Fixed the resource leak when using Node.js readable streams as the response body for a custom protocol handler. #43056 (Also in 30, 31, 32)
  • Resolved an issue where desktopCapturer.getSources never fulfilled its promise in some cases. #43080 (Also in 29, 30, 31, 32)
  • Restored Chromium default Content-Disposition header parsing. #43670 (Also in 30, 31, 32)
  • Third time isn't always a charm. Fixed the native macOS Screen Share picker invocation triggering a test Chromium green screen. #43810 (Also in 32)
  • Fix: fixed the npm run lint not working on Windows. #42281 (Also in 31, 32)
  • Fixed a potential crash when removing notifications on Windows. #43040 (Also in 30, 31, 32)
  • Fixed an issue where opening multiple file pickers on Windows via the input tag could cause a crash. #42758 (Also in 30, 31, 32)
  • Fixed crash in gpu process when software compositing is enabled on linux with x11 platform. #42559 (Also in 29, 30, 31, 32)
  • Fixed ffmpeg release on x64 macOS. #43093 (Also in 29, 30, 31, 32)

Documentation

Notices

End of Support for 30.x.y

Electron 30.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.

Release Notes for v32.2.0

Fixes

  • Fixed a crash when calling focus on a WebView's webContents. #43934 (Also in 31, 33)
  • Fixed a potential issue accessing a child window document when overriding browserWindow creation via setWindowOpenHandler. #43877 (Also in 31, 33)
  • Fixed an issue where an exception could be thrown on BrowserView after its owner BrowserWindow was closed. #44001 (Also in 31, 33)
  • Fixed closing a window with more than one attached sheet on macOS. #43954 (Also in 31, 33)
  • Fixed potential use-after-free during view removal on macOS. #43923 (Also in 31, 33)

Other Changes

  • Ensured that the sender-id hint is set when creating desktop notifications on DBus. #43950 (Also in 31, 33)
  • Updated Chromium to 128.0.6613.178. #44086
  • Updated Node.js to v20.18.0. #44116