Electron: v12.0.0-beta.1 Release

Release date:
August 31, 2021
Previous version:
v11.5.0 (released August 31, 2021)
Magnitude:
1,270 Diff Delta
Contributors:
14 total committers
Data confidence:
Commits:

403 Features Released with v12.0.0-beta.1

Top Contributors in v12.0.0-beta.1

trop[bot]
MarshallOfSound
miniak
ppontes
belenko
electron-bot
indutny-signal
sudowoodo-release-bot[bot]
nornagon
erickzhao

Directory Browser for v12.0.0-beta.1

We haven't yet finished calculating and confirming the files and directories changed in this release. Please check back soon.

Release Notes Published

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 v12.0.0-beta.1

Features

  • Added 'resized' (Windows/macOS) and 'moved' (Windows) events to BrowserWindow. #26216 <span style="font-size:small;">(Also in 11)</span>
  • 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 <span style="font-size:small;">(Also in 11)</span>
  • 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 <span style="font-size:small;">(Also in 11)</span>
  • Added new system-context-menu event to allow preventing and overriding the system context menu. #25795 <span style="font-size:small;">(Also in 11)</span>
  • 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 <span style="font-size:small;">(Also in 10, 11)</span>
  • Removed links to the Electron website from the default 'Help' menu in packaged apps. #25831
  • Removed the desktopCapturer.getMediaSourceIdForWebContents() API. #25414 <span style="font-size:small;">(Also in 11)</span>
  • 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 <span style="font-size:small;">(Also in 11)</span>
  • 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 <span style="font-size:small;">(Also in 9, 10, 11)</span>

  • Browser views will properly resize within windows. #25951 <span style="font-size:small;">(Also in 9, 10, 11)</span>

  • 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 <span style="font-size:small;">(Also in 10, 11)</span>

  • Fixed BrowserWindow.fromBrowserView throwing an error when there were multiple BrowserViews in a window. #26493

  • Fixed CORS not being disabled by webSecurity: false. #25463 <span style="font-size:small;">(Also in 9, 10, 11)</span>

  • Fixed Electron not working on Windows 7 after https://github.com/electron/electron/pull/25076. #25162 <span style="font-size:small;">(Also in 8, 9, 10, 11)</span>

  • Fixed GdiTextPrinting when used with silent printing. #25679 <span style="font-size:small;">(Also in 9, 10, 11)</span>

  • Fixed NativeImage.crop().toBitmap() returning incorrect data. #25757 <span style="font-size:small;">(Also in 10, 11)</span>

  • Fixed NativeImage.getScaleFactors() always returning the same value. #25832 <span style="font-size:small;">(Also in 9, 10, 11)</span>

  • Fixed LC_ALL environment variable getting changed in Electron. #26507 <span style="font-size:small;">(Also in 9, 10, 11)</span>

  • Fixed ready-to-show event not emitted on some machines. #25448 <span style="font-size:small;">(Also in 8, 10, 11)</span>

  • Fixed ses.setCertificateVerifyProc canceling requests in unrelated sessions. #26517

  • Fixed window.open not accepting size values with "px" at the end. #26104 <span style="font-size:small;">(Also in 10, 11)</span>

  • Fixed a crash in app.importCertificate() on Linux. #25523 <span style="font-size:small;">(Also in 9, 10, 11)</span>

  • Fixed a crash in printing on Windows. #25622 <span style="font-size:small;">(Also in 9, 10, 11)</span>

  • Fixed a crash in the renderer process when invoking the Badging API. #25294 <span style="font-size:small;">(Also in 9, 10, 11)</span>

  • Fixed a crash seen when printing. #25989 <span style="font-size:small;">(Also in 11)</span>

  • Fixed a crash that could happen when a window was closed while a webview was in the process of being attached. #25431 <span style="font-size:small;">(Also in 11)</span>

  • Fixed a crash when closing window in an event listener after exiting fullscreen on macOS. #25468 <span style="font-size:small;">(Also in 9, 10, 11)</span>

  • Fixed a rare crash on Windows that could occur when emitting certain powerMonitor events. #25836 <span style="font-size:small;">(Also in 10, 11)</span>

  • Fixed an Uncaught TypeError when opening DevTools. #26474 <span style="font-size:small;">(Also in 11)</span>

  • Fixed an issue that could cause a normally-exiting process to fail with an "illegal access" message and exit code 7. #25430 <span style="font-size:small;">(Also in 8, 9, 10, 11)</span>

  • 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 <span style="font-size:small;">(Also in 9, 10, 11)</span>

  • Fixed an issue where Wasm code generation erroneously showed as being disallowed by embedder when contextIsolation was enabled. #25777 <span style="font-size:small;">(Also in 10, 11)</span>

  • Fixed an issue where Windows notifications with timeoutType of 'never' did not work properly. #25820 <span style="font-size:small;">(Also in 9, 10, 11)</span>

  • Fixed an issue where Save as PDF from PDF Viewer Print dialog failed and sometimes crashed. #25959 <span style="font-size:small;">(Also in 9, 10, 11)</span>

  • Fixed an issue where document.hasFocus and document.activeElement would be inconsistent upon showing a window that was initially created with show: false. #25292 <span style="font-size:small;">(Also in 10, 11)</span>

  • Fixed an issue where an error would be displayed when using webContents.print() if no default was set and no device name provided. #25515 <span style="font-size:small;">(Also in 9, 10, 11)</span>

  • Fixed an issue where draggable regions did not work exclusively on BrowserViews. #26145 <span style="font-size:small;">(Also in 9, 10, 11)</span>

  • Fixed an issue where draggable regions were not properly updated on BrowserViews when a containing BrowserWindow was resized. #26233 <span style="font-size:small;">(Also in 9, 10, 11)</span>

  • 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 <span style="font-size:small;">(Also in 9, 10, 11)</span>

  • Fixed an issue where frameless windows showed window controls after being in simple fullscreen mode on macOS. #26096 <span style="font-size:small;">(Also in 9, 10, 11)</span>

  • 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 <input file="type"> on macOS. #25030 <span style="font-size:small;">(Also in 10, 11)</span>

  • Fixed an issue where pageRanges was not properly honored when printing. #25064 <span style="font-size:small;">(Also in 10, 11)</span>

  • Fixed an issue where some Node.js module API calls hung in the renderer process after reloads when render process reuse was enabled. #25869 <span style="font-size:small;">(Also in 9, 10, 11)</span>

  • Fixed an issue where some buttons were un-clickable in some BrowserViews with draggable regions enabled. #26496 <span style="font-size:small;">(Also in 11)</span>

  • 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 <span style="font-size:small;">(Also in 11)</span>

  • Fixed bug that meant require.resolve paths option was ignored. #25891 <span style="font-size:small;">(Also in 9, 10, 11)</span>

  • Fixed calling app.commandLine.appendSwitch('lang') not changing app's locale. #26185 <span style="font-size:small;">(Also in 9, 10, 11)</span>

  • Fixed crash when application launched from UNUserNotificationCenter notification (via a native node module). #25702 <span style="font-size:small;">(Also in 9, 10, 11)</span>

  • Fixed crash while exiting Electron after using the Web Serial API. #25969

  • Fixed crashes caused by attempting to modify destroyed views. #25411 <span style="font-size:small;">(Also in 9, 10, 11)</span>

  • Fixed crashes using nativeImage on Windows on ARM. #25396 <span style="font-size:small;">(Also in 11)</span>

  • Fixed detection of launch on login items

    • Fixed detection of enabled state set by TaskManager. #26515 <span style="font-size:small;">(Also in 11)</span>
  • Fixed draggable regions stops working when devtools is opened on macOS. #26361 <span style="font-size:small;">(Also in 9, 10, 11)</span>

  • 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 <span style="font-size:small;">(Also in 11)</span>

  • Fixed issue where setting the spellchecker languages to an empty array would permanently disable the spellchecker till the end of time. #26119 <span style="font-size:small;">(Also in 11)</span>

  • Fixed main process's console output not printing to devtools on Windows. #25765

  • Fixed maximized frameless window bleeding to other monitors. #25940 <span style="font-size:small;">(Also in 8, 9, 10, 11)</span>

  • Fixed memory leak on macOS when using dialog.showMessageBox API. #26078 <span style="font-size:small;">(Also in 8, 9, 10, 11)</span>

  • Fixed memory leak when creating "Services" menu. #25617 <span style="font-size:small;">(Also in 9, 10, 11)</span>

  • Fixed multiple dock icons being left in system when calling dock.show/hide on macOS. #25269 <span style="font-size:small;">(Also in 8, 9, 10, 11)</span>

  • Fixed network permission error when there are multiple WebContents sharing same session are created with web security disabled. #25139 <span style="font-size:small;">(Also in 8, 9, 10, 11)</span>

  • Fixed ready-to-show event not emitted on some machines. #25632 <span style="font-size:small;">(Also in 10, 11)</span>

  • Fixed shell.moveItemToTrash on Windows so that it returns false when move was unsuccessful. #25124 <span style="font-size:small;">(Also in 9, 10, 11)</span>

  • Fixed the following issues for frameless when maximized on Windows. #25052 <span style="font-size:small;">(Also in 8, 9, 10, 11)</span>

  • Fixed the pretty-print JavaScript feature in DevTools not functioning correctly. #25780

  • Fixed the remote-debugging-port discovery page showing garbled text. #25576 <span style="font-size:small;">(Also in 10, 11)</span>

  • Fixed webRequest module not recognizing the encoding of the filename in Content-Disposition header. #25961

  • Fixed window.open called from child window. #25080 <span style="font-size:small;">(Also in 11)</span>

  • Removed private API usage that was blocking Mac App Store releases. #26491 <span style="font-size:small;">(Also in 11)</span>

  • Stopped using private API CTFontDescriptorIsSystemUIFont in MAS build. #26548 <span style="font-size:small;">(Also in 11)</span>

  • Suppressed a spurious warning about executeJavaScript being called without worldSafeExecuteJavaScript being enabled in apps that do not call executeJavaScript. #25692 <span style="font-size:small;">(Also in 10, 11)</span>

  • Updated Node root certs to use NSS 3.56. #25313 <span style="font-size:small;">(Also in 8, 9, 10, 11)</span>

  • 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 <span style="font-size:small;">(Also in 9, 10, 11)</span>

  • 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 <span style="font-size:small;">(Also in 9, 10, 11)</span>

  • 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 <span style="font-size:small;">(Also in 9, 10, 11)</span>
  • 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 <span style="font-size:small;">(Also in 8, 9, 10, 11)</span>
  • Re-enable Rosetta on Apple Silicon devices. #26568 <span style="font-size:small;">(Also in 7.3, 8, 9, 10, 11)</span>