Commit graph

157 commits

Author SHA1 Message Date
Samuel Attard
fb01c94511
build: clean up scripts folder, move release scripts, move zip manifest logic (#18945)
* build: move zip manifest logic in zip_manifests dir

* build: remove unused get-version.py script

* chore: move all release/sudowoodo related scripts into script/releases

* chore: update paths to zip manifests in CI configs

* build: fix path to ci release build script for arm tests
2019-06-24 10:18:04 -07:00
Samuel Attard
2160c1fcc9 refactor: replace includes for atom with shell 2019-06-19 17:33:28 -07:00
John Kleinschmidt
4ef8de69ef build: show ninja stats for testing/debug builds (#18653)
* build: show ninja stats for testing/debug builds

* Update .circleci/config.yml

Co-Authored-By: Jeremy Apthorp <nornagon@nornagon.net>

* Use regular depot tools instead of third party one

* I forget where depot tools lives

* Fix depot tools path
2019-06-15 17:48:58 +09:00
Nitish Sakhawalkar
f98454e5dd fix: use crashpad on Windows (#18483)
* Initial changes to use crashpad for windows

* Remove crashpad patch

* Report error when failed to connect pipe

* Allow crashpad to communicate with named pipe

* Add patch to make crashpad named pipe work

* Windows also needs crashReporter on main process

* Call SetUnhandledExceptionFilter in node process

Node can also use crash reporter.

* Do not treat node process as browser process

* No more need to manually start crash service

* Use base::StringPrintf for better readbility

* Print error when pipe name not available

* Make sure pipe name is updated

Note that the crashpad may be started after renderer process gets
created.

* Fix some tests

* Update node

* Exclude crashpad files on Linux and MAS

* Fix lint warning

* Remove unused checks

* kCrashpadPipeName is only available on Windows

* Fix uploadToServer tests

* Fix extra params tests

* Fix getCrashesDirectory tests

* Run crashReporter tests on CI

* Style fixes

* Update crashreporter docs

* Rename InitBreakpad to Init

* Add comment for process_type_.empty() and UTF16ToASCII to UTF16ToUTF8.

* Update build.gn include crashpad headers

* Address comment https://github.com/electron/electron/pull/18483#discussion_r290887898

* Avoid using api::WebContents

* Put kRunAsNode in atom_constants

* Remove duplicate settings on upload params

* Fix building on macOS

* Update description for crashpad_pid_check.patch
2019-06-13 15:42:21 +09:00
Samuel Attard
a45afddb75
build: unify YARN_VERSION variable usage and ensure CI uses yarn not npm (#18607)
* 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
2019-06-05 16:30:39 -07:00
Jeremy Apthorp
796d2636e6 ci: add windows zip manifest checking (#18629)
* ci: add windows zip manifest checking

* fix manifests
2019-06-05 11:58:11 -04:00
Samuel Attard
d673865881
build: notify MC of failures to allow easy reruns (#17981) 2019-04-26 12:35:43 -07:00
Electron Bot
716cb28430 chore: bump chromium to 1e9f9a24aa12 (master) (#17880)
* chore: bump chromium in DEPS to 1e9f9a24aa12bea9cf194a82a7e249bd1242ec4f

* chore: update patches

* Make WebContents' theme color a base::Optional<SkColor>

https://chromium-review.googlesource.com/c/chromium/src/+/1540022

* update autofill patch for incorrect header includes

* Move Shell messages to web_test and rename to BlinkTest.

https://chromium-review.googlesource.com/c/chromium/src/+/1525181

* Make PlatformNotificationServiceImpl a KeyedService.

https://chromium-review.googlesource.com/c/chromium/src/+/1336150

* Move MediaPlayerId to its own file.

https://chromium-review.googlesource.com/c/chromium/src/+/1547057

* Remove net/base/completion_callback.h, which is no longer used

https://chromium-review.googlesource.com/c/chromium/src/+/1552821

* AW NS: support file scheme cookies

https://chromium-review.googlesource.com/c/chromium/src/+/1533486

* Remove SecurityInfo and adapt remaining consumers

https://chromium-review.googlesource.com/c/chromium/src/+/1509455

* Remove deprecated type-specific number to string conversion functions

https://chromium-review.googlesource.com/c/chromium/src/+/1545881

* DevTools: Adding new performance histograms for launch of top 4 tools

https://chromium-review.googlesource.com/c/chromium/src/+/1506388

* Update include paths for //base/hash/hash.h

https://chromium-review.googlesource.com/c/chromium/src/+/1544630

* build: Disable ensure_gn_version gclient hook for mac CI checkout

* update patches

* use maybe version of v8::String::NewFromTwoByte

* bump appveyor image version

* fix mac ci hopefully

* Convert enum to enum class for MenuAnchorPosition

https://chromium-review.googlesource.com/c/chromium/src/+/1530508

* use maybe version of ToObject

* RenderViewHost::GetProcess is no longer const

* Unrefcount AuthChallengeInfo

https://chromium-review.googlesource.com/c/chromium/src/+/1550631

* MenuButtonController takes Button rather than MenuButton

https://chromium-review.googlesource.com/c/chromium/src/+/1500935

* add //ui/views_bridge_mac to deps to fix link error

* forward declare views::Button in atom::MenuDelegate

* more v8 patches

* base/{=> hash}/md5.h

https://chromium-review.googlesource.com/c/chromium/src/+/1535124

* gfx::{PlatformFontWin => win}::*

https://chromium-review.googlesource.com/c/chromium/src/+/1534178

* fix v8 patches

* [base] Rename TaskScheduler to ThreadPool

https://chromium-review.googlesource.com/c/chromium/src/+/1561552

* use internal_config_base for bytecode_builtins_list_generator

avoids windows link errors

* FIXME: temporarily disable v8/breakpad integration

* FIXME: temporarily disable prevent-will-redirect test

* FIXME: disable neon on aarch64 pending crbug.com/953815

* update to account for WebCursor refactor

https://chromium-review.googlesource.com/c/chromium/src/+/1562755

* enable stack dumping on appveyor

* Revert "FIXME: disable neon on aarch64 pending crbug.com/953815"

This reverts commit 57f082026be3d83069f2a2814684abf4dc9e7b53.

* fix: remove const qualifiers to match upstream

* fix: remove const qualifiers to match upstream in cc files as well

* don't throw an error when testing if an object is an object

* use non-deprecated Buffer constructor

* Remove net::CookieSameSite::DEFAULT_MODE enum value

https://chromium-review.googlesource.com/c/chromium/src/+/1567955

* depend on modded dbus-native to work around buffer deprecation

https://github.com/sidorares/dbus-native/pull/262

* revert clang roll to fix arm build on linux

* fixup! depend on modded dbus-native to work around buffer deprecation

need more coffee

* update coffee-script

* robustify verify-mksnapshot w.r.t. command-line parameters

* Revert "robustify verify-mksnapshot w.r.t. command-line parameters"

This reverts commit a49af01411f684f6025528d604895c3696e0bc57.

* fix mksnapshot by matching args

* update patches

* TMP: enable rdp on appveyor

* Changed ContentBrowserClient::CreateQuotaPermissionContext() to return scoped_refptr.

https://chromium-review.googlesource.com/c/chromium/src/+/1569376

* Make content::ResourceType an enum class.

https://chromium-review.googlesource.com/c/chromium/src/+/1569345

* fixup! Make content::ResourceType an enum class.

* turn off rdp

* use net::CompletionRepeatingCallback instead of base::Callback<void(int)>

* remove disable_ensure_gn_version_gclient_hook.patch

* copy repeating callback instead of std::move

* fix lint

* add completion_repeating_callback.h include
2019-04-20 10:20:37 -07:00
Jeremy Apthorp
53f6cbccbf
refactor: use mojo for electron internal IPC (#17406)
* 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
2019-04-02 15:38:16 -07:00
Jeremy Apthorp
9c76ce38e3 appveyor workaround for appveyor/ci#2420 2019-03-08 15:10:52 -08:00
Robo
7936237677
build: enable gn check for //electron:electron_lib (#17100)
* 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
2019-03-05 10:38:55 +05:30
John Kleinschmidt
6a47089c78
ci: Refactor mksnapshot test so that it doesn't stall. (#16875) 2019-02-11 12:21:00 -10:00
John Kleinschmidt
d71f1fb30c
ci: Run Windows Electron tests first to show those failures first (#16610)
* Run electron tests first to show those failures first

Enable logging on CI

* disable failing tests on Windows 32 bit

* Temporarily disable testing mksnapshot as that seems to hang
2019-01-31 12:39:05 -05:00
John Kleinschmidt
b53a858400
build: use different directory for generated breakpad symbols (#15716) 2018-11-14 12:47:01 -08:00
John Kleinschmidt
9e2b7dbea5
ci: add testing for mksnapshot (#15627)
* ci: add testing for mksnapshot
2018-11-09 10:54:17 -04:00
Alexey Kuzmin
ba7ce7225b
build: document env vars expected to be set for the CI configs (#15129)
* ci: add a var for a full path to an Electron build config
* ci: document external environment variables used by the CI build configs
2018-10-20 01:44:36 +02:00
Alexey Kuzmin
918488a2f0
ci: various fixes (#15004)
- 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
2018-10-07 16:05:20 +02:00
Alexey Kuzmin
0857ecf478 build: make boto and requests optional dependencies (#14970) 2018-10-04 20:20:25 -04:00
Samuel Attard
9ec7137443
chore: fix ffmpeg upload path and always generate node headers 2018-09-29 12:27:29 +10:00
Samuel Attard
689ea370e1
chore: push the symbol zip not a folder 2018-09-29 11:06:14 +12:00
John Kleinschmidt
fda4112168 ci: fix windows symbol gen 2018-09-28 13:24:00 -04:00
Samuel Attard
b0b9ebd448 chore: fix path to dump_syms in the windows breakpad tool 2018-09-28 15:57:16 +10:00
Samuel Attard
cba749e305 chore: fix appveyor deploy working dir 2018-09-28 11:17:11 +10:00
Samuel Attard
4b0f335aba chore: initial work for running releases of GN build 2018-09-28 11:15:46 +10:00
John Kleinschmidt
1b4d425876
build: Generate breakpad symbols for GN release builds (#14791)
* Use chromium 's generate_breakpad_symbols.py

* Add breakpad symbol gen to CI.
2018-09-26 14:56:05 -04:00
Shelley Vohr
2617f50b7d chore: update mksnapshot and ffmpeg for GN (#14738)
* chore: update mksnapshot and ffmpeg for GN

* fix typo

* add non-native builds to CI

* split mksnapshot build and store steps

* Fix config order

* Use different targets for mksnapshot and native_mksnapshot

mksnapshot gets built in electron_app as part of the v8 build, so copy it from there

* Revert "Use different targets for mksnapshot and native_mksnapshot"

This reverts commit 6a1a50aa690124626b4357751949397298aeac95.

* Try specifying v8_snapshot_toolchain

* Fix v8_snapshot_toolchain reference

* Fix artifact locations

* Test native mksnapshot
2018-09-24 21:48:49 -04:00
John Kleinschmidt
62172dee6c Add electron_chromedriver_zip target 2018-09-21 13:13:52 -04:00
Samuel Attard
91f00a518a
ci: fix CI runs after 9e85bdb0 2018-09-14 17:50:03 +10:00
Samuel Attard
05783d56f7
chore: make the 'npm run test' command work out of the box (#14602) 2018-09-14 01:30:12 +10:00
Jeremy Apthorp
cfcd008f02 ci: rename appveyor{-gn,}.yml 2018-09-12 09:50:58 -04:00
Jeremy Apthorp
72526927d9 build: remove gyp build files (#14097)
* build: remove gyp build files

* docs: update build instructions

* build: temporary restore electron.gyp

* build: do not update Electron version in the electron.gyp

* chore: remove unused submodules

* ci: remove obsolete CI scripts and configs

* chore: remove obsolete scripts

* chore: remove obsolete functions from lib/util.py

* ci: send Slack notification for nightly build results
2018-09-09 10:15:32 +09:00
John Kleinschmidt
1c509c4743 Use VS2017 15.4.5 for Chromium 66 2018-08-14 09:34:34 -07:00
John Kleinschmidt
1c70a1cccd Make sure artifacts are properly saved for nightly release builds
Also fix VSTS slack integration and make sure tests don't run for GitHub releases.
Update to latest libchromiumcontent
2018-07-16 17:07:48 -04:00
John Kleinschmidt
5aa136a23d run test.py with --rebuild_native_modules (#13570)
Fixes script\verify-ffmpeg crash
2018-07-05 16:53:11 -05:00
John Kleinschmidt
08ee965270 Fix pr builds 2018-06-19 11:49:44 +10:00
John Kleinschmidt
ddaf2cfdc5 Fix appveyor config 2018-06-19 11:49:44 +10:00
John Kleinschmidt
1321e8a6df Use vs2017 only vm for CI 2018-06-19 11:49:44 +10:00
John Kleinschmidt
4e3e9c9dbc Remove appveyor.yml
This configuration isn't used anymore - appveyor setup is defined on server
2017-12-06 15:14:09 -05:00
wan-qy
7c2467b221 Fix typo 2017-07-11 10:55:59 +08:00
Cheng Zhao
08779eb6d9 Use VS2015 on appveyor 2016-05-13 11:12:15 +09:00
Cheng Zhao
d91cd424fe Revert "Run tests for branches on appveyor"
This reverts commit 33370b18b3.

This commit was wrongly pushed.
2016-04-30 21:21:11 +09:00
Cheng Zhao
33370b18b3 Run tests for branches on appveyor 2016-04-30 20:42:24 +09:00
Cheng Zhao
bf5c3bc9dd Avoid duplicate building for PR 2015-12-10 13:18:23 +08:00
Cheng Zhao
5cf369086c Also disable test phase 2015-12-10 13:16:22 +08:00
Cheng Zhao
f11f408420 Do not automatically build everything 2015-12-10 12:48:10 +08:00
Cheng Zhao
8c31148f7d Remove unneeded things 2015-12-10 12:35:22 +08:00
Cheng Zhao
cb806aa362 Use default node 0.12.7
Otherwise we would spend some time reinstalling node.
2015-12-10 12:23:39 +08:00
Cheng Zhao
33db4a6ac1 Run cibuild 2015-12-10 12:22:35 +08:00
Cheng Zhao
aa8efd90cc Bring back AppVeyor 2015-12-10 12:09:46 +08:00
Cheng Zhao
b6af1cf93c Remove appveyor.yml
I don't think we will use it in future.
2015-04-09 10:15:24 +08:00
Cheng Zhao
a378a719e9 Don't run tests. 2014-08-08 21:31:51 +08:00
Cheng Zhao
8d7a59161a win: Don't call pylint in CI. 2014-08-08 17:38:22 +08:00
Cheng Zhao
3a65942b97 Make node version switching faster. 2014-08-08 11:35:08 +08:00
Cheng Zhao
e06c558a86 Add lint scripts. 2014-08-08 10:58:26 +08:00
Cheng Zhao
c9702b56e2 Build only Debug version. 2014-08-08 08:39:37 +08:00
Cheng Zhao
279eb23b38 No need of project_id in appveyor.yml. 2014-08-07 23:52:08 +08:00
Robo
66983c7f67 inital config setup for x86 2014-07-02 00:09:54 +05:30