Electron 5.0.0
La team Electron est excitée d'annoncer la sortie de Electron 5.0.0 ! You can install it with npm via npm install electron@latest
or download the tarballs from our releases page. Cette version inclue des mises à jour, des correctifs et de nouvelles fonctionnalités. On a hâte de voir vos prochaines créations avec cette version ! Continuez de lire pour plus de détails sur cette version, et s'il vous plaît, partagez vos commentaires et remarques !
Quoi de neuf ?
Much of Electron's functionality is provided by the core components of Chromium, Node.js, and V8. Electron keeps up-to-date with these projects to provide our users with new JavaScript features, performance improvements, and security fixes. Each of these packages has a major version bump in Electron 5:
- Chromium
73.0.3683.119
- Node.js
12.0.0
- V8
7.3.492.27
.
Electron 5 also includes improvements to Electron-specific APIs. A summary of the major changes is below; for the full list of changes, check out the Electron v5.0.0 release notes.
Promisification
Electron 5 continues Promisification initiative initiative to convert Electron's callback-based API to use Promises. These APIs were converted for Electron 5:
app.getFileIcon
contentTracing.getCategories
contentTracing.startRecording
contentTracing.stopRecording
debugger.sendCommand
- Cookies API
shell.openExternal
webContents.loadFile
webContents.loadURL
webContents.zoomLevel
webContents.zoomFactor
win.capturePage
System colors access for macOS
These functions were changed or added to systemPreferences
to access macOS systems' colors:
systemPreferences.getAccentColor
systemPreferences.getColor
systemPreferences.getSystemColor
Process memory information
The function process.getProcessMemoryInfo
has been added to get memory usage statistics about the current process.
Additional filtering for remote APIs
To improve security in the remote
API, new remote events have been added so that remote.getBuiltin
, remote.getCurrentWindow
, remote.getCurrentWebContents
and <webview>.getWebContents
can be filtered.
Multiple BrowserViews on BrowserWindow
BrowserWindow now supports managing multiple BrowserViews within the same BrowserWindow.
Changements majeurs avec rupture de compatibilité
Defaults for packaged apps
Packaged apps will now behave the same as the default app: a default application menu will be created unless the app has one and the window-all-closed
event will be automatically handled unless the app handles the event.
Mixed sandbox
Mixed sandbox mode is now enabled by default. Renderers launched with sandbox: true
will now be actually sandboxed, where previously they would only be sandboxed if mixed-sandbox mode was also enabled.
Security improvements
The default values of nodeIntegration
and webviewTag
are now false
to improve security.
Spellchecker now asynchronous
The SpellCheck API has been changed to provide asynchronous results.
Deprecations
The following APIs are newly deprecated in Electron 5.0.0 and planned for removal in 6.0.0:
Mksnapshot binaries for arm and arm64
Les binaires natifs de mksnapshot pour arm et arm64 sont dépréciés et seront supprimés en 6. . 0. Des instantanés peuvent être créés pour les arm et arm64 à l’aide des binaires x64.
ServiceWorker APIs on WebContents
Deprecated ServiceWorker APIs on WebContents in preparation for their removal.
webContents.hasServiceWorker
webContents.unregisterServiceWorker
Automatic modules with sandboxed webContents
In order to improve security, the following modules are being deprecated for use directly via require
and will instead need to be included via remote.require
in a sandboxed webcontents:
electron.screen
child_process
fs
os
path
webFrame Isolated World APIs
webFrame.setIsolatedWorldContentSecurityPolicy
,webFrame.setIsolatedWorldHumanReadableName
, webFrame.setIsolatedWorldSecurityOrigin
have been deprecated in favor of webFrame.setIsolatedWorldInfo
.
Mixed sandbox
enableMixedSandbox
and the --enable-mixed-sandbox
command-line switch still exist for compatibility, but are deprecated and have no effect.
End of support for 2.0.x
Per our supported versions policy, 2.0.x has reached end of life.
Programme de feedback
Nous continuons à utiliser notre Programme de Feedback de l'application pour les tests. Les projets qui participent à ce programme testent les bétas d'Electron sur leurs applications ; et en retour, les nouveaux bogues qu'ils trouvent sont priorisés pour la version stable. Si vous souhaitez participer ou en savoir plus, consultez notre blog sur le programme.
Et maintenant ?
À court terme, vous pouvez compter sur l’équipe pour continuer a se concentrer sur le développement des principaux composants qui composent Electron, notamment Chromium, Node et V8. Bien que nous veillions à ne pas faire de promesses à propos des dates de publication, notre plan est la sortie de nouvelles versions majeures d'Electron avec de nouvelles versions de ces composants environ un trimestre. Le planning escompté de la version 6.0.0 planning défini les dates clés du cycle de vie de développement d'Electron 6. Aussi, regardez notre document de versioning pour plus d'informations sur le versioning dans Electron.
Pour des informations sur les changements de rupture prévus dans les versions à venir d'Electron, regardez notre documentation sur les changements de rupture planifiés.