Zum Hauptteil springen

Electron 12.0.0

· Die Lesezeit beträgt 5 min

Electron 12.0.0 wurde veröffentlicht! Es enthält Upgrades auf Chromium 89, V8 8.9 und Node.js 14.16. Wir haben Änderungen am Remote-Modul, neue Standardwerte für contextIsolation, eine neue WebFrameMain API und allgemeine Verbesserungen hinzugefügt. Lesen Sie unten für weitere Details!


Das Electron-Team freut sich über die Veröffentlichung von Electron 12.0.0! Sie können es mit npm über npm install electron@latest installieren oder von unserer Release-Website herunterladen. Lesen Sie weiter für Details zu dieser Version und teilen Sie bitte Ihr Feedback!

Bemerkenswerte Änderungen

Stack-Änderungen

Hervorgehobene Features

  • The ContextBridge exposeInMainWorld method can now expose non-object APIs. #26834
  • Upgraded from Node 12 to Node 14. #23249
  • Added a new webFrameMain API for accessing sub-frames of a WebContents instance from the main process. #25464
  • The default values of contextIsolation and worldSafeExecuteJavaScript are now true. #27949 #27502

Eine vollständige Liste der neuen Funktionen und Änderungen finden Sie in den 12.0.0 Versionshinweise.

Breaking Changes

Weitere Informationen zu diesen und zukünftigen Änderungen finden Sie auf der geplante Änderungen Seite.

API-Änderungen

  • Added webFrameMain API: The webFrameMain module can be used to look up frames across existing WebContents instances. This is the main process equivalent of the existing webFrame API. More information about this new API can be found here, and in our documentation.
  • app API-Änderungen:
    • Added non-localized serviceName to 'child-process-gone' / app.getAppMetrics(). #25975
    • Added new app.runningUnderRosettaTranslation property to detect when running under rosetta on Apple silicon. #26444
    • Added exitCode to render-process-gone details (app & webContents). #27677
  • BrowserWindow API-Änderungen:
    • Added BrowserWindow.isTabletMode() API. #25209
    • Added resized (Windows/macOS) and moved (Windows) events to BrowserWindow. #26216
    • Added new system-context-menu event to allow preventing and overriding the system context menu. #25795
    • Added win.setTopBrowserView() so that BrowserViews can be raised. #27713
    • Added webPreferences.preferredSizeMode to allow sizing views according to their document's minimum size. #25874
  • contextBridge API changes:
    • Allowed ContextBridge exposeInMainWorld method to expose non-object APIs. #26834
  • display API changes:
    • Added displayFrequency property to the Display object to allow getting information about the refresh rate on Windows. #26472
  • extensions API changes:
    • Added support for some chrome.management APIs. #25098
  • MenuItem API changes:
    • Added support for showing macOS share menu. #25629
  • net API changes:
    • Added a new credentials option for net.request(). #25284
    • Added net.online for detecting whether there is currently internet connection. #21004
  • powerMonitor API changes:
    • Added powerMonitor.onBatteryPower. #26494
    • Added fast user switching event to powerMonitor on macOS. #25321
  • session API-Änderungen:
    • allowFileAccess Option zur ses.loadExtension() API hinzugefügt. #27702
    • display-capture API für session.setPermissionRequestHandler hinzugefügt. #27696
    • disabledCipherSuites Option zu session.setSSLConfig hinzugefügt. #25818
    • Added extension-loaded, extension-unloaded, and extension-ready events to session. #25385
    • session.setSSLConfig() hinzugefügt, um SSL zu konfigurieren. #25461
    • Added support for explicitly specifying direct, auto_detect or system modes in session.setProxy(). #24937
    • Serial API Unterstützung hinzugefügt. #25237
    • APIs zum Aktivieren/Deaktivieren der Rechtschreibprüfung hinzugefügt. #26276
  • shell API-Änderungen:
    • Eine neue asynchrone shell.trashItem() API wurde hinzugefügt und ersetzt die synchrone shell.moveItemToTrash(). #25114
  • webContents API-Änderungen:
    • Added a small console hint to console to help debug renderer crashes. #25317
    • Added frame and webContents properties to the details object in webRequest handlers. #27334
    • Added webContents.forcefullyCrashRenderer() to forcefully terminate a renderer process to assist with recovering a hung renderer. #25580
    • Added setWindowOpenHandler API for renderer-created child windows, and deprecate new-window event. #24517
  • webFrame API-Änderungen:
    • Rechtschreibprüfungs API zum Renderer hinzugefügt. #25060

Entfernte/Veraltete Änderungen

Die folgenden APIs wurden entfernt oder sind jetzt veraltet:

  • Das Modul remote wurde veraltet. Es wird durch @electron/remote ersetzt. #25293
  • Veraltete crashReporter APIs entfernt. #26709
  • Links zur Electron-Website wurden aus dem Standard-"Hilfe"-Menü in gepackten Apps entfernt. #25831

Ende der Unterstützung für 9.x.y

Electron 9.x.y hat das Ende der Unterstützung gemäß der Unterstützungsrichtlinien des Projekts erreicht. Developers and applications are encouraged to upgrade to a newer version of Electron.

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. Der vorläufige 13.0.0 Zeitplan legt Schlüsseldaten im Entwicklungslebenszyklus von Electron 13.0 fest. 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.