Electron Releases

Filter by channel Filter by major release

Release Notes for v12.0.0-beta.1

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 electron@12.0.0-beta.1.

Features

  • Added 'resized' (Windows/macOS) and 'moved' (Windows) events to BrowserWindow. #26216 (Also in 11)
  • Added APIs to enable/disable spell checker. #26276
  • Added Serial API support. #25237
  • Added BrowserWindow.isTabletMode API. #25209
  • Added displayFrequency to the Display object to allow getting information about the refresh rate on Windows. #26472
  • Added net.online for detecting whether there is currently internet connection. #21004
  • Added osProcessId / name properties to webFrameMain. #26093
  • Added powerMonitor.onBatteryPower. #26494
  • Added session.setSSLConfig() to allow configuring SSL. #25461
  • Added webContents.forcefullyCrashRenderer() to forcefully terminate a renderer process to assist with recovering a hung renderer. #25580 (Also in 11)
  • Added webFrameMain API for accessing sub-frames of a WebContents instance from the main process. #25464
  • Added webPreferences.preferredSizeMode to allow sizing views according to their document's minimum size. #25874
  • Added a disabledCipherSuites option to Session.setSSLConfig. #25818
  • Added a new "credentials" option for net.request(). #25284
  • Added a new asynchronous shell.trashItem() API, replacing the synchronous shell.moveItemToTrash(). #25114
  • Added new app.runningUnderRosettaTranslation property to detect when running under rosetta on Apple silicon. #26444 (Also in 11)
  • Added new system-context-menu event to allow preventing and overriding the system context menu. #25795 (Also in 11)
  • Added non-localized serviceName to 'child-process-gone' / app.getAppMetrics(). #25975
  • Added read/write support for Toast Activator CLSID in shortcuts. #25493
  • Added setWindowOpenHandler API for renderer-created child windows, and deprecate new-window event. #24517
  • Added spellcheck API to renderer. #25060
  • Added support for explicitly specifying direct, auto_detect or system modes in session.setProxy(). #24937
  • Added support for showing macOS share menu. #25629
  • Adds fast user switching event to powerMonitor on macOS. #25321
  • Allowed setting the 'Origin' header and Sec-Fetch-* headers in net.request(). #26135
  • Changed the default of crashReporter.start({ compress }) from false to true. #25288
  • Implemented Electron Fuses for customizing certain Electron features at package time. #24241
  • Implemented custom Toast XML notifications on Windows
    • Added failure reporting of notifications on Window. #25401
  • Improved dark mode support on Windows. #25373 (Also in 10, 11)
  • Removed links to the Electron website from the default 'Help' menu in packaged apps. #25831
  • Removed the desktopCapturer.getMediaSourceIdForWebContents() API. #25414 (Also in 11)
  • The launchInfo of app event ready is now populated with information from UNNotificationResponse when the app is launched via a notification presented by UNUserNotificationCenter (in a native node module). #25950
  • Updated setPermissionRequestHandler to correctly recognize permissions being requested. #26172 (Also in 11)
  • Windows 10 versions 2004 and later support WDA_EXCLUDEFROMCAPTURE and will now exclude a window entirely from screen capture when setContentProtection is enabled. Older Windows versions will continue to show a black window as before. #24274

