Commit graph

1255 commits

Author SHA1 Message Date
Alexey Kuzmin
48abef27d8
build: make it possible to pass a "--directory" arg to "git am" (#16024) 2018-12-11 22:49:01 +01:00
Shelley Vohr
1b8c11121f
chore: convert bump script to js (#15820) 2018-12-06 11:00:10 -08:00
Shelley Vohr
d3c58ea48c
chore: move getCurrentBranch to a util file (#15921)
* chore: move getCurrentBranch to a util file

* fix import
2018-12-03 13:28:10 -08:00
Shelley Vohr
b8ec886609
chore: allow bumping stable => beta (#15906) 2018-11-30 11:01:57 -08:00
Shelley Vohr
728be219a4
chore: improve granular release cleanup (#15900)
* chore: improve granular release cleanup

* make releaseId optional
2018-11-30 09:58:09 -08:00
Shelley Vohr
5f9c857eb0
chore: expose release id for use in cleanup (#15845) 2018-11-27 23:12:01 -05:00
Shelley Vohr
3748ee49ea
chore: remove unused test.py (#15822) 2018-11-24 20:01:30 -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
6162d9090d
chore: remove the 'get-patch' script (#15586)
It is obsolete now, "script/git-export-patches"
should be used instead.
2018-11-08 16:37:00 +01:00
Charles Kerr
1672c95de3 better release notes (#15169)
* fix: use PR 'Notes' comment in release notes

* fix: follow links in roller-bot PRs

* refactor: better reference point version selection

* if we're a stable release, use the current brnach's previous stable
* if we're a beta release, use the current branch's previous beta
* if no match found, use the newest stable that precedes this branch

* refactor: dedup the caching functions' code

* refactor: partially rewrite release note generator

* parse release notes comments from PRs
* do not display no-notes PRs
* handle roller-bot commits by following cross-repo commits/PRs
* minor tweaks to note rendering, e.g. capitalization

* fix: fix lint:js script typo

* fix: copy originalPr value to rollerbot PR chains

* fix: handle more cases in release notes generator

* handle force-pushes where no PR
* better type guessing on pre-semantic commits

* fix: handle more edge cases in the note generator

* better removal of commits that landed before the reference point
* ensure '<!-- One-line Change Summary Here-->' is removed from notes
* handle more legacy commit body notes e.g. "Chore(docs)"
* check for fix markdown in PR body e.g. a link to the issue page

* chore: tweak code comments

* refactor: easier note generator command-line args

* refactor: group related notes together

* feat: query commits locally for gyp and gn deps

* chore: slightly better filtering of old commits

* feat: omit submodule commits for .0.0 releases

More specifically, only include them if generating release
notes relative to another release on the same branch.

Before that first release, there's just too much churn.

* refactor: make release-notes usable as a module

Calling it from the command line and from require()() now
do pretty much the same thing.

* refactor: passing command-line args means use HEAD

* chore: plug in the release note generator

* feat: support multiline 'Notes:' messages.

xref: https://github.com/electron/trop/pull/56
xref: https://github.com/electron/clerk/pull/16

* remove accidental change in package.json

* simplify an overcomplicated require() call

* Don't use PascalCase on releaseNotesGenerator()

* Remove code duplication in release notes warnings

* remove commented-out code.

* don't use single-character variable names.

For example, use 'tag' instead of 't'. The latter was being
used for map/filter arrow function args.

* Look for 'backport' rather than 'ackport'.

* Wrap all block statements in curly braces.

* fix tyop

* fix oops

* Check semver validity before calling semver.sort()
2018-11-06 16:06:11 -04:00
Jeremy Apthorp
2e1c50c891
chore: fix missing \n at end of exported patches (#15579) 2018-11-05 13:50:35 -08:00
Alexey Kuzmin
32ea2b67f0
build: store the patches config in a json file (#15395) 2018-11-05 17:31:28 +01:00
Samuel Attard
7f73240fd5
chore: use chromes auto generated definition of CHROME_VERSION_STRING (#15275) 2018-11-02 23:32:33 +11:00
Samuel Attard
6ed70327f5
chore: publish to the latest tag correctly when releasing old versions (#15274) 2018-11-01 12:27:35 +11:00
Milan Burda
d56617e5d0 chore: avoid appending git version to the exported patches (#15389)
* chore: avoid appending git version to the exported patches

* fix no-eol at end of v8 patch
2018-10-26 12:52:59 +05:30
Alexey Kuzmin
ec4a0e096f ci: run more Chromium unit tests (#15363)
* 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
2018-10-25 14:28:50 -04:00
Cheng Zhao
6fa940f2c1 chore: set env when invoking gn (#15354) 2018-10-24 11:25:13 -07:00
Jeremy Apthorp
335e9f68b7
chore: deprecate apply-patches in favour of git-{import,export}-patches (#15300) 2018-10-24 11:24:11 -07:00
Milan Burda
8ba271efba refactor: eliminate brightray (#15240) 2018-10-24 12:49:10 +02:00
Alexey Kuzmin
5e199152e2 ci: run unittests on clean Chromium (#15125)
* 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*
2018-10-22 16:12:19 -04:00
Milan Burda
6f3c46cc7e refactor: move devtools from brightray to atom (#15234) 2018-10-19 15:50:30 +02:00
Samuel Attard
16dcc464cf
chore: make macOS release builds higher priority to skip the queue (#15276)
Release builds should be run before branch builds on our limited macOS
infra.

Refs: https://docs.microsoft.com/en-us/rest/api/vsts/build/builds/queue?view=vsts-rest-4.1#queuepriority
2018-10-19 23:56:40 +11:00
Charles Kerr
363712d057 fix: make release-artifact-cleanup executable (#15225)
* fix: make release-artifact-cleanup executable

* fix misc issues in cleanup script
2018-10-18 20:20:43 -07:00
Nitish Sakhawalkar
c0db0011ec fix: Convert to lower case in upload symbols script (#15258)
* fix: Convert to lower case in upload symbols script

* fix: Convert to lower case in upload symbols script
2018-10-19 11:18:35 +11:00
Milan Burda
a369a4172b refactor: move notifications from brightray to atom (#15209) 2018-10-17 20:01:11 +02:00
Jeremy Apthorp
2a4f5c3284 chore: add --fix option to lint:cpp (#14977)
* chore: add --fix option to lint:cpp

* fix lint errors
2018-10-15 22:59:45 -07:00
John Kleinschmidt
047cad1a4d ci: Fix timeout when generating breakpad symbols (#15126)
* ci: breakup dump symbols into multiple steps.

* Update step-zip-symbols
2018-10-13 13:02:52 +11:00
Samuel Attard
d46834265f chore: make FILEVERSION 4th component 0 on nightly builds (#15074)
Fixes #14900
2018-10-11 09:11:20 -04:00
Heilig Benedek
2d186cb31a fix: close patch_file before deleting it (#15055) 2018-10-10 08:55:25 -05:00
Samuel Attard
2b8ef344b7 fixme: dont use --enable-logging on the ffmpeg verify phase 2018-10-10 13:11:10 +11:00
Samuel Attard
19e02cd63e chore: add logging to zip-symbols.py to help debugging timeouts 2018-10-10 11:04:55 +11:00
Heilig Benedek
4017f3faa7 fix: make lint run on Windows in PowerShell 2018-10-09 14:38:00 -07:00
Jeremy Apthorp
85372ecb6b update,,, sysroots? again???? 2018-10-09 14:38:00 -07:00
Jeremy Apthorp
92e95a463e update sysroot 2018-10-09 14:38:00 -07:00
Samuel Attard
06dbc7f613 chore: update sysroot 2018-10-09 14:38:00 -07:00
John Kleinschmidt
1cf00274ab
ci: strip linux binaries for release builds (#14991) 2018-10-09 16:19:05 -04:00
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