* 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
* 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
* 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
* 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
* 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.
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.
* 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
* 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
* 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
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
* 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
* Update mac symbol dump
Update posix generate_breakpad_symbols.py file to use argparse instead of deprecated optparse.
Also, make changes to the posix generate_breakpad_symbols.py file to accept multiple binaries.
And update dump-symbols.py to get symbols for the mac helper app as well.
* Changes to appease the linter
* 🔧 Add simple test script
* 📝 Add documentation
* 🔧 It works, use it
* 🔧 Make the linter happy
* 🔧 Check on bootstrap
* Trivial copyediting
s/operation system/operating system/
* Add sccache option to bootstrap
Couldn't see a CC wrapper style option for gyp so we inject the sccache commands directly into the generated ninja files.
* Use CC_wrapper
* Update toolchain.gypi
* s/sccache/cc_wrapper
* add second arg to hook
* fix clang-format script
* remove format script
* help
* first pass at only checking formatting for changed files
* ensure clang-format only runs against changes
* add quiet option for print output
* fix script outputs for clang-format
* wrap conditional for exit error
* remove cpplint include ordering from brightray
* fix python style errors
* add clang-format to linting
* fix var error and add mm extension
* fix diff checking for commit hook
* show incorrectly formatted lines when linting fails
* don't try to check formatting for deleted files
* Enable easy rebuild of native modules for unreleased electron
Sometimes when developing locally (as I found this morning) you want to rebuild native modules
against an unreleased version of Electron (in this case local master). This PR adds a simple
script to launch a local HTTP server that generates and hosts the required header and checksum
files to rebuild modules. So far only tested on macOS but should work on all OS's
* Allow custom port
* clean up serve script
* make optionality more obvious
This provides the following fixes:
1. Remove logic to delete release branch because that branch is no longer used.
2. Fix --validateRelease to not verifyShasums when release is in draft mode.
1. Prompt user to verify version before version is created.
2. Fix validateRelease instructions and usage
3. Fix ci-release-build so that you don't have to pass in --ghRelease=true; just --ghRelease will work.
* 🔧 Add security issue detection (and logs)
* 🔧 Check for it on load
* 👷 Add some tests
* 👷 Make the linter happy
* 🔧 Allow them to be enabled by force
* 📝 Make message slightly prettier
* 🔧 Fix a typo in the code comment
* 🔧 Classic mistake
* 🚀 Optimize things a bit more
* 👷 Add tests, fix tests
* 📝 Document things
* 🔧 Make linter happy
* 🔧 One more piece of cleanup