3638 Commits

Author SHA1 Message Date
Erich Gubler
cd9c43ad68 Bug 1956123 - build(webgpu): update WGPU to fe6d2e5af09e8c8ad56c969f2157a3d4238cebc7c55f0a517728c38f7b200f81 r=webgpu-reviewers,supply-chain-reviewers,nical
Notable WebGPU CTS changes:

- Demotions from tier 2 to tier 3:
	- `webgpu:shader,execution,expression,unary,{i32,u32}_conversion:f32:*` started regressing on Windows.
- Promotions to tier 2 from tier 3:
	- Across all platforms:
		- `webgpu:shader,execution,expression,call,builtin,cross:f32:*`
		- `webgpu:shader,execution,expression,unary,i32_conversion:abstract_float:*`
		- `webgpu:shader,execution,expression,unary,u32_conversion:abstract_float:*`
		- `webgpu:shader,execution,limits:nesting_depth_braces:*`
		- `webgpu:shader,validation,expression,call,builtin,value_constructor:vector_copy:*`
		- `webgpu:shader,validation,expression,call,builtin,value_constructor:vector_elementwise:*`
		- `webgpu:shader,validation,expression,call,builtin,value_constructor:vector_mixed:*`
	- `webgpu:shader,validation,expression,call,builtin,value_constructor:scalar_zero_value:*` was promoted on Linux and Windows, but stays in macOS on account of failing `f16` functionality. My guess is that these failures are also present on the other platforms, but we don't see the because `shader-f16` is not aviailable on our other CI platforms yet.
	- From macOS, completing the set of all platforms passing:
		- `f16` functionality, which, again, was likely not visible on our other CI platforms before:
			- `webgpu:shader,execution,expression,call,builtin,cross:f16:*`
			- `webgpu:shader,validation,decl,override:type:*`
	- `webgpu:api,validation,capability_checks,limits,maxUniformBufferBindingSize:createBindGroup,at_over:*`
	  was promoted on Windows.

Differential Revision: https://phabricator.services.mozilla.com/D243593
2025-04-01 02:13:55 +00:00
Cosmin Sabou
e3d0bc89ab Backed out 9 changesets (bug 1620998) for causing build bustages. CLOSED TREE
Backed out changeset 72781375abd5 (bug 1620998)
Backed out changeset 30edb461ed99 (bug 1620998)
Backed out changeset a027ff2de570 (bug 1620998)
Backed out changeset 821e4224085a (bug 1620998)
Backed out changeset e90f6557d883 (bug 1620998)
Backed out changeset 47e7a1a2796e (bug 1620998)
Backed out changeset dbf8543d39d4 (bug 1620998)
Backed out changeset e72d5596ac91 (bug 1620998)
Backed out changeset b351cb3d0b54 (bug 1620998)
2025-04-01 01:34:43 +03:00
Gabriele Svelto
639a945013 Bug 1620998 - Add logging to the crash helper r=afranchuk
Differential Revision: https://phabricator.services.mozilla.com/D234401
2025-03-31 21:23:15 +00:00
Gabriele Svelto
c544442459 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.

The crash helper process is started when the first exception handler is set
on desktop platforms and before loading libxul on Android. In both cases
starting this process happens asynchronously so that neither the main process
nor child processes have to wait for it to come up. If a crash happens before
the crash helper has started, the crashed process will wait for it to fully
come up and then proceed with regular crash generation.

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-03-31 21:23:14 +00:00
Gabriele Svelto
0acc6c4a5f 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-03-31 21:23:14 +00:00
Erich Gubler
cee0dabc27 Bug 1956123 - build(rust): shim-upgrade unicode-width 0.1.10 → 0.2.0 r=glandium,supply-chain-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D243188
2025-03-29 11:40:39 +00:00
Dana Keeler
be6f87065f Bug 1947513 - register osclientcerts thread with the profiler r=jschanck
Differential Revision: https://phabricator.services.mozilla.com/D242226
2025-03-28 20:40:12 +00:00
Alexandru Marc
7bee8ec457 Backed out 7 changesets (bug 1950665, bug 1956897, bug 1956123, bug 1953191) for causing fenix btime failures CLOSED TREE
Backed out changeset 22f47c90fd5d (bug 1956123)
Backed out changeset 6522ae70b658 (bug 1956897)
Backed out changeset 806db3f9c36c (bug 1950665)
Backed out changeset bf72ab72dfa6 (bug 1953191)
Backed out changeset d229188b7203 (bug 1953191)
Backed out changeset d73eaaafd097 (bug 1953191)
Backed out changeset 592d875cb61b (bug 1950665)
2025-03-28 19:28:52 +02:00
Erich Gubler
7c9eef1a62 Bug 1956123 - build(rust): shim-upgrade unicode-width 0.1.10 → 0.2.0 r=glandium,supply-chain-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D243188
2025-03-28 10:09:52 +00:00
Jan-Erik Rediger
f22657c0e3 Bug 1953191 - Vendor Rust and Python changes of the previous commits r=chutten,supply-chain-reviewers,mach-reviewers,ahal
Split out, because the upgrades are split into multiple commits, but we
require a single vendoring to avoid duplicated packages.

