Robo
626895848e
fix: utilityProcess running user script after process.exit is called ( #47469 )
...
* fix: utilityProcess running user script after process.exit is called
* docs: update breaking changes
* chore: update spec
* chore: update spec/api-utility-process-spec.ts
Co-authored-by: David Sanders <dsanders11@ucsbalum.com>
* chore: remove interface bound checks
---------
Co-authored-by: Niklas Wenzel <dev@nikwen.de>
Co-authored-by: David Sanders <dsanders11@ucsbalum.com>
2025-06-18 04:36:22 +09:00
Robo
c964296ec3
feat: add support for --no-experimental-global-navigator ( #47370 )
...
chore: add support for --no-experimental-global-navigator
2025-06-09 14:57:27 +09:00
electron-roller[bot]
53fd879043
chore: bump chromium to 138.0.7190.0 (main) ( #47107 )
...
* chore: bump chromium in DEPS to 138.0.7180.0
* 6546797: Add a metric for the overall success of the "safe storage" item retrieval.
Refs https://chromium-review.googlesource.com/c/chromium/src/+/6546797
* 6548078: extensions: Fix TODO in ScriptInjectionTracker for desktop Android
Refs https://chromium-review.googlesource.com/c/chromium/src/+/6548078
* 6544950: Revert "FSA: Only normalize the hardcoded rules once during initialization"
Refs https://chromium-review.googlesource.com/c/chromium/src/+/6544950
* chore: bump chromium in DEPS to 138.0.7181.0
* chore: update patches
* fix: correctly clamp HSL shift values between 0 and 1
* chore: bump DEPS to 138.0.7183.0
* 6553142: Remove SelectFileDialogLinuxKde | https://chromium-review.googlesource.com/c/chromium/src/+/6553142
* chore: update patches
* chore: bump chromium in DEPS to 138.0.7184.0
* chore: bump chromium in DEPS to 138.0.7186.0
* chore: bump chromium in DEPS to 138.0.7190.0
* chore: update patches
* 6547778: Remove some superfluous //ui/gfx includes from //chrome headers | https://chromium-review.googlesource.com/c/chromium/src/+/6547778
* 6556022: Reland FSA: Only normalize the hardcoded rules once during initialization | https://chromium-review.googlesource.com/c/chromium/src/+/6556022
* fix: remove pdf_extension_util::AddAdditionalData
https://chromium-review.googlesource.com/c/chromium/src/+/4099130
This was removed 2 years ago in Chrome.
* fix: provide BrowserContext to pdf_extension_util::AddAdditionalData
https://chromium-review.googlesource.com/c/chromium/src/+/6558173
* fixup! 6556022: Reland FSA: Only normalize the hardcoded rules once during initialization | https://chromium-review.googlesource.com/c/chromium/src/+/6556022
* fix: pass in navigation throttle registry
https://chromium-review.googlesource.com/c/chromium/src/+/6536175
* fixup! 6556022: Reland "FSA: Only normalize the hardcoded rules once during initialization" | https://chromium-review.googlesource.com/c/chromium/src/+/6556022
This partially reverts commit 20d709dd15ba0ff332e24ee314149d642dc5d47c.
* 6545984: corner-shape: render dashed & dotted borders
Refs https://chromium-review.googlesource.com/c/chromium/src/+/6545984
* Update corner smoothing expected images
* Apply "future" revert commit to fix windows build
> Reason for revert: Multiple eng reporting that this is causing build failures due to too-long pathnames, with no immediate feasible workaround
This issue also affects our CI builds.
Problematic CL in current roll: 6494836: [webgl] Add stub WebGL[2]RenderingContextWebGPU | https://chromium-review.googlesource.com/c/chromium/src/+/6494836
"Future" revert CL: 6565622: Revert "[webgl] Add stub WebGL[2]RenderingContextWebGPU" | https://chromium-review.googlesource.com/c/chromium/src/+/6565622
This patch should automatically disappear when we roll the revert.
* 6533919: win: don't add WS_CAPTION style to popup windows
https://chromium-review.googlesource.com/c/chromium/src/+/6533919
This mirrors the change made earlier to the code ours is based on: 6374074: [headless] Provide headless aware window metrics on Windows | https://chromium-review.googlesource.com/c/chromium/src/+/6374074
---------
Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com>
Co-authored-by: David Sanders <dsanders11@ucsbalum.com>
Co-authored-by: Keeley Hammond <khammond@slack-corp.com>
Co-authored-by: Samuel Maddock <smaddock@slack-corp.com>
Co-authored-by: clavin <clavin@electronjs.org>
2025-06-03 11:19:20 -04:00
Calvin
08318dc05d
fix: corner smoothing with 0 radii ( #46751 )
2025-04-25 10:54:04 +02:00
Calvin
09135443a0
feat: Corner Smoothing CSS rule (Reland) ( #46278 )
...
* feat: Corner Smoothing CSS rule (Reland)
Reland of #45185
* Fix patch conflicts
* fixup! Fix patch conflicts
* Update expected image
The dashed border is subtly different. The new version is correct and the old one was incorrect.
2025-03-31 11:22:23 -05:00
Shelley Vohr
1d6cb348b4
fix: webContents.printToPDF()
with cross-process subframes ( #46218 )
...
fix: webContents.printToPDF() with cross-process subframes
2025-03-25 08:16:47 -05:00
Calvin
abaef13c0b
fix: Revert "feat: Corner Smoothing CSS rule" ( #46231 )
...
Revert "feat: Corner Smoothing CSS rule (#45185 )"
This reverts commit b75e802280
.
2025-03-24 20:36:49 +01:00
Calvin
b75e802280
feat: Corner Smoothing CSS rule ( #45185 )
...
* feat: Corner Smoothing
* Patch Blink to add CSS rule and Painting
* Add `system-ui` keyword
* Add `cornerSmoothingCSS` web preference
* Add tests
* Documentation
* fixup! Documentation
* fix: initialize smoothness value
* Use a 1.0 scale factor in tests
* Fix tests for CI
* Fix tests
* fixup! Merge branch 'main' into clavin/corner-smoothing
* Add code docs
* Document `system-ui` keyword values
* Address review comments
* fixup! Address review comments
* Address review comments
* Update patch to address upstream changes
The patch went from 694 lines to 505 lines, which is a 27.2% smaller!
* fixup! Update patch to address upstream changes
2025-03-24 11:46:12 -04:00
Charles Kerr
22262c14f1
test: fix timing issue in utilityProcess
test fixtures ( #45964 )
...
* fix: potential timing issue in utilityProcess test
* fix: potential timing issue in utilityProcess esm test
2025-03-11 17:41:42 +01:00
Sam Maddock
21ad7cdda5
test: service worker contextBridge leak ( #45852 )
...
* test: contextBridge prototype leak in service workers
* test: deep prototype checks
2025-03-01 09:56:03 +01:00
Charles Kerr
d6f4982522
fix: possible timing issue in utility-process spec ( #45690 )
...
This fixture has been calling process.exit() immediately after writing
to stdout and stderr, which the Node.js docs say is risky behavior:
> Calling process.exit() will force the process to exit as quickly as
> possible even if there are still asynchronous operations pending that
> have not yet completed fully, including I/O operations to
> process.stdout and process.stderr.
This fixture's been around for years without problems (AFAIK).
The writes are very small ('hello\n' and 'world') and finish quickly.
But recently I've been testing on a very slow CI machine. There, I see
this spec flaking when it expects stderr to be 'world' but it gets ''.
This PR changes the fixture to wait for stdout & stderr to flush
before calling process.exit().
2025-02-19 23:28:04 -06:00
Robo
137a552641
fix: support for v8.setHeapSnapshotNearHeapLimit api ( #45606 )
...
* fix: support for v8.setHeapSnapshotNearHeapLimit api
* docs: add support
2025-02-14 10:00:39 -06:00
Sam Maddock
26da3c5d6e
feat: service worker preload scripts for improved extensions support ( #44411 )
...
* feat: preload scripts for service workers
* feat: service worker IPC
* test: service worker preload scripts and ipc
2025-01-31 09:32:45 -05:00
Sam Maddock
a467d0684e
feat: ServiceWorkerMain ( #45232 )
...
* feat: ServiceWorkerMain
* refactor: disconnect remote
* handle version_info_ nullptr case
* initiate finish request when possible and enumerate errors
* explicit name for test method
* oops
* fix: wait for redundant version to stop before destroying
* docs: clarify when undefined is returned
* chore: remove extra semicolons
2025-01-24 08:33:44 -05:00
Felix Rieseberg
687a59b43b
feat: Add shared dictionary management APIs ( #44750 )
...
* Add bare-bones GetSharedDictionaryUsageInfo
* Add GetSharedDictionaryInfo()
* Improve API, use isolation keys
* Add documentation
* Update docs/api/session.md
Co-authored-by: John Kleinschmidt <kleinschmidtorama@gmail.com>
* Update shell/browser/api/electron_api_session.cc
Co-authored-by: Samuel Attard <samuel.r.attard@gmail.com>
* Add tests
* Implement feedback <3
* Improve tests
* chore: lint
* docs: add note about clearing cache in ses.clearData
---------
Co-authored-by: John Kleinschmidt <kleinschmidtorama@gmail.com>
Co-authored-by: Samuel Attard <samuel.r.attard@gmail.com>
Co-authored-by: alice <alice@makenotion.com>
2024-12-04 12:25:11 -05:00
Samuel Attard
e3d75b3087
build: also lint mjs files ( #44581 )
2024-11-06 18:46:09 -05:00
Sam Maddock
87bd665e41
feat: expose frame & move properties to console-message event object ( #43617 )
...
* feat: expose frame on console-message event
refactor: use property names similar to ServiceWorker's console-message event
refactor: don't use deprecated params in tests
doc: console-message breaking change
chore: add deprecation warning
docs: restore deprecated argument descriptions
* move console-message deprecations to v34
---------
Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org>
2024-10-18 16:07:06 -04:00
Samuel Attard
122685194a
build: add import/order eslint rule ( #44085 )
...
* build: add import/order eslint rule
* chore: run lint:js --fix
2024-10-02 19:10:44 -07:00
Robo
f68184a9f9
feat: add error event for utility process ( #43774 )
...
* feat: add error event for utility process
* chore: use public report api
* chore: fix lint
* doc: mark error event as experimental
---------
Co-authored-by: Shelley Vohr <shelley.vohr@gmail.com>
2024-09-27 10:17:06 +09:00
Samuel Attard
74af96da16
build: update some build dependencies ( #43882 )
...
* build: update some build dependencies
* build: fix eslint issues after updating
* build: disable ts check on busted js example
* build: update internal types for stricter event handling
* restore url.parse behavior
* fix typing issues
* sigh
* build: update easy deps
* build: skip woa engines check
2024-09-26 00:12:11 -07:00
dependabot[bot]
0d4d752c1b
build(deps): bump the npm_and_yarn group across 2 directories with 3 updates ( #43511 )
...
* build(deps): bump the npm_and_yarn group across 2 directories with 3 updates
Bumps the npm_and_yarn group with 1 update in the / directory: [braces](https://github.com/micromatch/braces ).
Bumps the npm_and_yarn group with 3 updates in the /spec directory: [braces](https://github.com/micromatch/braces ), [pdfjs-dist](https://github.com/mozilla/pdf.js ) and [ws](https://github.com/websockets/ws ).
Updates `braces` from 3.0.2 to 3.0.3
- [Changelog](https://github.com/micromatch/braces/blob/master/CHANGELOG.md )
- [Commits](https://github.com/micromatch/braces/compare/3.0.2...3.0.3 )
Updates `braces` from 3.0.2 to 3.0.3
- [Changelog](https://github.com/micromatch/braces/blob/master/CHANGELOG.md )
- [Commits](https://github.com/micromatch/braces/compare/3.0.2...3.0.3 )
Updates `pdfjs-dist` from 2.16.105 to 4.2.67
- [Release notes](https://github.com/mozilla/pdf.js/releases )
- [Commits](https://github.com/mozilla/pdf.js/compare/v2.16.105...v4.2.67 )
Updates `ws` from 7.5.9 to 7.5.10
- [Release notes](https://github.com/websockets/ws/releases )
- [Commits](https://github.com/websockets/ws/compare/7.5.9...7.5.10 )
---
updated-dependencies:
- dependency-name: braces
dependency-type: indirect
dependency-group: npm_and_yarn
- dependency-name: braces
dependency-type: indirect
dependency-group: npm_and_yarn
- dependency-name: pdfjs-dist
dependency-type: direct:development
dependency-group: npm_and_yarn
- dependency-name: ws
dependency-type: direct:development
dependency-group: npm_and_yarn
...
Signed-off-by: dependabot[bot] <support@github.com>
* chore: update api-web-contents-spec to us newer version of pdfjs-dist
* test: create fixture to read PDF files for verification
---------
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org>
2024-09-09 11:49:43 +02:00
Robo
9b166b3ed4
feat: support app#login event for utility process net requests ( #42631 )
...
* feat: support app#login event for utility process net requests
* chore: address review feedback
* GlobalRequestID: Avoid unwanted inlining and narrowing int conversions
Refs https://chromium-review.googlesource.com/c/chromium/src/+/5702737
2024-08-14 11:36:47 +09:00
George Xu
ba8ad4716b
feat: expose system preferences to utility process ( #42203 )
...
* chore: expose system preferences to utility process
* chore: add tests, doc changes and module-list update
* relative link
* use @
* fix test
* chore: disable linux test
* kick
* noop on windows utility process
2024-06-20 11:15:57 -04:00
Shelley Vohr
8e8ea3ee8b
fix: MessagePort closing unexpectedly with non-cloneable objects ( #42535 )
...
* fix: MessagePort closing unexpectedly with non-cloneable objects
* fix: handle serialization failure in parentPort
2024-06-19 11:27:07 +02:00
Calvin
3eb94b72ba
feat: Options parameter for Session.clearData
API ( #41355 )
...
* feat: Options parameter for `Session.clearData` API
* Consolidate & curate data type categories
* Update docs for better typing
* off-by-one typo
* refactor to use `std::shared_ptr` instead of `base::RefCounted`
* fix compile errors
* std::enable_shared_from_this didn't work 🤷
* Refine docs with defaults
2024-04-01 12:09:01 -04:00
Devraj Mehta
8c71e2adc9
feat: add net module to utility process ( #40017 )
...
* 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>
2024-01-04 16:20:37 -05:00
Cheng Zhao
dfce1a9eb4
fix: ignore all NODE_ envs from foreign parent in node process ( #40770 )
...
* fix: ignore all NODE_ envs from foreign parent
* fix: recognize ad-hoc signed binary
2024-01-04 16:34:08 +09:00
Cheng Zhao
cb0da6ff34
fix: prevent node mode to be used as script runner by other apps ( #40579 )
2023-12-06 11:23:54 +09:00
Samuel Attard
371e83a8d2
fix: support esm entrypoint to utility process ( #40047 )
2023-09-29 14:38:37 -07:00
Robo
bee5d94886
feat: support dns-result-order Node.js cli flag ( #39376 )
...
* feat: support dns-result-order Node.js cli flag
* chore: update docs
Co-authored-by: Erick Zhao <erick@hotmail.ca>
* chore: remove patch
---------
Co-authored-by: Erick Zhao <erick@hotmail.ca>
2023-08-15 12:19:45 +02:00
Milan Burda
c9bae5da8e
refactor: use optional catch binding ( #39232 )
2023-07-27 10:53:45 -04:00
Robo
34e7c3696a
feat: expose safestorage backend information on linux ( #38873 )
...
* feat: expose safestorage backend information on linux
* Remove gnome-keyring
Refs https://chromium-review.googlesource.com/c/chromium/src/+/4609704
2023-07-13 11:14:33 +02:00
Milan Burda
ef6569b7d3
chore: cleanup unusued variables + enable linting ( #38898 )
2023-06-26 02:51:54 -07:00
Milan Burda
d78f37ec8f
refactor: use node scheme imports in spec ( #38487 )
...
Co-authored-by: Milan Burda <miburda@microsoft.com>
2023-06-15 10:42:27 -04:00
Milan Burda
82af000a37
chore: cleanup eslint suppressions ( #38417 )
...
* chore: cleanup eslint suppressions
* address feedback
* revert script/lib/azput.js
* revert spec/fixtures/apps/remote-control/main.js
* address feedback
* revert typings/internal-ambient.d.ts
2023-05-25 10:09:17 +09:00
Robo
0240f6664e
fix: crash in utilityProcess when generating code from strings ( #38014 )
2023-04-20 09:27:02 +09:00
John Kleinschmidt
8f3ef39f1e
chore: update line endings on HTML files ( #37755 )
2023-03-29 15:02:13 -04:00
Shelley Vohr
829fb4f586
fix: don't double-log unhandled rejections ( #37464 )
2023-03-06 11:04:43 +01:00
Milan Burda
a9b6041d38
chore: remove unused files in spec/fixtures ( #37012 )
...
Co-authored-by: Milan Burda <miburda@microsoft.com>
2023-01-25 16:02:44 +01:00
Raymond Zhao
5fc3ed936e
feat: add app.getPreferredSystemLanguages() API ( #36035 )
...
* feat: add app.getSystemLanguage() API
* Change the API to getPreferredSystemLanguages
* Fix test
* Clarify docs and add Linux impl
* Remove USE_GLIB
* Don't add C to list
* Remove examples since there's a lot of edge cases
* Fix lint
* Add examples
* Fix compile error
* Apply PR feedback
* Update the example
2022-11-09 10:50:43 -05:00
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
Shelley Vohr
76afd8c028
test: more robust PDF specs ( #35979 )
2022-10-12 10:15:49 -04:00
Raymond Zhao
8a0b4fa338
feat: add app.getSystemLocale() method ( #35697 )
...
* feat: add app.getSystemLocale() method
* Update shell/browser/electron_browser_main_parts.cc
Co-authored-by: Charles Kerr <charles@charleskerr.com>
* Change methods to be const
* Apply PR feedback
* Fix mac compile
* Add missing scope
* Apply style changes
* Change note
* Add braces to get the comment indentation right
* Change to static
* Apply PR feedback
* Fix the documentation
* Remove extraneous file
Co-authored-by: Charles Kerr <charles@charleskerr.com>
2022-09-23 11:50:46 -07:00
Jeremy Rose
db7c92fd57
test: drop now-empty remote runner ( #35343 )
...
* test: drop the now-empty remote runner from CI
* move fixtures to spec-main
* remove remote runner
* fix stuff
* remove global-paths hack
* move ts-smoke to spec/
* fix test after merge
* rename spec-main to spec
* no need to ignore spec/node_modules twice
* simplify spec-runner a little
* no need to hash pj/yl twice
* undo lint change to verify-mksnapshot.py
* excessive ..
* update electron_woa_testing.yml
* don't search for test-results-remote.xml
it is never produced now
2022-08-16 15:23:13 -04:00
Aaron Meriwether
91f9436ad8
fix: app.relaunch loses args when execPath specified ( #35108 )
2022-08-08 10:12:06 +02:00
Keeley Hammond
e83c3ec744
test: add first-party-set chromium tests ( #34827 )
...
test: add first-part-set chromium feature tests
2022-07-07 15:14:53 -04:00
electron-roller[bot]
470396d6ac
chore: bump chromium to 104.0.5073.0 (main) ( #34272 )
2022-06-01 08:12:47 +02:00
Keeley Hammond
38c21b7aca
revert: add first-instance-ack event to the app.requestSingleInstanceLock()
flow ( #34297 )
...
fix: revert "feat: add first-instance-ack event to the `app.requestSingleInstanceLock()` flow"
2022-05-22 22:20:54 -07:00
Micha Hanselmann
78a3752ade
fix: create userData
on requestSingleInstanceLock() if needed ( #33559 )
...
* test: use custom userData folder for requestSingleInstanceLock()
* update test
* prefix test folder path
* fix: create userDataDir on requestSingleInstanceLock() if needed
* Trigger Build
2022-04-04 10:39:55 +09:00
Cheng Zhao
929fc8bea5
test: make test apps' name prefixed with electron-test- ( #33511 )
2022-03-30 13:17:34 -04:00