Electron 28.0.0
Electron 28.0.0 wurde veröffentlicht! Es enthält Upgrades auf Chromium 120.0.6099.56
, V8 12.0
, und Node.js 18.18.2
.
Das Electron-Team freut sich, die Veröffentlichung von Electron 28.0.0 ankündigen zu können! Sie können es mit npm über npm electron@latest
installieren oder von unserer Releases-Website herunterladen. Lesen Sie weiter für Details zu dieser Version.
Wenn Sie Feedback haben, teilen Sie es uns bitte auf Twitter oder Mastodon mit oder treten Sie unserem Community-Discord bei! Bugs und Feature-Anfragen können im Issue-Tracker von Electron gemeldet werden.
Bemerkenswerte Änderungen
Highlights
- Unterstützung für ECMAScript Module oder ESM Implementiert (Was sind ECMAScript Module? hier mehr erfahren). Dies beinhaltet die Unterstützung für ESM in Electron selbst sowie Bereiche wie die "UtilityProcess"-API-Einstiegspunkte. Siehe unsere ESM-Dokumentation für weitere Details.
- Neben ESM-Unterstützung in Electron selbst unterstützt Electron Forge auch die Verwendung von ESM zum Paketieren, Erstellen und Entwickeln von Electron-Anwendungen. Sie können diese Unterstützung in Forge v7.0.0 oder höher finden.
Stack-Änderungen
- Chromium
120.0.6099.56
- Neu in Chrome 119 und in DevTools 119
- Neu in Chrome 120 und in DevTools 120
- Node
18.18.2
- V8
12.0
Neue Funktionen
- ESM-Unterstützung aktiviert. #37535
- Für weitere Details siehe die ESM-Dokumentation.
- ESM Einstiegspunkte zur "UtilityProcess" API hinzugefügt. #40047
- Mehrere Eigenschaften dem
display
Objekt hinzugefügt, einschließlichdetected
,maximumCursorSize
undnativeOrigin
. #40554 - Unterstützung für die Umgebungsvariable
ELECTRON_OZONE_PLATFORM_HINT
unter Linux hinzugefügt. #39792
Breaking Changes
Geändertes Verhalten: WebContents.backgroundThrottling
auf false gesetzt wirkt sich auf alle WebContents
im Host BrowserWindow
aus
"WebContents.backgroundThrottling" auf "false" gesetzt deaktiviert Frame Throttling im "BrowserWindow" für alle von diesem angezeigten "WebContents".
Entfernt: BrowserWindow.setTrafficLightPosition(position)
BrowserWindow.setTrafficLightPosition(position)
wurde entfernt, die BrowserWindow.setWindowButtonPosition(position)
API sollte stattdessen verwendet werden, welche null
anstelle von { x: 0, y: 0 }
akzeptiert um die Position auf Systemstandard zurückzusetzen.
// Entfernt in Electron 25
win.setTrafficLightPosition({ x: 10, y: 10 });
win.setTrafficLightPosition({ x: 0, y: 0 });
// Ersetzen mit
win.setWindowButtonPosition({ x: 10, y: 10 });
win.setWindowButtonPosition(null);
Entfernt: BrowserWindow.getTrafficLightPosition()
BrowserWindow.getTrafficLightPosition()
wurde entfernt, die BrowserWindow.getWindowButtonPosition()
API sollte stattdessen verwendet werden, welche null
anstelle von { x: 0, y: 0 }
zurückgibt, wenn keine benutzerdefinierte Position vorhanden ist.
// Entfernt in Electron 28
const pos = win.getTrafficLightPosition();
if (pos. === 0 && pos.y === 0) {
// Keine benutzerdefinierte Position.
}
// Ersetzen mit
const ret = win. etWindowButtonPosition();
if (ret === null) {
// Keine benutzerdefinierte Position.
}
Entfernt: ipcRenderer.sendTo()
Die API ipcRenderer.sendTo()
wurde entfernt. Sie sollte durch das Einrichten eines MessageChannel
zwischen den Renderern ersetzt werden.
Die senderId
und senderIsMainFrame
Eigenschaften von IpcRendererEvent
wurden ebenfalls entfernt.
Entfernt: app.runningUnderRosettaTranslation
Die Eigenschaft app.runningUnderRosettaTranslation
wurde entfernt.
Verwende stattdessen app.runningUnderARM64Translation
.
// Entfernt
console.log(app.runningUnderRosettaTranslation)
// Ersetzen durch
console.log(app.runningUnderARM64Translation);
Ende der Unterstützung für 25.x.y
Electron 25.x.y hat das Ende des Supports gemäß der Support-Richtlinie des Projekts erreicht. Developers and applications are encouraged to upgrade to a newer version of Electron.
E28 (Dec'23) | E29 (Feb'24) | E30 (Apr'24) |
---|---|---|
28.x.y | 29.x.y | 30.x.y |
27.x.y | 28.x.y | 29.x.y |
26.x.y | 27.x.y | 28.x.y |
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.
Sie können die öffentliche Zeitleiste von Electron hier finden.
Weitere Informationen über zukünftige Änderungen können auf der Geplante Breaking Changes Seite gefunden werden.