3638 Commits

Author SHA1 Message Date
Gabriele Svelto
57232af405 Bug 1620998 - Add logging to the crash helper r=afranchuk
Differential Revision: https://phabricator.services.mozilla.com/D234401
2025-02-10 09:17:48 +00:00
Gabriele Svelto
c1aedcc20f Bug 1620998 - Out-of-process crash generation for child processes r=afranchuk,geckoview-reviewers,glandium,browser-installer-reviewers,nalexander,owlish
This implements the crash helper service used to move child process crash
report generation out of the main process and into its own process. This is
implemented as a separate executable that is launched on startup by the main
process on the desktop platforms and as a service hosted by a separate process
on Android.

One limitation of the current code is that the crash helper process needs to
be running before we can start setting exception handlers in child processes.
This limitation is due to how Breakpad exception handlers register themselves
with the crash generator and prevents us from lazily starting the helper (or
restarting it on Android).

IPC with the crash helper is implemented using Unix sockets on Linux and macOS
with the former using sequential packets and the latter using stream sockets.
On Windows we use named pipes. In all cases the choice of IPC was dictated both
by the requirement to eventually talk directly to child processes from within
the sandbox, and to external processes in case of Windows as the Windows
Error Reporting exception handler must be able to reach out to the helper from
within a restricted context. These particular requirements are not used yet but
will be as we move more logic out of the main process logic.

Differential Revision: https://phabricator.services.mozilla.com/D231083
2025-02-10 09:17:47 +00:00
Gabriele Svelto
940a2dd79b Bug 1620998 - Break the dependency between the mozannotation_client crate and the nsstring crate, so that the latter can be used outside of libxul r=afranchuk
Differential Revision: https://phabricator.services.mozilla.com/D231800
2025-02-10 09:17:47 +00:00
Erich Gubler
1fe472b78c Bug 1943249 - build(rust): upgrade indexmap 2.2.6 → 2.5.0 r=supply-chain-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D237160
2025-02-08 18:26:29 +00:00
Stanca Serban
5f117af5bd Backed out changeset 33b07d5e29b4 (bug 1565033) for causing build bustages. CLOSED TREE 2025-02-06 20:37:52 +02:00
Brian Tsoi
3216c2bc87 Bug 1565033: Add memory testing to crash reporter client. r=afranchuk,fluent-reviewers,supply-chain-reviewers,cmartin,flod,gsvelto
Differential Revision: https://phabricator.services.mozilla.com/D231813
2025-02-06 15:49:11 +00:00
Mark Banner
97caba169b Bug 1946118 - Update vendored files, and add new files for the application-services search component. r=bdk
Differential Revision: https://phabricator.services.mozilla.com/D236888
2025-02-06 07:42:20 +00:00
Matthew Gregan
1de9451962 Bug 1946245 - update mp4parse to revision e64650a686e5c5732395cd059e17cfd3b1e5b63b. r=media-playback-reviewers,padenot
Differential Revision: https://phabricator.services.mozilla.com/D236620
2025-02-06 03:22:17 +00:00
Alexandru Marc
997997615d Backed out 2 changesets (bug 1946245) rust vendor linting failures CLOSED TREE
Backed out changeset c0a75335f321 (bug 1946245)
Backed out changeset 155afa16496b (bug 1946245)
2025-02-06 02:41:37 +02:00
alwu
c49e2d0546 Bug 1946245 - part1 : update mp4parse to revision e64650a686e5c5732395cd059e17cfd3b1e5b63b. r=media-playback-reviewers,padenot
Differential Revision: https://phabricator.services.mozilla.com/D236620
2025-02-05 23:28:44 +00:00
Cosmin Sabou
6abfd1bc3b Backed out 3 changesets (bug 1868032) for causing rust vendor linting failures.
Backed out changeset 49ab1afc6aa7 (bug 1868032)
Backed out changeset 80a9c594c271 (bug 1868032)
Backed out changeset 40633b3b011f (bug 1868032)
2025-02-06 00:32:50 +02:00
alwu
5880fb83a0 Bug 1868032 - part1 : update mp4parse to revision e64650a686e5c5732395cd059e17cfd3b1e5b63b. r=media-playback-reviewers,padenot
Differential Revision: https://phabricator.services.mozilla.com/D236620
2025-02-05 19:16:16 +00:00
Goloman Adrian
d8f3423dc5 Backed out 3 changesets (bug 1943149, bug 1945694) for causing android build bustages. CLOSED TREE
Backed out changeset 9a66091f110f (bug 1945694)
Backed out changeset c01b574ea9ec (bug 1945694)
Backed out changeset 0993363f6e3c (bug 1943149)
2025-02-05 07:25:20 +02:00
Erich Gubler
3557cfc4a6 Bug 1945694 - build(rust): upgrade cc 1.2.10 → 1.2.11 r=supply-chain-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D236649
2025-02-04 22:28:49 +00:00
Erich Gubler
835912881b Bug 1943149 - build(rust): upgrade cc 1.0.89 → 1.2.10
`cc` upstream breaks a few things that have been handled by prior
patches motivated specifically by this upgrade:

1. `cc::Build` now rejects unknown targets not baked in. This breaks
   `swgl`'s usage of the `SWGL` target. We migrated away from this
   behavior in D235480.
2. `cc::Build::is_like_msvc`'s underlying logic changed, and now does
   not return `true`. This is because of a regression in toolchain
   classification heuristics, and has been worked around in D236305.

Differential Revision: https://phabricator.services.mozilla.com/D236029
2025-02-04 22:28:48 +00:00
Goloman Adrian
f476c42ee8 Backed out changeset 68af412c331d (bug 1943149) for causing android build bustages. CLOSED TREE 2025-02-04 23:50:07 +02:00
Butkovits Atila
9868b151e8 Backed out 9 changesets (bug 1620998) for causing failures at basicWindowDotPrintTest. CLOSED TREE
Backed out changeset de1e828b253c (bug 1620998)
Backed out changeset ef91568228cc (bug 1620998)
Backed out changeset e0f97d7fe45c (bug 1620998)
Backed out changeset 7c45366aff86 (bug 1620998)
Backed out changeset c75348ac4b7f (bug 1620998)
Backed out changeset 0745243849c4 (bug 1620998)
Backed out changeset 56f508d896f8 (bug 1620998)
Backed out changeset 312a462ada77 (bug 1620998)
Backed out changeset fa59ccaa08b8 (bug 1620998)
2025-02-04 19:11:50 +02:00
Erich Gubler
d781a00c9b Bug 1943149 - build(rust): upgrade cc 1.0.89 → 1.2.10
`cc` upstream breaks a few things that have been handled by prior
patches motivated specifically by this upgrade:

1. `cc::Build` now rejects unknown targets not baked in. This breaks
   `swgl`'s usage of the `SWGL` target. We migrated away from this
   behavior in D235480.
2. `cc::Build::is_like_msvc`'s underlying logic changed, and now does
   not return `true`. This is because of a regression in toolchain
   classification heuristics, and has been worked around in D236305.

Differential Revision: https://phabricator.services.mozilla.com/D236029
2025-02-04 14:57:20 +00:00
Gabriele Svelto
648fede404 Bug 1620998 - Out-of-process crash generation for child processes r=afranchuk,geckoview-reviewers,glandium,browser-installer-reviewers,nalexander,owlish
This implements the crash helper service used to move child process crash
report generation out of the main process and into its own process. This is
implemented as a separate executable that is launched on startup by the main
process on the desktop platforms and as a service hosted by a separate process
on Android.

One limitation of the current code is that the crash helper process needs to
be running before we can start setting exception handlers in child processes.
This limitation is due to how Breakpad exception handlers register themselves
with the crash generator and prevents us from lazily starting the helper (or
restarting it on Android).

IPC with the crash helper is implemented using Unix sockets on Linux and macOS
with the former using sequential packets and the latter using stream sockets.
On Windows we use named pipes. In all cases the choice of IPC was dictated both
by the requirement to eventually talk directly to child processes from within
the sandbox, and to external processes in case of Windows as the Windows
Error Reporting exception handler must be able to reach out to the helper from
within a restricted context. These particular requirements are not used yet but
will be as we move more logic out of the main process logic.

