From 04e37266c46826f4db6b5a943a9d95a9a3d45219 Mon Sep 17 00:00:00 2001 From: "trop[bot]" <37223003+trop[bot]@users.noreply.github.com> Date: Mon, 3 Feb 2025 16:29:28 -0500 Subject: [PATCH] docs: mention C++20 requirement in breaking changes document (#45445) * docs: mention C++20 requirement in breaking changes document Co-authored-by: Niklas Wenzel * chore: fix linter issue Co-authored-by: Niklas Wenzel --------- Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com> Co-authored-by: Niklas Wenzel --- docs/breaking-changes.md | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/docs/breaking-changes.md b/docs/breaking-changes.md index f25d46ce05cb..efd0b1dc80d3 100644 --- a/docs/breaking-changes.md +++ b/docs/breaking-changes.md @@ -145,6 +145,16 @@ macOS 10.15 (Catalina) is no longer supported by [Chromium](https://chromium-rev Older versions of Electron will continue to run on Catalina, but macOS 11 (Big Sur) or later will be required to run Electron v33.0.0 and higher. +### Behavior Changed: Native modules now require C++20 + +Due to changes made upstream, both +[V8](https://chromium-review.googlesource.com/c/v8/v8/+/5587859) and +[Node.js](https://github.com/nodejs/node/pull/45427) now require C++20 as a +minimum version. Developers using native node modules should build their +modules with `--std=c++20` rather than `--std=c++17`. Images using gcc9 or +lower may need to update to gcc10 in order to compile. See +[#43555](https://github.com/electron/electron/pull/43555) for more details. + ### Deprecated: `systemPreferences.accessibilityDisplayShouldReduceTransparency` The `systemPreferences.accessibilityDisplayShouldReduceTransparency` property is now deprecated in favor of the new `nativeTheme.prefersReducedTransparency`, which provides identical information and works cross-platform.