electron/electron (electron)
### [`v29.0.0`](https://togithub.com/electron/electron/releases/tag/v29.0.0): electron v29.0.0
[Compare Source](https://togithub.com/electron/electron/compare/v28.2.3...v29.0.0)
### Release Notes for v29.0.0
#### Stack Upgrades
- Chromium `122.0.6261.39`
- [New in 122](https://developer.chrome.com/blog/new-in-chrome-122/)
- [New in 121](https://developer.chrome.com/blog/new-in-chrome-121/)
- Node `20.9.0`
- [Node 20.9.0 blog post](https://nodejs.org/en/blog/release/v20.9.0/)
- V8 `12.2`
#### Breaking Changes
- Functions called over the `contextBridge` are now called with the expected receiver (`this`). [#39978](https://togithub.com/electron/electron/pull/39978) (Also in [27](https://togithub.com/electron/electron/pull/40262), [28](https://togithub.com/electron/electron/pull/40263))
- The `gpu-process-crashed` event on `app` has been deprecated. [#40169](https://togithub.com/electron/electron/pull/40169) (Also in [28](https://togithub.com/electron/electron/pull/40195))
- The deprecated `gpu-process-crashed` event on `app` has been removed. [#40255](https://togithub.com/electron/electron/pull/40255)
- The deprecated `renderer-process-crashed` event on `app` and `crashed` event on `WebContents` and `` have been removed. [#40115](https://togithub.com/electron/electron/pull/40115)
#### Features
##### Additions
- Added `WebContentsView` and `BaseWindow`, replacing the now-deprecated `BrowserView` APIs. [#40759](https://togithub.com/electron/electron/pull/40759)
- Added `keyboardLock` to `ses.setPermissionRequestHandler(handler)`. [#40369](https://togithub.com/electron/electron/pull/40369) (Also in [26](https://togithub.com/electron/electron/pull/40458), [27](https://togithub.com/electron/electron/pull/40459), [28](https://togithub.com/electron/electron/pull/40460))
- Added an option in `protocol.registerSchemesAsPrivileged` to allow V8 code cache in custom schemes. [#40544](https://togithub.com/electron/electron/pull/40544) (Also in [27](https://togithub.com/electron/electron/pull/40708), [28](https://togithub.com/electron/electron/pull/40709))
- Added net module to utility process. [#40890](https://togithub.com/electron/electron/pull/40890) (Also in [27](https://togithub.com/electron/electron/pull/40968), [28](https://togithub.com/electron/electron/pull/40967))
- Added new [Electron Fuse](https://www.electronjs.org/docs/latest/tutorial/fuses) that opts the `file://` protocol into more secure and restrictive behaviour that matches Chromium. [#40372](https://togithub.com/electron/electron/pull/40372)
- Added new `webUtils.getPathForFile` method to replace `File.path` augmentation. [#38776](https://togithub.com/electron/electron/pull/38776)
- Added support for configuring `use_remote_checksums` via `.npmrc`. [#40253](https://togithub.com/electron/electron/pull/40253)
- Migrated `app.{set|get}LoginItemSettings(settings)` to use Apple's new recommended underlying framework on macOS. [#37244](https://togithub.com/electron/electron/pull/37244)
- This PR adds several properties to the `display` object including `detected`, `maximumCursorSize`, and `nativeOrigin`. [#40497](https://togithub.com/electron/electron/pull/40497) (Also in [28](https://togithub.com/electron/electron/pull/40554))
##### Removed/Deprecated
- Removed extraneous dlls from Windows zip files. [#41129](https://togithub.com/electron/electron/pull/41129) (Also in [28](https://togithub.com/electron/electron/pull/41128))
#### Fixes
- Added support for `ThumbnailCapturerMac` and `ScreenCaptureKitStreamPickerSonoma` chromium feature flags to bypass deprecated API warning on macOS 14.4. [#41329](https://togithub.com/electron/electron/pull/41329)
- Fixed Electron 29.0.0-beta.3 regression that could pop up context menus in the wrong location. [#41296](https://togithub.com/electron/electron/pull/41296)
- Fixed an issue where `import.meta.url` did not work in the renderer process with `contextIsolation` enabled. [#41265](https://togithub.com/electron/electron/pull/41265)
- Fixed an issue where `original-fs` methods were not properly corrected for patched imports. [#41238](https://togithub.com/electron/electron/pull/41238)
- Fixed an issue where draggable regions didn't work across platforms. [#41112](https://togithub.com/electron/electron/pull/41112)
- Fixed crash in MessagePort::close. [#41237](https://togithub.com/electron/electron/pull/41237)
- Fixed the `GrantFileProtocolExtraPrivileges` not correctly preventing `fetch()` calls to `file://` URLs. [#40864](https://togithub.com/electron/electron/pull/40864)
##### Also in earlier versions...
- Apply module search paths restriction on worker and child process. [#41138](https://togithub.com/electron/electron/pull/41138) (Also in [27](https://togithub.com/electron/electron/pull/41139), [28](https://togithub.com/electron/electron/pull/41137))
- Backported fix for AVX related crashes on certain linux machines. [#40536](https://togithub.com/electron/electron/pull/40536) (Also in [26](https://togithub.com/electron/electron/pull/40540), [27](https://togithub.com/electron/electron/pull/40541), [28](https://togithub.com/electron/electron/pull/40542))
- CSS style `-webkit-app-region: drag;` has no effect in full screen mode. [#41332](https://togithub.com/electron/electron/pull/41332) (Also in [27](https://togithub.com/electron/electron/pull/41331), [28](https://togithub.com/electron/electron/pull/41330))
- Fixed "will-navigate" not being emitted when pressing links in `chrome:` pages. [#40390](https://togithub.com/electron/electron/pull/40390) (Also in [27](https://togithub.com/electron/electron/pull/40524), [28](https://togithub.com/electron/electron/pull/40525))
- Fixed `session.fromPartition()` key lookup bug. [#41084](https://togithub.com/electron/electron/pull/41084) (Also in [28](https://togithub.com/electron/electron/pull/41083))
- Fixed a crash resultant from trying to listen to power-related events before the `ready` event was emitted on Linux. [#40925](https://togithub.com/electron/electron/pull/40925) (Also in [26](https://togithub.com/electron/electron/pull/40922), [27](https://togithub.com/electron/electron/pull/40923), [28](https://togithub.com/electron/electron/pull/40924))
- Fixed a crash that started occurring sporadically with some types of macOS window close. [#41299](https://togithub.com/electron/electron/pull/41299) (Also in [28](https://togithub.com/electron/electron/pull/41298))
- Fixed a partition alloc ref count check for higher MacOS versions. [#40766](https://togithub.com/electron/electron/pull/40766) (Also in [28](https://togithub.com/electron/electron/pull/40765))
- Fixed a potential `async_hooks` crash when listening for the `restore` event on Windows after minimizing a maximized BrowserWindow. [#41146](https://togithub.com/electron/electron/pull/41146) (Also in [27](https://togithub.com/electron/electron/pull/41144), [28](https://togithub.com/electron/electron/pull/41145))
- Fixed a potential crash when calling `dialog.showMessageBoxSync`. [#41043](https://togithub.com/electron/electron/pull/41043) (Also in [27](https://togithub.com/electron/electron/pull/41041), [28](https://togithub.com/electron/electron/pull/41042))
- Fixed a potential issue with `async_hook` corruption in some error contexts. [#40574](https://togithub.com/electron/electron/pull/40574) (Also in [26](https://togithub.com/electron/electron/pull/40592), [27](https://togithub.com/electron/electron/pull/40593), [28](https://togithub.com/electron/electron/pull/40594))
- Fixed a unexpectedly thrown error in some unsupported chrome extensions. [#40500](https://togithub.com/electron/electron/pull/40500) (Also in [26](https://togithub.com/electron/electron/pull/40512), [27](https://togithub.com/electron/electron/pull/40513), [28](https://togithub.com/electron/electron/pull/40514))
- Fixed an error changing file format in `dialog.showOpenDialog` on macOS. [#40308](https://togithub.com/electron/electron/pull/40308) (Also in [27](https://togithub.com/electron/electron/pull/40347), [28](https://togithub.com/electron/electron/pull/40346))
- Fixed an issue where Request objects did not correctly copy headers into fetches. [#41019](https://togithub.com/electron/electron/pull/41019) (Also in [28](https://togithub.com/electron/electron/pull/41103))
- Fixed an issue where WebViews could sometimes crash on unload. [#40400](https://togithub.com/electron/electron/pull/40400) (Also in [26](https://togithub.com/electron/electron/pull/40443), [27](https://togithub.com/electron/electron/pull/40444), [28](https://togithub.com/electron/electron/pull/40445))
- Fixed an issue where Windows Toast notifications weren't properly dismissed from the Action Center on `notification.close()` if they'd previously been dismissed. [#40197](https://togithub.com/electron/electron/pull/40197) (Also in [26](https://togithub.com/electron/electron/pull/40242), [27](https://togithub.com/electron/electron/pull/40244), [28](https://togithub.com/electron/electron/pull/40243))
- Fixed an issue where `MessagePorts` were not being correctly garbage collected when not referenced. [#40189](https://togithub.com/electron/electron/pull/40189) (Also in [28](https://togithub.com/electron/electron/pull/40201))
- Fixed an issue where `inAppPurchase.getProducts` and `inAppPurchase.purchasedProduct` did not resolve as expected. [#40957](https://togithub.com/electron/electron/pull/40957) (Also in [27](https://togithub.com/electron/electron/pull/40955), [28](https://togithub.com/electron/electron/pull/40956))
- Fixed an issue where `navigator.keyboard.lock()` did not work per [latest expected behavior](https://developer.chrome.com/blog/better-full-screen-mode). [#40365](https://togithub.com/electron/electron/pull/40365) (Also in [26](https://togithub.com/electron/electron/pull/40387), [27](https://togithub.com/electron/electron/pull/40388), [28](https://togithub.com/electron/electron/pull/40389))
- Fixed an issue where `select-usb-device` did not respect the `filter` option in `navigator.usb.requestDevice()`. [#41197](https://togithub.com/electron/electron/pull/41197) (Also in [27](https://togithub.com/electron/electron/pull/41196), [28](https://togithub.com/electron/electron/pull/41198))
- Fixed an issue where `webContents.printToPDF` could fail when certain combinations of `margins` and `pageSize` values are passed. [#41266](https://togithub.com/electron/electron/pull/41266) (Also in [28](https://togithub.com/electron/electron/pull/41267))
- Fixed an issue where crashes in `node::Environment` destruction potentially wouldn't be propagated to the `
Service ` exit handler. [#41301](https://togithub.com/electron/electron/pull/41301) (Also in [27](https://togithub.com/electron/electron/pull/41300), [28](https://togithub.com/electron/electron/pull/41302))
- Fixed an issue where devtools could not be re-opened. [#40666](https://togithub.com/electron/electron/pull/40666) (Also in [28](https://togithub.com/electron/electron/pull/40679))
- Fixed an issue where font requests were incorrectly being sent to dev tools multiple times per resource. [#40681](https://togithub.com/electron/electron/pull/40681) (Also in [27](https://togithub.com/electron/electron/pull/40715), [28](https://togithub.com/electron/electron/pull/40688))
- Fixed an issue where fully occluded windows would return an empty image from `webContents.capturePage()` on Windows and Linux. [#39730](https://togithub.com/electron/electron/pull/39730) (Also in [25](https://togithub.com/electron/electron/pull/40186), [26](https://togithub.com/electron/electron/pull/40187), [27](https://togithub.com/electron/electron/pull/40188), [28](https://togithub.com/electron/electron/pull/40185))
- Fixed an issue where non-modal windows with vibrancy could have incorrectly rounded corners on Sonoma. [#41037](https://togithub.com/electron/electron/pull/41037) (Also in [27](https://togithub.com/electron/electron/pull/41035), [28](https://togithub.com/electron/electron/pull/41036))
- Fixed an issue where the `printBackground` option in `webContents.printToPDF` did not work as expected. [#41180](https://togithub.com/electron/electron/pull/41180) (Also in [28](https://togithub.com/electron/electron/pull/41179))
- Fixed an issue where zoom level settings did not persist per-session for webviews. [#40650](https://togithub.com/electron/electron/pull/40650) (Also in [27](https://togithub.com/electron/electron/pull/41269), [28](https://togithub.com/electron/electron/pull/41268))
- Fixed an issue with webContents interaction with fullscreen and WCO on macOS. [#40179](https://togithub.com/electron/electron/pull/40179) (Also in [25](https://togithub.com/electron/electron/pull/40220), [26](https://togithub.com/electron/electron/pull/40218), [27](https://togithub.com/electron/electron/pull/40217), [28](https://togithub.com/electron/electron/pull/40219))
- Fixed app incorrectly activating panel windows on macOS Sonoma. [#40307](https://togithub.com/electron/electron/pull/40307) (Also in [28](https://togithub.com/electron/electron/pull/40465))
- Fixed child window opening in non-active macOS apps. [#40546](https://togithub.com/electron/electron/pull/40546) (Also in [26](https://togithub.com/electron/electron/pull/40657), [27](https://togithub.com/electron/electron/pull/40658), [28](https://togithub.com/electron/electron/pull/40659))
- Fixed default protocol handler behavior on Windows. [#40908](https://togithub.com/electron/electron/pull/40908) (Also in [28](https://togithub.com/electron/electron/pull/40909))
- Fixed file paths passed to `shell.showItemInFolder` not being escaped in Linux. [#40527](https://togithub.com/electron/electron/pull/40527) (Also in [26](https://togithub.com/electron/electron/pull/40560), [27](https://togithub.com/electron/electron/pull/40561), [28](https://togithub.com/electron/electron/pull/40562))
- Fixed forked child process not able to send IPC message under some cases on macOS. [#41102](https://togithub.com/electron/electron/pull/41102) (Also in [26](https://togithub.com/electron/electron/pull/41099), [27](https://togithub.com/electron/electron/pull/41100), [28](https://togithub.com/electron/electron/pull/41101))
- Fixed incorrect title bar shown on frameless transparent windows. [#40862](https://togithub.com/electron/electron/pull/40862) (Also in [27](https://togithub.com/electron/electron/pull/40868), [28](https://togithub.com/electron/electron/pull/40867))
- Fixed loading nested ESM dependencies in `node_modules`
- Correctly support the `throwIfNoEntry` option in `fs.statSync`/`fs.lstatSync` in asar files. [#40221](https://togithub.com/electron/electron/pull/40221) (Also in [28](https://togithub.com/electron/electron/pull/40224))
- Fixed macOS bug that causes window maximize button to be disabled in full-screen mode. [#41029](https://togithub.com/electron/electron/pull/41029) (Also in [27](https://togithub.com/electron/electron/pull/41027), [28](https://togithub.com/electron/electron/pull/41028))
- Fixed on-screen-keyboard not hiding for webviews under some cases. [#41149](https://togithub.com/electron/electron/pull/41149) (Also in [27](https://togithub.com/electron/electron/pull/41151), [28](https://togithub.com/electron/electron/pull/41150))
- Fixed problem with bounds of maximized window when toggle BrowserWindow.setResizable function. [#40503](https://togithub.com/electron/electron/pull/40503) (Also in [26](https://togithub.com/electron/electron/pull/40580), [27](https://togithub.com/electron/electron/pull/40581), [28](https://togithub.com/electron/electron/pull/40582))
- Fixed resizing performance issue on macOS. [#40577](https://togithub.com/electron/electron/pull/40577) (Also in [26](https://togithub.com/electron/electron/pull/40584), [27](https://togithub.com/electron/electron/pull/40585), [28](https://togithub.com/electron/electron/pull/40586))
- Fixed some redundant permission dialogs while screen sharing on Wayland. [#40098](https://togithub.com/electron/electron/pull/40098) (Also in [26](https://togithub.com/electron/electron/pull/40191), [27](https://togithub.com/electron/electron/pull/40193), [28](https://togithub.com/electron/electron/pull/40192))
- Fixed the enabled/disabled behavior of the maximize/fullscreen button of macOS windows. [#40897](https://togithub.com/electron/electron/pull/40897) (Also in [27](https://togithub.com/electron/electron/pull/40895), [28](https://togithub.com/electron/electron/pull/40896))
- Prevent node mode to be used as script runner by other apps on macOS. [#40579](https://togithub.com/electron/electron/pull/40579) (Also in [26](https://togithub.com/electron/electron/pull/40738), [27](https://togithub.com/electron/electron/pull/40737), [28](https://togithub.com/electron/electron/pull/40710))
- Unset all Node envs in node process when parent is a foreign process. [#40881](https://togithub.com/electron/electron/pull/40881) (Also in [26](https://togithub.com/electron/electron/pull/40882), [27](https://togithub.com/electron/electron/pull/40879), [28](https://togithub.com/electron/electron/pull/40880))
- Use `activateIgnoringOtherApps` for focusing non-panels on macOS. [#40570](https://togithub.com/electron/electron/pull/40570) (Also in [28](https://togithub.com/electron/electron/pull/40621))
#### Other Changes
- Re-enabled partition alloc on Mac. [#33981](https://togithub.com/electron/electron/pull/33981) (Also in [28](https://togithub.com/electron/electron/pull/40230))
- Reverted new WebContentsView and BaseWindow APIs. [#41060](https://togithub.com/electron/electron/pull/41060)
- Security: backported fix for chromium:1517354. [#40969](https://togithub.com/electron/electron/pull/40969)
#### Notices
##### End of Support for 26.x.y
Electron 26.x.y has reached end-of-support as per the project's [support policy](https://www.electronjs.org/docs/latest/tutorial/electron-timelines#version-support-policy). Developers and applications are encouraged to upgrade to a newer version of Electron.
Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
[ ] If you want to rebase/retry this PR, check this box
This PR has been generated by Mend Renovate. View repository job log here.
This PR contains the following updates:
28.2.3
->29.0.0
Release Notes
electron/electron (electron)
### [`v29.0.0`](https://togithub.com/electron/electron/releases/tag/v29.0.0): electron v29.0.0 [Compare Source](https://togithub.com/electron/electron/compare/v28.2.3...v29.0.0) ### Release Notes for v29.0.0 #### Stack Upgrades - Chromium `122.0.6261.39` - [New in 122](https://developer.chrome.com/blog/new-in-chrome-122/) - [New in 121](https://developer.chrome.com/blog/new-in-chrome-121/) - Node `20.9.0` - [Node 20.9.0 blog post](https://nodejs.org/en/blog/release/v20.9.0/) - V8 `12.2` #### Breaking Changes - Functions called over the `contextBridge` are now called with the expected receiver (`this`). [#39978](https://togithub.com/electron/electron/pull/39978) (Also in [27](https://togithub.com/electron/electron/pull/40262), [28](https://togithub.com/electron/electron/pull/40263)) - The `gpu-process-crashed` event on `app` has been deprecated. [#40169](https://togithub.com/electron/electron/pull/40169) (Also in [28](https://togithub.com/electron/electron/pull/40195)) - The deprecated `gpu-process-crashed` event on `app` has been removed. [#40255](https://togithub.com/electron/electron/pull/40255) - The deprecated `renderer-process-crashed` event on `app` and `crashed` event on `WebContents` and `Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by Mend Renovate. View repository job log here.