* feat: provide the frame URL with permission requests and checks
Also provides a handy isMainFrame property to determine if it is an
iframe making the request
* chore: refactor to use base::Value
* chore: use Set<Type>Key over SetPath
* 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
* docs: Update Guides & Tutorials section
* docs: Update the list of docs
* Update docs/README.md
Co-Authored-By: Mark Lee <malept@users.noreply.github.com>
* Update docs/README.md
Co-Authored-By: Mark Lee <malept@users.noreply.github.com>
* Update docs/README.md
Co-Authored-By: Mark Lee <malept@users.noreply.github.com>
* Update docs/README.md
Co-Authored-By: Mark Lee <malept@users.noreply.github.com>
* docs: Implement feedback
* docs: ensure that optionality matches between documented params and signatures
* docs: ensure that all optional declarations are lower case
* chore: fix broken link
* build: allow pulling in a later version of Clang
Due to a code-generation defect related to virtual method thunks in the
official compiler used for Chromium M76, it's necessary to build for WoA
with a later version of Clang. When running gclient sync, setting
ELECTRON_BUILD_WOA=1 in the environment will download a corrected
compiler which doesn't have this defect.
* docs: add a note about building for Windows on Arm
* refactor: bundle the browser and renderer process electron code
* Bundles browser/init and renderer/init
* Improves load performance of main process by ~40%
* Improves load performance of renderer process by ~30%
* Prevents users from importing our "requiring" our internal logic such
as ipc-main-internal. This makes those message buses safer as they are
less accessible, there is still some more work to be done though to lock
down those buses completely.
* The electron.asar file now only contains 2 files, as a future
improvement maybe we can use atom_natives to ship these two files
embedded in the binary
* This also removes our dependency on browserify which had some strange
edge cases that caused us to have to hack around require-order and
stopped us using certain ES6/7 features we should have been able to use
(async / await in some files in the sandboxed renderer init script)
TLDR: Things are faster and better :)
* fix: I really do not want to talk about it
* chore: add performance improvements from debugging
* fix: resolve the provided path so webpack thinks it is absolute
* chore: fixup per PR review
* fix: use webpacks ProvidePlugin to keep global, process and Buffer alive after deletion from global scope for use in internal code
* fix: bundle worker/init as well to make node-in-workers work
* chore: update wording as per feedback
* chore: make the timers hack work when yarn is not used
* chore: allow conditional disable of the site instance override patches at runtime
* feat: add app.allowRendererProcessReuse property to allow runtime disable of site instance overrides
spec: add tests for the new allowRendererProcessReuse property
feat: add console warnings / errors for loading non context-aware native modules
* Only error if the patch is disabled
* Warn all the time, this will ship in Electron 7
* Use "Breaking Changes" as the changes doc's title.
Multiple people have commented that this important page is difficult
to find, in part because people search for "Breaking" or "Changes" or
"Breaking Changes" rather than "API Contract".
This PR changes the name to "Breaking Changes" so that it'll show up
on electronjs.org/docs/.
It also adds a backwards-friendly link so people still searching for
"API Contract" will get a redirect. I'm not sure if this is necessary --
the actual URL of https://electronjs.org/docs/api/breaking-changes is
unchanged -- would especially welcome feedback on this part.
* fixup! Use "Breaking Changes" as the changes doc's title.
* fixup! Use "Breaking Changes" as the changes doc's title.
* fix: add parentheses
Add parentheses to the end `app.showAboutPanel`, because this is method.
* fix: change 'Promise<string>' to 'Promise<String>'
Change `Promise<string>` to `Promise<String>`, because this is class name.
* docs: change lower case to upper case
Change lower case in word `menu` to upper case - `Menu`, because it's method.