Ecosyste.ms: OpenCollective

An open API service for software projects hosted on Open Collective.

github.com/electron/electron

:electron: Build cross-platform desktop apps with JavaScript, HTML, and CSS
https://github.com/electron/electron

build: update appveyor image to latest version (#41591)

Co-authored-by: electron-appveyor-updater[bot] <161660339+electron-appveyor-updater[bot]@users.n...

41b2102d10b46a71361df378593e9042118fefee authored 9 months ago by electron-appveyor-updater[bot] <161660339+electron-appveyor-updater[bot]@users.noreply.github.com>
fix: account for potentially swapped `FrameTreeNodeId` in `WebFrameMain` (#41538)

fix: account for potentially swapped FrameTreeNodeId in WebFrameMain

Co-authored-by: John Kle...

1bfd3e0631a00a4940d7ce89bebb515ad7e519ca authored 9 months ago by Shelley Vohr <[email protected]>
build: update appveyor image to latest version (#41579)

Co-authored-by: electron-appveyor-updater[bot] <161660339+electron-appveyor-updater[bot]@users.n...

122a2fd177823e2bf26d8218992648d0483c1b1f authored 9 months ago by electron-appveyor-updater[bot] <161660339+electron-appveyor-updater[bot]@users.noreply.github.com>
fix: improve caption button appearance on Windows 11 (#41561)

https://chromium-review.googlesource.com/c/chromium/src/+/4428171

1840d7b7eecb7ae59de4f81de1813c643fdfa6b4 authored 9 months ago by Shelley Vohr <[email protected]>
test: disable transparency tests on macOS arm64 (#41580)

6cb84ddbfba5eecab1c66f6d990896124f38b1dc authored 9 months ago by Shelley Vohr <[email protected]>
build: update @electron/lint-roller to 1.11.1 (#41522)

Co-authored-by: John Kleinschmidt <[email protected]>

02020fbb6387bd072ede38634a3b6f3f3f225526 authored 9 months ago by David Sanders <[email protected]>
chore: bump chromium to 124.0.6353.0 (main) (#41566)

* chore: bump chromium in DEPS to 124.0.6353.0

* chore: update patches

* 5365462: Add miss...

26752d3a067d45ffa8536b78d4d93c9ec57fe88c authored 9 months ago by electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com>
test: re-enable `app.getGPUInfo()` specs on Linux (#41568)

test: re-enable getGPUInfo() specs on Linux

80f34ecd2cca9b1ae1f31d6ce1b9d20afef4cc91 authored 9 months ago by Shelley Vohr <[email protected]>
docs: `nativeImage` api cleanup (#41519)

* docs: `nativeImage` api cleanup

* Update docs/api/native-image.md

* Update native-image....

2f133f5e280800a0836acb60d81aa81ae3b43fce authored 9 months ago by Erick Zhao <[email protected]>
chore: bump chromium to 124.0.6351.0 (main) (#41514)

* chore: bump chromium in DEPS to 124.0.6339.0

* chore: update patches

* chore: bump chrom...

150c2bcef990e90b0fff232cdb15ad6fb59c2b63 authored 9 months ago by electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com>
chore: remove 8088 from codespaces port forwarding (#41557)

1252f92431add122d7ab5f0947f7cf2f634c9fb8 authored 10 months ago by Shelley Vohr <[email protected]>
build: update appveyor image to latest version (#41523)

Co-authored-by: electron-appveyor-updater[bot] <161660339+electron-appveyor-updater[bot]@users.n...

c0f9d0eeedec1b3243e6f5a16b78a78085879364 authored 10 months ago by electron-appveyor-updater[bot] <161660339+electron-appveyor-updater[bot]@users.noreply.github.com>
docs: Update code signing documentation (#41535)

4ec4efd3e56f8ab61c884c1d1ed1a35cd992e5fd authored 10 months ago by Felix Rieseberg <[email protected]>
test: disable CapturableScreen tests on Windows x64 (#41543)

* test: disable CapturableScreen tests on Windows x64

* test: disable js-execute-iframe" case...

fb1b5ca4ce9d79192df307b641fb2adb74b82da5 authored 10 months ago by John Kleinschmidt <[email protected]>
fix: `chrome://process-internals` failing to load (#41476)

fix: chrome://process-internals failing to load

f826506218fc72da8b1792221284a247b09cf800 authored 10 months ago by Shelley Vohr <[email protected]>
chore: add missing `gin::Wrappable` `GetTypeName` overrides (#41512)

chore: add missing gin::Wrappable GetTypeName overrides

62331f5ac14954367e1e762b9f206c81ebe35109 authored 10 months ago by Shelley Vohr <[email protected]>
fix: `user-did-{resign|become}-active` events on macOS (#41506)

fix: user-did-{resign|become}-active events on macOS

a7d664e3a3d06a4d3f059cb51a375ee3155a23d6 authored 10 months ago by Shelley Vohr <[email protected]>
chore: fix fs overrides for asar (#41507)

fix: fs overrides for asar

62a897b75b68ce97ef241bdb0e63ab4ed6a8d8a7 authored 10 months ago by Shelley Vohr <[email protected]>
docs: correct release timeline inaccuracy (#41510)

docs: correct timeline inaccuracy

cc7e80c4e3b54b118ba8086fdb9a8fcb0c3612c0 authored 10 months ago by Shelley Vohr <[email protected]>
chore: bump chromium to 124.0.6331.0 (main) (#41474)

* chore: bump chromium in DEPS to 124.0.6329.0

* chore: update patches

* 5319449: Activate...

9f673c859d5021eb9778a84160bbb5b4de04906c authored 10 months ago by electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com>
refactor: remove InspectableWebContentsViewMac in favor of the Views version (#41326)

e67ab9a93dadccecff30de50ab4555191c30b6c4 authored 10 months ago by Jeremy Rose <[email protected]>
chore: update src_preload_function_for_environment.patch (#41500)

814ba71dc149c320f524b38201f57cff9d3fb7fb authored 10 months ago by Cheng Zhao <[email protected]>
build: update appveyor image to latest version (#41483)

Co-authored-by: electron-appveyor-updater[bot] <161660339+electron-appveyor-updater[bot]@users.n...

cc9e21c260932e5272b7786e90501e764441dabd authored 10 months ago by David Sanders <[email protected]>
chore: set wg-releases as CODEOWNER for AppVeyor configs (#41485)

9565b7de740d125e10ad331072dd3eed7c7f1ce0 authored 10 months ago by David Sanders <[email protected]>
fix: webContents.print options should be optional (#41467)

d5912fd05a1f998b347aa97a7b80951a453d1f4c authored 10 months ago by Shelley Vohr <[email protected]>
feat: Allow creation of new window to be customizable. (#41432)

a0dad83ded4661eb873cc62b75bb0f406ad7fecb authored 10 months ago by Krzysztof Halwa <[email protected]>
chore: bump chromium to 124.0.6323.0 (main) (#41412)

* chore: bump chromium in DEPS to 124.0.6315.0

* chore: update patches

* 5279678: Stream A...

04df5ce492f61fd67912fc8bc0cd6a064618f231 authored 10 months ago by electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com>
ci: verified commits for appveyor update PR (#41470)

13e601e35c43ad640fbe2bfea57e9a054f1dca4c authored 10 months ago by David Sanders <[email protected]>
test: disable flaky macOS panel test & refactor screen capture testing (#41441)

* Disable flaky test

* Add helper for storing test artifacts

* Refactor screen capture tes...

a6133e85d19d5f87ba12ec42bdbeca7061762aee authored 10 months ago by Calvin <[email protected]>
ci: add logging to uploading to GitHub releases (#41453)

267c0796dd779aa443d7d17f2eae23972bd7d083 authored 10 months ago by John Kleinschmidt <[email protected]>
build: print error and retry on symstore fail (#41452)

b468b5e6e883a39ceaba6417ed8be1ece6ee281f authored 10 months ago by Shelley Vohr <[email protected]>
chore: add engflow-reclient-configs to gitignore (#41447)

d89ad1106f3dd45dc8c2ed9e0de9336ee7706348 authored 10 months ago by Shelley Vohr <[email protected]>
chore: remove deprecated `inputFieldType` (#41239)

chore: remove deprecated inputFieldType

38850112200a8fa5e17c7c393b409bb33a747f9a authored 10 months ago by Milan Burda <[email protected]>
chore: fix import from patches.py in script/lib/git.py (#41430)

3394ee71f008d4655dde3acf883d6c89b994b218 authored 10 months ago by Milan Burda <[email protected]>
feat: `Session#clearData` API (#40983)

* WIP: Session.clearBrowsingData API

* impl API method

* clean up

* tidy types and comm...

12d7a8ff6605cca218e3e0a507de9a8f530c2abd authored 10 months ago by Calvin <[email protected]>
refactor: prefer using `base::NoDestructor` to `base::{Singleton,LazyInstance}` (#41400)

refactor: prefer using base::NoDestructor to base::{Singleton,LazyInstance}

e95673b0529efd165804a7c7c6c2fa8de982dc24 authored 10 months ago by Shelley Vohr <[email protected]>
feat: add support for configuring system network context proxies (#41335)

* feat: add support for configuring system network context proxies

* chore: add specs

* ch...

26131b23b81a661fb65d37437b9a1f63b4408fae authored 10 months ago by Robo <[email protected]>
build: don't modify `deps/v8/tools` paths (#41386)

build: don't modify deps/v8/tools paths

136762b45ff371d1dcfbc4c8ec730aa395ea5da2 authored 10 months ago by Shelley Vohr <[email protected]>
build: update appveyor image to latest version-e-123.0.6312.5 (#41408)

build: update appveyor image to latest version

Co-authored-by: jkleinsc <[email protected]...

d73a937375dae309673fdb33606a970c93e44d57 authored 10 months ago by github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
fix: use ScreenCaptureKit exclusively on macOS 14.4 and higher (#41397)

This fixes a nasty warning / permission dialog that pops up to end-users
when consuming legacy ...

ddd93529d59002288699c5fc16be4843265e7f89 authored 10 months ago by Samuel Attard <[email protected]>
chore: bump chromium to 123.0.6312.5 (main) (#41337)

* chore: bump chromium in DEPS to 123.0.6300.2

* chore: bump chromium in DEPS to 123.0.6301.2...

e72f4f7f267fffb95aa62841c662fe2746775871 authored 10 months ago by electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com>
docs: update breaking changes language (#41387)

f350cce64f2d1f0a11de0c89b64dbf26ecb0b269 authored 10 months ago by Keeley Hammond <[email protected]>
build: bump NMV to 123 for Electron 30 (#41370)

94e643ab33ea0ab6b96c7964e65de965ee8e3d97 authored 10 months ago by Keeley Hammond <[email protected]>
chore: bump node to v20.11.1 (main) (#41353)

* chore: bump node in DEPS to v20.11.1

* chore: update patches

* crypto: disable PKCS#1 pa...

e87746ff0fa41754d0bfdcc5d734098ce8f03e92 authored 10 months ago by electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com>
fix: check for draggable regions outside of main frame (#41377)

136d7e7e6ab1d62ceb1c390ceccf7ddf0225b912 authored 10 months ago by Keeley Hammond <[email protected]>
perf: omit unnecessary work from `ElectronRenderFrameObserver::ShouldNotifyClient()` (#41347)

perf: omit unnecessary work from ElectronRenderFrameObserver::ShouldNotifyClient()

- (perf) G...

7cd23a4900642c5f2eb83c1fd5af42da20e05102 authored 10 months ago by Charles Kerr <[email protected]>
fix: revert to legacyMainResolve in JavaScript for asar compatibility (#41367)

995f3dc120281a5e364ff1624ea77ee58ce89947 authored 10 months ago by Keeley Hammond <[email protected]>
ci: fix helperPath calls in ci configs (#41363)

* ci: fix helperPath calls in ci configs

Co-authored-by: codebytere <[email protected]...

d0b4489b7d3fcbf789dea215d4e93a0e2ea4a894 authored 10 months ago by Keeley Hammond <[email protected]>
chore: update breaking-changes.md to reflect WebContentsView revert (#41361)

ca0920872d2f8f180fecfbb321ecdb77a7f0e677 authored 10 months ago by Michaela Laurencin <[email protected]>
fix: properly stream `uploadData` in `protocol.handle()` (#41052)

* refactor(protocol): extract file stream factory

Increase readability by moving the file str...

80906c0adb1e1b8103dcdfb8340c4b660b330c25 authored 10 months ago by Henrik Gaßmann <[email protected]>
chore: remove unused anonymous namespace methods (#41333)

d4413a8e53590b43d622ad9dce4259be89acbb8c authored 10 months ago by Shelley Vohr <[email protected]>
docs: update release schedule for E30 (#41339)

035681202675a2543b2ed47e28fbdf8c9feffbd6 authored 10 months ago by Calvin <[email protected]>
build: update appveyor image to latest version - e-123.0.6296.0. (#41350)

build: update appveyor image to latest version

Co-authored-by: jkleinsc <[email protected]...

6acacf061c2fa1de0a47a1034355cf03d62b5892 authored 10 months ago by github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
fix: skip the first two invalid updates when SCK is enabled (#41340)

7d6a754d474c278e13d025f752baa7da04b86065 authored 10 months ago by Samuel Attard <[email protected]>
chore: bump chromium to 123.0.6296.0 (main) (#41204)

* chore: bump chromium in DEPS to 123.0.6273.0

* chore: update patches

* chore: bump chrom...

0dad99561b4232418dcf7ae48877bab35d633927 authored 10 months ago by electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com>
ci: update GitHub actions workflow dependencies (#41321)

7e241eef7c2e77edd882c25ccc6c38d1f29367ea authored 10 months ago by David Sanders <[email protected]>
fix: Ignore `-webkit-app-region: drag;` when window is in full screen mode. (#41307)

Co-authored-by: Mikhail Leliakin <[email protected]>

79147e4dd825aa26ea0242470c2bad47c3998fe3 authored 10 months ago by Mikhail Leliakin <[email protected]>
fix: add capability to use ScreenCaptureKit for thumbnail generation (#41328)

This aligns us with Chromiums flags / capabilities in regards to using SCK for
everything. Curr...

32920af4b78213b4479f20796e989d4cc56ce9db authored 10 months ago by Samuel Attard <[email protected]>
fix: work around `unarchivedObjectOfClass` requiring `secureCoding` (#41319)

0218af9af0e4a8896e01b4272013b46d43fb4d6c authored 10 months ago by Shelley Vohr <[email protected]>
feat: allow custom refs for patch import & export (#41306)

* feat: allow custom refs for patch import & export

feat: add Patch-Dir metainfo, a sibling t...

6a616ab70cfbc1483308af022ae6459e8e3fa7c8 authored 10 months ago by Charles Kerr <[email protected]>
revert: add `BrowserWindow.isOccluded()`

This reverts commit 768ece6b54f78e65efbea2c3fd39eea30e48332b.

5f785f213edf90a6f8054242d032d5fd29f81ada authored 10 months ago by Shelley Vohr <[email protected]>
fix: destroy `NodeService` message pipe last (#41277)

refactor: destroy NodeService message pipe last

4ded4d16a83b3fb714df5b60003812456097f298 authored 11 months ago by Shelley Vohr <[email protected]>
fix: crash on macOS non-programmatic close (#41264)

c894645ac68af14183d617570a2d51336a2578ad authored 11 months ago by Shelley Vohr <[email protected]>
fix: `GetCursorScreenpoint()` sometimes wrongly returns `(0,0)` (#41275)

9655ae7d6ae9de4b467d197957bb3c7a152e3ddd authored 11 months ago by Charles Kerr <[email protected]>
refactor: inline simple getters, pt . 2 (#41254)

* refactor: inline AutofillPopup::line_count()

refactor: inline AutofillPopup::value_at()

...

cee51785e1ed057fa5c78b2fc7bb1e8a5b91053d authored 11 months ago by Charles Kerr <[email protected]>
build: export matching patches (#41174)

* build: make patches/config.json an array of objects

This file was previously an object of p...

b253d52faf932d9613ad149fdaecabaf9c1c0218 authored 11 months ago by Charles Kerr <[email protected]>
build: update appveyor image to latest version (#41206)

Co-authored-by: jkleinsc <[email protected]>

4d060afc98dd2eef076dd415f2a03ea642a5baa7 authored 11 months ago by github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
docs: note EXIF data unsupported in `nativeImage` (#41261)

* docs: note EXIF data unsupported in nativeImage

* Update docs/api/native-image.md

Co-aut...

8eb580e79a55b0b96c6177584ee4ef8a8222b57d authored 11 months ago by Shelley Vohr <[email protected]>
fix: add language to html in quick-start.md (#41225)

Add language to html in quick-start.md

We must define language in HTML for different reasons ...

42087e306c31044d22cd39b48ffb76487c315978 authored 11 months ago by Bogdan Cerovac <[email protected]>
docs: fix docs/api/base-window.md (#41240)

* docs: fix docs/api/base-window.md

* Update docs/api/base-window.md

Co-authored-by: David...

2ea569e0d271bdd1b4e5b629133aec703ad8a3b2 authored 11 months ago by Milan Burda <[email protected]>
docs: Properly document runAsNode utility process option (#41255)

* docs: Properly document runAsNode utility process option

* Update docs/api/utility-process....

4367c5ad9e44ec6f4464cdd7a08a0e447203d21b authored 11 months ago by Felix Rieseberg <[email protected]>
build: add flag for setting vendor version (#41247)

92c5ff30a711abcff0ad2076d0949bd8f057adaa authored 11 months ago by Cheng Zhao <[email protected]>
refactor: KeyWeakMap cleanup (#41242)

* refactor: make KeyWeakMap::KeyObject private

* perf: avoid redundant map lookup

* refact...

5686f88bd298ea682d4eae576a6f84cc7844bd22 authored 11 months ago by Charles Kerr <[email protected]>
feat: add `BrowserWindow.isOccluded()` (#38982)

feat: add BrowserWindow.isOccluded()

768ece6b54f78e65efbea2c3fd39eea30e48332b authored 11 months ago by Shelley Vohr <[email protected]>
refactor: remove deprecated BrowserContext::ResourceContext (#41221)

* refactor: remove ResourceContext* arg from GetNSSCertDatabaseForResourceContext()

* refacto...

08236f7a9e9d664513e2b76b54b9bea003101e5d authored 11 months ago by Charles Kerr <[email protected]>
fix: `original-fs` import replacement (#41209)

fix: original-fs import replacement

5dfa9e33172d994c2f2a98a00312134cbc703d6b authored 11 months ago by Shelley Vohr <[email protected]>
fix: crash problem with message_port close event (#41201)

When worker_thread shutdown, it will destory context and close
message_port. In this case, it s...

fb888a6989dacfd6be3fe1a2b1cfffd0de81246a authored 11 months ago by wujinli <[email protected]>
fix: make sure invalid URL loads promises are fulfilled. (#41194)

* fix: make sure invalid URL loads promisses are fulfilled.

* fixup! fix: make sure invalid U...

398ca2a0190d6c86d908a71c887260bf13ef5e2b authored 11 months ago by marekharanczyk <[email protected]>
refactor: type-safe module imports / requires (#41192)

dac29f99492fda71dc79e1ee8874bee36a3b2ae6 authored 11 months ago by Milan Burda <[email protected]>
docs: add note about fuses to our security documentation (#41210)

* Add note about fuses to our security documentation

Additionally, add the missing #18 to the...

3ec04fd4492c889c070ed3d5c95b914a577c8864 authored 11 months ago by Kilian Valkhof <[email protected]>
refactor: replace use of deprecated `base::JSONWriter::WriteJson()` (#41215)

* refactor: use base::WriteJson() in ListValueToNSArray()

refactor: use base::WriteJson() in ...

2ebaebb603620f18ba231bda684f9af392c76923 authored 11 months ago by Charles Kerr <[email protected]>
fix: typescript error for optional dependency (#41202)

9bfa16ad7f118e755d340779958bcb5f2a9950b2 authored 11 months ago by Sam Maddock <[email protected]>
chore: bump chromium to 123.0.6272.0 (main) (#41130)

* chore: bump chromium in DEPS to 123.0.6265.0

* chore: bump chromium in DEPS to 123.0.6266.0...

bccb7b572a76a0c7f99dbdcfdb6fa76feca36da9 authored 11 months ago by electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com>
fix: move nut-js to optional spec deps (#41199)

12870cafb7cca63c0a97a0f158f9eae6015a3dc0 authored 11 months ago by Sam Maddock <[email protected]>
fix: `select-usb-device` should respect `filters` option (#41166)

fix: select-usb-device should respect filters option

e4d5dc138fd909de288fde82ee5d03106fe092f2 authored 11 months ago by Shelley Vohr <[email protected]>
fix: validate `printToPDF` `margins` against `pageSize` (#41157)

fix: validate margins against pageSize

6df34436171f5b0fad1fd343de08621ce3a8b669 authored 11 months ago by Shelley Vohr <[email protected]>
test: draggable region allows moving window (#41127)

* chore: add nut.js

* test: dragging window updates position

* instantly move mouse positi...

85bebfb18073d623f1963f8c5a6d9b24295d691d authored 11 months ago by Sam Maddock <[email protected]>
refactor: type-safe imports in lib/node/init.ts (#41148)

fb88375ab4d2161dbf7e958a2a94c7c6d97dc84c authored 11 months ago by Milan Burda <[email protected]>
fix: avoid potential `CHECK()` failure in `DictionaryToRect()` (#41160)

refactor: use gfx::Rect::Contains() instead of reinventing the wheel

perf: use base::Value::F...

0e0a0bf724064400c117ba68e761818fd5b2ad30 authored 11 months ago by Charles Kerr <[email protected]>
refactor: simplify code by using base::Value::EnsureList() (#41162)

08615b2d4e6498cb0a110bd4d80d76066f85d860 authored 11 months ago by Charles Kerr <[email protected]>
fix: `shouldPrintBackgrounds` -> `printBackground` in `webContents.printToPDF` (#41161)

fix: shouldPrintBackgrounds -> printBackground

90c7d6c82383c237977d33ae3da5eeafa93aefc3 authored 11 months ago by Shelley Vohr <[email protected]>
docs: `document printToPDF` `generateDocumentOutline` option (#41156)

* doc: document printToPDF generateDocumentOutline option

* doc: ready event to whenReady

6786fde576276b8915a4e486ff0c35a3bc1036c0 authored 11 months ago by Shelley Vohr <[email protected]>
fix: ensure `WebContents` before checking draggable region (#41154)

fix: ensure WebContents before checking draggable region

fc917985ae8165e0cbcc11b3bebbcc995b1bd271 authored 11 months ago by Shelley Vohr <[email protected]>
refactor: inline simple getters (#41125)

ffec3127d55a31c6735b4364fec5250dbbc5ac64 authored 11 months ago by Charles Kerr <[email protected]>
build: update appveyor image to latest version (#41134)

Co-authored-by: jkleinsc <[email protected]>

4e19321ba8591f963a9b41b14cb87995b8b9a2a8 authored 11 months ago by github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
chore: add extra links to issue template chooser (#41135)

679a6589cd6660e0386d622373b48e2743497684 authored 11 months ago by David Sanders <[email protected]>
chore: fix outdated osk patch on main branch (#41152)

de76fc01ec9891d5918424982512d4648a725027 authored 11 months ago by Cheng Zhao <[email protected]>
fix: update osk patch to fix more corner cases (#41131)

This is a follow up to https://github.com/electron/electron/pull/35921
that, it fixes more corn...

2571396584b698ab30181e62cd444e29ac51dbee authored 11 months ago by Cheng Zhao <[email protected]>
fix: potential `async_hooks` crash in `NotifyWindowRestore` on Windows (#40576)

* fix: potential async_hooks crash in NotifyWindowRestore on Windows

* fix: don't use Callbac...

8104c7908a2e281cdb2e380dd2ec49c3ead7fa3e authored 11 months ago by Shelley Vohr <[email protected]>
fix: apply module search paths restriction on worker and child process (#41118)

db2bf1a0d1be6b81ca2d1a6b693b78753d3ba6ea authored 11 months ago by Cheng Zhao <[email protected]>