Charles Kerr
792037b338
fix: raw_ptr destruction order in NodeBindings ( #39762 )
2023-09-07 18:25:17 -05:00
Samuel Attard
ac031bf8de
feat: I guess it's esm ( #37535 )
...
* fix: allow ESM loads from within ASAR files
* fix: ensure that ESM entry points finish loading before app ready
* fix: allow loading ESM entrypoints via default_app
* fix: allow ESM loading for renderer preloads
* docs: document current known limitations of esm
* chore: add patches to support blending esm handlers
* refactor: use SetDefersLoading instead of JoinAppCode in renderers
Blink has it's own event loop so pumping the uv loop in the renderer is not enough, luckily in blink we can suspend the loading of the frame while we do additional work.
* chore: add patch to expose SetDefersLoading
* fix: use fileURLToPath instead of pathname
* chore: update per PR feedback
* fix: fs.exists/existsSync should never throw
* fix: convert path to file url before importing
* fix: oops
* fix: oops
* Update docs/tutorial/esm-limitations.md
Co-authored-by: Jeremy Rose <jeremya@chromium.org>
* windows...
* windows...
* chore: update patches
* spec: fix tests and document empty body edge case
* Apply suggestions from code review
Co-authored-by: Daniel Scalzi <d_scalzi@yahoo.com>
Co-authored-by: Jeremy Rose <jeremya@chromium.org>
* spec: add tests for esm
* spec: windows
* chore: update per PR feedback
* chore: update patches
* Update shell/common/node_bindings.h
Co-authored-by: Jeremy Rose <jeremya@chromium.org>
* chore: update patches
* rebase
* use cjs loader by default for preload scripts
* chore: fix lint
* chore: update patches
* chore: update patches
* chore: fix patches
* build: debug depshash
* ?
* Revert "build: debug depshash"
This reverts commit 0de82523fb93f475226356b37418ce4b69acdcdf.
* chore: allow electron as builtin protocol in esm loader
* Revert "Revert "build: debug depshash""
This reverts commit ff86b1243ca6d05c9b3b38e0a6d717fb380343a4.
* chore: fix esm doc
* chore: update node patches
---------
Co-authored-by: Jeremy Rose <jeremya@chromium.org>
Co-authored-by: electron-patch-conflict-fixer[bot] <83340002+electron-patch-conflict-fixer[bot]@users.noreply.github.com>
Co-authored-by: PatchUp <73610968+patchup[bot]@users.noreply.github.com>
Co-authored-by: Daniel Scalzi <d_scalzi@yahoo.com>
2023-08-30 17:38:07 -07:00
Charles Kerr
35969939a1
refactor: node::Environment self-cleanup ( #39604 )
...
* chore: savepoint
* chore: turn raw_ptr tests back off
2023-08-23 09:56:16 -04:00
Shelley Vohr
22429e2112
refactor: clean up Node.js cli arg parsing ( #39465 )
...
* refactor: clean up Node.js arg parsing
* chore: feedback from review
2023-08-15 14:49:21 -04:00
Shelley Vohr
8874306dc0
fix: window.open
causing occasional Node.js crashes ( #38754 )
...
* fix: window.open causing occasional Node.js crashes
* chore: always free isolate data
* chore: clear pending ticks in worker thread
* fix: UAF crash when creating WebWorkerObserver
---------
Co-authored-by: deepak1556 <hop2deep@gmail.com>
2023-07-18 10:41:50 +02:00
John Kleinschmidt
3dbc0a365f
chore: enable check raw ptr fields ( #38167 )
2023-05-11 16:07:39 -04:00
Shelley Vohr
6395898a79
refactor: use associated v8::Context
for event setup ( #37355 )
...
refactor: use associated v8::Context for event setup
2023-02-22 10:03:46 +01:00
Milan Burda
35a9e67dba
chore: rename built-in modules to bindings to match naming update in node ( #37182 )
2023-02-09 10:31:38 +09:00
Shelley Vohr
75d2caf451
chore: upgrade to Node.js v18 ( #35999 )
...
* chore: update to Node.js v18
* child_process: improve argument validation
https://github.com/nodejs/node/pull/41305
* bootstrap: support configure-time user-land snapshot
https://github.com/nodejs/node/pull/42466
* chore: update GN patch
* src: disambiguate terms used to refer to builtins and addons
https://github.com/nodejs/node/pull/44135
* src: use a typed array internally for process._exiting
https://github.com/nodejs/node/pull/43883
* chore: lib/internal/bootstrap -> lib/internal/process
* src: disambiguate terms used to refer to builtins and addons
https://github.com/nodejs/node/pull/44135
* chore: remove redudant browserGlobals patch
* chore: update BoringSSL patch
* src: allow embedder-provided PageAllocator in NodePlatform
https://github.com/nodejs/node/pull/38362
* chore: fixup Node.js crypto tests
- https://github.com/nodejs/node/pull/44171
- https://github.com/nodejs/node/pull/41600
* lib: add Promise methods to avoid-prototype-pollution lint rule
https://github.com/nodejs/node/pull/43849
* deps: update V8 to 10.1
https://github.com/nodejs/node/pull/42657
* src: add kNoBrowserGlobals flag for Environment
https://github.com/nodejs/node/pull/40532
* chore: consolidate asar initialization patches
* deps: update V8 to 10.1
https://github.com/nodejs/node/pull/42657
* deps: update V8 to 9.8
https://github.com/nodejs/node/pull/41610
* src,crypto: remove AllocatedBuffers from crypto_spkac
https://github.com/nodejs/node/pull/40752
* build: enable V8's shared read-only heap
https://github.com/nodejs/node/pull/42809
* src: fix ssize_t error from nghttp2.h
https://github.com/nodejs/node/pull/44393
* chore: fixup ESM patch
* chore: fixup patch indices
* src: merge NativeModuleEnv into NativeModuleLoader
https://github.com/nodejs/node/pull/43824
* [API] Pass OOMDetails to OOMErrorCallback
https://chromium-review.googlesource.com/c/v8/v8/+/3647827
* src: iwyu in cleanup_queue.cc
* src: return Maybe from a couple of functions
https://github.com/nodejs/node/pull/39603
* src: clean up embedder API
https://github.com/nodejs/node/pull/35897
* src: refactor DH groups to delete crypto_groups.h
https://github.com/nodejs/node/pull/43896
* deps,src: use SIMD for normal base64 encoding
https://github.com/nodejs/node/pull/39775
* chore: remove deleted source file
* chore: update patches
* chore: remove deleted source file
* lib: add fetch
https://github.com/nodejs/node/pull/41749
* chore: remove nonexistent node specs
* test: split report OOM tests
https://github.com/nodejs/node/pull/44389
* src: trace fs async api
https://github.com/nodejs/node/pull/44057
* http: trace http request / response
https://github.com/nodejs/node/pull/44102
* test: split test-crypto-dh.js
https://github.com/nodejs/node/pull/40451
* crypto: introduce X509Certificate API
https://github.com/nodejs/node/pull/36804
* src: split property helpers from node::Environment
https://github.com/nodejs/node/pull/44056
* https://github.com/nodejs/node/pull/38905
bootstrap: implement run-time user-land snapshots via --build-snapshot and --snapshot-blob
* lib,src: implement WebAssembly Web API
https://github.com/nodejs/node/pull/42701
* fixup! deps,src: use SIMD for normal base64 encoding
* fixup! src: refactor DH groups to delete crypto_groups.h
* chore: fixup base64 GN file
* fix: check that node::InitializeContext() returns true
* chore: delete _noBrowserGlobals usage
* chore: disable fetch in renderer procceses
* dns: default to verbatim=true in dns.lookup()
https://github.com/nodejs/node/pull/39987
Co-authored-by: PatchUp <73610968+patchup[bot]@users.noreply.github.com>
2022-11-10 22:31:20 +01: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
Cheng Zhao
c119b1ebef
chore: remove redundant code in node integration ( #33500 )
2022-03-29 20:09:42 -07:00
Robo
4cc2ed842e
fix: iocp integration when process is reused ( #33207 )
2022-03-21 16:42:22 +09:00
electron-roller[bot]
28ada6ea8b
chore: bump chromium to 100.0.4857.0 (main) ( #32419 )
...
* chore: bump chromium in DEPS to 99.0.4819.0
* chore: update patches
* chore: bump chromium in DEPS to 99.0.4824.0
* chore: update patches
* chore: bump chromium in DEPS to 99.0.4827.0
* chore: update patches
* 3352511: PiP: Add inkdrop and pointer cursor to PiP window buttons
https://chromium-review.googlesource.com/c/chromium/src/+/3352511
* 3309164: webhid: Show FIDO devices in the chooser if allowed
https://chromium-review.googlesource.com/c/chromium/src/+/3309164
* 3297868: hid: Add experimental HIDDevice.forget()
https://chromium-review.googlesource.com/c/chromium/src/+/3297868
* 3362491: [Extensions] Move i18n API to //extensions
https://chromium-review.googlesource.com/c/chromium/src/+/3362491
* MCC Refactor step0: Allow embedders to register associated_interface binders with RenderFrameHostImpl::associated_registry_.
https://chromium-review.googlesource.com/c/chromium/src/+/3281481
* 3352616: [Gtk] Remove libgtk from the link-line
https://chromium-review.googlesource.com/c/chromium/src/+/3352616
* 3249211: Clear-Site-Data support for partitioned cookies
https://chromium-review.googlesource.com/c/chromium/src/+/3249211
* [Extensions][COIL] Use [allow|block]list in //extensions/common
https://chromium-review.googlesource.com/c/chromium/src/+/3372668
* Begin ScopedUserPrefUpdate migration to modern base::Value
https://chromium-review.googlesource.com/c/chromium/src/+/3376154
* [Code Health] Refactor PrefService GetDict + GetList to use base::Value
https://chromium-review.googlesource.com/c/chromium/src/+/3343526
* 3354997: [CodeHealth] Remove deprecated SetDictionary method
https://chromium-review.googlesource.com/c/chromium/src/+/3354997
* 3287323: Add LacrosPrefStore for lacros settings
https://chromium-review.googlesource.com/c/chromium/src/+/3287323
* 3365916: [PA] Clean up remaining lazy commit code
https://chromium-review.googlesource.com/c/chromium/src/+/3365916
* [MPArch] Target the external protocol error at the responsible frame.
https://chromium-review.googlesource.com/c/chromium/src/+/3011560
* Pass origin to RegisterNonNetworkSubresourceURLLoaderFactories
https://chromium-review.googlesource.com/c/chromium/src/+/3350608
* Linux: Send OSCrypt raw encryption key to the Network Service
https://chromium-review.googlesource.com/c/chromium/src/+/3320484
* [PlzServiceWorker] Remove remaining references to PlzServiceWorker.
https://chromium-review.googlesource.com/c/chromium/src/+/3359441
* chore: fixup for lint
* 3327621: Fix tablet mode detection for Win 11.
https://chromium-review.googlesource.com/c/chromium/src/+/3327621
* 3342428: ax_mac: move AXTextMarker conversion utils under ui umbrella
https://chromium-review.googlesource.com/c/chromium/src/+/3342428
* 3353974: Mac: Use base::Feature for overlay features
https://chromium-review.googlesource.com/c/chromium/src/+/3353974
* chore: bump chromium in DEPS to 99.0.4828.0
* chore: update patches
* chore: bump chromium in DEPS to 99.0.4837.0
* chore: update patches
* chore: update patches
* 3379142: Drop FALLTHROUGH macro
Ref: https://chromium-review.googlesource.com/c/chromium/src/+/3379142
* 3381749: C++17: Allow use of std::map::try_emplace and std::map::insert_or_assign
Ref: https://chromium-review.googlesource.com/c/chromium/src/+/3381749
* chore: bump chromium in DEPS to 99.0.4839.0
* chore: update patches
* chore: bump chromium in DEPS to 99.0.4840.0
* chore: bump chromium in DEPS to 99.0.4844.0
* 3395881: [api] Deprecate Local<v8::Context> v8::Object::CreationContext()
Ref: https://chromium-review.googlesource.com/c/v8/v8/+/3395881
* chore: update patches
* chore: bump chromium in DEPS to 100.0.4845.0
* chore: update patches
* chore: bump chromium in DEPS to 100.0.4847.0
* chore: update patches
* chore: bump chromium in DEPS to 100.0.4849.0
* chore: update patches
* chore: bump chromium in DEPS to 100.0.4851.0
* chore: bump chromium in DEPS to 100.0.4853.0
* update patches
* chore: update patches
* update patches
* 3383599: Fonts Access: Remove prototype that uses a font picker.
https://chromium-review.googlesource.com/c/chromium/src/+/3383599
* 3404768: Remove ALLOW_UNUSED macros
https://chromium-review.googlesource.com/c/chromium/src/+/3404768
* 3374762: Remove ignore_result.h
https://chromium-review.googlesource.com/c/chromium/src/+/3374762
* 3399305: [unseasoned-pdf] Apply proper frame offsets for touch selections
https://chromium-review.googlesource.com/c/chromium/src/+/3399305
* 3402210: [Extensions] Don't trigger unload event for already unloaded extension
https://chromium-review.googlesource.com/c/chromium/src/+/3402210
* 3410912: Combine URLLoaderClient OnReceiveResponse and OnStartLoadingResponseBody.
https://chromium-review.googlesource.com/c/chromium/src/+/3410912
* 3370428: Make the AuthSchemes policy support dynamic refresh
https://chromium-review.googlesource.com/c/chromium/src/+/3370428
* 3407603: Finish ScopedUserPrefUpdate migration to modern base::Value
https://chromium-review.googlesource.com/c/chromium/src/+/3407603
* 3378352: ozone/x11: move code from //ui/p/x11 to //ui/ozone/p/x11
https://chromium-review.googlesource.com/c/chromium/src/+/3378352
* 3370810: Delete chrome/service, AKA the Cloud Print service process.
https://chromium-review.googlesource.com/c/chromium/src/+/3370810
* chore: bump chromium in DEPS to 100.0.4855.0
* chore: update patches
* fixup! 3370810: Delete chrome/service, AKA the Cloud Print service process.
* revert 3348007 to fix windows build
* 3318572: [Code health] Fix gn check errors in //extensions/browser:*
https://chromium-review.googlesource.com/c/chromium/src/+/3318572
* fix printing.patch
* fix iwyu issue
* 3408515: win: Make ShorcutOperation an enum class and modernize names
https://chromium-review.googlesource.com/c/chromium/src/+/3408515
* 3388333: [UIA] Remove dead code accessibility_misc_utils.h/cc
https://chromium-review.googlesource.com/c/chromium/src/+/3388333
* fix windows build? i hope
* patch gn visibility of //ui/ozone/platform/x11
* missing include base/logging.h
* use BUILDFLAG for USE_NSS_CERTS
https://chromium-review.googlesource.com/c/chromium/src/+/3379123
* defined(OS_*) ==> BUILDFLAG(IS_*)
https://bugs.chromium.org/p/chromium/issues/detail?id=1234043
* fixup! 3404768: Remove ALLOW_UNUSED macros
* another attempt to fix windows build
* temporarily disable the custom scheme service worker test
https://github.com/electron/electron/issues/32664
* fix loading mv3 extensions
not sure what cl broke this unfort.
* fixup! 3404768: Remove ALLOW_UNUSED macros
* patch nan
https://chromium-review.googlesource.com/c/v8/v8/+/3395880
* fix node test
* fix nullptr in FindPdfFrame
* patch perfetto to fix build issue on win-ia32
bc44c3c753
* fix build for linux-x64-testing-no-run-as-node
* fix patch
* skip <webview>.capturePage() test
https://github.com/electron/electron/issues/32705
* test: fix failing tests of focus/blur events of WebContents (#32711 )
* inherit stdio from app module test child processes
this prevents them from timing out due to full stdout buffers
* test to see if we can get better logs on windows ci
* try again for appveyor log things
* skip contentTracing tests on ia32
* ci: disable gpu compositing
* drop applied patch
* fix merge fail
* Revert "ci: disable gpu compositing"
This reverts commit 0344129fcb19ea3e87e06c1110d751f22eba3fec.
Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com>
Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org>
Co-authored-by: PatchUp <73610968+patchup[bot]@users.noreply.github.com>
Co-authored-by: John Kleinschmidt <jkleinsc@github.com>
Co-authored-by: VerteDinde <khammond@slack-corp.com>
Co-authored-by: VerteDinde <vertedinde@electronjs.org>
Co-authored-by: Jeremy Rose <jeremya@chromium.org>
Co-authored-by: Jeremy Rose <nornagon@nornagon.net>
Co-authored-by: Cheng Zhao <zcbenz@gmail.com>
Co-authored-by: deepak1556 <hop2deep@gmail.com>
2022-02-09 18:58:52 -08:00
Milan Burda
c4ea33d1bf
chore: add ELECTRON_ prefix to C++ include guards ( #31925 )
2021-11-22 16:34:31 +09:00
Milan Burda
65a980c673
refactor: replace deprecated DISALLOW_COPY_AND_ASSIGN ( #31633 )
2021-11-03 20:41:45 +09:00
David Sanders
f6531166ae
chore: clean up forward declarations ( #29904 )
2021-07-02 09:51:37 +09:00
Shelley Vohr
665ac6f9c8
fix: libuv hang on Windows ( #28175 )
2021-03-22 13:11:03 -07:00
Shelley Vohr
642d6fca91
fix: libuv hang when nodeIntegrationInSubframes enabled ( #27582 )
2021-02-16 19:42:28 -08:00
Milan Burda
ddf3ef0a5f
refactor: use C++11 class member variable initialization ( #27477 )
2021-01-26 12:16:21 -06:00
Milan Burda
1c99a9b425
refactor: Chromium code style for enum classes ( #26165 )
2020-10-27 10:51:45 -07:00
Charles Kerr
70e3aa0182
refactor: add a wrapper for wrangling uv handles. ( #25332 )
...
* refactor: add a wrapper for wrangling uv handles.
Part 1 of a fix for #25248 , #22069 .
Place the uv_asyncs owned by NodeBindings, ElectronBindings inside a new
UvHandle wrapper class which manages uv_handles' need for their closed()
callback to be invoked before the handles' memory can be freed.
* chore: make lint happy
* refactor: use DCHECK_EQ() instead of DCHECK()
* refactor: fix oops
2020-09-14 09:53:50 +09:00
Shelley Vohr
6cfbee9f34
fix: uv_walk crash on web worker close ( #24436 )
...
* fix: uv_walk crash on web worker close
* Use DCHECK_EQ
2020-07-08 11:00:43 -07:00
shelley vohr
6a564af580
refactor: use Node.js isolate setup in node mode ( #23213 )
2020-04-28 09:10:27 -07:00
Sorah Fukumori
6ab317cc83
style: use build/include_directory for NOLINT ( #23266 )
...
build/include linter was splitted to build/include_directory at
depot_tools upstream.
https://crrev.com/c/2159690
https://crbug.com/1073191
2020-04-24 12:57:41 -07:00
Shelley Vohr
79270e30a6
fix: don't run environment bootstrapper ( #22342 )
2020-02-25 16:46:08 +00:00
Shelley Vohr
b194d5d0e2
chore: fix IsolateData handling ( #20918 )
2019-11-02 15:14:11 -07:00
Samuel Attard
6fc648cd25
fix: bootstrap the node environment after we setup the InspectorAgent ( #19317 )
2019-07-18 16:54:23 -07:00
Milan Burda
b32bee5d84
refactor: implement GetResourcesPath using MainApplicationBundlePath on Mac ( #19135 )
2019-07-09 12:56:40 +03:00
Samuel Attard
34c4c8d508
refactor: rename the atom namespace to electron
2019-06-19 17:33:28 -07:00
Samuel Attard
56930338e8
chore: fix linting after shell rename
2019-06-19 17:33:28 -07:00
Samuel Attard
d7f07e8a80
refactor: rename the atom directory to shell
2019-06-19 17:33:28 -07:00