Commit graph

1218 commits

Author SHA1 Message Date
Charles Kerr
e9a5b19223 feat: convenience command to apply all formatter patches (#14994)
* feat: convenience to apply all formatter patches

run-clang-format.py can create multiple patchfiles.
This change prints a command that can be pasted into
a shell to apply all of them together.

* feat: put all generated style diffs in one file

This way it will be easier to `git apply` fixes to multiple
fixed files at once.
2018-10-09 10:06:27 -04:00
Alexey Kuzmin
7866575385 ci: fix the upload distribution step on VSTS (#15015)
* ci: fix the upload distribution step on VSTS

* ci: fix get_electron_exec()

* ci: define "CI" env variable
2018-10-08 15:19:40 -05:00
Samuel Attard
b9cf49f32c
chore: fix native_mksnapshot path on for arm releases 2018-10-06 20:10:40 +13:00
Alexey Kuzmin
5525f34363
build: make external binaries download action more flexible (#14982)
* build: make external binaries download action more flexible

* chore: reformat DEPS

Make it look more like Chromium //DEPS:
 - use name-pattern-condition-action order for hooks
 - add trailing commas
 - remove some line breaks

Also remove redundant entry from "recursedeps".
2018-10-06 00:21:46 +02:00
Samuel Attard
baf40fd8f7
chore: add extra logging to the upload script 2018-10-05 09:24:19 +10:00
John Kleinschmidt
038b56e31e
ci: Trigger an arm test on VSTS after CircleCI build (#14898)
* ci: Trigger an arm test on VSTS after CircleCI build
2018-10-04 12:01:16 -04:00
Samuel Attard
03e6113ef7
Merge pull request #14964 from electron/chromium-upgrade/68
feat: upgrade to Chromium 68.0.3440.128 and Node 10.11.0
2018-10-04 12:04:53 +10:00
Samuel Attard
b59e01bdb0
Revert "feat: upgrade to Chromium 68.0.3440.128 and Node 10.11.0 (#14677)" (#14963)
This reverts commit e012801420.
2018-10-04 12:03:15 +10:00
Jeremy Apthorp
e012801420 feat: upgrade to Chromium 68.0.3440.128 and Node 10.11.0 (#14677)
* Update to Chromium 68.0.3440.128 and Node 10.10.0

* update v8, ffmpeg, chromium, crashpad, boringssl, and webrtc patches

* fix SSL_get_tlsext_status_type patch

* pass encryption_modes_supported to CdmInfo

* kNoSandbox moved into service_manager

* bump CHROME_VERSION_STRING

TODO: automatically pull in the real chrome version

* PathService -> base::PathService

* net::X509Certificate::Equals -> net::X509Certificate::EqualsExcludingChain

* use content::ChildProcessTerminationInfo

* GetHandle() -> GetProcess().Handle()

* ScopedNestableTaskAllower doesn't take an argument

* net::HttpAuthCache::ClearEntriesAddedWithin -> ClearAllEntries

* std::unique_ptr<WebContents>

* blink::WebFullscreenOptions

* OnAudioStateChanged doesn't take a WebContents

* content::RESULT_CODE_NORMAL_EXIT -> service_manager::RESULT_CODE_NORMAL_EXIT

* MessageLoopCurrent

* WasResized -> SynchronizeVisualProperties

* SetTimeStamp takes a base::TimeTicks

* ExecuteScriptInIsolatedWorld is single-script only

* DispatchNonPersistentCloseEvent takes a callback now

* expose URLRequestContextGetter::{Add,Remove}Observer

* test: remove no longer existing Chromium test deps

cc_blink_unittests has been removed in
https://chromium-review.googlesource.com/1053765

mojo_common_unittests has been removed in
https://chromium-review.googlesource.com/1028000

* SetFdLimit -> IncreaseFdLimitTo

NOTE: the behaviour of this API has changed slightly, and we should
mention that in the notes.

* MessageLoop::QuitWhenIdleClosure -> RunLoop::QuitCurrentWhenIdleClosureDeprecated

* certificate_transparency moved out of net/

pending a clearer decision about what to do with CT

in the mean time, copy CreateLogVerifiersForKnownLogs from deleted chromium source

* add secure_origin_whitelist to chrome source list

NOTE: is this something we actually want? cc @deepak1556

* DrainBackgroundTasks -> DrainTasks

* use new node options parser

* fix disable_scroll_begin_dcheck.patch

* ViewsDelegate::CreateWebContents went away

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

* kZygoteProcess moved into service_manager

* test: minor improvements to the Node spec

 - reformat some parts
 - better failures reporting with `expect`
 - skip some tests instead of marking them as passed

* chromium removed *_posix.cc from the source filters

* test: fix :electron_tests compilation

* better crash diagnostics in ffmpeg test

* fix: enable back a DCHECK in viz::ServerSharedBitmapManager

Fixes #14327.
Backports https://chromium-review.googlesource.com/802574.

* chore: update linux sysroots

* chore: remove obsolete "install-sysroot.py" script

* test: fix frame-subscriber test on Mac

* disable OSR for now

* test: make before-input-event test more robust

* test: make run-as-node --inspect test more robust on windows

* roll node to v10.11.0

* avoid duplicate files when building a zip

* disable failing assert in beginFrameSubscription dirty-rectangle test

* experiment with is_cfi = false

* fix: build torque with x64 toolchain

Co-Authored-By: Alexey Kuzmin <github@alexeykuzmin.com>

* test: disable the "app.relaunch" test on Linux

* chore: bump node to get header tar file

* chore: bump node to fix tar.py line endings
2018-10-04 12:02:14 +10:00
Jeremy Apthorp
14fc6f3081 chore: add GN linting (#14678)
* chore: add GN linter

* chore: fix GN lint errors

* try some crazy bash to get a gn exe

* base64 on linux is different

* cloning build_tools doesn't download GN

* download_from_google_storage needs depot_tools in the path

* fixup! chore: add GN linter
2018-10-03 18:03:26 -05:00
Aleksei Kuzmin
0fc79ad3a9 chore: update linux sysroots 2018-10-04 00:14:59 +02:00
Aleksei Kuzmin
01179ea7b9 chore: remove obsolete "install-sysroot.py" script 2018-10-04 00:14:59 +02:00
Jeremy Apthorp
cc53269231 better crash diagnostics in ffmpeg test 2018-10-04 00:14:59 +02:00
Milan Burda
3ad3ade828 refactor: add prefer-const to .eslintrc + fix errors (#14880) 2018-10-02 11:56:31 +10:00
Alexey Kuzmin
07161a8452 chore: some async await stuff for the spec runner (#14897) 2018-10-02 11:53:34 +10:00
Alexey Kuzmin
f1b097024e ci: run more unittests (#14861) 2018-10-01 17:50:52 -05:00
Samuel Attard
40b676fee8 chore: skip the .bin from folder hashing due to npm not cleaning up symlinks (#14888)
- fix the ia32 specs not running on CI
 - handle rejected promises in the "spec-runner" script
2018-10-01 16:00:04 +02:00
Samuel Attard
99cf6815a8
chore: run create-typescript-definitions for darwin releases 2018-09-29 16:39:22 +10:00
Samuel Attard
adc60a72ca
chore: get target arch from TARGET_ARCH env var 2018-09-29 14:13:17 +10:00
Samuel Attard
531a4c5b8c
Merge pull request #14868 from electron/fix-win-dump-syms
chore: fix windows dump syms
2018-09-29 13:11:03 +10:00
Samuel Attard
9ec7137443
chore: fix ffmpeg upload path and always generate node headers 2018-09-29 12:27:29 +10:00
Samuel Attard
851cd22f10
chore: fix upload.py for symbol.zip upload 2018-09-29 12:00:33 +12:00
Milan Burda
c61db523c7 refactor: replace var with const / let (#14866) 2018-09-29 09:17:00 +10:00
John Kleinschmidt
e183bab6c5 Pass along verbose mode 2018-09-28 15:37:11 -04:00
John Kleinschmidt
fda4112168 ci: fix windows symbol gen 2018-09-28 13:24:00 -04:00
Samuel Attard
78239ff0ad
chore: add python env to zip-symbols script 2018-09-29 02:10:42 +12:00
Samuel Attard
ff364901e1 chore: use get_electron_branding instead of electron_gyp in the symbol zip generator 2018-09-28 16:48:09 +10:00
Samuel Attard
46932913d1 chore: dont tag libcc when it does not exist in GN build 2018-09-28 15:58:54 +10:00
Samuel Attard
27d363015b chore: make zip-symbols executable 2018-09-28 15:35:30 +10:00
Samuel Attard
0a4ddf4512 chore: ensure the bump-version script modified the version.h file correctly 2018-09-28 13:58:48 +10:00
Samuel Attard
e86298d5d9
chore: fix relative links in docs and enforce we dont break them again (#14832) 2018-09-28 13:16:38 +10:00
Samuel Attard
37f405859f chore: fix out_dir usage in upload-symbols.py 2018-09-28 11:24:50 +10:00
John Kleinschmidt
8df703a13b Update mksnapshot uploads 2018-09-28 11:18:25 +10:00
Shelley Vohr
e66a5f79a2 updating directories and related functions 2018-09-28 11:18:06 +10:00
John Kleinschmidt
3643ce5f85 Add publish jobs for CircleCI releases 2018-09-28 11:17:11 +10:00
Samuel Attard
d0691dffdf chore: remove serve-node-headers.py, unused in new testing setup and points at old out_dir 2018-09-28 11:17:11 +10:00
Samuel Attard
85464c5b46 chore: ensure boto is initialized so that s3put works 2018-09-28 11:17:11 +10:00
Samuel Attard
c1705f2789 chore: fix out_dir usage in upload-node-headers.py 2018-09-28 11:17:11 +10:00
Samuel Attard
363cf1dec2 chore: fix out_dir usage in upload-node-checksums.py 2018-09-28 11:16:38 +10:00
Samuel Attard
504581e308 chore: fix out_dir usage in upload-index-json.py 2018-09-28 11:16:38 +10:00
Samuel Attard
2adb44a402 chore: remove unused files to simply out_dir replacements 2018-09-28 11:16:37 +10:00
Samuel Attard
4b0f335aba chore: initial work for running releases of GN build 2018-09-28 11:15:46 +10:00
Jeremy Apthorp
77fb9cf416 chore: stop using electron.gyp for branding and version (#14559)
* chore: stop using electron.gyp for version info

* chore: remove branding info from electron.gyp

* Use get_electron_branding instead of gn read

* Flip project_name/product_name
2018-09-27 14:53:08 -04:00
Alexey Kuzmin
8963529238 ci: run unittests and browsertests separately (#14826) 2018-09-27 11:29:27 -04:00
Samuel Attard
131b19403f chore: upload node.lib for v4 (#14829)
Closes #14828
2018-09-27 08:38:41 -04: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
Alexey Kuzmin
e6242d5ef8 ci: do not suppress stdout from Google Test binaries (#14782) 2018-09-24 13:47:06 -07:00
Shelley Vohr
e9549a89bb
docs: update releasing info (#14675)
* docs: update releasing info

* update more release and upload files

* address feedback from review
2018-09-24 09:12:16 -07:00
Alexey Kuzmin
8a1ff7ca49 ci: run native tests on CircleCI (#14774)
* test: add a script to run Google Test binaries

* ci: run native tests on CircleCI
2018-09-24 09:44:18 -04:00
Jeremy Apthorp
2538e20c4d
test: inherit stdio when 'npm install'ing spec deps (#14740) 2018-09-20 13:43:33 -07:00
Charles Kerr
1b3fdb18e3 fix: change subprocess.Popen calls to work on Linux too (#14689)
* fix: remove 'shell=True' when calling 'git diff'

Calling subprocess.Popen() with a list of args and shell=True causes
the args to be ignored, so ['git', 'diff', '--name-only', '--staged']
was turning into just 'git'. Instead of getting a list of changed
files, we got the --help message.

Two possible fixes: change it from a list to a single string, or remove
'shell=True'. The shell doesn't seem to be needed, so I chose that.

More reading: https://stackoverflow.com/questions/26417658/subprocess-call-arguments-ignored-when-using-shell-true-w-list

* fix: remove 'shell=True' when calling clang-format

Same problem / rationale as previous commit.

* fix: re-add shell=True for win; use different fix
2018-09-20 16:57:21 +10:00
Samuel Attard
82a5a9f455
chore: ignore spec/node_modules from linting (#14717) 2018-09-20 15:41:01 +10:00
John Kleinschmidt
4f70f0e66a
Merge pull request #14690 from electron/lint-runner-support-cc-fix
Lint runner support cc fix
2018-09-19 14:26:57 -04:00
Shelley Vohr
c958ed6a85
chore: fix await in cleanup script (#14670) 2018-09-19 09:38:35 -07:00
Charles Kerr
03553abc11 feat: use run-clang-format in cc --fix mode 2018-09-19 08:42:03 -05:00
Charles Kerr
1988c6876d refactor: use same diff args as run-clang-format 2018-09-19 08:40:57 -05:00
Samuel Attard
7f7ec23c28
chore: dont pass --stable through to bump-version.py (#14661)
I want to clean up this "stable" and "beta" code smell eventually but
for now this will unblock the 2.0.x releases.
2018-09-18 23:32:49 +10:00
Charles Kerr
eeeeae3bff
refactor: use one script to launch all linters (#14622)
* refactor: use one script to launch py, js, cc linters

* lint changed files as precommit hook

* fix py linter in GN build

* add overlooked files to linter search path
2018-09-17 16:09:02 -05:00
Charles Kerr
a45ded5508
chore: fix python lint warnings (#14638)
* chore: fix lint warnings

* chore: another try at python import errors

Looks like the problem is that dbus_mock.py is running as
a script but living in the `lib/` directory where it's part of a
module. Moving it up into the `script/` directory seems to
solve the issue.
2018-09-16 12:24:07 -05:00
Alexey Kuzmin
0ea687b529 chore: copy script/patch.py from the libcc repo (#14627)
* chore: copy script/patch.py from the libcc repo

* chore: fix pylint errors
2018-09-14 15:12:05 -07:00
John Kleinschmidt
451b1782ac
Merge pull request #14613 from electron/update-standard
chore: update to standard 12 and fix CI
2018-09-14 10:26:15 -04:00
Jeremy Apthorp
76c5f5cc8a
build: move libcc patches to electron repo (#14104)
In the GN build, libchromiumcontent is no longer a distinct library, but
merely a container for a set of scripts and patches. Maintaining those
patches in a separate repository is tedious and error-prone, so merge
them into the main repo.

Once this is merged and GN is the default way to build Electron, the
libchromiumcontent repository can be archived.
2018-09-13 22:02:16 -07:00
Samuel Attard
558fff69e7
chore: update to standard 12 2018-09-14 14:57:01 +10:00
Jeremy Apthorp
9e85bdb02c docs: prefer out/Debug to out/Default in build docs 2018-09-13 15:08:31 -07:00
Samuel Attard
238ea29fa8
chore: update package.json scripts for gn build and automated releases (#14612)
* Removes un-used and non-functional code coverage helpers
* Removes un-used release script aliases
* Moves TLS to a lib folder for cleaner directory structure
* Implements start.py as start.js for the GN build
* Adds a re-usable getElectronExec helper for future scripts
* Refactors spec runner to use the helper
2018-09-14 02:57:39 +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
Samuel Attard
4aa75c2b30
chore: update package-lock.json when bumping package.json (#14599) 2018-09-13 17:04:39 +10:00
Charles Kerr
7b71d7cbce
feat: run 'cpplint -c' as a precommit hook (#14586)
* feat: `cpplint -c` all changed files, even staged

* refactor: simplify cpplint invocation

* fix: cpplint now EXIT_FAILUREs on linter errors

* feat: precommit hook runs 'cpplint -c'
2018-09-12 14:43:54 -05:00
Charles Kerr
4b5cb7c548
fix: cpplint didn't work in GN (#14581)
* fix: cpplint didn't work in GN

* feat: make cpplint non-errors less noisy

* refactor: remove unneeded findCppLint helper

We don't need this in the GN world: it's the user's responsibility
to have depot_tools in their path.

* refactor: use const instead of let where possible
2018-09-12 12:44:00 -05:00
Samuel Attard
011c3b4326
chore: make large beta numbers work when publishing (#14571) 2018-09-12 17:59:06 +10:00
Aleksei Kuzmin
5ba01256a4 chore: fix pylint errors 2018-09-11 14:53:23 +02:00
Jeremy Apthorp
7a766e82f9 chore: fix cpplint.js when LINTER_PATH doesn't exist (#14537) 2018-09-11 17:54:20 +10:00
Aleksei Kuzmin
57a4d86669 refactor: do not use electron.gyp contents in the verify-ffmpeg script
Also run verify ffmpeg with cmd instead of powershell
2018-09-09 12:30:51 +02:00
Aleksei Kuzmin
8e525f965d build: add a helper script to retreive data from a GN project 2018-09-09 12:30:51 +02: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
Heilig Benedek
8e963f10ef fix: add shell = True to make clang-format work on Windows (#14121) 2018-09-07 09:49:43 +10:00
Charles Kerr
7f22442228
refactor: port the cpplint runner to javascript (#14440)
* refactor: port the cpplint runner to javascript

* fix: address code review suggestions

* refactor: make .cc, bootstrapped test funcs inline

* refactor: make CC_ROOTS inline too

* fix: test process.mainModule before calling main()

* refactor: reverse logic order in findChangedFiles

* refactor: make findChangedFiles() more readable

* fix: copy-paste error introduced in 3b17400

* chore: fix grammar in log message
2018-09-05 18:16:42 -05:00
Shelley Vohr
4c09142f61
chore: pass tag correctly for bump commit reversion (#14444) 2018-09-04 08:54:53 -07:00
Shelley Vohr
9b2c14a745
chore: add release-artifact-cleanup script (#14250)
Adds a script to script/ that does the following:

- delete tag from nightlies repo
- delete tag from electron/electron
- revert bump commit in electron/electron
- Delete draft
2018-08-29 11:13:22 -07:00
John Kleinschmidt
605a4570c1
ci:Split out appveyor gn builds into separate jobs (#14282)
* Split out appveyor gn into separate jobs
2018-08-24 10:49:01 -04:00
John Kleinschmidt
5a72441b2a
build: build ffmpeg and native_mksnapshot for GN release builds (#14240)
* build ffmpeg and native_mksnapshot for GN release builds

* Test ffmpeg via verify-ffmpeg.py

* remove sccache from Windows builds
2018-08-22 11:41:25 -04:00
Samuel Attard
4b33d083b2
chore: retry for the meta dumper a few times (#14241) 2018-08-21 13:29:44 -07:00
Charles Kerr
e315e4d308 build: use electron-frameworks sccache (#14171)
* build: update-external-binaries fetches sccache

* build: add util.add_exec_bit in scripts/

* build: use util.add_exec_bit in create-dist

* build: use util.add_exec_bit in update-external-binaries

this is needed to work around a bug in python's zipfile module that doesn't preserve the exec bit

https://bugs.python.org/issue18262

* fix: linting errors

* build: vsts, circleci use patched sccache

* build: always look for the x64 sccache

as it's the only arch we have it on

* fix: windows-specific errors in updaste-external-binaries

* fix: tyop

* fix: set SCCACHE_BUCKET, SCCACHE_TWO_TIER on circleci

* fix: syntax error in circleci yaml

* fix: keep churning

* chore: add tracer to file downloader

* docs: add sccache instructions for GN builds

* build: pull down the darwin sccache on mas builds

* build: use gn sync verbosely on circleci and vsts

* docs: copyediting

* build: remove unnecessary cache-dir arg

* docs: fix shell quoting in gn build instructions

* fix: invoke gclient without -verbose in circleci

* refactor: remove debug tracer

* fix: invoke gclient without -verbose in appveyor

* fix: invoke gclient without -verbose in vsts

* fix: pull add_exec_bit from correct source

* fix: remove 'SCCACHE_TWO_TIER' from CI scripts

* refactor: remove SCCACHE_BUCKET from ci scripts

this environment variable will be set via the CI UI instead

* refactor: clarify log message

* fix: set SCCACHE_PATH correctly for Windows CI
2018-08-21 15:40:06 -04:00
Samuel Attard
776943218a
ci: add better logging around request failures for releasing (#14239) 2018-08-21 11:39:51 -07:00
Shelley Vohr
26925e6d48 chore: remove autorelease check logic (#14220) 2018-08-20 10:55:38 -07:00
Shelley Vohr
8f5923f9bf
chore: add option to return next version from prepare-release (#14212)
* chore: add option to return next version from prepare-release

* shuffle logic
2018-08-20 08:17:47 -07:00
Samuel Attard
899dd03aa1
chore: match the bump commit exactly, reverts should not count (#14207) 2018-08-19 14:44:42 -07:00
Shelley Vohr
55bac9325b
chore: only prepare release if last commit not a bump (#14192) 2018-08-18 17:36:16 -07:00
Samuel Attard
8f23fe8ab0 chore: always target master for nightly releases (#14190) 2018-08-18 09:21:38 -07:00
Shelley Vohr
8039bdc061 fix: add dist tags for release branches (#14186)
* fix: add dist tags for release branches

* nightly => master
2018-08-17 18:30:21 -07:00
Samuel Attard
69f28aea2e
chore: dont check version when publishing (#14183) 2018-08-17 16:49:16 -07:00
Samuel Attard
c6a8ad9e3a
chore: remove v from script :sigh: (#14181) 2018-08-17 15:49:12 -07:00
Samuel Attard
c9e704863e
correctly get pre (#14179) 2018-08-17 15:15:45 -07:00
Shelley Vohr
bdc65f2823
fix: update_electron_gyp regex for nightlies 2018-08-17 14:35:58 -07:00
Samuel Attard
c2063bc139
chore: make beta bumps work (#14174) 2018-08-17 13:00:43 -07:00
Samuel Attard
0c0ca57f4b chore: use --bump for all releases
Approved by @codebytere
2018-08-17 12:23:27 -07:00
Shelley Vohr
6861c10183 chore: allow nightlies from release branches (#14157)
* chore: allow nightlies from release branches

* keep current version from beta to nightly

* move version bump logic to bump-versi.py
2018-08-17 10:42:45 -07:00
Samuel Attard
59d6c1e063 chore: use metadumper service to create index.json file (#14158) 2018-08-16 22:23:46 -07:00
Shelley Vohr
8b6072b411 chore: fix npm nightly dist-tag (#14155) 2018-08-16 17:17:59 -07:00