* build: use github actions for windows (#44136)
* build: test windows runner
* build: try build windows on windows?
* build: take win/cross changes
* build: use bash as default shell always
* build: configure git for windows build tools
* build: bash as default
* build: configure windows correctly
* build: use sha1sum
* build: force windows cipd init and python3 existence
* just pain
* build: restore cache on windows
* build: use build-tools gclient
* build: sync gclient vars to build windows job
* build: output depshash for debugging
* build: past sam was a silly goose
* build: depshash logging
* build: force lf endings for lock and DEPS
* build: platform strings are hard
* build: checkout on windows host
* sup
* no check
* idk
* sigh
* ...
* no double checkout
* build: yolo some stuff
* build: run gn-check for windows on linux hosts for speed
* use container...
* cry ?
* build: e d
* e d
* no log
* fix toolchain on windows cross check
* build: use powershell to add mksnapshot_args
* build: enable x86 and arm64 windows builds too
* clean up
* maybe not needed
* build: keep action around for post step
* build: configure git global on win
* build: ia32 zip manifest
* build: no patch depot_tools for tests
* build: get arm64 windows closer to working
* build: windows tar is ass
* 32 bit on 32 bit
* maybe bash
* build: set up nodejs
* correct windows sharding
* fix some spec runner stuff
* fix windows tests
* overwrite -Force
* sigh
* screen res
* wat
* logs
* ... more logs
* line endings will be the death of me
* remove 1080p force thing
* vsctools + logging
* disable some fullscreen tests on GHA
* no progress
* run all CI
* install visual studio on arm64
* windows hax for non windows
* maybe arm sdk
* clean up depshash logic
* build: use single check per platform
* ensure clean args
* fix loop
* remove debug
* update default build image sha for dispatch
* plzzzz
* one more try
* arm64 vctools
* sad
* build: fix non-dispatch windows gn check
* chore: debug datadog-ci location
* chore: update build-tools for newer toolchain
* chore: set path for datadog-ci
* try this
* chore: fixup gn check
* fixup gn-check some more
* fixup windows gn check
* chore: fixup windows gn check
* test: use cmd for Windows testing
* fixup use cmd for testing on Windows
* fixup windows GN check
* fixup npm config arch for x86
* Can we set test files via powershell
* fixup to set test files via powershell
* fixup set test files via powershell
* Don't check cross instance cache disk space on Windows
* Use separate step to set env variables for testing
* fixup Use separate step to set env variables for testing
* fixup Use separate step to set env variables for testing
* fixup Use separate step to set env variables for testing (AGAIN)
* use powershell if in powershell
* fixup use powershell if in powershell
* chore: remove no longer needed changes to depot_tools
xref: 5669094
and 5844046
* chore: try using 7zip on Windows to extract tarball
* Revert "chore: try using 7zip on Windows to extract tarball"
This reverts commit c7432b6a37857fd0746b8f1776fbd1103dba0b85.
* test: debug failing tests on GHA windows
* fix: ftbfs when including simdjson in Node.js
(cherry picked from commit 48e44c40d61b7aa843a990d4e0c8dec676b4ce8f)
* chore: try to track down Windows testing hang
* use correct timeout
* try this
* see if this helps
* try to figure out why node is running
* shard tests to try to narrow down WOA lockup
* try to narrow down problem test
* Narrow down blocking test more
* do we need a combo to repro
* see if this cleans up the tests
* fixup navigator.usb test
* remove logging from problematic tests
* Revert "shard tests to try to narrow down WOA lockup"
This reverts commit a1806583769678491814cb8b008131c32be4e8fb.
* remove logging
* debug keyboard test
* add timeout for Windows since arm64 sometimes hangs
* see if this helps
* put back original timeout
* try to use screenCapture to get screenshots of what is going on on WOA
* try using electron screencapture to debug WOA hang
* chore: turn off privacy experience
* run screenshot on both shards
* fixup screencap
* try to narrow down hanging spec
* chore: cleanup servers left open
* cleanup tests
* Revert "try to narrow down hanging spec"
This reverts commit a0f959f5382f4012a9919ac535d42c5333eb7d5f.
* cleanup test debugging
* fixup extensions spec
* cleanup unneeded items
* run wtf with 2 shards instead of 6
* Revert "run wtf with 2 shards instead of 6"
This reverts commit ca2d282129ee42c535d80f9876d6fa0dc6c08344.
* debug windows version on woa
* dump more info
* Get detailed CPU info
* revert debugging
* use same args as AppVeyor WOA for GHA WOA
* fixup use same args as AppVeyor WOA for GHA WOA
* fixup use same args as AppVeyor WOA for GHA WOA
* try to track down which tests trigger hang
* one or more of these combinations should hang
* break up web contents spec to find hang
* further break down api-web-contents to find hang
* test: ensure all webContents are closed
* test: fix require is not defined error
* see if api-web-contents spec is now good
* test: ensure all webContents are closed
* Revert "try to track down which tests trigger hang"
This reverts commit 07298d6ffeb4873ef7615a8ec3d1a6696e354ff4.
* chore: use alternate location for windows toolchain
* Reapply "try to track down which tests trigger hang"
This reverts commit 0321f76d01069ef325339b6fe6ed39700eae2b6b.
* try to narrow down problem test
* fix TEST_SHARD env var
* no, really fix TEST_SHARD env var
* see if this fixes it
* test: cleanup any remaining windows and webcontents
* see if new cleanup helps
* dont destroy webcontents for now
* fixup dont destroy webcontents for now
* Only cleanup right before process.exit
* see if this fixes the hang
* actually destroy webcontents
* Revert "Reapply "try to track down which tests trigger hang""
This reverts commit cdee7de049ce6bb5f67bbcc64882c56aa2c73027.
* see if this helps
* Revert "see if this helps"
This reverts commit 9a15a69cf7dbc456db7a61efa5b6870535bae993.
* Is it all about the web contents?
* it is all about the webcontents
but which one?
* Narrow down problem webcontents test
* try to speed up git install on WOA
* disable problematic test on WOA
* remove debugging
* remove debugging from choco installs
* Revert "disable problematic test on WOA"
This reverts commit e060fb0839b73d53cfde1f8acdca634f8e267937.
* Revert "remove debugging"
This reverts commit f18dd8b1a555f56bb06d0ea996a6eff31b424bf1.
* run against all the tests in the failing shard
* don't run visibility tests first
* remove debugging
* 3 is a magic number
* Revert "3 is a magic number"
This reverts commit 36b91ccf9f03a4b34230cd69ceca482f7d8428c1.
* match what Appveyor runs exactly
* Revert "match what Appveyor runs exactly"
This reverts commit 7260dd432216c62696e4bc864930f17c857eabbe.
* chore: sort files alphabetically
* find out what spec is leaving stuff open
* chore: Checkout PR HEAD commit
instead of merge commit
* try using app.exit instead of process.exit
* test: cleanup BrowserWindows and webContents
* Revert "chore: sort files alphabetically"
This reverts commit d9e217ffb1522076e150fce9e43a31bf56716acb.
* chore: use win32 to match process.platform
Needed for build-tools to download from PRs
* chore: cache yarn dir
* fixup cache yarn
* fixup use win32 to match process.platform
* fixup use win32 to match process.platform
* fixup cache yarn
* Add debugging for WOA hang
* Add debugging for failing keyboard lock test
* Revert "Add debugging for WOA hang"
This reverts commit 8df03d568d15a269e4026140d1158e8cdf551dec.
* try using process.kill
* add more debugging to keyboard.lock test
* Revert "Add debugging for failing keyboard lock test"
* remove debugging
* test: disable keyboard.lock on Windows
* test: disable fullscreen tests on Windows
* test: only force test suite exit on WOA
* fixup test: only force test suite exit on WOA
* cleanup tests
* extract yarn caching/install to action
* try using bash to run windows tests
* remove left over debugging
* standardize on 'win' for Windows builds
* use 'x86' for arch for manifest files
* fixup try using bash to run windows tests
* fixup use 'x86' for arch for manifest files
* standardize on 'win' for Windows builds
* fixup use 'x86' for arch for manifest files
* fixup try using bash to run windows tests
---------
Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org>
Co-authored-by: Charles Kerr <charles@charleskerr.com>
(cherry picked from commit be1a3dce83)
* chore: update build tools to correct sha
---------
Co-authored-by: Samuel Attard <sam@electronjs.org>
* docs: Make ipcRenderer and ipcMain listener API docs consistent
Co-authored-by: Will Anderson <will@itsananderson.com>
* test: add some unit tests for ipcRenderer/ipcMain listener behavior
Co-authored-by: Will Anderson <will@itsananderson.com>
* fix: Mark on/off methods as primary and addListener/removeListener as aliases
Co-authored-by: Will Anderson <will@itsananderson.com>
* fix: clear all listeners before running ipcMain removeAllListeners tests
Co-authored-by: Will Anderson <will@itsananderson.com>
---------
Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com>
Co-authored-by: Will Anderson <will@itsananderson.com>
fix: utilityProcess pid should be undefined after exit
Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com>
Co-authored-by: Shelley Vohr <shelley.vohr@gmail.com>
fix: update shell.openExternal to correctly focus on external window (#44408)
* fix: Use openURL:configuration:completionHandler instead of openUrl
* test: add a test
* fix: add dispatch_async to replace GetUIThreadTaskRunner
* refactor: remove unused import
* fix: update to use BindPostTaskToCurrentDefault
* test: add regression test for window focus
* refactor: update to explicit task runner
Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com>
Co-authored-by: Alice Zhao <alice@makenotion.com>
* test: fixup flaky test
Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org>
* test: disable flaky protocol speed test on macOS
Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org>
* test: fixup flaky test in api-browser-window-spec.ts
Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org>
---------
Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com>
Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org>
fix: respect setAlwaysOnTop before showInactive on Linux under X11 (#44078)
Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com>
Co-authored-by: John Beutner <31829097+cptpcrd@users.noreply.github.com>
* fix: trace-startup crashing child process on macOS
Co-authored-by: deepak1556 <hop2deep@gmail.com>
* chore: disable test on linux arm
* chore: also disable on linux arm64
---------
Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com>
Co-authored-by: deepak1556 <hop2deep@gmail.com>
* test: refactor visibility-state-spec
Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org>
* ci: shard tests
Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org>
* test: update split-tests for use on Windows
Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org>
* test: run visibility-state-spec.ts first
Co-Authored-By: John Kleinschmidt <jkleinsc@electronjs.org>
---------
Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com>
Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org>
* build: convert all release scripts to typescript (#44035)
* build: convert all release scripts to typescript
* fix test imports
* build: fix version bumper export
* refactor: use as const
* spec: fix bad type spec
* build: use ts-node to spawn the version-bumper (#44057)
Missed this in the tsification, we should probably call this via API instead of spawning a sub-proc?
* build: still colors
* feat: add error event for utility process (#43774)
* feat: add error event for utility process
* chore: use public report api
* chore: fix lint
* doc: mark error event as experimental
---------
Co-authored-by: Shelley Vohr <shelley.vohr@gmail.com>
* fixup! feat: add error event for utility process (#43774)
remove #include "electron/mas.h"
this header did not exist before c1c8fbfd9
---------
Co-authored-by: Robo <hop2deep@gmail.com>
Co-authored-by: Shelley Vohr <shelley.vohr@gmail.com>
* chore: bump chromium in DEPS to 130.0.6673.0
* chore: bump chromium in DEPS to 130.0.6675.0
* chore: bump chromium in DEPS to 130.0.6677.2
* chore: bump chromium in DEPS to 130.0.6679.1
* chore: bump chromium in DEPS to 130.0.6681.1
* chore: bump chromium in DEPS to 130.0.6683.2
* chore: bump chromium in DEPS to 130.0.6685.0
* chore: bump chromium in DEPS to 130.0.6687.0
* chore: bump chromium in DEPS to 130.0.6689.0
* chore: bump chromium in DEPS to 130.0.6691.1
* chore: bump chromium in DEPS to 130.0.6693.1
* chore: bump chromium in DEPS to 130.0.6695.1
* chore: bump chromium in DEPS to 130.0.6697.1
* chore: bump chromium in DEPS to 130.0.6699.1
* chore: bump chromium in DEPS to 130.0.6701.1
* chore: bump chromium in DEPS to 130.0.6703.1
* chore: bump chromium in DEPS to 130.0.6705.1
* chore: bump chromium in DEPS to 130.0.6707.1
* chore: bump chromium in DEPS to 130.0.6709.1
* chore: bump chromium in DEPS to 130.0.6711.1
* chore: bump chromium in DEPS to 130.0.6713.1
* chore: bump chromium in DEPS to 130.0.6715.2
* chore: bump chromium in DEPS to 130.0.6717.0
* chore: bump chromium in DEPS to 130.0.6719.1
* chore: bump chromium in DEPS to 130.0.6720.1
* chore: bump chromium in DEPS to 130.0.6723.1
* chore: bump chromium in DEPS to 130.0.6723.4
* chore: bump chromium in DEPS to 130.0.6723.6
* chore: bump chromium to 130.0.6695.0 (main) (#43454)
* chore: bump chromium in DEPS to 130.0.6673.0
* chore: bump chromium in DEPS to 130.0.6675.0
* chore: bump chromium in DEPS to 130.0.6677.2
* chore: bump chromium in DEPS to 130.0.6679.0
* 5802981: [Partitioned Popins] UKM
5802981
* 5799275: ash: Create //chrome/browser/ui/ash/web_view
5799275
* 5791853: [PWA] Allow WebContentsImpl::CreateNewWindow() to use new web contents for loading url
5791853
* 5805208: Move third_party/jacoco to a cipd/ subdirectory.
5805208
* chore: fixup patch indices
* 5771091: Introduce InputManager class for handling input in Viz.
5771091
* 5498921: [Permission] Remove SubscribeToPermissionStatusChange from PermissionManager
5498921
* 5791853: [PWA] Allow WebContentsImpl::CreateNewWindow() to use new web contents for loading url
5791853
* 5801311: Don't use int for bindings
5801311
* 5548827: [Web Install] Define the web-app-installation PermissionPolicy
5548827
* 5786325: Add Infrastructure for Hand tracking permission
5786325
* chore: fixup patch indices
* chore: bump chromium in DEPS to 130.0.6681.0
* [Views AX] Move BrowserAccessibility* to //ui/accessibility/platform
Xref: 5520052
* chore: e patches all
* Don't have default arguments on virtual functions in render_frame_host.h
5809399
* test: log if loadURL fails in base url test
* chore: bump chromium in DEPS to 130.0.6683.2
* chore: fix support_mixed_sandbox_with_zygote.patch
content: restore old DisableJit behavior
5804255
* chore: update patch indices
* chore: bump chromium in DEPS to 130.0.6685.0
* Parallel process launching
Xref: 5015584
* chore: update feat_expose_documentloader_setdefersloading_on_webdocumentloader.patch
No manual changes; patch applied with fuzz 1
* chore: e patches all
* chore: bump chromium in DEPS to 130.0.6687.0
* chore: bump chromium in DEPS to 130.0.6689.0
* chore: bump chromium in DEPS to 130.0.6691.0
* chore: bump chromium in DEPS to 130.0.6693.0
* chore: update patches
* chore: bump chromium in DEPS to 130.0.6695.0
* chore: free up macos disk space as soon as possible
* 5824143: Use checked in source lists for third_party/boringssl
5824143
* chore: update patches
* 5824122: Extensions: Add a new view type enum for developer tools contexts
5824122
* 5806109: Option for JavaScriptExecuteRequestForTests() to ignore content settings
5806109
* build: free up disk space on gn check too
* 5799369: [Refactoring] Make allow_http1_for_streaming_upload flags false.
5799369
* fixup! 5015584: Parallel process launching | 5015584
* Disable failing test for short-term
See: https://github.com/electron/electron/issues/43730
* oops
---------
Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com>
Co-authored-by: Shelley Vohr <shelley.vohr@gmail.com>
Co-authored-by: Charles Kerr <charles@charleskerr.com>
Co-authored-by: Keeley Hammond <khammond@slack-corp.com>
Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org>
Co-authored-by: clavin <clavin@electronjs.org>
(cherry picked from commit 4bcbc955dd)
* build: update appveyor image to latest version (#43772)
Co-authored-by: electron-appveyor-updater[bot] <161660339+electron-appveyor-updater[bot]@users.noreply.github.com>
(cherry picked from commit 02fd8bbcc1)
* chore: fixup patches
* chore: fixup patch
* chore: bump chromium in DEPS to 130.0.6723.6
* chore: update filenames.libcxx.gni
* test: re-enable disabled test
* 5844369: controlledframe: Disable Web Bluetooth for <webview> & <controlledframe>
5844369
(cherry picked from commit 0ac4852763f0dce3468d30907620211f34c4104b)
* (multiple CLs): Use an opaque type for FrameTreeNode IDs
5807683: Use an opaque type for FrameTreeNode IDs, part 1 | 5807683
5829746: Use an opaque type for FrameTreeNode IDs, part 2 | 5829746
5836903: Use an opaque type for FrameTreeNode IDs, part 7 | 5836903
5837249: Use an opaque type for FrameTreeNode IDs, part 8 | 5837249
5836564: Use an opaque type for FrameTreeNode IDs, part 12 | 5836564
5837180: Use an opaque type for FrameTreeNode IDs, part 15 | 5837180
(cherry picked from commit 1dd67f5241a3a24ea5a20f11efefdd2afc520a26)
* 5822889: [task] Make GetForegroundTaskRunner non-virtual
5822889
(cherry picked from commit ae1e7232a35260cce8c4303d5f9809aa166bf19b)
* 5833297: Remove unused inner WebContents attach params
5833297
(cherry picked from commit 390bb42e39eba66cd86221461d2822bbd85012df)
* 5806403: Shift PowerMonitor to non static
5806403
(cherry picked from commit 128e3826e13768e89c7f5117de451ebd2b3ec9a4)
* 5666874: [3/N] Remove old OnPowerChange in PowerObserver
5666874
(cherry picked from commit 6ea6ea14ae23ced6465b94fd753f8c80ced4b13b)
* 5829085: [v8] Differentiate between UserVisible and BestEffort task runners
5829085
(cherry picked from commit 1db28ee4a51fb2593e4c11bcaa538a6524abe48c)
* 5791112: [webrtc] Use `c/b/permissions/system` for system permissions
5791112
(cherry picked from commit 50d4a71923ca99653bf5733145bdc6e21f783b2d)
* fixup! (multiple CLs): Use an opaque type for FrameTreeNode IDs
(cherry picked from commit 9271130e160d479b3d286d295045b9d4acd2005c)
* fixup! 5791112: [webrtc] Use `c/b/permissions/system` for system permissions 5791112
(cherry picked from commit db2c8c69d0c7bdee881997847dfc3c8abf32197c)
* 5825636: [Extensions] Create WebContentsObservers with ExtensionsBrowserClient
5825636
(cherry picked from commit f2c3d09ccd141dbe2f4b62957b72f98bf8a010ae)
* 5854811: Use kNotAllowedError instead of kSecurityError for Web MIDI
5854811
* test: fix should support base url for data urls test
Caused by 5802682
* test: fixup extensions can cancel http requests
* chore: document custom protocol handling on Windows change due to Non-Special Scheme URLs shipping
5802682
---------
Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com>
Co-authored-by: electron-appveyor-updater[bot] <161660339+electron-appveyor-updater[bot]@users.noreply.github.com>
Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org>
Co-authored-by: clavin <clavin@electronjs.org>
* test: add tests dbus notification images
Provide a NativeImage icon in the notification tests and then inspect
the DBus message payload's `image_data` hint to see if it's correct.
This adds test coverage for LibnotifyNotification::Show() and for
GdkPixbufFromSkBitmap().
Co-authored-by: Charles Kerr <charles@charleskerr.com>
* chore: use the same notification_icon.png as in main
---------
Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com>
Co-authored-by: Charles Kerr <charles@charleskerr.com>
test: expect a `sender-pid` hint in Linux notifications.
This PR ensures that the `sender-pid` hint is set for new notifications.
It also updates the spec to confirm that DBus receives the hint and that
it has the correct value.
This fixes a spec failure when running libnotify >= 0.7.12 (2022-05-05).
Starting with that version, libnotify started injecting `sender-pid` if
not provided by the client. So our tests received a slightly different
DBus payload depending on what version of libnotify was installed,
causing our deep-equals tests to fail.
By always providing and testing the `sender-pid` hint, our behavior and
tests should be consistent across distros.
Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com>
Co-authored-by: Charles Kerr <charles@charleskerr.com>
* build: add support for fetching github token from sudowoodo
Co-authored-by: Samuel Attard <samuel.r.attard@gmail.com>
* chore: update release notes cache for tests
Co-authored-by: Samuel Attard <samuel.r.attard@gmail.com>
* build: support nightlies repo correctly
Co-authored-by: Samuel Attard <samuel.r.attard@gmail.com>
* build: post token
Co-authored-by: Samuel Attard <samuel.r.attard@gmail.com>
---------
Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com>
Co-authored-by: Samuel Attard <samuel.r.attard@gmail.com>
* fix: restore Chromium default Content-Disposition header parsing
Co-authored-by: Milan Burda <milan.burda@gmail.com>
* Update api-web-request-spec.ts
Co-authored-by: Milan Burda <milan.burda@gmail.com>
---------
Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com>
Co-authored-by: Milan Burda <milan.burda@gmail.com>
* feat: support app#login event for utility process net requests
* chore: address review feedback
* GlobalRequestID: Avoid unwanted inlining and narrowing int conversions
Refs 5702737