Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: add net module to utility process #40890

Conversation

trop[bot]
Copy link
Contributor

@trop trop bot commented Jan 4, 2024

Backport of #40017

See that PR for details.

Notes: Added net module to utility process.

* chore: initial prototype of net api from utility process

* chore: update url loader to work on both browser and utility processes

* chore: add net files to utility process bundle

* chore: re-add app ready check but only on main process

* chore: replace browser thread dcheck's with sequence checker

* refactor: move url loader from browser to common

* refactor: move net-client-request.ts from browser to common

* docs: add utility process to net api docs

* refactor: move net module app ready check to browser only

* refactor: switch import from main to common after moving to common

* test: add basic net module test for utility process

* refactor: switch browser pid with utility pid

* refactor: move electron_api_net from browser to common

* chore: add fetch to utility net module

* chore: add isOnline and online to utility net module

* refactor: move net spec helpers into helper file

* refactor: break apart net module tests

Adds two additional net module test files: `api-net-session-spec.ts` for
tests that depend on a session being available (aka depend on running on
the main process) and `api-net-custom-protocols-spec.ts` for custom
protocol tests. This enables running `api-net-spec.ts` in the utility
process.

* test: add utility process mocha runner to run net module tests

* docs: add utility process to net module classes

* refactor: update imports in lib/utility to use electron/utility

* chore: check browser context before using in main process

Since the browser context supplied to the SimpleURLLoaderWrapper can now
be null for use in the UtilityProcess, adding a null check for the main
process before use to get a more sensible error if something goes wrong.

Co-authored-by: Cheng Zhao <github@zcbenz.com>

* chore: remove test debugging

* chore: remove unnecessary header include

* docs: add utility process net module limitations

* test: run net module tests in utility process individually

* refactor: clean up prior utility process net tests

* chore: add resolveHost to utility process net module

* chore: replace resolve host dcheck with sequence checker

* test: add net module tests for net.resolveHost

* docs: remove utility process limitation for resolveHost

---------

Co-authored-by: deepak1556 <hop2deep@gmail.com>
Co-authored-by: Cheng Zhao <github@zcbenz.com>

Co-authored-by: Devraj Mehta <devm33@github.com>
@trop trop bot requested a review from a team as a code owner January 4, 2024 21:20
@trop trop bot mentioned this pull request Jan 4, 2024
11 tasks
@trop trop bot added 29-x-y backport This is a backport PR backport/requested 🗳 semver/minor backwards-compatible functionality labels Jan 4, 2024
@ckerr ckerr merged commit 5728d3b into 29-x-y Jan 8, 2024
22 checks passed
@ckerr ckerr deleted the trop/29-x-y-bp-feat-add-net-module-to-utility-process-1704403249788 branch January 8, 2024 21:39
Copy link

release-clerk bot commented Jan 8, 2024

Release Notes Persisted

Added net module to utility process.

@deepak1556
Copy link
Member

@VerteDinde change the backport label based on the approval, correct me if I am wrong.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
29-x-y backport/approved ✅ backport This is a backport PR semver/minor backwards-compatible functionality
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants