ok: safe to upgrade
0 breaking changes5 key points
Mostly crash and bug fixes, plus faster startup on Linux, Windows and macOS, and updates to Chromium and Node.js.
key points
- note[1]: Several crash fixes, including crashes when app event handlers call back into Electron synchronously.release-notes:23
- note[2]: Faster application startup on Linux by skipping GDK's OpenGL probe and loading FontConfig off the main thread.release-notes:42
- note[3]:
webContents.print()now honorsprintBackground,duplexMode, and printer default duplex settings.release-notes:10 - note[4]: Chromium is updated to 150.0.7871.250.release-notes:46
- note[5]: Node.js is updated to v24.19.0.release-notes:47
release-notesgithub.com/electron/electron · 47 lines
- # Release Notes for v43.5.0
- ## Fixes
- * Fixed DevTools device metrics overrides persisting indefinitely when a remote debugging client disconnected without clearing them. [#52946](https://github.com/electron/electron/pull/52946) <sup>(Also in [42](https://github.com/electron/electron/pull/53133), [44](https://github.com/electron/electron/pull/52930))</sup>
- * Fixed `BrowserWindow.unmaximize()` and `restore()` having no effect on Wayland when the window was maximized immediately after creation. [#53125](https://github.com/electron/electron/pull/53125) <sup>(Also in [42](https://github.com/electron/electron/pull/53126), [44](https://github.com/electron/electron/pull/53124))</sup>
- * Fixed `Uncaught illegal access` errors and possible renderer crashes after closing a same-process child window or removing an iframe with `nodeIntegrationInSubFrames` enabled. [#53041](https://github.com/electron/electron/pull/53041) <sup>(Also in [42](https://github.com/electron/electron/pull/53042), [44](https://github.com/electron/electron/pull/53040))</sup>
- * Fixed `fs.constants.O_DIRECTORY`, `O_NOFOLLOW` and `O_DIRECT` holding x86 values on Linux arm64 and armv7l, which made opening a directory fail with `EINVAL`, and made `require('trace_events')` behave the same on cross-compiled builds as on native ones. [#53319](https://github.com/electron/electron/pull/53319) <sup>(Also in [42](https://github.com/electron/electron/pull/53318), [44](https://github.com/electron/electron/pull/53320), [45](https://github.com/electron/electron/pull/53321))</sup>
- * Fixed `webContents.executeJavaScriptInIsolatedWorld` resolving with `undefined` when `worldId` was not an integer. [#53237](https://github.com/electron/electron/pull/53237) <sup>(Also in [44](https://github.com/electron/electron/pull/53238))</sup>
- * Fixed `webContents.print()` honoring `printBackground`, `duplexMode`, and printer default duplex settings. [#53160](https://github.com/electron/electron/pull/53160) <sup>(Also in [42](https://github.com/electron/electron/pull/53158), [44](https://github.com/electron/electron/pull/53159))</sup>
- * Fixed a crash on Linux when the D-Bus session bus disconnected while the app was running, such as at logout or when dbus is restarted. [#53095](https://github.com/electron/electron/pull/53095) <sup>(Also in [42](https://github.com/electron/electron/pull/53094), [44](https://github.com/electron/electron/pull/53096))</sup>
- * Fixed a crash on Windows when V8 posted a delayed worker task during shutdown. [#53013](https://github.com/electron/electron/pull/53013) <sup>(Also in [42](https://github.com/electron/electron/pull/53014), [44](https://github.com/electron/electron/pull/53201))</sup>
- * Fixed a crash on macOS when a WebAuthn Touch ID prompt was requested while no locale resources were loaded. [#53195](https://github.com/electron/electron/pull/53195) <sup>(Also in [44](https://github.com/electron/electron/pull/53194))</sup>
- * Fixed a crash on macOS when a notification's icon could not be attached; the notification is now shown without the icon. [#53147](https://github.com/electron/electron/pull/53147) <sup>(Also in [42](https://github.com/electron/electron/pull/53148), [44](https://github.com/electron/electron/pull/53146))</sup>
- * Fixed a crash when calling `node:wasi` functions in optimized code. [#53265](https://github.com/electron/electron/pull/53265) <sup>(Also in [42](https://github.com/electron/electron/pull/53267), [44](https://github.com/electron/electron/pull/53268), [45](https://github.com/electron/electron/pull/53266))</sup>
- * Fixed a crash when calling `utilityProcess.postMessage()` after the utility process had exited. [#53301](https://github.com/electron/electron/pull/53301) <sup>(Also in [44](https://github.com/electron/electron/pull/53300), [45](https://github.com/electron/electron/pull/53299))</sup>
- * Fixed a regression where a window created with a custom title can show an empty title after using back/forward navigation. [#53219](https://github.com/electron/electron/pull/53219) <sup>(Also in [42](https://github.com/electron/electron/pull/53217), [44](https://github.com/electron/electron/pull/53218))</sup>
- * Fixed a renderer crash when a page calls `SpeechRecognition.available()` or `SpeechRecognition.install()` with `processLocally`. [#53015](https://github.com/electron/electron/pull/53015) <sup>(Also in [42](https://github.com/electron/electron/pull/53016), [44](https://github.com/electron/electron/pull/53021))</sup>
- * Fixed an issue where pages loaded in a detached `WebContentsView` wouldn't see the correct window size. [#53152](https://github.com/electron/electron/pull/53152) <sup>(Also in [42](https://github.com/electron/electron/pull/53151), [44](https://github.com/electron/electron/pull/53153))</sup>
- * Fixed crashes in sharedTexture, service-worker ipcRenderer and utilityProcess.fork() caused by object lifetime bugs. [#53278](https://github.com/electron/electron/pull/53278) <sup>(Also in [44](https://github.com/electron/electron/pull/53279), [45](https://github.com/electron/electron/pull/53280))</sup>
- * Fixed crashes in the main process when a `webRequest.onBeforeRequest` listener redirected a CORS preflight request, and when calling `net.fetch()` with a `webRequest`-permission extension loaded. [#53304](https://github.com/electron/electron/pull/53304) <sup>(Also in [44](https://github.com/electron/electron/pull/53303), [45](https://github.com/electron/electron/pull/53302))</sup>
- * Fixed crashes when a webContents or parent window is destroyed while other APIs still reference it. [#53288](https://github.com/electron/electron/pull/53288) <sup>(Also in [44](https://github.com/electron/electron/pull/53287), [45](https://github.com/electron/electron/pull/53281))</sup>
- * Fixed crashes when certain app event handlers call back into Electron synchronously. [#53276](https://github.com/electron/electron/pull/53276) <sup>(Also in [44](https://github.com/electron/electron/pull/53275), [45](https://github.com/electron/electron/pull/53269))</sup>
- * Fixed document title updates when using back/forward navigation using the same document without utilizing `browserWindow.setTitle()`. [#53023](https://github.com/electron/electron/pull/53023) <sup>(Also in [42](https://github.com/electron/electron/pull/53099), [44](https://github.com/electron/electron/pull/52968))</sup>
- * Fixed region-qualified `--lang` values such as `de-DE` loading no locale resources on macOS, which left localized strings empty and could crash WebAuthn Touch ID prompts. [#53186](https://github.com/electron/electron/pull/53186) <sup>(Also in [42](https://github.com/electron/electron/pull/53187), [44](https://github.com/electron/electron/pull/53188))</sup>
- * Fixed spellcheck not initializing on Linux when the dictionary was already cached from a previous run. [#52717](https://github.com/electron/electron/pull/52717) <sup>(Also in [44](https://github.com/electron/electron/pull/52716))</sup>
- * Fixed the GPU process being terminated in AppX/MSIX packaged apps on Windows when WebGPU fell back to SwiftShader. [#53197](https://github.com/electron/electron/pull/53197) <sup>(Also in [42](https://github.com/electron/electron/pull/53199), [44](https://github.com/electron/electron/pull/53198))</sup>
- * Fixed the primary instance being killed or receiving truncated arguments when a second instance passed a very long command line or large `additionalData` to `app.requestSingleInstanceLock()`. [#53156](https://github.com/electron/electron/pull/53156) <sup>(Also in [42](https://github.com/electron/electron/pull/53157), [44](https://github.com/electron/electron/pull/52950))</sup>
- * Fixed the tray icon not appearing on GNOME (and disappearing entirely on Wayland) since 43.4.1. [#53215](https://github.com/electron/electron/pull/53215)
- * Fixed utility process crashes at exit on Windows 11 24H2 and later. [#53092](https://github.com/electron/electron/pull/53092) <sup>(Also in [42](https://github.com/electron/electron/pull/53091), [44](https://github.com/electron/electron/pull/53093))</sup>
- * Fixed windows native message boxes being dismissed by other applications using invalid button ID. [#53155](https://github.com/electron/electron/pull/53155) <sup>(Also in [44](https://github.com/electron/electron/pull/53154))</sup>
- ## Other Changes
- * Backported fixes from upstream ANGLE, Chromium, Dawn, Skia and V8. [#52969](https://github.com/electron/electron/pull/52969)
- * Backported fixes from upstream ANGLE, Chromium, Dawn, V8 and WebRTC. [#53190](https://github.com/electron/electron/pull/53190)
- * Backported fixes from upstream Chromium and V8. [#53055](https://github.com/electron/electron/pull/53055)
- * Fixed a 1-in-200 chance per renderer process on Windows of scripts on the first page load being compiled without their V8 code cache. [#52943](https://github.com/electron/electron/pull/52943) <sup>(Also in [42](https://github.com/electron/electron/pull/52988), [44](https://github.com/electron/electron/pull/52792))</sup>
- * Fixed a stall of tens of milliseconds while creating the first `BrowserWindow` on Linux.
- * Improved the performance of file lookups inside ASAR archives and of large files served from them to the renderer.
- * Improved the performance of calls through `contextBridge`-exposed APIs.
- * Reduced the main-thread cost of sending large values through `ipcRenderer`, `ipcMain` handlers and `webContents.send`. [#53018](https://github.com/electron/electron/pull/53018) <sup>(Also in [42](https://github.com/electron/electron/pull/53019), [44](https://github.com/electron/electron/pull/53017))</sup>
- * Improved application startup time on Linux by skipping GDK's OpenGL probe and loading FontConfig off the main thread during toolkit initialization. [#53108](https://github.com/electron/electron/pull/53108) <sup>(Also in [44](https://github.com/electron/electron/pull/53107))</sup>
- * Improved startup time of `utilityProcess.fork()`, `child_process.fork()` / `ELECTRON_RUN_AS_NODE` child processes and Node.js-enabled renderers. [#53135](https://github.com/electron/electron/pull/53135) <sup>(Also in [42](https://github.com/electron/electron/pull/53136), [44](https://github.com/electron/electron/pull/53134))</sup>
- * Linux arm64, Windows arm64 and macOS x64 builds now start the main process from the embedded Node.js startup snapshot like the other platforms, improving startup time. [#52881](https://github.com/electron/electron/pull/52881) <sup>(Also in [42](https://github.com/electron/electron/pull/52880), [44](https://github.com/electron/electron/pull/52879))</sup>
- * Page resources, `fetch()` calls and file:// loads in renderers no longer wait for the main process to be idle when no `webRequest` listeners or protocol interceptors are registered. [#53142](https://github.com/electron/electron/pull/53142) <sup>(Also in [42](https://github.com/electron/electron/pull/53143), [44](https://github.com/electron/electron/pull/53141))</sup>
- * Updated Chromium to 150.0.7871.250. [#52787](https://github.com/electron/electron/pull/52787)
- * Updated Node.js to v24.19.0. [#52635](https://github.com/electron/electron/pull/52635)