Differential Revision: https://phabricator.services.mozilla.com/D231083
2025-02-04 14:37:02 +00:00
Gabriele Svelto
e71fc1e9dd Bug 1620998 - Break the dependency between the mozannotation_client crate and the nsstring crate, so that the latter can be used outside of libxul r=afranchuk
Differential Revision: https://phabricator.services.mozilla.com/D231800
2025-02-04 14:37:02 +00:00
Butkovits Atila
97942d0763 Backed out 9 changesets (bug 1620998) for causing bustages. CLOSED TREE
Backed out changeset cc1abb70a660 (bug 1620998)
Backed out changeset b7e67d55d83b (bug 1620998)
Backed out changeset dc2b27fce35f (bug 1620998)
Backed out changeset 4b2403fe71c0 (bug 1620998)
Backed out changeset e935faca4155 (bug 1620998)
Backed out changeset 18c68507ca1f (bug 1620998)
Backed out changeset 0d751b3fa172 (bug 1620998)
Backed out changeset 62a35ddaa958 (bug 1620998)
Backed out changeset bde29ceab1b2 (bug 1620998)
2025-02-04 14:21:32 +02:00
Gabriele Svelto
21fb9231d1 Bug 1620998 - Out-of-process crash generation for child processes r=afranchuk,geckoview-reviewers,glandium,browser-installer-reviewers,nalexander,owlish
This implements the crash helper service used to move child process crash
report generation out of the main process and into its own process. This is
implemented as a separate executable that is launched on startup by the main
process on the desktop platforms and as a service hosted by a separate process
on Android.

One limitation of the current code is that the crash helper process needs to
be running before we can start setting exception handlers in child processes.
This limitation is due to how Breakpad exception handlers register themselves
with the crash generator and prevents us from lazily starting the helper (or
restarting it on Android).

IPC with the crash helper is implemented using Unix sockets on Linux and macOS
with the former using sequential packets and the latter using stream sockets.
On Windows we use named pipes. In all cases the choice of IPC was dictated both
by the requirement to eventually talk directly to child processes from within
the sandbox, and to external processes in case of Windows as the Windows
Error Reporting exception handler must be able to reach out to the helper from
within a restricted context. These particular requirements are not used yet but
will be as we move more logic out of the main process logic.

Differential Revision: https://phabricator.services.mozilla.com/D231083
2025-02-04 11:24:18 +00:00
Gabriele Svelto
5349750f2a Bug 1620998 - Break the dependency between the mozannotation_client crate and the nsstring crate, so that the latter can be used outside of libxul r=afranchuk
Differential Revision: https://phabricator.services.mozilla.com/D231800
2025-02-04 11:24:17 +00:00
Jan-Erik Rediger
a7c967f3d0 Bug 1944884 - Land Glean v63.1.0 r=TravisLong,supply-chain-reviewers,mach-reviewers,ahal
Differential Revision: https://phabricator.services.mozilla.com/D236194
2025-02-04 10:25:32 +00:00
Anna
2504ff7b8e Bug 1938312 - IPCClientCerts: building in xul instead of separate library r=glandium,keeler,geckoview-reviewers,browser-installer-reviewers,m_kato,nalexander
Differential Revision: https://phabricator.services.mozilla.com/D232620
2025-02-03 09:40:15 +00:00
Cosmin Sabou
bed5ff7b19 Backed out changeset 5b3ba2adbb7e (bug 1944735) for causing base toolchains bustages on gecko/Cargo.lock. 2025-01-31 04:59:52 +02:00
Masayuki Nakano
d568858ca2 Bug 1944735 - Make PresShell stop using RefPtr<nsFrameSelection> if it's safe r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D236094
2025-01-30 23:10:17 +00:00
Goloman Adrian
bae3b38b18 Backed out changeset f3cca9b9f4b9 (bug 1942325) for causing xpcshell failures @est_close.js. CLOSED TREE 2025-01-30 21:28:48 +02:00
Max Inden
134a60e9fa Bug 1942325 - update neqo to v0.12.2 r=kershaw,necko-reviewers,supply-chain-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D234901
2025-01-30 09:16:28 +00:00
Erich Gubler
9a017ba28e Bug 1943149 - build(rust): upgrade jobserver 0.1.25 → 0.1.32 r=supply-chain-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D235481
2025-01-24 21:29:45 +00:00
teoxoy
af754ac852 Bug 1941540 - Update wgpu to revision aa7bec65b90028e4db6ec8def8589b52097d92f9. r=webgpu-reviewers,glandium,supply-chain-reviewers,ErichDonGubler,nical
Differential Revision: https://phabricator.services.mozilla.com/D234312
2025-01-20 16:09:05 +00:00
Erich Gubler
cd31d255cf Bug 1941540 - upgrade bitflags 2.6.0 → 2.7.0 r=supply-chain-reviewers,teoxoy
Co-Authored-By: Teodor Tanasoaia <ttanasoaia@mozilla.com>

