Electron 8.0.0
¡Electron 8.0.0 ha sido liberado! Incluye actualizaciones a Chromium 80
, V8 8.0
y Node.js 12.13.0
. We've added Chrome's built-in spellchecker, and much more!
El equipo de Electron esta emocionado de anunciar el lanzamiento de Electron 8.0.0! You can install it with npm via npm install electron@latest
or download it from our releases website. The release is packed with upgrades, fixes, and new features. We can't wait to see what you build with them! Continue reading for details about this release, and please share any feedback you have!
Notable Changes
Stack Changes
- Chromium
80.0.3987.86
- Node.js
12.13.0
- V8
8.0
Características Destacadas
- Implemented usage of Chrome's built-in spellchecker feature. See more details in #20692 and #21266.
- IPC communication now uses v8's Structured Clone Algorithm. This is faster, more featureful, and less surprising than the existing logic, and brings about a 2x performance boost for large buffers and complex objects. Latency for small messages is not significantly affected. See more details in #20214.
Vea la notas de lanzamiento 8.0.0 para la lista completa de nuevas características y cambios.
Restaurar archivos borrados
- Show module name in deprecation warning for context-aware modules. #21952
- This is continued work for a future requirement that native Node modules loaded in the renderer process be either N-API or Context Aware. Full info and proposed timeline is detailed in this issue.
- Los valores enviados sobre IPC ahora son serializados con Structured Clone Algorithm. #20214
- Offscreen Rendering is currently disabled due to lack of a maintainer to work on this feature. It broke during the Chromium upgrade and was subsequently disabled. #20772
More information about these and future changes can be found on the Planned Breaking Changes page.
API Modificada
app
Cambios en la API:BrowserWindow
Cambios en la API:- Updated docs to note that BrowserWindow options
hasShadow
is available on all platforms #20038 - Added
trafficLightPosition
option to BrowserWindow options to allow custom positioning for traffic light buttons. #21781 - Added
accessibleTitle
option to BrowserWindow for setting the accessible window title #19698 BrowserWindow.fromWebContents()
can now return null #19983- Added
BrowserWindow.getMediaSourceId()
andBrowserWindow.moveAbove(mediaSourceId)
. #18926 - Added support for
will-move
event on macOS. #19641
- Updated docs to note that BrowserWindow options
- Documented previously undocumented
crashReporter.getCrashesDirectory()
. #20417 dialog
Cambios en la API:Notification
Cambios en la API:session
Cambios en la API:- Updated documentation on
session.setProxy(config)
andsession.setCertificateVerifyProc(proc)
to note optional options. #19604 - Added
session.downloadURL(url)
to allow to triggering downloads without a BrowserWindow. #19889 - Added support for HTTP preconnect resource hints via
session.preconnect(options)
and thepreconnect
event. #18671 - Added
session.addWordToSpellCheckerDictionary
to allow custom words in the dictionary #21297
- Updated documentation on
- Added option to
shell.moveItemToTrash(fullPath[, deleteOnFail])
on macOS to specify what happens when moveItemToTrash fails. #19700 systemPreferences
Cambios en la API:- Added
nativeTheme.themeSource
to allow apps to override Chromium and the OS's theme choice. #19960 - TouchBar API changes:
tray
Cambios en la API:webContents
Cambios en la API:- Added
contents.executeJavaScriptInIsolatedWorld(worldId, scripts[, userGesture])
to expose executeJavaScriptInIsolatedWorld on the webContents API. #21190 - Added methods to capture a hidden webContents. #21679
- Added options to
webContents.print([options], [callback])
to enable customization of print page headers and footers. #19688 - Added ability to inspect specific shared workers via
webContents.getAllSharedWorkers()
andwebContents.inspectSharedWorkerById(workerId)
. #20389 - Added the support of
fitToPageEnabled
andscaleFactor
options in WebContents.printToPDF(). #20436
- Added
- Updated
webview.printToPDF
documentation to indicate return type is now Uint8Array. #20505
API Obsoletas
The following APIs are now deprecated:
- Deprecated the nonfunctional
visibleOnFullScreen
option withinBrowserWindow.setVisibleOnAllWorkspaces
prior to its removal in the next major release version. #21732 - Deprecated
alternate-selected-control-text
onsystemPreferences.getColor(color)
for macOS. #20611 - Deprecated
setLayoutZoomLevelLimits
onwebContents
,webFrame
, and<webview> Tag
because Chromium removed this capability. #21296 - The default value of
false
forapp.allowRendererProcessReuse
is now deprecated. #21287 - Deprecated
<webview>.getWebContents()
as it depends on the remote module. #20726
Fin de soporte para 5.x.y
Electron 5.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.
Programa de retroalimentación
We continue to use our App Feedback Program for testing. Projects who participate in this program test Electron betas on their apps; and in return, the new bugs they find are prioritized for the stable release. If you'd like to participate or learn more, check out our blog post about the program.
What's Next
In the short term, you can expect the team to continue to focus on keeping up with the development of the major components that make up Electron, including Chromium, Node, and V8. Although we are careful not to make promises about release dates, our plan is release new major versions of Electron with new versions of those components approximately quarterly. El calendario tentativo 9.0.0 traza fechas claves en el ciclo de vida del desarrollo de Electron 9. Also, see our versioning document for more detailed information about versioning in Electron.
For information on planned breaking changes in upcoming versions of Electron, see our Planned Breaking Changes doc.
Deprecation of remote
Module (Starting in Electron 9)
Due to serious security liabilities, we are beginning plans to deprecate the remote
module starting in Electron 9. You can read and follow this issue that details our reasons for this and includes a proposed timeline for deprecation.