* chore: bump chromium in DEPS to 115.0.5772.0
* chore: update disable_color_correct_rendering.patch
no manual changes; patch succeeded with fuzz 2.
* chore: update chromium/build_libc_as_static_library.patch
no manual changes; patch succeeded with fuzz 2 (offset 1 line).
* chore: update chromium/feat_configure_launch_options_for_service_process.patch
Xref: 4518747
patch manually reapplied due to upstream code shear
* chore: update chromium/chore_patch_out_profile_methods_in_profile_selections_cc.patch
4502965
patch manually reapplied due to upstream code shear
* chore: update bundle_locations #include location
Xref: 4525355
* chore: Remove `extension_name` from DesktopStreamsRegistry
Xref: 4514081
* chore: bump chromium in DEPS to 115.0.5778.0
* chore: add chromium/chore_patch_out_profile_methods_in_chrome_browser_pdf.patch
Xref: 4482679
Another instance of patching out upstream references to Profile code
* refactor: add WebViewGuestDelegate::GetGuestDelegateWeakPtr()
Xref: 4515455
This approach copied from GuestViewBase::GetGuestDelegateWeakPtr() approach in that same commit.
* fixup! chore: update bundle_locations #include location
Xref: 4525355
Sync namespace use to upstream base::mac -> base::apple changes
* fixup! chore: update bundle_locations #include location
Xref: 4525355
Sync namespace use to upstream base::mac -> base::apple changes
* chore: update chromium/mas_disable_remote_accessibility.patch
Xref: 4530546
patch manually reapplied due to upstream code shear
* chore: update chromium/printing.patch
no manual changes; patch succeeded with fuzz
* chore: update chromium/build_add_electron_tracing_category.patch
Xref: 4517872
no manual changes; patch succeeded with fuzz
* chore: update chromium/feat_ensure_mas_builds_of_the_same_application_can_use_safestorage.patch
Xref: 4529098
patch manually reapplied due to upstream code shear
* chromium/build_only_use_the_mas_build_config_in_the_required_components.patch
4529098
patch manually reapplied due to upstream code shear
* chore: update chromium/mas-cgdisplayusesforcetogray.patch
Xref: 4529475
no manual changes; patch succeeded with fuzz
* chore: update chromium/build_only_use_the_mas_build_config_in_the_required_components.patch
Xref: 4429011
no manual changes; patch succeeded with fuzz
* chore: remove chromium/cherry-pick-48a136e77e6d.patch
already present upstream
* chore: remove chromium/cherry-pick-e6e23ba00379.patch
already present upstream
* [Code Health] Remove value based RegisterPref for Dict and List
Xref: 4533537
* Remove `cxx17_backports.h` and adjust unittest file
Xref: 4534916
Notes: mostly just removing #include and s/base::clamp/std::clamp/
* refactor: add FakeBrowserProcess helper class
Xref: 4424072
Used in ElectronBrowserMainParts' fake_browser_process_ field. Previously
this was an BrowserProcessImpl instance, but upstream 4424072 makes that
an abstract base class. `FakeBrowserProcess` is a thin subclass with the
minimum code needed to make it concrete.
`ElectronBrowserMainParts::fake_browser_process_` is now a `shared_ptr`
instead of a `unique_ptr` so we can avoid exposing `FakeBrowserProcess`
in the header.
* fixup! refactor: add FakeBrowserProcess helper class
remove unnecessary unique_ptr
* fix: Browser::SetDockIcon() when !Browser.is_ready()
Xref: 4410741
An alternative fix for https://github.com/electron/electron/pull/36279 .
The previous fix was to call `SetSupportedScales()` ourselves (1b1609a),
but upstream has removed this API.
CC @codebytere
* fixup! chore: remove chromium/cherry-pick-e6e23ba00379.patch
* chore: update chromium/export_gin_v8platform_pageallocator_for_usage_outside_of_the_gin.patch
Xref: 4517404
patch manually reapplied due to upstream code shear
* chore: update patches
* chore: add dep: resource_coordinator:mojo_bindings
Xref: 4521464
* fixup! chore: add dep: resource_coordinator:mojo_bindings
chore: make lint happy
* chore: patch out Profile methods in titlebar_config
Xref: 4508143 (primary)
Xref: 4534461 (followup)
* chore: bump chromium in DEPS to 115.0.5780.0
* chore: update chromium/disable_hidden.patch
no manual changes; patch succeeded with fuzz
* chore: update chromium/sysroot.patch
Xref: 4535715
no manual changes; patch succeeded with fuzz
* chore: update chromium/feat_enable_offscreen_rendering_with_viz_compositor.patch
Xref: 4403623
patch manually reapplied due to upstream code shear
* chore: update chromium/refactor_expose_cursor_changes_to_the_webcontentsobserver.patch
Xref: 4547380
patch manually reapplied due to upstream code shear
* chore: update patches
* fixup! fix: Browser::SetDockIcon() when !Browser.is_ready()
chore: iwyu image.h
* chore: bump chromium in DEPS to 115.0.5782.0
* chore: bump chromium in DEPS to 115.0.5784.0
* 4514181: CR2023: Update filled cr-input styles.
4514181
* 4521894: Remove SiteInstanceDeleting usage outside of tests.
4521894
* 4525355: Move backup_util and bundle_locations to base/apple
4525355
* 4484743: webauthn: add underlying support for calling iCloud Keychain on macOS.
4484743
* chore: fixup patch indices
* 4546398: Convert /chrome/browser to use ARC
4546398
* chore: bump chromium in DEPS to 115.0.5786.0
* chore: update patches
* 4540682: Initialize PDF SDK with policy in chrome_pdf::RenderPDFPageToDC()
4540682
* Don't import ObjC++ fn headers into electron_api_app
* 4535715: Refactor sysroot-creator.sh
4535715
* fixup! refactor: add FakeBrowserProcess helper class
* 4531903: [string][test] Create/Copy strings to old space before externalization
4531903
* 59645: Add APIs to support RSA keys with large e.
https://boringssl-review.googlesource.com/c/boringssl/+/59645
---------
Co-authored-by: Shelley Vohr <shelley.vohr@gmail.com>
fix: linker error missing uv__strtok
This symbol is referenced inside what seems to be dead code
in `uv__search_path` in third_party/electron_node/deps/uv/src/unix/core.c
When compiling in LTO mode, the reference is removed,
but not during a non-LTO build.
* chore: bump chromium in DEPS to 111.0.5522.0
* chore: bump chromium in DEPS to 111.0.5524.0
* chore: bump chromium in DEPS to 111.0.5526.0
* chore: bump chromium in DEPS to 111.0.5528.0
* chore: update patches/chromium/mas_avoid_usage_of_private_macos_apis.patch
Xref: 4132807
Fix simple code shear
* chore: update patches/chromium/unsandboxed_ppapi_processes_skip_zygote.patch
Xref: 4130675
Fix simple code shear
* chore: update patches/chromium/hack_plugin_response_interceptor_to_point_to_electron.patch
Xref: 4144281
Fix simple code shear; applied cleanly w/patch-fuzz
* chore: update patches/chromium/disable_unload_metrics.patch
Xref: 4126173
Fix simple code shear; applied cleanly w/patch-fuzz
* chore: update patches/chromium/feat_add_data_parameter_to_processsingleton.patch
Xref: 4144281
Fix simple code shear; applied cleanly w/patch-fuzz
* chore: update patches/chromium/preconnect_manager.patch
4144281
Fix simple code shear; applied cleanly w/patch-fuzz
* chore: update patches/v8/force_cppheapcreateparams_to_be_noncopyable.patch
3533019
Fix simple code shear; applied cleanly w/patch-fuzz
* chore: update patches
* chore: update patches/chromium/add_maximized_parameter_to_linuxui_getwindowframeprovider.patch
Xref: 4128765
Upstream added a new call to HeaderContext(), whose signature we have patched
* chore: bump chromium in DEPS to 111.0.5530.0
* chore: update patches
* Move ChildProcessHost* from content/common to content/browser
Xref: Move ChildProcessHost* from content/common to content/browser
* Remove RenderViewHostChanged
Xref: 4134103
[upstream removal of RenderViewHostChanged]
Xref: 4092763
Xref: 4093234
Xref: 4133892
Xref: 4134103
[examples of upstream code adjusting to the change]
Upstream handles this change in roughly two approaches:
1. Move the code over to RenderFrameHostChanged(old_host, new_host)
but test for new_host->IsInPrimaryMainFrame() before acting
2. Migrate to the PrimaryPageChanged(page) API and use
page.GetMainDocument() to get the RenderFrameHost.
I've chosen 1. because electron_api_web_contents needed that pointer
to old_host to call RemoveInputEventListener(), but I may be missing
some context & would appreciate review on this commit.
* Make electron/shell/browser/relauncher_win.cc use <winternl.h>
Xref: 4129135
Many internal Windows types are now available in winternl.h
so upstrem no longer defines the types themselves.
* Move ChildProcessHost* from content/common to content/browser
Xref: 4134795
* fixup! Make electron/shell/browser/relauncher_win.cc use <winternl.h>
winternl.h does not define the field we need, so clone the struct Chromium was using into unnamed namespace
* fixup! Move ChildProcessHost* from content/common to content/browser
chore: update #includes too
* chore: bump chromium in DEPS to 111.0.5532.0
* chore: sync patches/chromium/pepper_plugin_support.patch
Xref: 4133323
manually reync patch; no code changes
* chore: sync patches/chromium/mas_no_private_api.patch
Xref: 4143865
the content/common/pseudonymization_salt.cc patch is no longer needed
* chore: sync patches/chromium/mas_disable_remote_accessibility.patch
patch-fuzz update; no manual changes
* chore: sync patches/chromium/build_do_not_depend_on_packed_resource_integrity.patch
Xref: 4111725
manually reync patch; no code changes
* chore: sync patches/chromium/create_browser_v8_snapshot_file_name_fuse.patch
Xref: 4133323
manually reync patch; no code changes
* chore: sync patches/v8/fix_build_deprecated_attribute_for_older_msvc_versions.patch
Xref: 4127230
patch-fuzz update; no manual changes
* chore: rebuild patches
* fixup! Remove RenderViewHostChanged
Use PrimaryPageChanged()
* chore: remove unused method TabsUpdateFunction::OnExecuteCodeFinished()
Xref: 4133991
This private, already-unused function showed up as a FTBFS because it
took a base::ListValue parameter and ListValue was removed upstream.
* task posting v3: remove includes of runner handles and IWYU task runners
Xref: 4133323
* chore: lint
* chore: more lint
* fixup! task posting v3: remove includes of runner handles and IWYU task runners
macOS, too
* fixup! task posting v3: remove includes of runner handles and IWYU task runners
* chore: bump chromium in DEPS to 111.0.5534.0
* chore: sync patches/chromium/allow_new_privileges_in_unsandboxed_child_processes.patch
Xref: 4141862
patch-fuzz update; no manual changes
* chore: sync patches/chromium/logging_win32_only_create_a_console_if_logging_to_stderr.patch
Xref: 4153110
Sync to minor upstream changes. Add const correctness.
* chore: sync electron/patches/chromium/feat_configure_launch_options_for_service_process.patch
4141862
patch-fuzz update; no manual changes
* chore: patches/v8/fix_build_deprecated_attribute_for_older_msvc_versions.patch
sync 4147787
patch-fuzz update; no manual changes
* chore: update patches
* chore: bump chromium in DEPS to 111.0.5536.0
* chore: sync patches/chromium/allow_new_privileges_in_unsandboxed_child_processes.patch
Xref: 4141863
Sync with upstream code changes. Minor code golf for readability.
Note: upstream is laying groundwork for being able to work off of env vars
instead of switches. Doesn't affect us yet but worth being aware of.
> + // Environment variables could be supported in the future, but are not
> + // currently supported when launching with the zygote.
* chore: update patches/chromium/feat_expose_raw_response_headers_from_urlloader.patch
Xref: 4126836
patch-fuzz update; no manual changes
* chore: sync electron/patches/chromium/feat_configure_launch_options_for_service_process.patch
Xref: 4141863
manual sync
* chore: sync electron/patches/v8/fix_build_deprecated_attribute_for_older_msvc_versions.patch
4147788
fuzz-patch
* chore: rebuild patches
* chore: bump chromium in DEPS to 111.0.5538.0
* chore: bump chromium in DEPS to 111.0.5540.0
* chore: update patches
* Remove sdk_forward_declarations
4166680
* task posting v3: Remove task runner handles from codebase entirely
Refs 4150928
* Cleanup child_process_launcher_helper*
Refs 4141863
* fix: utilityprocess spec on macOS
* fix: build on windows
Refs 4141863
* chore: fix lint
* chore: bump chromium 111.0.5544.3
* chore: gen filenames.libcxx.gni
* Add check for Executable+Writable handles in renderer processes.
Refs 3774416
* fixup! Add check for Executable+Writable handles in renderer processes.
* 4143761: [110] Disable SwiftShader for WebGL on M1 Macs.
4143761
(cherry picked from commit 2f74db3c2139424c416f92d9169aeaa8a2f9c1ec)
* chore: bump chromium to 111.0.5555.0
* 56085: Remove hmac.h include from ssl.h.
https://boringssl-review.googlesource.com/c/boringssl/+/56085
* 4167020: Remove forwarding headers
4167020
* chore: bump chromium to 111.0.5559.0
* 4181044: Restrict WebCursor usage to RenderWidgetHostViewAura
4181044
* 4189437: views: rename ink_drop_host_view to ink_drop_host
4189437
* chore: bump chromium to 111.0.5560.0
* 4167016: win7dep: remove non aeroglass code
4167016
* fixup after rebase: Remove forwarding header
s 4167020
* 4125755: Reland "Reject getDisplayMedia calls without user activation"
4125755
* test: add workaround
* chore: update patches
* fix: alter coreModuleRegExp to prevent arm crash
* Revert "fix: alter coreModuleRegExp to prevent arm crash"
This reverts commit 7e50630c98137831a711c5abdbc8809e60cf1d73.
* 4218354: Disable the use of preserve_most on arm64 Windows
4218354
* chore: review changes
---------
Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com>
Co-authored-by: Charles Kerr <charles@charleskerr.com>
Co-authored-by: PatchUp <73610968+patchup[bot]@users.noreply.github.com>
Co-authored-by: deepak1556 <hop2deep@gmail.com>
Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org>
Co-authored-by: Shelley Vohr <shelley.vohr@gmail.com>
* chore: drop support for Windows 7 & 8
* chore: remove disable-redraw-lock.patch
* chore: update patches
* Update docs/breaking-changes.md
Co-authored-by: Erick Zhao <erick@hotmail.ca>
* Update docs/breaking-changes.md
Co-authored-by: Keeley Hammond <vertedinde@electronjs.org>
* fix breaking-changes.md
* chore: note last supported version
Co-authored-by: Jeremy Rose <jeremya@chromium.org>
* chore: add link to deprecation policy
* Update docs/breaking-changes.md
Co-authored-by: Jeremy Rose <jeremya@chromium.org>
* update README.md
Co-authored-by: Milan Burda <miburda@microsoft.com>
Co-authored-by: PatchUp <73610968+patchup[bot]@users.noreply.github.com>
Co-authored-by: Erick Zhao <erick@hotmail.ca>
Co-authored-by: Keeley Hammond <vertedinde@electronjs.org>
Co-authored-by: Jeremy Rose <jeremya@chromium.org>
* chore: bump chromium in DEPS to 109.0.5364.0
* chore: update patches
* chore: bump chromium in DEPS to 109.0.5366.0
* chore: update patches
* i3940364: Change PermissionType::WINDOW_PLACEMENT to WINDOW_MANAGEMENT
3940364
* 3866812: Change content::PluginList to only run on the UI thread.
3866812
* chore: bump chromium in DEPS to 109.0.5368.0
* [cleanup] Replace enable_basic_printing with enable_printing
3957357
* chore: update patches
* 3956318: Desktop PWAs: Retire kWebAppWindowControlsOverlay flag
3956318
* fixup! Change content::PluginList to only run on the UI thread.
(cherry picked from commit 7b5ec87d4ff5d34e7493b4fb46c40c0afeef2005)
Co-Authored-By: Robo <hop2deep@gmail.com>
* chore: bump chromium in DEPS to 109.0.5370.0
* 3956299: Quota: Cleanup QuotaPermissionContext
3956299
* chore: update patches
* 3803867: Add Mojo interface to parse XML for OOP printer capabilities
3803867
* fixup: Add Mojo interface to parse XML for OOP printer capabilities
* chore: bump chromium in DEPS to 109.0.5372.0
* chore: update patches
* chore: bump chromium in DEPS to 109.0.5374.0
* chore: bump chromium in DEPS to 109.0.5376.0
* chore: bump chromium in DEPS to 109.0.5378.0
* chore: update patches
* Quota: Cleanup kPersistent in BrowsingDataRemover
3964859
* 3955976: serial: Create DOMException with V8ThrowDOMException
3955976
* 3758405: Append trailer data to serialized messages.
3758405
* chore: revert clang roll
This patch reverts 3967491
because that roll breaks the WOA build: https://crbug.com/1377819
* chore: update patches
* chore: bump chromium in DEPS to 109.0.5380.0
* chore: update patches
* 3859750: [linux/wayland] Added plumbing for the state of tiled edges.
3859750
Also 3970920: [linux/wayland] Fixed the tiled edges for the GTK frame.
3970920
* chore: bump chromium in DEPS to 109.0.5382.0
* chore: update patches
* chore: revert Use accessibility.pkey when setting page access.
3949281
breaks our Linux builds run under Docker.
This patch should be removed once
3949284
is merged.
* 3976312: Roll clang llvmorg-16-init-8189-g97196a2d-2 : llvmorg-16-init-8697-g60809cd2-1
3976312
* 3967841: [heap] Remove AllocationSpace::MAP_SPACE enum constant
3967841
* 3956131: [cleanup] Remove flag for Wasm threads & atomics
3956131
* chore: update docs for Quota: Cleanup kPersistent in BrowsingDataRemover
3964859
* test: fixup HID test for ARM CI
Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com>
Co-authored-by: John Kleinschmidt <jkleinsc@github.com>
Co-authored-by: PatchUp <73610968+patchup[bot]@users.noreply.github.com>
Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org>
Co-authored-by: Jeremy Rose <jeremya@chromium.org>
Co-authored-by: electron-patch-conflict-fixer[bot] <83340002+electron-patch-conflict-fixer[bot]@users.noreply.github.com>
Co-authored-by: Samuel Attard <sattard@salesforce.com>
Co-authored-by: VerteDinde <vertedinde@electronjs.org>
Co-authored-by: Keeley Hammond <khammond@slack-corp.com>
Co-authored-by: Jeremy Rose <jeremya@chromium.org>
* build: allow Linux distros to build against system shared libraries
Add GN flags to build the embedded nodejs copy against system libraries
instead of vendored copies in `third_party/electron_node/deps`:
* cares
* llhttp
* nghttp2
* hdr_histogram
See also chromium's build/linux/unbundle/README for more
Electron-relevant information about vendored dependencies.
* Update patches/node/build_add_gn_build_files.patch
Co-authored-by: Darshan Sen <raisinten@gmail.com>
Co-authored-by: Darshan Sen <raisinten@gmail.com>
* fix: ensure native modules are built with config.gypi
This works by patching node.h to check that two defines are set using the equivilant of an XNOR operation. One define "ELECTRON_ENSURE_CONFIG_GYPI" is set via common.gypi which is _already_ used to build native modules and has been since the dawn of time. Therefore this define will be set for all native module compilations targetting the Electron runtime. The second define "USING_ELECTRON_CONFIG_GYPI" is only defined when the gypi argument "using_electron_config_gypi" is set to 1 which is only done so via config.gypi. Only new enough versions of node-gyp correctly use the config.gypi file thus resulting in a compilation error on version of node-gyp that are too old.
* chore: fix lint
Co-authored-by: Samuel Attard <sattard@salesforce.com>
This define is only needed when linking against Chromiums libc++ which we currently
do not ship / expose the symbols of. We probably should make those symbols visible and
actually ensure that electron-rebuild et. al link against our libc++ instead of the system libc++
but for now this fixes compilation issues on macOS where the default system clang links to the system libc++
which does not (obviously) use the Chromium ABI namespace.
For our nan tests which do link against Chromiums libc++ we define the ABI namespace in the spec runner.