Differential Revision: https://phabricator.services.mozilla.com/D234706
2025-01-20 16:09:05 +00:00
Ben Dean-Kawamura
25e192ccd7 Bug 1942391 - Vendor in app-services 25934715ecc08fc922c80797c637dea64ee742d1, r=adw
Differential Revision: https://phabricator.services.mozilla.com/D234778
2025-01-18 05:59:07 +00:00
Sandor Molnar
408ff54ac5 Backed out changeset 4de8a5fd0315 (bug 1939608) for causing build bustages. CLOSED TREE 2025-01-18 06:13:40 +02:00
Jeff Muizelaar
4da603b9f7 Bug 1939608 - Depend on sha-asm to get aarch64 code. r=keeler,supply-chain-reviewers
Bug 1931957 updated sha2 to 0.10.8 but to use builtin instructions on aarch64
with this version we still need sha-asm.

Differential Revision: https://phabricator.services.mozilla.com/D233060
2025-01-18 03:45:00 +00:00
Anna Weine
d010e93c00 Bug 1937808 - Export OSClientCerts in libxul instead of shared library r=keeler,glandium
Differential Revision: https://phabricator.services.mozilla.com/D230412
2025-01-15 19:46:29 +00:00
Mike Hommey
05055e2777 Bug 1940864 - Refresh rust workspace hack. r=firefox-build-system-reviewers,sergesanspaille
Notes:
- because minidump-analyzer is not a root crate, it doesn't need the
workspace hack.
- allocator-api2 was added in bug 1912019, we don't need to work around
its use in hashbrown anymore.

Differential Revision: https://phabricator.services.mozilla.com/D233788
2025-01-14 01:00:49 +00:00
Erich Gubler
6e2875ea7c Bug 1939787 - build(rust): migrate thiserror 1 → 2 r=glandium,webgpu-reviewers,supply-chain-reviewers,nical
Differential Revision: https://phabricator.services.mozilla.com/D233191
2025-01-10 22:29:57 +00:00
Erich Gubler
fc9ac9cdaf Bug 1939787 - build(webgpu): update WGPU to 5543961a71cc8e5399b696fae3f6aae82c019717 r=glandium,webgpu-reviewers,supply-chain-reviewers,jimb
This migration was non-trivial!

On the WebGPU side, a change in how load and store operations in render
attachments were represented meant that we needed to re-work FFI for
`RenderPassDepthStencilAttachment` and `RenderPassColorAttachment`, with
most of the effort going towards the former. These types, along with
`Option`, needed FFI-friendly replacements for `Option` and the related
types in `wgpu-core`.

There was also some housekeeping done to avoid duplicate dependencies:

* Create `thiserror` shim that downgrades v2 → v1. Otherwise, v2 would
  be brought in by the new WGPU. We can't go in the opposite direction
  yet, because `bitsclient` has code that breaks on upgrade. The next
  patch in this series addresses this, and reverses the direction of the
  shim.
* Also remove the now-unused shim adapting from `cfg_aliases` 0.1 to
  0.2.

Co-Authored-By: Jim Blandy <jimb@red-bean.com>

