electron/spec
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
..
fixtures feat: UtilityProcess API (#34980) 2022-10-19 22:49:49 -07:00
ts-smoke chore: remove deprecated 'new-window' event (#34526) 2022-08-09 17:57:05 -04:00
.eslintrc refactor: implement ajax() in tests using native fetch instead of jQuery (#32579) 2022-01-24 10:34:23 +01:00
.gitignore test: drop now-empty remote runner (#35343) 2022-08-16 15:23:13 -04:00
ambient.d.ts test: drop now-empty remote runner (#35343) 2022-08-16 15:23:13 -04:00
api-app-spec.ts feat: add app.getSystemLocale() method (#35697) 2022-09-23 11:50:46 -07:00
api-auto-updater-spec.ts test: drop now-empty remote runner (#35343) 2022-08-16 15:23:13 -04:00
api-autoupdater-darwin-spec.ts test: drop now-empty remote runner (#35343) 2022-08-16 15:23:13 -04:00
api-browser-view-spec.ts refactor: BrowserView is owned by a BaseWindow (#35511) 2022-08-31 17:40:02 -07:00
api-browser-window-spec.ts test: remove redundant color diffing dependency (#33215) 2022-10-11 13:11:58 -04:00
api-clipboard-spec.ts test: drop now-empty remote runner (#35343) 2022-08-16 15:23:13 -04:00
api-content-tracing-spec.ts test: drop now-empty remote runner (#35343) 2022-08-16 15:23:13 -04:00
api-context-bridge-spec.ts feat: add exposeInIsolatedWorld(worldId, key, api) to contextBridge (#34974) 2022-09-21 13:17:10 -05:00
api-crash-reporter-spec.ts chore: bump chromium to 108.0.5355.0 (main) (#35900) 2022-10-17 10:22:24 -04:00
api-debugger-spec.ts test: drop now-empty remote runner (#35343) 2022-08-16 15:23:13 -04:00
api-desktop-capturer-spec.ts test: drop now-empty remote runner (#35343) 2022-08-16 15:23:13 -04:00
api-dialog-spec.ts test: drop now-empty remote runner (#35343) 2022-08-16 15:23:13 -04:00
api-global-shortcut-spec.ts test: drop now-empty remote runner (#35343) 2022-08-16 15:23:13 -04:00
api-in-app-purchase-spec.ts test: drop now-empty remote runner (#35343) 2022-08-16 15:23:13 -04:00
api-ipc-main-spec.ts test: drop now-empty remote runner (#35343) 2022-08-16 15:23:13 -04:00
api-ipc-renderer-spec.ts test: drop now-empty remote runner (#35343) 2022-08-16 15:23:13 -04:00
api-ipc-spec.ts test: drop now-empty remote runner (#35343) 2022-08-16 15:23:13 -04:00
api-media-handler-spec.ts test: move api-media-handler-spec from spec-main to spec (#35518) 2022-08-31 08:32:57 -07:00
api-menu-item-spec.ts test: drop now-empty remote runner (#35343) 2022-08-16 15:23:13 -04:00
api-menu-spec.ts test: drop now-empty remote runner (#35343) 2022-08-16 15:23:13 -04:00
api-native-image-spec.ts test: drop now-empty remote runner (#35343) 2022-08-16 15:23:13 -04:00
api-native-theme-spec.ts test: drop now-empty remote runner (#35343) 2022-08-16 15:23:13 -04:00
api-net-log-spec.ts test: drop now-empty remote runner (#35343) 2022-08-16 15:23:13 -04:00
api-net-spec.ts test: drop now-empty remote runner (#35343) 2022-08-16 15:23:13 -04:00
api-notification-dbus-spec.ts test: drop now-empty remote runner (#35343) 2022-08-16 15:23:13 -04:00
api-notification-spec.ts test: drop now-empty remote runner (#35343) 2022-08-16 15:23:13 -04:00
api-power-monitor-spec.ts test: re-enable power monitor tests on arm64 (#36015) 2022-10-13 10:09:09 -04:00
api-power-save-blocker-spec.ts test: drop now-empty remote runner (#35343) 2022-08-16 15:23:13 -04:00
api-process-spec.ts test: drop now-empty remote runner (#35343) 2022-08-16 15:23:13 -04:00
api-protocol-spec.ts fix: crash loading non-standard schemes in iframes (#35485) 2022-08-31 10:08:11 +02:00
api-safe-storage-spec.ts fix: set macOS crypto keychain name earlier (#34683) 2022-09-23 12:32:10 -07:00
api-screen-spec.ts test: drop now-empty remote runner (#35343) 2022-08-16 15:23:13 -04:00
api-service-workers-spec.ts test: drop now-empty remote runner (#35343) 2022-08-16 15:23:13 -04:00
api-session-spec.ts fix: session.getBlobData never resolves with blob sizes > 65536 (#35277) 2022-09-07 17:47:06 -04:00
api-shell-spec.ts test: drop now-empty remote runner (#35343) 2022-08-16 15:23:13 -04:00
api-subframe-spec.ts test: drop now-empty remote runner (#35343) 2022-08-16 15:23:13 -04:00
api-system-preferences-spec.ts test: drop now-empty remote runner (#35343) 2022-08-16 15:23:13 -04:00
api-touch-bar-spec.ts test: drop now-empty remote runner (#35343) 2022-08-16 15:23:13 -04:00
api-tray-spec.ts test: drop now-empty remote runner (#35343) 2022-08-16 15:23:13 -04:00
api-utility-process-spec.ts feat: UtilityProcess API (#34980) 2022-10-19 22:49:49 -07:00
api-view-spec.ts test: drop now-empty remote runner (#35343) 2022-08-16 15:23:13 -04:00
api-web-contents-spec.ts refactor: use views NonClientHitTest for draggable regions on mac (#35603) 2022-10-12 12:05:45 -04:00
api-web-contents-view-spec.ts test: drop now-empty remote runner (#35343) 2022-08-16 15:23:13 -04:00
api-web-frame-main-spec.ts feat: webFrameMain.origin (#35438) 2022-08-31 17:40:57 -07:00
api-web-frame-spec.ts test: drop now-empty remote runner (#35343) 2022-08-16 15:23:13 -04:00
api-web-request-spec.ts test: drop now-empty remote runner (#35343) 2022-08-16 15:23:13 -04:00
asar-spec.ts test: drop now-empty remote runner (#35343) 2022-08-16 15:23:13 -04:00
autofill-spec.ts test: drop now-empty remote runner (#35343) 2022-08-16 15:23:13 -04:00
chromium-spec.ts feat: support serialPort.forget() (#35310) 2022-10-18 11:22:32 +02:00
crash-spec.ts test: drop now-empty remote runner (#35343) 2022-08-16 15:23:13 -04:00
deprecate-spec.ts test: drop now-empty remote runner (#35343) 2022-08-16 15:23:13 -04:00
events-helpers.ts test: drop now-empty remote runner (#35343) 2022-08-16 15:23:13 -04:00
extensions-spec.ts test: drop now-empty remote runner (#35343) 2022-08-16 15:23:13 -04:00
get-files.ts test: drop now-empty remote runner (#35343) 2022-08-16 15:23:13 -04:00
guest-window-manager-spec.ts test: drop now-empty remote runner (#35343) 2022-08-16 15:23:13 -04:00
index.js test: drop now-empty remote runner (#35343) 2022-08-16 15:23:13 -04:00
internal-spec.ts test: drop now-empty remote runner (#35343) 2022-08-16 15:23:13 -04:00
logging-spec.ts test: drop now-empty remote runner (#35343) 2022-08-16 15:23:13 -04:00
modules-spec.ts test: add tests for valid electron module names (#35931) 2022-10-11 15:59:23 +09:00
node-spec.ts chore: remove WebKit leftovers after it was renamed to Blink (#35966) 2022-10-11 20:01:57 -04:00
package.json test: remove redundant color diffing dependency (#33215) 2022-10-11 13:11:58 -04:00
pipe-transport.ts test: drop now-empty remote runner (#35343) 2022-08-16 15:23:13 -04:00
release-notes-spec.ts test: drop now-empty remote runner (#35343) 2022-08-16 15:23:13 -04:00
screen-helpers.ts test: remove redundant color diffing dependency (#33215) 2022-10-11 13:11:58 -04:00
security-warnings-spec.ts test: drop now-empty remote runner (#35343) 2022-08-16 15:23:13 -04:00
spec-helpers.ts test: drop now-empty remote runner (#35343) 2022-08-16 15:23:13 -04:00
spellchecker-spec.ts chore: make macOS spellchecker fns formal no-ops (#35514) 2022-09-14 15:10:16 -07:00
types-spec.ts test: drop now-empty remote runner (#35343) 2022-08-16 15:23:13 -04:00
version-bump-spec.ts test: drop now-empty remote runner (#35343) 2022-08-16 15:23:13 -04:00
video-helpers.js test: drop now-empty remote runner (#35343) 2022-08-16 15:23:13 -04:00
visibility-state-spec.ts test: drop now-empty remote runner (#35343) 2022-08-16 15:23:13 -04:00
webview-spec.ts test: re-enable <webview> tag DOM events emits resize event (#36026) 2022-10-17 14:57:44 +09:00
window-helpers.ts test: drop now-empty remote runner (#35343) 2022-08-16 15:23:13 -04:00
yarn.lock test: remove redundant color diffing dependency (#33215) 2022-10-11 13:11:58 -04:00