Differential Revision: https://phabricator.services.mozilla.com/D241959
2025-03-27 20:33:10 +00:00
Cosmin Sabou
ca05bec2fb Backed out 7 changesets (bug 1956132, bug 1956378, bug 1950665, bug 1953191) for causing LateWriteObserver crashes.
Backed out changeset 38ae4256b2ad (bug 1956132)
Backed out changeset cc9d570bc0d1 (bug 1956378)
Backed out changeset 85142db17376 (bug 1950665)
Backed out changeset 251fd670f26e (bug 1953191)
Backed out changeset f79d2c98afbc (bug 1953191)
Backed out changeset 7d91be694ac1 (bug 1953191)
Backed out changeset cb2b3aee545c (bug 1950665)
2025-03-27 00:53:58 +02:00
Jan-Erik Rediger
a53cf29d62 Bug 1953191 - Vendor Rust and Python changes of the previous commits r=chutten,supply-chain-reviewers,mach-reviewers,ahal
Split out, because the upgrades are split into multiple commits, but we
require a single vendoring to avoid duplicated packages.

Differential Revision: https://phabricator.services.mozilla.com/D241959
2025-03-26 17:12:07 +00:00
Henrik Skupin
dbae90f077 Bug 1955903 - [rust-webdriver] Release version 0.52.1. r=webdriver-reviewers,jgraham
Differential Revision: https://phabricator.services.mozilla.com/D243003
2025-03-26 10:43:13 +00:00
Lars Eggert
e758073f64 Bug 1953732 - Upgrade h2 crate to 0.3.26 r=supply-chain-reviewers,mxinden
See https://rustsec.org/advisories/RUSTSEC-2024-0332

Differential Revision: https://phabricator.services.mozilla.com/D241365
2025-03-24 14:09:23 +00:00
Erich Gubler
d89428603c Bug 1955085 - build(webgpu): update WGPU to c6286791febc64cf8ef054b5356c2669327ef51c r=webgpu-reviewers,supply-chain-reviewers,nical
WRT WebGPU CTS, we have some interesting changes:

- Promotions from tier 3 to tier 2:
	- `webgpu:shader,execution,expression,call,builtin,textureStore:out_of_bounds:*`
	- All of `webgpu:shader,execution,expression,binary,ai_arithmetic:*` on Windows and Linux.
	- Some of `webgpu:shader,execution,expression,binary,bitwise:*` on Windows and Linux:
		- `…:bitwise_and:*`
		- `…:bitwise_exclusive_or:*`
		- `…:bitwise_or:*`
	- `webgpu:shader,execution,expression,call,builtin,textureStore:out_of_bounds:*`
	- Some of `webgpu:shader,execution,expression,unary,*` on Windows and Linux:
		- `…,ai_assignment:abstract:*`
		- `…,ai_assignment:abstract:*`
		- `…,ai_complement:complement:*`
	- `webgpu:shader,execution,limits:switch_case_selectors:*` on Windows and macOS.
	- `webgpu:shader,execution,limits:workgroup_array_byte_size_override:*` on all but Windows debug.
	- `webgpu:shader,execution,zero_init:compute,zero_init:*` on macOS.
	- `webgpu:shader,validation,expression,access,vector:abstract:*`
	- `webgpu:shader,validation,expression,call,builtin,textureGather:offset_argument,non_const:*` on all but Windows debug.
	- `webgpu:shader,validation,expression,call,builtin,textureSample:offset_argument,non_const:*`
	- `webgpu:shader,validation,expression,call,builtin,textureSampleGrad:offset_argument,non_const:*`
	- Most of `webgpu:shader,validation,statement,switch:*`:
		- `…:case_types_match:*`
		- `…:condition_type_match_case_type:*`
		- `…:parse:*`

- Demotions from tier 2 to tier 3:
	- `webgpu:api,validation,capability_checks,limits,maxColorAttachmentBytesPerSample:beginRenderPass,at_over:*`

