Electron Releases

Filter by channel Filter by major release

Release Notes for v7.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 i electron@7.0.0-beta.1.

Breaking Changes

  • Removed deprecated APIs: powerMonitor.querySystemIdleState(), powerMonitor.querySystemIdleTime(), webFrame.setIsolatedWorldContentSecurityPolicy(), webFrame.setIsolatedWorldHumanReadableName(), webFrame.setIsolatedWorldSecurityOrigin(), app.getApplicationMenu() and app.setApplicationMenu(). #18159
  • Session.clearAuthCache no longer allows filtering the cleared cache entries. #17970
  • Removed deprecated Tray.setHighlightMode method (macOS). #18981
  • Native interfaces on macOS (menus, dialogs, etc.) now automatically match the dark mode setting on the users machine. #19226
  • Updated the electron npm module to use @electron/get. The minimum supported node version is now Node 8. #18413
  • Removed deprecated app.enableMixedSandbox() API. #17894
  • Removed deprecated callback versions of asynchronous functions to force use of promises. #17907

Notable Changes

  • Switched to a new Typescript Definitions generator. This means that some interface names may have changed, if your Typescript build is failing this is the cause. #18103
  • The electron.asar file no longer exists, if you have packaging scripts that depend on it's existence you should update them. #18577
  • Deprecated netLog.currentlyLoggingPath. #18289

Features

  • Added always-on-top-changed event emission for macOS. #19462
  • Added captureMode and maxFileSize options to the netLog API. #19215
  • Added creationTime / sandboxed / integrityLevel to app.getAppMetrics() output. #18718
  • Added getBounds() method for BrowserView. #19370
  • Added gpu-info-update event to app, which is emitted whenever there is a GPU info update. #18250
  • Added ipcRenderer.invoke() and ipcMain.handle() for asynchronous request/response-style IPC. #18449
  • Added memory to app.getAppMetrics(). #18831
  • Added process.getBlinkMemoryInfo(). #17762
  • Added removeInsertedCSS() to webFrame / webContents / <webview>. #16579
  • Added zoom-changed event to webContents, which is emitted when the user is trying to zoom in / out using the mouse wheel on Windows, even if the focus is inside an (x-origin) iframe. #17747
  • Added a method app.resignCurrentActivity() to allows marking inactive the current Handoff user activity without invalidating it. #18659
  • Added a property to set tooltips for MenuItems on macOS. #19099
  • Added a selection of new printing customization options. #18984
  • Added an optional conflict handling callback to app.moveToApplicationsFolder. #18916
  • Added security warning for remote module with remote content. #18822
  • Added support for CSS origin in webFrame.insertCSS(). #19268
  • Added support for NSVisualEffectMaterials vibrancy types added in macOS Mojave. #19073
  • Added support for mouse-move event of Tray API on Windows. #19265
  • Added support for systemPreferences.isDarkMode() API on Windows. #19217
  • Added support for systemPreferences.isHighContrastColorScheme() API on macOS. #19331
  • Added support for rotation multi-touch gestures on BrowserWindow for macOS. #19294
  • Added the ability to set authors in the Linux implementation of the About panel. #18964
  • All async webContents / <webview> methods now return a Promise. #18792
  • Calling contentTracing.stopTracing() with no arguments is now permitted and has the same behaviour as calling it with an empty string (tracing data will be written to a temporary file). #18411
  • Converted webContents primitive getters and setters to bespoke properties. #18998
  • Enabled the W3C Reporting API. #18255
  • Exposed the value of NSNotification.object to subscribers of notifications in systemPreferences. #19110
  • Implemented BrowserWindow.setFocusable on macOS. #19033
  • Improved webContents.print() callback value to distinguish between success, failure, and cancellation. #19000
  • Renderer processes hosting cross-origin frames are now sandboxed unless the parent BrowserWindow enables nodeIntegrationInSubFrames. #18650
  • You can now set the ELECTRON_SKIP_BINARY_DOWNLOAD=1 environment variable to skip electron binary download during installation of the npm package. #17627
  • netLog.startLogging() now returns a promise which resolves when the net log has started recording.

Fixes

  • Added missing support for ELECTRON_DEFAULT_ERROR_MODE in the GPU process. #17728
  • "Node integration with remote content" and "loading insecure content" warning messages are suppressed for localhost connections. #18814
  • Converted badgeCount to an actual property on the app module. #17363
  • Ensured that the node env is not bootstrapped before running inspector. cf2103d6
  • Ensured we wait for the inspect to disconnect. 2132fdfa
  • Fixed process.uptime() returning the wrong time. #19436
  • Fixed triggeredByAccelerator Event property behavior for MenuItems. #18865
  • Fixed a crash on tray popup being called multiple times in a row. #18999
  • Fixed an issue where the Tray icon context menu on macOS blocked the main process while open. #18880
  • Fixed bug where the close event would not emit upon closing modal window on macOS. #19014
  • Fixed crashReporter addExtraParameter / removeExtraParameter methods undefined in macOS node child processes. #15790
  • Fixed error throwing on invalid webRequest url pattern filtering in onBeforeRequest. #19337
  • Fixed incorrect passing of dialog MessageBox type. #19349
  • Fixed inverted alwaysOnTop status returned when always-on-top-changed was emitted on Linux and Windows. #19463
  • Fixed issues that will halt the runtime on modern Python. #18395
  • Fixed linting after shell rename. 56930338
  • Fixed setting src on <webview> being too slow. #18990
  • Fixed silent printing across platforms. #18979
  • Fixed support for the webkitdirectory attribute on input[type=file] elements. #18343
  • Fixed windows debug logging. #18199
  • Node.JS globals (process, Buffer, etc.) are no longer removed from the global scope if you have contextIsolation enabled as it is safe for those variables to still exist in their isolated world. #18967
  • Non-absolute session preload script paths are now ignored for sandboxed renderers. #19066
  • Standardized the about panel icon size on Linux. #18957
  • getPath('logs') now throws better error when it fails to find the logs path. #19514
  • web-contents-created and browser-window-created no longer emit an empty object in place of Event. #19465
  • Fixed an issue whereby requiring some modules before the app ready event had side effects. #17496
  • Fixed an issue where netLog.startLogging() would silently fail when called immediately during app.on('ready').

Other Changes

  • Converted appLevelAppearance to be a property on systemPreferences. #18477
  • Converted autoHideMenuBar to a property on BrowserWindow instances. #18555
  • Converted savePath accessor to a property on DownloadItem instances. #18677
  • Converted resizable, maximizable, minimizable, fullscreenable, movable and closable getters / setters on the BrowserWindow class to properties. #18618
  • Converted name to be a property on the app module. #17701
  • Converted nativeImage.templateImage to be a property on the nativeImage prototype. #18124

Documentation

  • Documentation changes: #17865, #17903, #17904, #18328, #18368, #18499