* build: unify YARN_VERSION variable usage and ensure CI uses yarn not npm
* chore: use a JS helper so that it can work on windows
* chore: make script/yarn without node_modules installed
* build: optimize the happy path when syncing on CI
This adds a new cache for the "src" directory that is only ever used if
the cache key matches exactly. If there is no exact match we fall back
to the old strategy of using the git cache.
On the happy path this can make the checkout on linux/macOS take around
5-6 minutes which is **significantly** faster than the original 15-18
minutes.
* build: sort readdir result to ensure stability
* build: increment cache key
* Update config.yml
* build: ensure that the cleanly checked out Electron has had hooks run on it
* build: do not remove deps/v8
* build: ensure clean git directory when generating deps hash
* chore: add comments to caching logic
* Update .circleci/config.yml
Co-Authored-By: MarshallOfSound <samuel.r.attard@gmail.com>
* refactor: use mojo for electron internal IPC
* add sender_id, drop MessageSync
* remove usages of AtomFrameMsg_Message
* iwyu
* first draft of renderer->browser direction
* refactor to reuse a single ipc interface
* implement TakeHeapSnapshot through mojo
* the rest of the owl^WtakeHeapSnapshot mojofication
* remove no-op overrides in AtomRendererClient
* delete renderer-side ElectronApiServiceImpl when its pipe is destroyed
* looks like we don't need to overlay the renderer manifest after all
* don't try to send 2 replies to a sync rpc
* undo changes to manifests.cc
* unify sandboxed + unsandboxed ipc events
* lint
* register ElectronBrowser mojo service on devtools WebContents
* fix takeHeapSnapshopt failure paths
* {electron_api => atom}::mojom
* add send_to_all to ElectronRenderer::Message
* keep interface alive until callback is called
* review comments
* use GetContext from RendererClientBase
* robustify a test that uses window.open
* MessageSync posts a task to put sync messages in the same queue as async ones
* add v8::MicrotasksScope and node::CallbackScope
* iwyu
* use weakptr to api::WebContents instead of Unretained
* make MessageSync an asynchronous message & use non-associated interface
* iwyu + comments
* remove unused WeakPtrFactory
* inline OnRendererMessage[Sync]
* cleanups & comments
* use helper methods instead of inline lambdas
* remove unneeded async in test
* add mojo to manifests deps
* add gn check for //electron/manifests and mojo
* don't register renderer side service until preload has been run
* update gn check targets list
* move interface registration back to RenderFrameCreated
* spec: add tests for the autoUpdater on macOS that actually test if it works
* spec: add express as dep
* spec: add logic to auto-trust self-signed certificate and not run autoupdate specs on MAS
* build: fix the step name for importing the codesign cert
* chore: update updater spec PR as per feedback
* fix: s/atomBinding/electronBinding
* build: use spawn instead of exec
* build: enable gn check for //electron:electron_lib
* ci: add gn check step
* ci: set depot_tools path
* chrome_key_systems_provider.h nogncheck
* chore: fix gn check errors on windows
* chore: gn check //electron:electron_app
* Update timeout for native_mksnapshot and use bigger machines
* Revert "build: temporarily disable arm to unblock nightlies (#16479)"
This reverts commit 51961fccfa.
* build: fix native_mksnapshot build
When we changed our electron_mksnapshot_zip target to include the v8_context_snapshot_generator, this dependency made the `run_mksnapshot` target run which was trying to run an arm/arm64 binary on x64 hardware.
Don't use custom build args for native_mksnapshot as they are not needed
* Added comment on why snapshot_blob.bin is skipped on arm/arm64
* test: add an option to native tests runner to run also disabled tests
* ci: run all native tests on clean Chromium
* ci: update the disabled tests list for native unittests
* ci: run unittests on clean Chromium
* test: add '--run-only-disabled-tests' flag to "script/native-tests.py"
* ci: add a job to run only disabled unittests
* test: use a different GN config for the native tests
* test: enable blink_common_unittests
* test: disable WeakPtrDeathTest*
- ci: don't send Slack notifications for the "linux-ia32-testing-tests" job
- ci: fix symbols collection job on VSTS
- ci: run tests on Windows for both "testing" and "release" builds