- Otherwise notable potential regressions:
	- `webgpu:shader,validation,expression,matrix,mul:overflow_scalar_abstract:*`

Differential Revision: https://phabricator.services.mozilla.com/D242218
2025-03-21 17:32:17 +00:00
Erich Gubler
3fe6f32b23 Bug 1955085 - build(rust): audit and shim-update half 1.8.3 → 2.5.0 r=supply-chain-reviewers,glandium
Differential Revision: https://phabricator.services.mozilla.com/D242217
2025-03-21 17:32:17 +00:00
Butkovits Atila
1a7bbbb50e Backed out changeset 373bf4808bb7 (bug 1950584) for causing bustages at brush_blend.h. CLOSED TREE 2025-03-21 15:31:42 +02:00
Erich Gubler
2d2b5b8e1b Bug 1950584 - fix(rust): upgrade cc 1.2.12 → 1.2.16 r=supply-chain-reviewers,firefox-build-system-reviewers,glandium
Differential Revision: https://phabricator.services.mozilla.com/D241684
2025-03-21 12:10:55 +00:00
Erich Gubler
ec859175a4 Bug 1894795 - build(rust): upgrade in-tree base64 deps. 0.21.3 → 0.22.1 in-tree r=webdriver-reviewers,necko-reviewers,whimboo,kershaw
Differential Revision: https://phabricator.services.mozilla.com/D229934
2025-03-21 02:58:31 +00:00
Erich Gubler
e55f763c31 Bug 1894795 - build(rust): upgrade base64 0.21.3 → 0.22.1 r=glandium,supply-chain-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D229933
2025-03-21 02:58:31 +00:00
Stanca Serban
ab793e455b Backed out changeset af229d7b8c35 (bug 1947513) for causing build bustages. 2025-03-21 06:22:39 +02:00
Dana Keeler
0088da3fc0 Bug 1947513 - register osclientcerts thread with the profiler r=jschanck
Differential Revision: https://phabricator.services.mozilla.com/D242226
2025-03-21 00:02:40 +00:00
Erich Gubler
fae31815bf Bug 1955085 - build(rust): audit and update once_cell 1.20.3 → 1.21.1 r=supply-chain-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D242216
2025-03-20 18:17:36 +00:00
Erich Gubler
4335c290be Bug 1955085 - build(rust): update serde 1.0.218 → 1.0.219 r=supply-chain-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D242215
2025-03-20 18:17:36 +00:00
Mike Hommey
208ceaa932 Bug 1949947 - Upgrade zlib-rs/libz-rs-sys to 0.4.2. r=supply-chain-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D241098
2025-03-19 20:11:18 +00:00
Erich Gubler
c002ae40b3 Bug 1945933 - build(rust): upgrade libloading 0.8.3 → 0.8.6 r=supply-chain-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D242022
2025-03-18 22:36:22 +00:00
Nico Burns
e554ca2f0b Bug 1953074 Upgrade style_traits crate to edition 2021 (r=emilio)
Signed-off-by: Nico Burns <nico@nicoburns.com>

Differential Revision: https://phabricator.services.mozilla.com/D240976
2025-03-15 09:26:57 +00:00
Drew Willcoxon
05f10430e4 Bug 1954177 - Vendor application-services d773da92641d92930b7308300e9fc2746a05ce6a for Suggest geo expansion. r=bdk
Differential Revision: https://phabricator.services.mozilla.com/D241667
2025-03-14 17:16:10 +00:00
Drew Willcoxon
1817ce0847 Bug 1952588 - Vendor application-services to 138 for Suggest geo expansion. r=bdk,daisuke
This vendors the `desktop-138` branch [1] of application-services. The `main`
branch currently does not have some PRs that desktop needs because they break
mobile, and we need this on desktop ASAP.

This patch is larger than usual because the vendor includes some major changes
to the application-services `suggest` component, including new and changed API.
As a consequence this patch includes the following important changes:

## New `suggest` API & uniffi

`SuggestStoreBuilder::remote_settings_service` and `RemoteSettingsService::new`
are exposed to JS as synchronous functions. There's no need for them to be
off-main-thread.

## Telemetry

The labels of `suggest.ingest_time`, `ingest_download_time` and `query_time` had
to be updated due to changes in the Rust component. These are minor updates that
don't need a data review.

## Urlbar

I had to make the following changes to urlbar. I tried to keep them to a minimum
for now. There are opportunities for improvements in follow-ups.

* Appropriate minimal integration changes to `SuggestBackendRust` for creating
  the `SuggestStore` and setting up the RS config
