Stack Upgrades
- Chromium 87.0.4280.47
- Node v12.18.3
- V8 v8.7
Breaking Changes
- None. To make upgrading to Electron 11 easier for developers, no breaking changes were introduced in Electron 11.
Features
Additions
- Added new experimental apple silicon (darwin arm64) builds. #24545
- Added new app.runningUnderRosettaTranslation property to detect when running under rosetta on Apple silicon. #26492
- Added V8 crash message and location information to crashReport parameters. #24771 (Also in 10)
- Added a small console hint to console to help debug renderer crashes. #25474 (Also in 9, 10)
- Added new
system-context-menu
event to allow preventing and overriding the system context menu. #25835 - Added
webContents.forcefullyCrashRenderer()
to forcefully terminate a renderer process to assist with recovering a hung renderer. #25756 - Added
app.getApplicationInfoForProtocol()
API that returns detailed information about the app that handles a certain protocol. #24112 - Added
name
toapp.getAppMetrics()
output. #24359 - Added
utility-process-gone
event toapp
. #24367 - Added
visualEffectState
option to BrowserWindows to allow customization of vibrancy effect state on macOS. #25083 - Added app.createThumbnailFromPath() API that returns a preview image of a file given its file path and a maximum thumbnail size. #24802
- Added back a previously broken
visibleOnFullScreen
option forsetVisibleOnAllWorkspaces
. #24956 - Added desktopCapturer.getMediaSourceIdForWebContents(), can be used with getUserMedia to get a stream for a WebContent. #22701
- Added did-become-active event on Mac for observing any application activation. #23872
- Added new
worldSafeExecuteJavaScript
webPreference to ensure that the return values fromwebFrame.executeJavaScript
are world safe when context isolation is enabled. #24114 (Also in 9, 10) - Added optional parameter to specify monospaced font types for macOS tray titles. #25059
- Added support for suspend and resume events to Windows. #24251 (Also in 8, 9, 10)
- Added support for suspend and resume events to macOS. #24254 (Also in 8, 9, 10)
- Added the
currencyCode
field that Apple’s StoreKit in-app-purchasing library provides but has not been added to theProduct
object thatinAppPurchase.getProducts
returns. #25058 - Added ‘resized’ (Windows/macOS) and ‘moved’ (Windows) events to BrowserWindow. #26454
Improvements
- Improved the performance of sending JS primitives over the context bridge. #24531 (Also in 9, 10)
- Improved the performance of sending wide objects over the context bridge. #24671
- Improved the default REPL experience when running Electron with the
--interactive
flag. #24204 - Improved performance of
takeHeapSnapshot()
. #26230 - Changed app.getLoginItemSettings() and app.setLoginItemSettings() API to factor in startup approval keys when determining whether an application is able to launch on login. #24494
- Expose sessionId associated with a target from debugger module. #24170 (Also in 8, 9, 10)
- Implemented
systemPreferences.getMediaAccessStatus()
on Windows. #24275 (Also in 8, 9, 10) - V8CacheOptions is a new webpreference option to enforce code caching policy. #23842 (Also in 8, 9, 10)
- When the
disabled-by-default-v8.cpu_profiler
tracing category is enabled, cpu samples will now be collected from the main process as well as the renderer. #24819
Removed/Deprecated
- Removed experimental APIs:
BrowserView.{fromId, fromWebContents, getAllViews}
and theid
property ofBrowserView
. #23578 - Removed the
desktopCapturer.getMediaSourceIdForWebContents()
API. #25455
Fixes
- Fixed an issue where pageRanges was not properly honored when printing. #25600 (Also in 10)
- Fixed an issue whereby a corrupted
async_hooks
stack would crash the renderer when throwing some errors in the renderer process. #26424 - Fixed draggable regions stops working when devtools is opened on macOS. #26395
- Fixed
window.open
not accepting size values with “px” at the end. #26334 (Also in 10) - Fixed an issue where draggable regions were not properly updated on BrowserViews when a containing
BrowserWindow
was resized. #26320 (Also in 9, 10) - Fixed an issue where Hover Text on macOS Catalina did not work without VoiceOver also being enabled. #26246 (Also in 9, 10)
- Fixed an issue where draggable regions did not work exclusively on
BrowserViews
. #26259 (Also in 9, 10) - Fixed debug.log files being created under working directory on windows. #26250
- Fixed a rare crash on Windows that could occur when emitting certain powerMonitor events. #26181 (Also in 10)
- Fixed an issue where packages could not be selected with on macOS. #26217
- Fixed calling
app.commandLine.appendSwitch('lang')
not changing app’s locale. #26226 (Also in 9, 10) - Fixed a crash in printing on Windows. #26062 (Also in 9, 10)
- Fixed an issue where WASM code generation erroneously showed as being disallowed by embedder when
contextIsolation
was enabled. #25829 (Also in 10) - Fixed an issue where frameless windows showed window controls after being in simple fullscreen mode on macOS. #26127 (Also in 9, 10)
- Fixed issue where setting the spellchecker languages to an empty array would permanently disable the spellchecker till the end of time. #26129
- Fixed memory leak on macOS when using
dialog.showMessageBox
API. #26099 (Also in 8, 9, 10) - Backported fix for https://crbug.com/1115267. #26036
- Fixed issue where clicking notifications would no longer dismiss them as expected. #26131 (Also in 8, 9)
- Fixed NativeImage.getScaleFactors() always returning the same value. #25903 (Also in 9, 10)
- Fixed an issue where Windows notifications with timeoutType of ‘never’ did not work properly. #25902 (Also in 9, 10)
- Fixed an issue where some Node.js module API calls hung in the renderer process after reloads when render process reuse was enabled. #25922 (Also in 9, 10)
- Fixed bug that meant require.resolve paths option was ignored. #25945 (Also in 10)
- Fixed NativeImage.crop().toBitmap() returning incorrect data. #25774 (Also in 10)
- Fixed window.open called from child window. #25816
- Suppressed a spurious warning about executeJavaScript being called without worldSafeExecuteJavaScript being enabled in apps that do not call executeJavaScript. #25828 (Also in 10)
- Fix: gdi printing in silent printing mode. #25744 (Also in 10)
- Fixed crash when application launched from
UNUserNotificationCenter
notification (via a native node module). #25738 (Also in 9, 10) - Fixed resource leak in worker threads. #25661 (Also in 9, 10)
- Added missing module delay loads on windows to reduce per process reference set impact. #25436 (Also in 9, 10)
- Excess menu item separators are now only removed after item re-ordering is done to avoid accidental removal of needed separators. #25599
- Fixed CORS not being disabled by
webSecurity: false
. #25504 (Also in 9, 10) - Fixed
ready-to-show
event not emitted on some machines. #25471 (Also in 10) - Fixed a crash in
app.importCertificate()
on Linux. #25537 (Also in 9, 10) - Fixed a crash that could happen when a window was closed while a webview was in the process of being attached. #25598
- Fixed a crash when closing window in an event listener after exiting fullscreen on macOS. #25524 (Also in 10)
- Fixed an issue that could cause a normally-exiting process to fail with an “illegal access” message and exit code 7. #25459 (Also in 8, 9, 10)
- Fixed an issue where an error would be displayed when using
webContents.print()
if no default was set and no device name provided. #25562 (Also in 9, 10) - Fixed crashes caused by attempting to modify destroyed views. #25509
- Fixed the remote-debugging-port discovery page showing garbled text. #25602 (Also in 10)
- Fixed unsubscribe from observers when window is closing. #25585 (Also in 9, 10)
- Updated Node root certs to use NSS 3.56. #25362 (Also in 8, 9, 10)
- Fixed crashes using nativeImage on Windows on ARM. #25410
- Fixed a crash in the renderer process when invoking the Badging API. #25370 (Also in 9, 10)
- Fixed an issue where
document.hasFocus
anddocument.activeElement
would be inconsistent upon showing a window that was initially created withshow: false
. #25323 - Fixed client_id file being generated in the working directory for node child process. #25310 (Also in 9)
- Fixed multiple dock icons being left in system when calling
dock.show
/hide
on macOS. #25300 (Also in 8, 9, 10) - Fixes the following issues for frameless when maximized on Windows:
- Fixed Electron not working on Windows 7 after #25076. #25168 (Also in 8, 9, 10)
- Fixed an issue where filters set in dialogs on macOS would have nondeterministic ordering. #25193 (Also in 9, 10)
- Fixed network permission error when there are multiple WebContents sharing same session are created with web security disabled. #25180 (Also in 8, 9, 10)
- Fixed shell.moveItemToTrash on Windows so that it returns false when move was unsuccessful. #25171 (Also in 9, 10)
- Fix loading shared worker scripts over custom protocol * fix crash when loading worker scripts with nodeIntegration enabled. #20625 (Also in 9, 10)
- Added missing support for
isComposing
KeyboardEvent property. #23971 (Also in 8, 9, 10) - Added {stream:} option to registerSchemeAsPrivileged to enable custom protocols to stream video and audio. #22955
- Enable NTLM v2 for POSIX platforms and added –disable-ntlm-v2 switch to disable it. #23846 (Also in 7.3, 8, 9, 10)
- Fix: Allow windows behind macOS elements if “frame” is false. #23976 (Also in 9, 10)
- Fix: remove unnecessary corner mask overriding to increase window resize performance. #24642 (Also in 9, 10)
- Fixed “Paste and Match Style” shortcut on macOS to match OS’s “Option-Shift-Command-V”. #24153 (Also in 8, 9, 10)
- Fixed “null path-to-app” in test-app when Electron’s path contains spaces or special characters. #24214 (Also in 8, 9, 10)
- Fixed GTK dark theme setting not respected in Electron on Linux. #23678 (Also in 7.3, 8, 9, 10)
- Fixed
chrome://accessibility
access in Electron. #24437 - Fixed
chrome://media-internals
andchrome://webrtc-internals
pages not loading. #24010 (Also in 8, 9, 10) - Fixed
powerMonitor
not emittingsuspend
/resume
events on some Windows machines. #25076 (Also in 10) - Fixed
process.windowsStore
returning undefined in AppX packages. #23785 (Also in 7.3, 8, 9, 10) - Fixed a 10.0.0-beta.1 issue that broke dark mode window titlebars on Linux. #25055 (Also in 10)
- Fixed a bezeling issue on vibrant non-frameless BrowserWindows. #23779 (Also in 9, 10)
- Fixed a crash in TouchBar for certain methods. #23936 (Also in 10)
- Fixed a crash that could happen when using
hookWindowMessage
on Windows. #24716 (Also in 9, 10) - Fixed a crash that could occur when using in-memory sessions. #24964 (Also in 9, 10)
- Fixed a crash that could occur when using the
ipcRenderer
module after blink had released the context. Instead, a JS exception will be thrown. #23917 (Also in 8, 9, 10) - Fixed a termination crash on Web Workers with Node.js integration enabled. #24436 (Also in 8, 9, 10)
- Fixed an error when calling
dialog.showCertificateTrustDialog
with noBrowserWindow
. #24091 (Also in 7.3, 8, 9, 10) - Fixed an intermittent high-CPU usage problem caused a system clock issue during sleep. #24394 (Also in 8, 9, 10)
- Fixed an issue where VoiceOver was unable to navigate from the top-level window back into the web contents. #24655 (Also in 9, 10)
- Fixed an issue where
rmdir
andrmdirSync
work withoriginal-fs
in an asar context. #23890 (Also in 8, 9, 10) - Fixed an issue where
shutdown
would be emitted both on app and system shutdown on macOS. #24111 (Also in 8, 9, 10) - Fixed an issue where
webContents.print()
would sometimes hang with invalid settings. #24476 (Also in 9, 10) - Fixed an issue where
window.location
properties would throw an error for windows opened withwindow.open
. #23776 (Also in 8, 9, 10) - Fixed an issue where
withFileTypes
was not supported as an option tofs.readdir
orfs.readdirSync
under asar. #24062 (Also in 8, 9, 10) - Fixed an issue where cpu and heap profiling in Node.js did not work properly with
--cpu-prof
,--heap-prof
, and related CLI flags. #24528 (Also in 8, 9, 10) - Fixed an issue where errors were seen for nonexistent asar files. #24890
- Fixed an issue where frameless modal windows with a vibrancy setting had bezeled corners. #24250 (Also in 9, 10)
- Fixed an issue where macOS window vibrancy active state did not always match the active state of the window. #24471 (Also in 8, 9, 10)
- Fixed an issue where many uses of the Node.js
assert
module would throw in both the browser and renderer processes. #24579 - Fixed an issue where notifications with a reply button could potentially be destroyed too early when a user clicked on the notification body before replying. #25086 (Also in 8, 9, 10)
- Fixed an issue where some Node.js methods would not work with URL instances constructed in the renderer process. #24831 (Also in 8, 9, 10)
- Fixed an issue where some apps might be rejected from the Mac App Store owing to a private font-related API added in Chromium. #25117 (Also in 10)
- Fixed an issue where some old notifications were not properly removed from the Notification Center on macOS. #24302 (Also in 8, 9, 10)
- Fixed an issue where suspend/resume were emitted twice on macOS. #24818 (Also in 8, 9, 10)
- Fixed an issue where the ‘about’ role had on effect on Windows menus. #23687 (Also in 7.3, 8, 9, 10)
- Fixed an issue where the Save button did not function in PDF previews. #24946 (Also in 9, 10)
- Fixed an issue which would cause streaming protocol responses to stall in some cases. #24022 (Also in 8, 9, 10)
- Fixed an issue with click events not being emitted on macOS for Trays with context menus set. #24200 (Also in 8, 9, 10)
- Fixed an issue with volume-related
globalShortcut
registration. #23782 (Also in 8, 9, 10) - Fixed an occasional menu crash on macOS Catalina when menu is closing. #23778 (Also in 8, 9, 10)
- Fixed broken
--trace-sync-io
flag in Node.js. #24529 (Also in 8, 9, 10) - Fixed broken toolbar text in the PDF viewer. #24913 (Also in 10)
- Fixed bug on macOS where the main window could be targeted for a focus event when it was disabled behind a modal. #24286 (Also in 8, 9, 10)
- Fixed clipboard.readBuffer returning incorrect value. #24454 (Also in 8, 9, 10)
- Fixed crash that could occur when passing a non-absolute path to
session.loadExtension
. #25068 (Also in 10) - Fixed crash when navigating between origins in a child window with nativeWindowOpen and contextIsolation enabled. #23684 (Also in 8, 9, 10)
- Fixed crash when navigating from a page with webview that has inherited zoom level. #24757 (Also in 8, 9, 10)
- Fixed crash when opening offscreen transparent windows with gpu acceleration off. #24390
- Fixed crash when using client certificate. #24868 (Also in 10)
- Fixed delayed execution of some Node.js callbacks in the main process. #24131 (Also in 8, 9, 10)
- Fixed disabling color correct rendering with
--disable-color-correct-rendering
. #23787 (Also in 8, 9, 10) - Fixed executeJavaScriptInIsolatedWorld not respecting
hasUserGesture
argument. #24396 - Fixed frameless window’s size being changed when restored from minimized state. #25014 (Also in 8, 9, 10)
- Fixed inactive windows having active titlebar on Windows. #24847 (Also in 8, 9, 10)
- Fixed intercepted protocols not raising Redirect information back to Chromium. #23742 (Also in 7.3)
- Fixed issued where voice over would not read words as you typed them. #24801 (Also in 10)
- Fixed media keys working unilaterally when registered with
globalShortcut
. #24145 - Fixed missing
guid
parameter in Linux crash reports. #24881 (Also in 9, 10) - Fixed no
session
in webContents of type remote. #23989 (Also in 9, 10) - Fixed node’s TLS stack not allowing renegotiation. #25022 (Also in 8, 9, 10)
- Fixed potentially invalid duplex mode settings on Linux. #24489 (Also in 9, 10)
- Fixed serialization of
nativeImages
over remote when moving from the main process to the renderer process. #23759 (Also in 7.3, 8, 9, 10) - Fixed the
acceptLanguages
argument being ignored insession.setUserAgent()
. #23944 (Also in 7.3, 8, 9, 10) - Fixed tray menu on Windows not keyboard navigable. #23843 (Also in 8, 9, 10)
- Fixed tray menu showing in taskbar on Windows. #24097 (Also in 8, 9, 10)
- Fixed undefined symbol error when loading native modules that uses
uv_dlopen
. #24659 - Fixed window size being changed after unmaximizing. #25051 (Also in 9, 10)
- Fixed window titlebar not responding to pen on Windows 10. #24042 (Also in 7.3, 8, 9, 10)
- Fixed: On some Windows machines, especially Windows Insider builds, Electron would crash silently during startup. #24030 (Also in 9, 10)
- Increased maximum length for crash keys from 127B to 20KB. #24782 (Also in 9, 10)
- Protocol response streams are now destroyed if the request is aborted. #24014 (Also in 9, 10)
- Resolve app-scoped bookmarks without mounting network drives. #24708
- Restored old implementation of Linux Tray icons to fix a collection of issues where the tray icon wouldn’t appear, would be the wrong size or would randomly disappear. #23674 (Also in 8, 9, 10)
- Save crash reports locally when uploadToServer: false on linux. #24778 (Also in 9, 10)
- The element highlighter in devtools works again. #24921 (Also in 10)
shell.showItemInFolder
uses theFileManager
DBUS API on Linux, only falling back toxdg-open
if that fails. #25087- Fixed issues with CORS when making requests from extensions. #24483 (Also in 9, 10)
- Fixed not working
WebSQLDatabase
in extension background pages. #24798 (Also in 9, 10) - Fixed an issue with a consistent unwanted exception appearing during a debugging session with the VSCode debugger. #24191
- Fixed mac app store rejection notice for invalid symbolic link in bundle. #23831
- Fixed mac app store rejection notice for invalid symbolic link in bundle. #24158 (Also in 9, 10)
End of Support for 8.x.y
Electron 8.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.
Assets 75
chromedriver-v11.0.0-mas-x64.zip 13.8 MB
electron-api.json 1.21 MB
electron-v11.0.0-darwin-x64.zip 75.1 MB
electron-v11.0.0-linux-arm64.zip 77.6 MB
electron-v11.0.0-linux-ia32.zip 70.6 MB
electron-v11.0.0-linux-x64.zip 72.8 MB
electron-v11.0.0-mas-arm64.zip 76.8 MB
electron-v11.0.0-mas-x64.zip 74.1 MB
electron-v11.0.0-win32-arm64.zip 78.8 MB
electron-v11.0.0-win32-ia32.zip 70.3 MB
electron-v11.0.0-win32-x64.zip 74.5 MB
electron.d.ts 612 KB
ffmpeg-v11.0.0-linux-arm64.zip 3.83 MB
ffmpeg-v11.0.0-linux-armv7l.zip 3.87 MB
ffmpeg-v11.0.0-linux-ia32.zip 3.83 MB
ffmpeg-v11.0.0-linux-x64.zip 4.03 MB
ffmpeg-v11.0.0-mas-arm64.zip 761 KB
ffmpeg-v11.0.0-mas-x64.zip 837 KB
ffmpeg-v11.0.0-win32-x64.zip 799 KB
hunspell_dictionaries.zip 30.3 MB
mksnapshot-v11.0.0-linux-x64.zip 50.7 MB
mksnapshot-v11.0.0-mas-arm64.zip 48.9 MB
mksnapshot-v11.0.0-mas-x64.zip 49.4 MB
SHASUMS256.txt 7.1 KB
转自 https://github.com/electron/electron/releases