Differential Revision: https://phabricator.services.mozilla.com/D233192
2025-01-10 22:29:56 +00:00
Alexandru Marc
7bd67e126f Backed out 2 changesets (bug 1939787) for causing BR bustages @ rust.mk CLOSED TREE
Backed out changeset 8d3e2a8a98d3 (bug 1939787)
Backed out changeset d2074191b678 (bug 1939787)
2025-01-10 23:47:52 +02:00
Erich Gubler
303a20a350 Bug 1939787 - build(rust): migrate thiserror 1 → 2 r=glandium,webgpu-reviewers,supply-chain-reviewers,nical
Differential Revision: https://phabricator.services.mozilla.com/D233191
2025-01-10 20:15:31 +00:00
Erich Gubler
c7b29db5f0 Bug 1939787 - build(webgpu): update WGPU to 5543961a71cc8e5399b696fae3f6aae82c019717 r=glandium,webgpu-reviewers,supply-chain-reviewers,jimb
This migration was non-trivial!

On the WebGPU side, a change in how load and store operations in render
attachments were represented meant that we needed to re-work FFI for
`RenderPassDepthStencilAttachment` and `RenderPassColorAttachment`, with
most of the effort going towards the former. These types, along with
`Option`, needed FFI-friendly replacements for `Option` and the related
types in `wgpu-core`.

There was also some housekeeping done to avoid duplicate dependencies:

* Create `thiserror` shim that downgrades v2 → v1. Otherwise, v2 would
  be brought in by the new WGPU. We can't go in the opposite direction
  yet, because `bitsclient` has code that breaks on upgrade. The next
  patch in this series addresses this, and reverses the direction of the
  shim.
* Also remove the now-unused shim adapting from `cfg_aliases` 0.1 to
  0.2.

Differential Revision: https://phabricator.services.mozilla.com/D233192
2025-01-10 20:15:30 +00:00
Mike Hommey
2cc39f81bb Bug 1940184 - Apply objc upstream fix that silences a cargo warning as a side effect. r=emilio,supply-chain-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D233321
2025-01-07 23:56:01 +00:00
Erich Gubler
0906a00515 Bug 1939787 - build(rust): update serde 1.0.215 → 1.0.217 r=supply-chain-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D233190
2025-01-06 19:39:03 +00:00
Norisz Fay
6c24d01161 Backed out changeset 31ce1e9b688c (bug 1939787) for causing rust related BR bustage a=backout 2025-01-04 14:03:29 +02:00
Erich Gubler
d4fd595208 Bug 1939787 - build(rust): update serde 1.0.215 → 1.0.217 r=supply-chain-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D233190
2025-01-03 20:31:20 +00:00
Ben Dean-Kawamura
69ae7d9fef Bug 1938588 - Fixing external object support, r=markh
Added code to check if a pointer type is for an external type and if so,
use the correct namespace.

It doesn't feel great to me to iterate over all external types for this.
Also the `crate_name_to_namespace` function seems hacky.  I hope to fix
this soon, maybe once the UniFFI bindgen pipline changes are merged and
vendored in.

Refactored some of the test crates to use proc-macros, which made the
testing easier.

Differential Revision: https://phabricator.services.mozilla.com/D232770
2024-12-31 15:48:55 +00:00
Butkovits Atila
9f0b30f8cc Backed out changeset dabc5c0d3cde (bug 1938588) for causing bustages at Cargo.lock. CLOSED TREE 2024-12-31 17:30:56 +02:00
Ben Dean-Kawamura
3a18371bb7 Bug 1938588 - Fixing external object support, r=markh
Added code to check if a pointer type is for an external type and if so,
use the correct namespace.

It doesn't feel great to me to iterate over all external types for this.
Also the `crate_name_to_namespace` function seems hacky.  I hope to fix
this soon, maybe once the UniFFI bindgen pipline changes are merged and
vendored in.

Refactored some of the test crates to use proc-macros, which made the
testing easier.

Differential Revision: https://phabricator.services.mozilla.com/D232770
2024-12-31 15:07:53 +00:00
lougeniac64
9a886f3c69 Bug 1888472 - Refactored webext-storage sync logic with uniffied component API r=markh,extension-reviewers,sync-reviewers,robwu,lina
Differential Revision: https://phabricator.services.mozilla.com/D213094
2024-12-21 21:16:44 +00:00