* The Rust component uses new RS collections, which breaks tests. I tried to fix
  them without touching too many lines. There are definitely opportunities to
  improve these tests and test helpers that I'd like to come back to.
* A fix to `RemoteSettingsServer` that's required due to the new RS client used
  by the Rust component

## Late writes due to the new RS client & `AsyncShutdown`

This is a urlbar change but it's worth calling out separately. I pushed all
these changes to tryserver, and there was a failure at the end of the browser
Suggest tests due to `LateWriteObserver` [2].

The late write happens when the app exits: `SuggestStore` is dropped, which
causes the new app-services RS client to drop its Sqlite connection, which
causes Sqlite to sync the RS client's DB to disk. This hasn't been a problem
before because `suggest` currently uses the old RS client, which doesn't keep a
DB. (`suggest` does have its own separate Sqlite DB, and I didn't investigate
why this isn't a problem for it, mainly because it makes sense that the new RS
client would sync its DB when it's dropped and that might be considered a "late
write" when it happens on app shutdown.)

According to the stack in the log, `SuggestStore` is dropped by
`nsCycleCollector`. I can't see how `SuggestBackendRust.#store` is involved in a
cycle, and I don't know if something in this patch is causing a cycle where
there wasn't one before. Maybe there always was. And I don't know if the cycle
is what's causing the all this to happen too late on shutdown. Maybe it's
unrelated. (I'll paste the stack in a Phabricator comment.)

The `SuggestStore` is definitely kept alive until
`AsyncShutdown.profileBeforeChange` since we have a barrier for that phase that
calls `interrupt()` on it. Maybe that's simply the problem and we're using a
phase that's too late in shutdown. But again I don't know why it wouldn't also
be a problem for Suggest's own DB.

The only fix I found is to replace `AsyncShutdown.profileBeforeChange` with
either `quitApplicationGranted` or `profileChangeTeardown`, and then null out
`#store` in the callback (after we call `interrupt()` on it). I assume that
fixes it because `profileBeforeChange` runs later than those other two phases.

So I replaced `profileBeforeChange` with `profileChangeTeardown`. I don't know
which of `quitApplicationGranted` or `profileChangeTeardown` is better. I think
it probably doesn't matter. I chose `profileChangeTeardown` because it's closer
to `profileBeforeChange`. (The order is: `quitApplicationGranted`,
`profileChangeTeardown`, `profileBeforeChange`.)

[1] https://github.com/mozilla/application-services/tree/desktop-138
[2] https://treeherder.mozilla.org/jobs?repo=try&revision=1639f87aa46f1afaf50901d80c8282861700019b

Differential Revision: https://phabricator.services.mozilla.com/D240919
2025-03-12 20:20:09 +00:00
Erich Gubler
bd3d5b924a Bug 1952126 - chore(webgpu): update WGPU to dc02f91ffe1feab8c35d3fdf41f61a62a5004d2c r=webgpu-reviewers,supply-chain-reviewers,teoxoy
Differential Revision: https://phabricator.services.mozilla.com/D240571
2025-03-12 18:12:03 +00:00
Dana Keeler
3cebee186e Bug 1813930 - implement support for client auth certificates on android r=jschanck,geckoview-reviewers,android-reviewers,petru,owlish
Special thanks to Vladimir Vetrov <pdastore1@gmail.com>, who provided a patch
that would eventually inform parts of this patch (in particular, how to use
some of the certificate-related Android APIs).

Differential Revision: https://phabricator.services.mozilla.com/D238821
2025-03-12 16:16:17 +00:00
Nicolas Chevobbe
80af76ba24 Bug 1950551 - [devtools] Fix source_location of CssRule::NestedDeclarations. r=emilio,supply-chain-reviewers.
Nested declarations were getting the location of their parent rule, which would
cause issue in the DevTools Inspector (e.g. for InspectorUtils.getRelativeRuleLine).
We now track the first declaration of the nested declaration to set it as the location
of the rule.

This required some changes in upstream cssparser that are vendored in this patch:
- 5e477ab819
- 958a3f098a

Differential Revision: https://phabricator.services.mozilla.com/D238911
2025-03-12 05:58:39 +00:00
Goloman Adrian
5b89d7c1ef Backed out changeset 96d954eae2a0 (bug 1949947) requested by glandium. 2025-03-12 02:25:38 +02:00
Mike Hommey
4cb90cd3d4 Bug 1949947 - Upgrade zlib-rs/libz-rs-sys to 0.4.2. r=supply-chain-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D241098
2025-03-11 22:23:52 +00:00
Brian Tsoi
c7048caf93 Bug 1952326 - Update memtest crate to v0.3.1 in crash reporter client. r=supply-chain-reviewers,afranchuk
Differential Revision: https://phabricator.services.mozilla.com/D240669
2025-03-11 14:02:57 +00:00
Erich Gubler
7bd7e1835b Bug 1952126 - build(rust): upgrade bitflags 2.7.0 → 2.9.0 r=supply-chain-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D240569
2025-03-11 03:08:43 +00:00
Sandor Molnar
be81a85182 Backed out changeset 3fd3c403763a (bug 1952326) for causing build bustages CLOSED TREE 2025-03-10 23:29:22 +02:00
Brian Tsoi
36008df2c6 Bug 1952326 - Update memtest crate to v0.3.0 in crash reporter client. r=supply-chain-reviewers,afranchuk
Differential Revision: https://phabricator.services.mozilla.com/D240669
2025-03-10 21:04:51 +00:00
Chris Martin
27a8c44185 Bug 1950364 - Update and vendor minidump-writer r=glandium,supply-chain-reviewers,gsvelto,nika
Differential Revision: https://phabricator.services.mozilla.com/D239530
2025-03-10 17:05:06 +00:00
Chris Martin
7ecd1ad6b4 Bug 1950364 - Update and vendor tempfile r=glandium,supply-chain-reviewers,nika,gsvelto
Differential Revision: https://phabricator.services.mozilla.com/D240093
2025-03-10 17:05:06 +00:00
Chris Martin
9689402e09 Bug 1950364 - Update and vendor rustix r=supply-chain-reviewers,nika,glandium,gsvelto
Differential Revision: https://phabricator.services.mozilla.com/D240092
2025-03-10 17:05:05 +00:00
Chris Martin
b8d773b288 Bug 1950364 - Update and vendor linux-raw-sys r=supply-chain-reviewers,nika,glandium,gsvelto
Differential Revision: https://phabricator.services.mozilla.com/D240091
2025-03-10 17:05:04 +00:00
Chris Martin
874102963d Bug 1950364 - Update and vendor libc r=supply-chain-reviewers,nika,glandium,gsvelto
Differential Revision: https://phabricator.services.mozilla.com/D240090
2025-03-10 17:05:03 +00:00
Chris Martin
6885562a0b Bug 1950364 - Update and vendor fastrand r=supply-chain-reviewers,nika,glandium,gsvelto
Differential Revision: https://phabricator.services.mozilla.com/D240089
2025-03-10 17:05:03 +00:00
Chris Martin
b11b3b7df7 Bug 1950364 - Update and vendor bitflags r=supply-chain-reviewers,glandium,nika,gsvelto
Differential Revision: https://phabricator.services.mozilla.com/D240088
2025-03-10 17:05:02 +00:00
Mark Banner
fffd1a6e07 Bug 1952712 - Vendor app-services f7947a60b3e9957b97229d6dd08b458532e79c1c. r=bdk
Also mark `SearchEngineSelector.set_config_overrides` as being a sync / main thread function.

Differential Revision: https://phabricator.services.mozilla.com/D240790
2025-03-10 13:25:22 +00:00
Goloman Adrian
0f121256bd Backed out 3 changesets (bug 1952126) for causing build bustages @rust.mk. CLOSED TREE
Backed out changeset 3ca834a153d2 (bug 1952126)
Backed out changeset ae3227909433 (bug 1952126)
Backed out changeset a5fb79875818 (bug 1952126)
2025-03-07 06:43:51 +02:00
Erich Gubler
fc0670fba5 Bug 1952126 - chore(webgpu): update WGPU to dc02f91ffe1feab8c35d3fdf41f61a62a5004d2c r=webgpu-reviewers,supply-chain-reviewers,teoxoy
Differential Revision: https://phabricator.services.mozilla.com/D240571
2025-03-07 04:11:03 +00:00
Erich Gubler
7177217f21 Bug 1952126 - build(rust): upgrade bitflags 2.7.0 → 2.9.0 r=supply-chain-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D240569
2025-03-07 04:11:02 +00:00
Goloman Adrian
98cb43095f Backed out 3 changesets (bug 1952126) for causing build bustages @rust.mk. CLOSED TREE
Backed out changeset fbdd03d1d3f9 (bug 1952126)
Backed out changeset 3d5dd1dc4785 (bug 1952126)
Backed out changeset 7329ea9d5b5b (bug 1952126)
2025-03-07 00:36:08 +02:00