Electron Releases

Filter by channel Filter by major release

Release Notes for v21.0.0-alpha.2

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 electron@21.0.0-alpha.2.

Fixes

  • Fixed an issue where app.relaunch loses args when execPath is specified. #35254 (Also in 19, 20)

Unknown

  • Fixed a typo in the section on debugging with VSCode. #35285 (Also in 19, 20)

Release Notes for v21.0.0-alpha.1

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 electron@21.0.0-alpha.1.

Breaking Changes

  • Enabled the V8 memory cage for external buffers. See https://www.electronjs.org/blog/v8-memory-cage for more details. #34724
  • Refactored webContents.printToPDF to align with the Chrome Devtools implementation. #33654
  • Renderers are now sandboxed by default unless nodeIntegration: true or sandbox: false is specified. #32869 (Also in 20)

Features

  • Added immersive dark mode on Windows. #33624 (Also in 20)
  • Added support for panel-like behavior. Window can float over full-screened apps. #34388 (Also in 20)
  • Added support for push notifications from APNs for macOS apps. #33574

Fixes

  • Added support for --ozone-platform-hint flag on Linux. #34937 (Also in 19, 20)
  • Adds a warning for building native modules with node-gyp and electron-rebuild, encouraging users to upgrade to >=8.4.0 for node-gyp and >=3.2.8 for electron-rebuild if using Electron 20 or higher.. #35159 (Also in 20)
  • Do not exit when logging initialization fails. #35138 (Also in 20)
  • Enable missing HKDF support in Node.js crypto. #34767
  • Ensures that requestMediaKeySystemAccess eventually resolves / rejects. #34886 (Also in 19, 20)
  • Fixed 20.0.0-beta.8 X11 crash regression. #35075 (Also in 20)
  • Fixed WCO not responding to touch events on windows. #35117 (Also in 18, 19, 20)
  • Fixed _dyld_missing_symbol_abort crash on macOS when using c++ native modules. #34932 (Also in 20)
  • Fixed serial-port-added and serial-port-removed events not firing. #34958 (Also in 20)
  • Fixed webContents.getUserAgent() incorrectly returning an empty string unless previously set. #35069 (Also in 17, 18, 19, 20)
  • Fixed a Windows Control Overlay issue where a window taken directly from minimized to maximized state could have incorrect hover state. #35070 (Also in 19, 20)
  • Fixed a crash when calling BrowserWindow.setEnabled(). #34904 (Also in 18, 19, 20)
  • Fixed a crash when loading a same-origin URL after a render process crash. #34428 (Also in 18, 19, 20)
  • Fixed a performance problem in crashReporter.start() on macOS. #34609 (Also in 17, 18, 19, 20)
  • Fixed a potential crash when changing window settings after initializing WCO with an invalid titleBarStyle. #34833 (Also in 17, 18, 19, 20)
  • Fixed a potential printing hang. #34892 (Also in 20)
  • Fixed alwaysOnTop BrowserWindow option for X11 Linux. #34766 (Also in 18, 19, 20)
  • Fixed an error where setWindowOpenHandler() would crash if the callback threw an error. #34523 (Also in 17, 18, 19, 20)
  • Fixed an issue in which calling setBounds() after e.preventDefault in a 'will-move' or 'will-resize' event wouldn't change the window's shape until the mouse button was released. #34843 (Also in 18, 19, 20)
  • Fixed an issue where BrowserWindows on macOS were incorrectly marked as resizable. #34379 (Also in 18, 19, 20)
  • Fixed an issue where DataList bounds had part of the item text cut off vertically. #34759 (Also in 19, 20)
  • Fixed an issue where Windows Control Overlay buttons did not respect maximizable/minimizable/closable states of a BrowserWindow. #34677 (Also in 17, 18, 19, 20)
  • Fixed an issue where calling BrowserWindow.setRepresentedFilename on macOS with titlebarStyle: 'hiddenInset' or titlebarStyle: 'hidden' inadvertently moves the traffic light location. #34834 (Also in 18, 19, 20)
  • Fixed an issue where calling w.setWindowButtonVisibility(true) immediately after exiting fullscreen fails to show window buttons. #34530 (Also in 18, 19, 20)
  • Fixed an issue where draggable regions were not recalculated when BrowserView bounds changed on Windows. #34582 (Also in 18, 19, 20)
  • Fixed an issue where invalid pageSize values would cause a silent hang and eventual crash. #34893
  • Fixed an issue where invalid print job settings would correctly call back Invalid print settings as the failure reason, but would then not terminate the print job, leading to an eventual crash on exit. #34894 (Also in 20)
  • Fixed an issue where media keys would be sent to Electron on Windows no matter which window was in focus. #34594 (Also in 19, 20)
  • Fixed an issue where normal bounds would not be appropriately updated if the user minimized with the minimize button. #34473 (Also in 18, 19, 20)
  • Fixed an issue where passing { name: 'All Files', extensions: ['*'] } in the filters param of open or save dialogs on Linux would disallow choosing files without an extension. #34496 (Also in 18, 19, 20)
  • Fixed an issue where printing with an invalid deviceName on Linux caused silent failures. #34872 (Also in 19, 20)
  • Fixed an issue where the minimize button with WCO enabled would incorrectly be highlighted in some cases. #34771 (Also in 17, 18, 19, 20)
  • Fixed an issue where zombie windows can be created if window.close() is called during a fullscreen transition. #34378 (Also in 17, 18, 19, 20)
  • Fixed an issue with fullscreen transitions when HTML fullscreen is requested. #32905 (Also in 19, 20)
  • Fixed child about:blank windows from inheriting their parents' preload scripts when sandbox: false and nodeIntegrationInSubFrames: true. #34531 (Also in 20)
  • Fixed context menu not showing all items on macOS when dock is not hidden. #35194 (Also in 18, 19)
  • Fixed empty app_id when running under wayland. #34855 (Also in 18, 19, 20)
  • Fixed linux arm64 builds to not require glibc 2.29+. #34491 (Also in 19, 20)
  • Fixed missing Sec-CH-UA headers and empty navigator.userAgentData. #34481 (Also in 17, 18, 19, 20)
  • Fixed native module compilation issues on arm. #34914 (Also in 20)
  • Fixed potential crash in WebFrameMain when performing a cross-origin navigation. #34411 (Also in 18, 19, 20)
  • Fixed spontaneous crashing in native modules that depended on nan. #34844 (Also in 20)
  • Fixed support for Wayland client-side decorations. #34955
  • Fixed symbol generation on 32-bit Windows release builds. #35078 (Also in 18, 19, 20)
  • Fixed the 'length' property in UploadFile objects being ignored. #34657
  • None. #34723 (Also in 18, 19, 20)
  • Removed the skip-taskbar feature on Linux. #35123 (Also in 20)
  • Updated Windows Control Overlay buttons to look and feel more native on Windows 11. #34790 (Also in 20)

Other Changes

  • Added deprecation warning for the new-window event. #34528 (Also in 20)
  • Backported fix for v8:13055. #34931
  • Changed release uploads to now upload libcxx objects for MacOS x64 and arm64. #34586
  • Fixed an issue where BrowserViews didn't always visually update after call to setBounds. #34581 (Also in 18, 19, 20)
  • On Linux, changed the libgdk-pixbuf dependency to be dynamically linked rather than statically linked. #34077 (Also in 18, 19, 20)
  • The undocumented page-title-set webview event has been removed. #34533
  • Updated Chromium to 105.0.5187.0. #34921
  • Updated Node.js to v16.16.0. #34853
  • WebContents for <webview> are now only created after the 'will-attach-webview' event is emitted and preventDefault is not called. #32941 (Also in 20)

Documentation

  • Documentation changes: #34451