This will go away once we update to bindgen 0.70 or greater. For now,
though, slap an `#[allow(dead_code)]` on it to get rid of the warning.
Differential Revision: https://phabricator.services.mozilla.com/D236239
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
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
without a rust-version somewhere, cargo thinks it can just bump
everything it can, and bumps the Cargo.lock version to 4 when vendoring
new crates, which doesn't work with our MSRV.
As far as experimentation goes, it doesn't seem we need rust-version set
in all our root crates.
Differential Revision: https://phabricator.services.mozilla.com/D233802
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
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
Messaging Layer Security (RFC 9420) rust module, prefs and FFI from Rust to C++.
This patch implements mls_gk which is a thin wrapper on the external mls-platform-api rust crate.
Differential Revision: https://phabricator.services.mozilla.com/D203680
Messaging Layer Security (RFC 9420) rust module, prefs and FFI from Rust to C++.
This patch implements mls_gk which is a thin wrapper on the external mls-platform-api rust crate.
Differential Revision: https://phabricator.services.mozilla.com/D203680
Messaging Layer Security (RFC 9420) rust module, prefs and FFI from Rust to C++.
This patch implements mls_gk which is a thin wrapper on the external mls-platform-api rust crate.
Differential Revision: https://phabricator.services.mozilla.com/D203680
Messaging Layer Security (RFC 9420) rust module, prefs and FFI from Rust to C++.
This patch implements mls_gk which is a thin wrapper on the external mls-platform-api rust crate.
Differential Revision: https://phabricator.services.mozilla.com/D203680
Messaging Layer Security (RFC 9420) rust module, prefs and FFI from Rust to C++.
This patch implements mls_gk which is a thin wrapper on the external mls-platform-api rust crate.
Differential Revision: https://phabricator.services.mozilla.com/D203680
Messaging Layer Security (RFC 9420) rust module, prefs and FFI from Rust to C++.
This patch implements mls_gk which is a thin wrapper on the external mls-platform-api rust crate.
Differential Revision: https://phabricator.services.mozilla.com/D203680
Messaging Layer Security (RFC 9420) rust module, prefs and FFI from Rust to C++.
This patch implements mls_gk which is a thin wrapper on the external mls-platform-api rust crate.
Differential Revision: https://phabricator.services.mozilla.com/D203680
There were trivial failures in some urlbar tests due to the weather suggestions
changes that are the reason for this vendor, plus some ingest metrics changes in
this revision:
7e71b6a672
Differential Revision: https://phabricator.services.mozilla.com/D227271