electron/shell/browser
Robo da0fd286b4
feat: UtilityProcess API (#34980)
* chore: initial scaffolding

* chore: implement interface and docs

* chore: address code style review

* fix: cleanup of utility process on shutdown

* chore: simplify NodeBindings::CreateEnvironment

* chore: rename disableLibraryValidation => allowLoadingUnsignedLibraries

* chore: implement process.parentPort

* chore(posix): implement stdio pipe interface

* chore(win): implement stdio interface

* chore: reenable SetNodeOptions for utility process

* chore: add specs

* chore: fix lint

* fix: update kill API

* fix: update process.parentPort API

* fix: exit event

* docs: update exit event

* fix: tests on linux

* chore: expand on some comments

* fix: shutdown of pipe reader

Avoid logging since it is always the case that reader end of
pipe will terminate after the child process.

* fix: remove exit code check for crash spec

* fix: rm PR_SET_NO_NEW_PRIVS for unsandbox utility process

* chore: fix incorrect rebase

* fix: address review feedback

* chore: rename utility_process -> utility

* chore: update docs

* chore: cleanup c++ implemantation

* fix: leak in NodeServiceHost impl

* chore: minor cleanup

* chore: cleanup JS implementation

* chore: flip default stdio to inherit

* fix: some api improvements

* Support cwd option
* Remove path restriction for modulePath
* Rewire impl for env support

* fix: add tests for cwd and env option

* chore: alt impl for reading stdio handles

* chore: support message queuing

* chore: fix lint

* chore: new UtilityProcess => utilityProcess.fork

* fix: support for uncaught exception exits

* chore: remove process.execArgv as default

* fix: windows build

* fix: style changes

* fix: docs and style changes

* chore: update patches

* spec: disable flaky test on win32 arm CI

Co-authored-by: PatchUp <73610968+patchup[bot]@users.noreply.github.com>
2022-10-19 22:49:49 -07:00
..
api feat: UtilityProcess API (#34980) 2022-10-19 22:49:49 -07:00
badging
bluetooth feat: add support for Web Bluetooth pin pairing (#35416) 2022-09-26 10:19:58 -04:00
extensions chore: bump chromium to 108.0.5329.0 (main) (#35628) 2022-10-03 13:21:00 -07:00
hid chore: bump chromium to 108.0.5355.0 (main) (#35900) 2022-10-17 10:22:24 -04:00
lib chore: fix spelling errors in multiple files (#34574) 2022-06-16 16:46:11 +09:00
linux
mac chore: bump chromium to 107.0.5274.0 (main) (#35375) 2022-09-07 09:46:37 +02:00
media refactor: unduplicate MediaStreamDevicesController (#34895) 2022-07-20 17:09:14 +09:00
net chore: bump chromium to 108.0.5355.0 (main) (#35900) 2022-10-17 10:22:24 -04:00
notifications chore: bump chromium to 107.0.5274.0 (main) (#35375) 2022-09-07 09:46:37 +02:00
osr chore: bump chromium to 107.0.5274.0 (main) (#35375) 2022-09-07 09:46:37 +02:00
plugins
printing fix: headless job tracking in printToPDF (#36046) 2022-10-18 15:46:19 +02:00
resources Bump v23.0.0-nightly.20221019 2022-10-19 06:02:29 -07:00
serial feat: support serialPort.forget() (#35310) 2022-10-18 11:22:32 +02:00
ui chore: Move draggable regions implementation from NativeBrowserView into InspectableWebContentsView (#35007) 2022-10-17 11:10:07 -04:00
webauthn fix: WebAuthn Discoverable Credential (Resident Credential) (#35374) 2022-09-20 15:47:42 -07:00
win chore: used nested namespaces (#34737) 2022-06-29 12:55:47 -07:00
auto_updater.cc chore: bump chromium to 100.0.4857.0 (main) (#32419) 2022-02-09 18:58:52 -08:00
auto_updater.h
auto_updater_mac.mm chore: fix typos (#32985) 2022-02-21 10:27:45 +01:00
browser.cc chore: modernize ListValue usage in dict_util.mm and related files (#34661) 2022-06-23 15:28:41 +09:00
browser.h chore: modernize Value usage in converters (#34794) 2022-07-05 11:25:18 -04:00
browser_linux.cc chore: modernize Value usage in converters (#34794) 2022-07-05 11:25:18 -04:00
browser_mac.mm chore: bump chromium to 108.0.5329.0 (main) (#35628) 2022-10-03 13:21:00 -07:00
browser_observer.h chore: modernize ListValue usage in dict_util.mm and related files (#34661) 2022-06-23 15:28:41 +09:00
browser_process_impl.cc chore: bump chromium to 108.0.5355.0 (main) (#35900) 2022-10-17 10:22:24 -04:00
browser_process_impl.h feat: add app.getSystemLocale() method (#35697) 2022-09-23 11:50:46 -07:00
browser_win.cc chore: modernize Value usage in converters (#34794) 2022-07-05 11:25:18 -04:00
certificate_manager_model.cc chore: bump chromium to 103.0.5046.0 (main) (#33906) 2022-05-17 12:48:40 -04:00
certificate_manager_model.h
child_web_contents_tracker.cc
child_web_contents_tracker.h
cookie_change_notifier.cc
cookie_change_notifier.h
electron_api_ipc_handler_impl.cc fix: ensure ElectronBrowser mojo service is only bound to appropriate render frames (#33323) 2022-03-18 19:50:05 -07:00
electron_api_ipc_handler_impl.h fix: build when pdf component is disabled (#33513) 2022-03-30 11:55:38 -07:00
electron_autofill_driver.cc chore: remove spurious trailing namespace comments (#34732) 2022-06-28 10:08:55 +02:00
electron_autofill_driver.h
electron_autofill_driver_factory.cc chore: bump chromium to 105.0.5129.0 (main) (#34403) 2022-06-27 15:50:08 -05:00
electron_autofill_driver_factory.h
electron_browser_client.cc chore: bump chromium to 108.0.5355.0 (main) (#35900) 2022-10-17 10:22:24 -04:00
electron_browser_client.h chore: bump chromium to 108.0.5355.0 (main) (#35900) 2022-10-17 10:22:24 -04:00
electron_browser_context.cc chore: bump chromium to 108.0.5329.0 (main) (#35628) 2022-10-03 13:21:00 -07:00
electron_browser_context.h chore: bump chromium to 107.0.5286.0 (main) (#35590) 2022-09-08 16:23:08 -07:00
electron_browser_main_parts.cc feat: UtilityProcess API (#34980) 2022-10-19 22:49:49 -07:00
electron_browser_main_parts.h chore: bump chromium to 108.0.5329.0 (main) (#35628) 2022-10-03 13:21:00 -07:00
electron_browser_main_parts_linux.cc fix: add support for --ozone-platform-hint flag on Linux (#34937) 2022-07-21 10:37:54 +02:00
electron_browser_main_parts_mac.mm feat: add app.getSystemLocale() method (#35697) 2022-09-23 11:50:46 -07:00
electron_browser_main_parts_posix.cc chore: bump chromium to 103.0.5046.0 (main) (#33906) 2022-05-17 12:48:40 -04:00
electron_download_manager_delegate.cc fix: remove extra dot in extension (#35618) 2022-09-13 11:47:04 -07:00
electron_download_manager_delegate.h
electron_gpu_client.cc chore: bump chromium to 100.0.4857.0 (main) (#32419) 2022-02-09 18:58:52 -08:00
electron_gpu_client.h
electron_javascript_dialog_manager.cc
electron_javascript_dialog_manager.h
electron_navigation_throttle.cc
electron_navigation_throttle.h
electron_pdf_web_contents_helper_client.cc chore: bump chromium to 108.0.5329.0 (main) (#35628) 2022-10-03 13:21:00 -07:00
electron_pdf_web_contents_helper_client.h chore: bump chromium to 108.0.5329.0 (main) (#35628) 2022-10-03 13:21:00 -07:00
electron_permission_manager.cc feat: add support for Web Bluetooth pin pairing (#35416) 2022-09-26 10:19:58 -04:00
electron_permission_manager.h feat: add support for Web Bluetooth pin pairing (#35416) 2022-09-26 10:19:58 -04:00
electron_quota_permission_context.cc
electron_quota_permission_context.h
electron_speech_recognition_manager_delegate.cc
electron_speech_recognition_manager_delegate.h
electron_web_contents_utility_handler_impl.cc fix: ensure ElectronBrowser mojo service is only bound to appropriate render frames (#33323) 2022-03-18 19:50:05 -07:00
electron_web_contents_utility_handler_impl.h fix: build when pdf component is disabled (#33513) 2022-03-30 11:55:38 -07:00
electron_web_ui_controller_factory.cc
electron_web_ui_controller_factory.h
event_emitter_mixin.cc chore: used nested namespaces (#34737) 2022-06-29 12:55:47 -07:00
event_emitter_mixin.h feat: UtilityProcess API (#34980) 2022-10-19 22:49:49 -07:00
extended_web_contents_observer.h
fake_location_provider.cc
fake_location_provider.h
feature_list.cc chore: bump chromium to 100.0.4857.0 (main) (#32419) 2022-02-09 18:58:52 -08:00
feature_list.h
file_select_helper.cc chore: bump chromium to 108.0.5355.0 (main) (#35900) 2022-10-17 10:22:24 -04:00
file_select_helper.h chore: bump chromium to 108.0.5355.0 (main) (#35900) 2022-10-17 10:22:24 -04:00
file_select_helper_mac.mm
font_defaults.cc chore: bump chromium to 102.0.4961.0 (main) (#33091) 2022-03-24 21:39:03 -04:00
font_defaults.h
javascript_environment.cc feat: UtilityProcess API (#34980) 2022-10-19 22:49:49 -07:00
javascript_environment.h feat: UtilityProcess API (#34980) 2022-10-19 22:49:49 -07:00
login_handler.cc
login_handler.h
microtasks_runner.cc chore: bump chromium to 107.0.5274.0 (main) (#35375) 2022-09-07 09:46:37 +02:00
microtasks_runner.h
native_browser_view.cc
native_browser_view.h chore: Move draggable regions implementation from NativeBrowserView into InspectableWebContentsView (#35007) 2022-10-17 11:10:07 -04:00
native_browser_view_mac.h chore: Move draggable regions implementation from NativeBrowserView into InspectableWebContentsView (#35007) 2022-10-17 11:10:07 -04:00
native_browser_view_mac.mm chore: Move draggable regions implementation from NativeBrowserView into InspectableWebContentsView (#35007) 2022-10-17 11:10:07 -04:00
native_browser_view_views.cc chore: Move draggable regions implementation from NativeBrowserView into InspectableWebContentsView (#35007) 2022-10-17 11:10:07 -04:00
native_browser_view_views.h chore: Move draggable regions implementation from NativeBrowserView into InspectableWebContentsView (#35007) 2022-10-17 11:10:07 -04:00
native_window.cc refactor: use views NonClientHitTest for draggable regions on mac (#35603) 2022-10-12 12:05:45 -04:00
native_window.h chore: Move draggable regions implementation from NativeBrowserView into InspectableWebContentsView (#35007) 2022-10-17 11:10:07 -04:00
native_window_features.cc
native_window_features.h
native_window_mac.h refactor: use views NonClientHitTest for draggable regions on mac (#35603) 2022-10-12 12:05:45 -04:00
native_window_mac.mm chore: Move draggable regions implementation from NativeBrowserView into InspectableWebContentsView (#35007) 2022-10-17 11:10:07 -04:00
native_window_observer.h feat: replace scroll-touch* with generic input-event (#35531) 2022-09-27 12:47:46 -07:00
native_window_views.cc chore: Move draggable regions implementation from NativeBrowserView into InspectableWebContentsView (#35007) 2022-10-17 11:10:07 -04:00
native_window_views.h refactor: use views NonClientHitTest for draggable regions on mac (#35603) 2022-10-12 12:05:45 -04:00
native_window_views_win.cc fix: add restore event for minimized maximization (#35342) 2022-08-23 10:32:42 +09:00
network_hints_handler_impl.cc
network_hints_handler_impl.h
protocol_registry.cc chore: bump chromium to 100.0.4857.0 (main) (#32419) 2022-02-09 18:58:52 -08:00
protocol_registry.h
relauncher.cc chore: bump chromium to 100.0.4857.0 (main) (#32419) 2022-02-09 18:58:52 -08:00
relauncher.h chore: bump chromium to 100.0.4857.0 (main) (#32419) 2022-02-09 18:58:52 -08:00
relauncher_linux.cc chore: used nested namespaces (#34737) 2022-06-29 12:55:47 -07:00
relauncher_mac.cc chore: used nested namespaces (#34737) 2022-06-29 12:55:47 -07:00
relauncher_win.cc chore: used nested namespaces (#34737) 2022-06-29 12:55:47 -07:00
session_preferences.cc
session_preferences.h
special_storage_policy.cc chore: bump chromium to 106.0.5216.0 (main) (#34993) 2022-08-17 11:35:53 -07:00
special_storage_policy.h chore: bump chromium to 106.0.5216.0 (main) (#34993) 2022-08-17 11:35:53 -07:00
web_contents_permission_helper.cc fix: pass rfh instances through to the permission helper (#35419) 2022-08-26 12:31:33 +02:00
web_contents_permission_helper.h fix: pass rfh instances through to the permission helper (#35419) 2022-08-26 12:31:33 +02:00
web_contents_preferences.cc refactor: only create webContents after 'will-attach-webview' (#32941) 2022-07-21 11:29:31 +02:00
web_contents_preferences.h refactor: only create webContents after 'will-attach-webview' (#32941) 2022-07-21 11:29:31 +02:00
web_contents_zoom_controller.cc chore: bump chromium to 105.0.5129.0 (main) (#34403) 2022-06-27 15:50:08 -05:00
web_contents_zoom_controller.h chore: bump chromium to 100.0.4894.0 (main) (#32852) 2022-02-25 13:17:35 -05:00
web_view_guest_delegate.cc chore: bump chromium to 107.0.5274.0 (main) (#35375) 2022-09-07 09:46:37 +02:00
web_view_guest_delegate.h chore: bump chromium to 107.0.5274.0 (main) (#35375) 2022-09-07 09:46:37 +02:00
web_view_manager.cc
web_view_manager.h
window_list.cc fix: DCHECK when calling app.exit() (#33035) 2022-02-23 16:27:54 +01:00
window_list.h
window_list_observer.h
zoom_level_delegate.cc chore: bump chromium to 108.0.5329.0 (main) (#35628) 2022-10-03 13:21:00 -07:00
zoom_level_delegate.h chore: bump chromium to 107.0.5274.0 (main) (#35375) 2022-09-07 09:46:37 +02:00