Fixes

  • Added missing module delay loads on windows to reduce per process reference set impact. #25428 (Also in 9, 10, 11)
  • Browser views will properly resize within windows. #25951 (Also in 9, 10, 11)
  • Deprecated the use of the vm module in the renderer process. #26087
  • Enabled support for new Chromium experimental PDF viewer UI. #26010
  • Excess menu item separators are now only removed after item re-ordering is done to avoid accidental removal of needed separators. #25563 (Also in 10, 11)
  • Fixed BrowserWindow.fromBrowserView throwing an error when there were multiple BrowserViews in a window. #26493
  • Fixed CORS not being disabled by webSecurity: false. #25463 (Also in 9, 10, 11)
  • Fixed Electron not working on Windows 7 after https://github.com/electron/electron/pull/25076. #25162 (Also in 8, 9, 10, 11)
  • Fixed GdiTextPrinting when used with silent printing. #25679 (Also in 9, 10, 11)
  • Fixed NativeImage.crop().toBitmap() returning incorrect data. #25757 (Also in 10, 11)
  • Fixed NativeImage.getScaleFactors() always returning the same value. #25832 (Also in 9, 10, 11)
  • Fixed LC_ALL environment variable getting changed in Electron. #26507 (Also in 9, 10, 11)
  • Fixed ready-to-show event not emitted on some machines. #25448 (Also in 8, 10, 11)
  • Fixed ses.setCertificateVerifyProc canceling requests in unrelated sessions. #26517
  • Fixed window.open not accepting size values with "px" at the end. #26104 (Also in 10, 11)
  • Fixed a crash in app.importCertificate() on Linux. #25523 (Also in 9, 10, 11)
  • Fixed a crash in printing on Windows. #25622 (Also in 9, 10, 11)
  • Fixed a crash in the renderer process when invoking the Badging API. #25294 (Also in 9, 10, 11)
  • Fixed a crash seen when printing. #25989 (Also in 11)
  • Fixed a crash that could happen when a window was closed while a webview was in the process of being attached. #25431 (Also in 11)
  • Fixed a crash when closing window in an event listener after exiting fullscreen on macOS. #25468 (Also in 9, 10, 11)
  • Fixed a rare crash on Windows that could occur when emitting certain powerMonitor events. #25836 (Also in 10, 11)
  • Fixed an Uncaught TypeError when opening DevTools. #26474 (Also in 11)
  • Fixed an issue that could cause a normally-exiting process to fail with an "illegal access" message and exit code 7. #25430 (Also in 8, 9, 10, 11)
  • Fixed an issue that file length is not available in 'will-download' event when file is downloaded thourgh intercepted request. #25324
  • Fixed an issue where Hover Text on macOS Catalina did not work without VoiceOver also being enabled. #26183 (Also in 9, 10, 11)
  • Fixed an issue where Wasm code generation erroneously showed as being disallowed by embedder when contextIsolation was enabled. #25777 (Also in 10, 11)
  • Fixed an issue where Windows notifications with timeoutType of 'never' did not work properly. #25820 (Also in 9, 10, 11)
  • Fixed an issue where Save as PDF from PDF Viewer Print dialog failed and sometimes crashed. #25959 (Also in 9, 10, 11)
  • Fixed an issue where document.hasFocus and document.activeElement would be inconsistent upon showing a window that was initially created with show: false. #25292 (Also in 10, 11)
  • Fixed an issue where an error would be displayed when using webContents.print() if no default was set and no device name provided. #25515 (Also in 9, 10, 11)
  • Fixed an issue where draggable regions did not work exclusively on BrowserViews. #26145 (Also in 9, 10, 11)
  • Fixed an issue where draggable regions were not properly updated on BrowserViews when a containing BrowserWindow was resized. #26233 (Also in 9, 10, 11)
  • Fixed an issue where events on webview elements were missing properties if contextIsolation was enabled. #26289
  • Fixed an issue where filters set in dialogs on macOS would have nondeterministic ordering. #25164 (Also in 9, 10, 11)
  • Fixed an issue where frameless windows showed window controls after being in simple fullscreen mode on macOS. #26096 (Also in 9, 10, 11)
  • Fixed an issue where net.request would continue downloading data even when the consuming stream was throttled. #25531
  • Fixed an issue where packages could not be selected with on macOS. #25030 (Also in 10, 11)
  • Fixed an issue where pageRanges was not properly honored when printing. #25064 (Also in 10, 11)
  • Fixed an issue where some Node.js module API calls hung in the renderer process after reloads when render process reuse was enabled. #25869 (Also in 9, 10, 11)
  • Fixed an issue where some buttons were un-clickable in some BrowserViews with draggable regions enabled. #26496 (Also in 11)
  • Fixed an issue where the buffer returned by NativeImage.getBitmap() could point to freed memory. #25782
  • Fixed an issue whereby a corrupted async_hooks stack would crash the renderer when throwing some errors in the renderer process. #26365 (Also in 11)
  • Fixed bug that meant require.resolve paths option was ignored. #25891 (Also in 9, 10, 11)
  • Fixed calling app.commandLine.appendSwitch('lang') not changing app's locale. #26185 (Also in 9, 10, 11)
  • Fixed crash when application launched from UNUserNotificationCenter notification (via a native node module). #25702 (Also in 9, 10, 11)
  • Fixed crash while exiting Electron after using the Web Serial API. #25969
  • Fixed crashes caused by attempting to modify destroyed views. #25411 (Also in 9, 10, 11)
  • Fixed crashes using nativeImage on Windows on ARM. #25396 (Also in 11)
  • Fixed detection of launch on login items
    • Fixed detection of enabled state set by TaskManager. #26515 (Also in 11)
  • Fixed draggable regions stops working when devtools is opened on macOS. #26361 (Also in 9, 10, 11)
  • Fixed error handling on write failure in the protocol module. #26296
  • Fixed intermittent access violation during redirects (intercepted requests). #25393
  • Fixed issue where quitAndInstall() would not restart the app upon update completion on macOS Big Sur. #25864 (Also in 11)
  • Fixed issue where setting the spellchecker languages to an empty array would permanently disable the spellchecker till the end of time. #26119 (Also in 11)
  • Fixed main process's console output not printing to devtools on Windows. #25765
  • Fixed maximized frameless window bleeding to other monitors. #25940 (Also in 8, 9, 10, 11)
  • Fixed memory leak on macOS when using dialog.showMessageBox API. #26078 (Also in 8, 9, 10, 11)
  • Fixed memory leak when creating "Services" menu. #25617 (Also in 9, 10, 11)
  • Fixed multiple dock icons being left in system when calling dock.show/hide on macOS. #25269 (Also in 8, 9, 10, 11)
  • Fixed network permission error when there are multiple WebContents sharing same session are created with web security disabled. #25139 (Also in 8, 9, 10, 11)
  • Fixed ready-to-show event not emitted on some machines. #25632 (Also in 10, 11)
  • Fixed shell.moveItemToTrash on Windows so that it returns false when move was unsuccessful. #25124 (Also in 9, 10, 11)
  • Fixed the following issues for frameless when maximized on Windows. #25052 (Also in 8, 9, 10, 11)
  • Fixed the pretty-print JavaScript feature in DevTools not functioning correctly. #25780
  • Fixed the remote-debugging-port discovery page showing garbled text. #25576 (Also in 10, 11)
  • Fixed webRequest module not recognizing the encoding of the filename in Content-Disposition header. #25961
  • Fixed window.open called from child window. #25080 (Also in 11)
  • Removed private API usage that was blocking Mac App Store releases. #26491 (Also in 11)
  • Stopped using private API CTFontDescriptorIsSystemUIFont in MAS build. #26548 (Also in 11)
  • Suppressed a spurious warning about executeJavaScript being called without worldSafeExecuteJavaScript being enabled in apps that do not call executeJavaScript. #25692 (Also in 10, 11)
  • Updated Node root certs to use NSS 3.56. #25313 (Also in 8, 9, 10, 11)
  • Updated internal memory allocation logic such that you no longer need to use the com.apple.security.cs.allow-unsigned-executable-memory codesign entitlement on macOS. #26331

Other Changes

  • Added a small console hint to console to help debug renderer crashes. #25317 (Also in 9, 10, 11)
  • BrowserWindow.fromWebContents() now returns an accurate result for WebContents in a BrowserView or webview. #25408
  • Deprecated the remote module. It is replaced by @electron/remote. #25293
  • Fixed resource leak in worker threads. #25332 (Also in 9, 10, 11)
  • None. #25526
  • Updated Node.js to v14.15.1. #26533
  • Upgraded Node.js to v14.9.0. #25249

Documentation

Unknown

  • Added extension-loaded, extension-unloaded, and extension-ready events to Session. #25385
  • Added support for some chrome.management APIs. #25098 (Also in 9, 10, 11)
  • Fixed chrome.runtime.getPlatformInfo crashing the background process upon being invoked. #25357
  • Fixed issue where clicking notifications would no longer dismiss them as expected. #25247 (Also in 8, 9, 10, 11)
  • Re-enable Rosetta on Apple Silicon devices. #26568 (Also in 7.3, 8, 9, 10, 11)