Commit graph

188 commits

Author SHA1 Message Date
Samuel Attard
35f2ed8978
build: offload hash checking logic to lambda worker during release (#29096) 2021-05-11 09:30:35 -07:00
Samuel Attard
56c3103e73
build: remove dead python methods and helper (#28884) 2021-04-28 00:39:30 -07:00
Samuel Attard
3879e9e065
build: remove the vendor directory (#28883)
The `vendor` directory is a remnant of times long since gone when we had
brightray and libchromiumcontent (never forget).  It is currently the
hope to a single header file that afaics we do not need anymore and
randomly pyyaml gets cloned there but that is easily movable.

This commit removes all references to the vendor directory from scripts,
docs, helpers, etc. and removes the directory itself.
2021-04-28 00:38:08 -07:00
Samuel Attard
7884f52976
build: fix releases that failed halfway through npm publish actions (#28851) 2021-04-26 13:02:14 -07:00
John Kleinschmidt
8164322195
build: read node files as binary files (#28729) 2021-04-19 12:55:17 -07:00
Samuel Attard
e37533b73a
build: do not require vsts token for releases (#28643) 2021-04-13 15:30:46 -07:00
Shelley Vohr
f78f8d15a9
build: better error handling for release builds (#28621) 2021-04-13 09:37:23 +02:00
John Kleinschmidt
034a792df1
ci: enable arm64 macOS tests (#24832)
* ci: enable arm64 macOS tests
2021-01-21 18:36:52 -05:00
Biru Mohanathas
44ca6e0818
fix: Upload all *.dll.pdb to symbol server (#26962)
Fixes #26961.

Notes: Add Electron DLLs like libGLESv2.dll to symbol server
2020-12-11 12:34:03 -08:00
Samuel Attard
b894151745
build: update npx.py to support npx@7 (#26662)
* build: update npx.py to support npx@7

* build: set npm_config_yes for all npx callsites
2020-11-23 21:26:54 -08:00
John Kleinschmidt
cdc9625a86
build: upload dsym files for all mac releases (#26425) 2020-11-10 11:12:41 -08:00
Samuel Attard
8b7e10cf4d
build: verbose is flag, no value (#26414) 2020-11-09 15:08:27 -08:00
Samuel Attard
946802600b
chore: move upload-to-github to TS (#26390) 2020-11-09 13:57:53 -08:00
Samuel Attard
dcffa7449a
build: fix usage of octokit/rest and make uploading better (#26386) 2020-11-09 12:30:43 -08:00
David Sanders
e9cd227b5b
build: Python3 compat and Win line-endings fixes (#26091) 2020-10-30 19:05:38 +09:00
Charles Kerr
16caa54248
chore: tweak branch detection in release notes. (#25973) 2020-10-19 11:36:37 -07:00
David Sanders
c27e5fdbb6
chore: fix linter errors (#25996) 2020-10-19 20:55:27 +09:00
Jeremy Rose
603f9242d9
build: print upload script output (#25814) 2020-10-07 17:13:06 -07:00
Jeremy Rose
d64b9c20bd
build: fix mergeShasums (#25752) 2020-10-02 13:26:29 -07:00
Jeremy Rose
7027217dbb
build: use aws-sdk-js instead of boto (#25693) 2020-09-30 13:30:10 -07:00
Charles Kerr
515e85079f
chore: fix minor script warnings (#25575) 2020-09-23 13:21:34 -07:00
Charles Kerr
7f885bd266
chore: remove unused code from our js scripts (#25419) 2020-09-14 10:22:13 -07:00
Charles Kerr
9b08fbefe5
chore: remove unused imports in our python scripts (#25406)
Seen at https://lgtm.com/projects/g/electron/electron/?mode=list&id=py%2Funused-import
and confirmed with manual inspection.
2020-09-14 10:25:49 +09:00
Charles Kerr
4484e95fc8
chore: graceful handling of notes with sub-lists (#25279)
* chore: graceful handling of notes with sub-lists

Handle multine release notes that contain their own bullet points.

Also, if a release note begins with a bullet point, remove it because it
will confuse the markdown parser to have two bullet points.
2020-09-03 14:42:48 -05:00
Samuel Attard
075502477e
chore: we do not use the nightly tag on npm (#25147) 2020-08-27 12:11:27 -07:00
Samuel Attard
1646f938f3
Revert "refactor: use aws-sdk-js instead of boto (#24863)"
This reverts commit a3581aa992.
2020-08-22 16:42:45 -07:00
Samuel Attard
ab6769d7f8
build: upload windows breakpad symbols (#25000) 2020-08-17 14:52:08 -07:00
Jeremy Rose
a3581aa992
refactor: use aws-sdk-js instead of boto (#24863)
* refactor: use js instead of boto for s3put

* replace merge-electron-checksums.py with js, remove boto

* fix auth

* actually pass the env to execute()
2020-08-13 13:25:40 -04:00
Charles Kerr
7e84d3a2c1
build: in release notes script, do not assume electron dirname (#24927) 2020-08-10 16:56:54 -07:00
Shelley Vohr
16c32d2eb2
build: handle unhandled promise rejection in notes (#24923)
Handle any potential Git processes without throwing unhandled rejection errors.
2020-08-10 10:18:08 -07:00
Samuel Attard
854b74809a
build: upload the file stream not a JSON blob for the read stream (#24889) 2020-08-07 12:00:12 -07:00
Samuel Attard
4f4c383ec5
build: only do the lower case symbol copy on case sensitive file systems (#24876) 2020-08-06 10:39:24 -07:00
Samuel Attard
a2c82f2342
build: ensure symbol files are named lowercase on disk so that boto can find them (#24856) 2020-08-05 14:03:50 -07:00
Shelley Vohr
9274117e12
build: quash octokit deprecation warning (#24790) 2020-08-05 11:59:52 -04:00
Samuel Attard
06cb550c75
build: upload sentry src bundles on windows as well (#24773) 2020-07-29 12:41:53 -07:00
Charles Kerr
b39a5b71fe
chore: add trop annotations to release notes. (#24672)
Trop annotations are in the form of "(Also in 7.3, 8, 9)" with links to
the sibling branches.

Previously seen in b43e601b83 but is now
free of optional chaining and nullish coalescing, to run on Node < 14 :)
2020-07-27 10:01:41 -05:00
Samuel Attard
5795e59352
build: upload x-compiled arm mksnapshot only on linux (#24680)
* build: upload x-compiled arm mksnapshot only on linux

* Update upload.py
2020-07-22 01:45:18 -07:00
Samuel Attard
a76e74ac3f
Revert "chore: add Trop annotations to release notes. (#24644)"
This reverts commit b43e601b83.
2020-07-21 09:38:28 -07:00
Charles Kerr
b43e601b83
chore: add Trop annotations to release notes. (#24644)
* chore: add Trop annotations to release notes.

Trop annotations are in the form of "(Also in 7.3, 8, 9)"
with links to the sibling branches.
2020-07-21 10:32:36 -05:00
Samuel Attard
589968f9fc
build: add arm64 macOS publish jobs (#24652)
* build: add arm64 macOS publish jobs

* update ci-release-build to run new arm64 macOS publish jobs

* fixup circleci config validate issues

Co-authored-by: John Kleinschmidt <jkleinsc@github.com>
2020-07-21 07:55:00 -04:00
Samuel Attard
f146a164af
build: add apple silicon support (#24545)
* chore: add patches to prevent installation of non-arm pip packages

* chore: add patches for apple-silicon

* build: add apple silicon build

* ci: add testing of new arm binary

* chore: remove / update for upstreamed patches

* Skip content tracing on macos on arm

* build: ensure that spec native modules are rebuilt for arm64 on apple-silicon

* chore: fix patches

* chore: fix broken patch

* chore: fix arm64 DCHECK

* build: add MAS arm64 build

* build: disable arm2 tests

* chore: update patches

* build: actually build MAS version of apple silicon app

Co-authored-by: John Kleinschmidt <jkleinsc@github.com>
2020-07-17 09:08:44 -07:00
Samuel Attard
eb6616e4e9
build: update to standard 14 (#24479) 2020-07-09 10:18:49 -07:00
Charles Kerr
980e592271
chore: ensure release notes always come from Clerk (#23777)
* chore: ensure release notes always come from Clerk

Now with tests!

* chore: move sinon devDependency into `spec-main`

* refactor: tweak note-spec variable for readability
2020-06-08 11:39:44 -07:00
Samuel Attard
5ed2512881
fix: support 10-x-y in the release notes generator (#23709) 2020-05-21 13:55:27 -07:00
Charles Kerr
2342aaffbd
feat: look harder for a commit's pull request. (#23593)
PR numbers are almost always listed parenthetically in the commit message;
but when something is committed manually, it could be missing. This change
uses octokit's listPullRequestsAssociatedWithCommit() as a second approach
to finding a commit's PR.

Last night's Releases WG meeting noted that "re-enable pdf viewer" was
missing from the notes. This PR fixes that omission.
2020-05-14 18:50:39 -05:00
Charles Kerr
8bc6b81edc
Remove redundant release note items (#23335) 2020-04-30 17:00:59 -07:00
Shelley Vohr
e95075f2fe
build: fix nightly release copy (#23097) 2020-04-14 11:14:21 -04:00
Samuel Attard
0e86163a3e
build: rename atom.rc to electron.rc (#23098) 2020-04-13 14:28:59 -07:00
Andrea Brancaleoni
ff21444429
build: implement zip64 stripping (#22998)
When zip contains files larger than 4GB 4bytes length headers are
not sufficient anymore. Zip64 defines an extra header 0x0001 which
may contain 8byte lengthed (16 exabytes) lengths [uncompressed and compressed].

Read this value when performing extra data cleaning and override the
bogus value if the header is available.

Read https://blog.yaakov.online/zip64-go-big-or-go-home/ for more
information on Zip64 extra header.

This is the first known implementation of zip64 stripping.
2020-04-09 10:39:46 -07:00
Andrea Brancaleoni
884b46fce7
fix: strip extra data from release zips (#22891) 2020-04-01 10:14:41 -04:00
John Kleinschmidt
be5511393b
ci: use smaller vms for testing since we are using goma (#22887) 2020-03-30 15:46:42 -04:00
Samuel Attard
e678794dd0
build: fix beta version bumper logic for betas beyond 10 (#22810) 2020-03-24 09:04:12 -04:00
Samuel Attard
5d657dece4
build: enable JS semicolons (#22783) 2020-03-20 13:28:31 -07:00
Samuel Attard
b87b501161
build: update eslint + eslint plugins (#22777)
* build: run eslint --fix

* chore: manually fix all hasOwnProperty errors

* chore: manually fix all void 0 vs undefined errors

* chore: manually fix all async-in-promise errors

* chore: manually fix lexical declaration in case block
2020-03-20 11:12:18 -04:00
Shelley Vohr
c0374b5796
chore: don't delete nightly tag after draft (#22588) 2020-03-09 20:13:10 -07:00
Samuel Attard
85d4040833
build: upload sentry src bundles to symbol S3 bucket (#22572) 2020-03-09 15:26:45 -07:00
Shelley Vohr
a87e0f495d
chore: remove libcc from release not generator (#22271) 2020-02-20 05:39:25 +00:00
John Kleinschmidt
d1fd237e61
build: fix release script to work with sudowoodo (#22170) 2020-02-12 11:53:14 -05:00
John Kleinschmidt
023a3ca722
ci: Speed up release (#22126)
* build: speed up release builds by using workflows

* Don't get depot-tools twice

* Do not use source from cache

* Checkout boto and requests for release builds

* Make sure vendor dirs are persisted.

* Use git cache for releases.

* show sccache stats right after build

* Make messages easier for sudowoodo to consume.
2020-02-11 15:42:37 -05:00
Andrea Brancaleoni
0fe0a08800
build: strip zip determinism on artifact upload (#21756)
Since electron zip are including build dates the checksum of each of
these zip files is time dependant. In order to fix this issue strip all
the dates contained in each of the zip entries.
2020-01-29 07:22:04 -05:00
John Kleinschmidt
408d3d2a14
build: fix release asset names (#21772) 2020-01-14 17:10:08 -05:00
Andrea Brancaleoni
cf497ea478 build: upload windows toolchain profile (#21327)
This commit uploads the output of the windows toolchain profiler.
The windows toolchain profiler is aimed at allowing the compilation
of electron release artifacts using the same windows toolchain on user
builder. This combined with the ability of electron of outputting
deterministic build should allow in future to check electron build
artifacts against CI artifacts.

See: 97959b5e5c include windows toolchain profiler (contd #20949)
2020-01-13 15:40:13 -05:00
Samuel Attard
ec0edb757a
chore: workflows and pipeline state were split in the circle API (#21441) 2019-12-09 11:26:43 -08:00
Julien Isorce
92ff39c168 ci: generate debug symbols on Linux (#18676) 2019-11-20 17:21:44 -08:00
Samuel Attard
41f1569c46
build: update release build endpoint from /jobs to /job (#21232) 2019-11-20 11:14:48 -08:00
Samuel Attard
c0657a4ca7
build: fix nightly version bumping (#21079)
* build: fix nightly version bumping

* spec: add a test for bumping nightlies beyond the 8-x-y branch switch

* Update version-bump-spec.ts
2019-11-12 08:36:03 -08:00
John Kleinschmidt
4240017cb6
build: allow CircleCI timeout and retry to be set via env variables (#20896)
* build: allow circleci timeout and retry to be set via env variables

* check for more statuses and run indefinitely
2019-11-01 11:47:45 -04:00
Samuel Attard
6bcf67e051
feat: enable builtin spellchecker (#20692)
* chore: add code required to use chromes spellchecker

* chore: fix linting

* chore: manifests needs buildflags now

* chore: add dictionarySuggestions to the context menu event when the spellchecker is active

* chore: enable by default for windows builds

* chore: add patch to remove incognito usage in the spellchecker

* chore: add dependencies on spellcheck common and flags

* chore: conditionally include spell check panel impl

* chore: fix deps for spellcheck feature flags

* chore: add patch for electron resources

* chore: add dependency on //components/language/core/browser

* chore: patches to make hunspell work on windows

* build: collect hunspell dictionaries into a zip file and publish

* chore: clean up patches

* chore: add docs and set spell checker url method

* chore: fix error handling

* chore: fix hash logic

* build: update hunspell filename generator

* fix: default spellchecker list to the current system locale if we can

* docs: document the language getter

* chore: patch IDS_ resources for linux builds

* feat: add spellcheck webpref flag to disable the builtin spellchecker

* chore: fix docs typo

* chore: clean up spellchecker impl as per feedback

* remove unneeded deps
2019-10-31 13:11:51 -07:00
John Kleinschmidt
23ca7e3733
build: lengthen wait times and retries for CircleCI releases (#20889)
* build: lengthen wait times and retries for CircleCI releases

* Review suggestions
2019-10-31 14:25:11 -04:00
John Kleinschmidt
dfdf1b54c6
build: do not try to run non existent VSTS release builds (#20866) 2019-10-31 09:58:56 -04:00
John Kleinschmidt
467409458e build: add support for automated minor releases (#20620)
* build: add support for automated minor releases

* Add test for minor bump
2019-10-23 11:07:09 -07:00
John Kleinschmidt
23066f8cce
ci: verify CircleCI job number before returning job url (#20483) 2019-10-08 17:45:07 -04:00
John Kleinschmidt
eaa18041e1
ci: use CircleCI 2.1 config and v2 APIs (#20245)
* ci: use circleci 2.1

* Check for pipeline status and add comments
2019-09-17 14:48:02 -04:00
John Kleinschmidt
42999f42f2
build: add WOA node headers to checksum file (#20255) 2019-09-17 12:38:36 -04:00
John Kleinschmidt
5ccc043d86 build: handle arm64 node headers (#20192)
* build: handle arm64 node headers

(cherry picked from commit ff1f224d96)

* node.lib for arm64 needs to go to specific dir
2019-09-10 14:14:58 -07:00
John Kleinschmidt
fd31a99ef0 Revert "build: handle arm64 node headers"
This reverts commit ff1f224d96.
2019-09-10 15:18:55 -04:00
John Kleinschmidt
ff1f224d96 build: handle arm64 node headers 2019-09-10 15:15:20 -04:00
Samuel Attard
d395799917
build: get all the release assets when looking for one to delete (#20157)
* build: get all the release assets when looking for one to delete

yeah we totally have more than 30....

* Update upload-to-github.js
2019-09-07 14:48:35 -07:00
John Kleinschmidt
196fceabdb
build: don't wait until job requests return in case some jobs fail to return (#20133) 2019-09-05 13:57:47 -04:00
John Kleinschmidt
65ebb6e547
build: add WOA release to list of releases (#20094)
* build: add WOA release to list of releases

* Add job count info for sudowoodo

* Add verification of all assets

* Fix linting and add logic to wait before printing out results
2019-09-04 14:24:46 -04:00
Shelley Vohr
7d4e0ad7b0 build: simplify unicode console output (#20017) 2019-08-29 10:46:54 -04:00
John Kleinschmidt
4bc7b3b1a4
build: start building Windows on Arm builds (#19780)
* build: add zip manifest for Windows on Arm

* ci: add Windows On Arm testing

(cherry picked from commit 4064e1f4874ff7a37c52c2ad974f92418c7e71c4)

* Fix path to invoke CI on WOA hardware

* Explicitly call 7z.exe to unzip files

* Make sure GCLIENT_EXTRA_ARGS set for WOA builds get prepended on release build

* set proper arch for npm

* Try using Compress-Archive/Expand-Archive

* Revert "Try using Compress-Archive/Expand-Archive"

* disable woa hardware test for now
2019-08-21 17:37:30 -04:00
Samuel Attard
13df748f02
build: fix nightly install command in release notes (#19711) 2019-08-12 13:01:52 -07:00
Samuel Attard
bf66fe51f6
build: fix first beta version choosing logic 2019-07-31 11:04:19 -07:00
Charles Kerr
898adbce5c fix: "TypeError: fn is not a function" crash in release notes generator (#19394)
* fix: fix cache filename of issue comments

* fix: update octokit deprecated API use

* fix: "TypeError: fn is not a function" in notes.js

* chore: retryableFunc does not need to be async

* chore: simplify checkCache() operation param
2019-07-24 13:23:40 -04:00
Charles Kerr
b3fb7497c2 chore: omit superceded Chromium updates from notes (#19400)
* feat: omit superceded Chromium updates from notes

* chore: simplify changed code
2019-07-23 13:50:18 -07:00
Samuel Attard
c1ad0725d8
build: fix include paths so that __file__ is absolute not relative (#18997) 2019-06-26 11:32:42 -07:00
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