Change8

v43.0.0-alpha.1

📦 electronView on GitHub →
22 features🐛 10 fixes🔧 19 symbols

Summary

This alpha release introduces several new features across platform APIs, including enhanced notification controls, WebAuthn configuration, and heap profiling support. Numerous bug fixes address issues related to ASAR support, window sizing, network requests on custom protocols, and platform-specific crashes.

✨ New Features

  • Added Clone method to WebContents.
  • Added JS stack trace to crash reports on renderer OOM.
  • Added Linux support for `app.getApplicationInfoForProtocol()`.
  • Added `Notification.getHistory()` for macOS, allowing developers to restore all delivered notifications still present in Notification Center.
  • Added `accessibilityLabel` property to `MenuItem` constructor options and properties for defining screen-reader-friendly labels.
  • Added `allowExtensions` privilege to `protocol.registerSchemesAsPrivileged()` to enable Chrome extensions on custom protocols.
  • 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.
  • Added `globalShortcut.setSuspended()` and `globalShortcut.isSuspended()` methods to temporarily suspend and resume global shortcut handling.
  • 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.
  • Added `nv12` OSR pixel format support for professional use.
  • Added `view.setBackgroundBlur`.
  • Added `webContents.copyVideoFrameAt(x, y)` and `webContents.saveVideoFrameAs(x, y)` methods.
  • Added id, groupId, and groupTitle support for Windows notifications.
  • Added nativeTheme.shouldDifferentiateWithoutColor on macOS.
  • Added session support to net module requests from utility process.
  • Added support for heap profiling via `contentTracing.enableHeapProfiling()`.
  • Added support for importing shared textures using the nv16 pixel format.
  • Allowed the `--experimental-inspector-network-resource` Node.js flag to be passed through Electron.
  • SF Symbol customisation support added.
  • File downloads will open by default in the user's Downloads folder (or Home directory if Downloads doesn't exist).
  • Fixed contentTracing module to capture Node.js trace categories.
  • Added support for the `urgency` option in Notifications on Windows.

🐛 Bug Fixes

  • Added additional ASAR support to additional `fs` copy methods.
  • Added crash keys to diagnose power monitor shutdown crash on arm64 windows.
  • Added missing `metadata` fields to `contentTracing` traces.
  • BrowserWindow now enforces min/max size constraints on window creation, even if they conflict with the requested width and height.
  • Changed the `kResizeThreshold` to trigger the resize on corners.
  • 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.
  • Fixed DesktopCapturer crash on macOS.
  • 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`.
  • 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.
  • Fixed `app.getLoginItemSettings()` returning `undefined` for `executableWillLaunchAtLogin` on macOS; the property is now always a boolean.

Affected Symbols