Commit Graph

860883 Commits

Author SHA1 Message Date
Mike Hommey
6cf496014d Bug 1861509 - Don't try to build gkrust-gtest before gkrust. r=firefox-build-system-reviewers,ahochheiden
Back when this was added, there was an incentive to try to build
gkrust-gtest before gkrust so that libxul-gtest could have a chance
to link and be dumpsymbol'ed while gkrust compiles.

While we may still want that to happen to some degree, the way it's done
right now, with how things evolved over the years, ends up being
counterproductive and ends up delaying all the rust compiles entirely.

We'll deal with improving the overall ordering of builds in bug 1651293.

(This only affects CI)

Differential Revision: https://phabricator.services.mozilla.com/D192015
2023-10-27 00:09:06 +00:00
Mike Hommey
680a660d33 Bug 1861291 - Move manual dependencies upon wasm2c to the backend. r=firefox-build-system-reviewers,ahochheiden
This change introduces the possibility for more interdependencies being
recorded automatically, but making this work reliably more generally
we'll probably need more work, so at the moment, just make it work for
wasm2c.

Differential Revision: https://phabricator.services.mozilla.com/D191925
2023-10-27 00:07:22 +00:00
Mike Hommey
3f5e73c216 Bug 1861291 - Move relrhack manual interdependency to the backend. r=firefox-build-system-reviewers,ahochheiden
Differential Revision: https://phabricator.services.mozilla.com/D191924
2023-10-27 00:07:22 +00:00
Mike Hommey
c9b509ad96 Bug 1861291 - Remove manual interdependency for updateagent. r=firefox-build-system-reviewers,nalexander
Updateagent was removed in bug 1681574.

Differential Revision: https://phabricator.services.mozilla.com/D191923
2023-10-27 00:07:21 +00:00
Mike Hommey
f5dd99851d Bug 1861291 - Allow RustPrograms to have USE_LIBS. r=firefox-build-system-reviewers,ahochheiden
The information will only be used for deriving in-tree
interdependencies.

Differential Revision: https://phabricator.services.mozilla.com/D191922
2023-10-27 00:07:21 +00:00
Mike Hommey
51e176eb5e Bug 1861507 - Separate rust targets and individual rust crates in profiles. r=firefox-build-system-reviewers,ahochheiden
There are unfortunate cases where all the rust targets don't end up on
the same line, and that's kind of confusing.

This keeps the rust targets using "Rust" (in config/makefiles/rust.mk)
and switching individual crates to "RustCrate". They will still appear
close to each other in the profiles, but targets will now have their
dedicated line.

Differential Revision: https://phabricator.services.mozilla.com/D192013
2023-10-27 00:02:10 +00:00
Mike Hommey
cc280619c4 Bug 1861288 - Improve coverage of the pre-export and export phases in profiles. r=firefox-build-system-reviewers,ahochheiden
At the top-level, what we currently have is something akin to:
  export: some deps
    echo BUILDSTATUS TIER_START export
    make recurse_export
    ...

In practice, what this means is that `some` and `deps` are built outside
the export tier/phase.

Since recurse_export is itself a recipe with dependencies, we can "just"
move `some` and `deps` to become dependencies of recurse_export instead.
But since in non top-level directories, recurse_export is not a thing,
we still need to keep the dependencies on export there.

Unfortunately, we have one instance of something built during
recurse_export that relied on its undeclared/undeclarable dependencies
being built before recurse_export, so we need to accomodate for that.

Also, for some reason, recurse_pre-export was a two-colons recipe, while
the other recurse_* recipes were single-colon, so fix that.

Come to think of it, the same probably applies to misc and libs, which
this would mechanically fix alongside.

Incidentally, this also makes those things that ran before recurse_* run
in parallel of the other things that run during recurse_*.

Differential Revision: https://phabricator.services.mozilla.com/D191913
2023-10-27 00:01:35 +00:00
Mike Hommey
d812b6e780 Bug 1859851 - Handle escaped spaces in dependencies. r=firefox-build-system-reviewers,ahochheiden
Differential Revision: https://phabricator.services.mozilla.com/D191688
2023-10-26 23:59:15 +00:00
Mike Hommey
14746b3ff0 Bug 1859851 - Use $? instead of $^ when invoking rebuild_check. r=firefox-build-system-reviewers,andi
$? will only pass the dependencies that have triggered the command to be
called, which will save some work in rebuild_check. However, since
rebuild_check does the difference between removed and modified files,
it still needs to keep checking files.

But, the real reason we need this check is that gkrust.d can have
dependencies with spaces in them, and Make special variables like $^ or
$? don't handle those nicely, and while those files with spaces in
them are most likely unchanged (in most cases, they are going to be
files from the Windows SDK), they end up always reported as the cause
for rebuilds when setting REBUILD_CHECK. $? is more likely not to
contain files with spaces.

Differential Revision: https://phabricator.services.mozilla.com/D191381
2023-10-26 23:59:15 +00:00
Mike Hommey
206eecffbe Bug 1859851 - Move REPORT_BUILD to the rule that contains the dependencies. r=firefox-build-system-reviewers,sergesanspaille
Because the force-cargo-* rules don't have actual dependencies, the
REPORT_BUILD call can't usefully report why cargo is invoked when
setting REBUILD_CHECK.

This also has the side effect of making the non-verbose output nicer
(containing the actual built file rather than force-cargo-*)

Differential Revision: https://phabricator.services.mozilla.com/D191380
2023-10-26 23:59:14 +00:00
Mike Hommey
3a044c7203 Bug 1859851 - Add missing skipping cargo trick on host rust targets. r=firefox-build-system-reviewers,sergesanspaille
Differential Revision: https://phabricator.services.mozilla.com/D191379
2023-10-26 23:59:14 +00:00
Mike Hommey
4baa2479d0 Bug 1859851 - Share the rule that avoids invoking cargo between the two places that use the trick. r=firefox-build-system-reviewers,ahochheiden
There are subtle differences in the two implementations that actually
make the variant for RUST_PROGRAMS not work currently:
- there is a %.h leftover from bug 1855623
- there is a missing $(basename) when trying to find the .d file,
  preventing it from being found.

With a common rule, we avoid such subtle differences, and that also
allows to further implement fixes without missing one of the cases.

This will also allow to add the same trick to other rules, which should
already have it.

Differential Revision: https://phabricator.services.mozilla.com/D191378
2023-10-26 23:59:13 +00:00
Karl Tomlinson
3878dc6eaf Bug 1860954 remove AsyncCubebTask::mShutdownGrip r=padenot
This was added in
https://hg.mozilla.org/mozilla-central/rev/dcd375e2750d425af210fee36962219a97a334fd#l2.58
but no longer necessary as the driver keeps the graph alive since
https://hg.mozilla.org/mozilla-central/rev/5a0ddea9ad624286eb863e8419e144d5cbae4d58#l2.17

Depends on D191917

Differential Revision: https://phabricator.services.mozilla.com/D191918
2023-10-26 23:49:53 +00:00
Karl Tomlinson
16ea483a2b Bug 1860954 remove mIterationEnd and mStateComputedTime from FallbackWrapper r=pehrsons
Depends on D191837

Differential Revision: https://phabricator.services.mozilla.com/D191917
2023-10-26 23:49:53 +00:00
Tif Tran
7dc77a4f8e Bug 1861220 - Vendor application services into moz central r=lina,adw
Differential Revision: https://phabricator.services.mozilla.com/D192011
2023-10-26 23:27:39 +00:00
Gregory Pappas
5ac17f188a Bug 1847726 - Stop rewriting YouTube flash embeds in Nightly r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D191931
2023-10-26 23:24:39 +00:00
James Teh
cffbd7a1ff Bug 1771579 part 2: Process queued cache updates in the order in which they were queued. r=eeejay
Differential Revision: https://phabricator.services.mozilla.com/D191816
2023-10-26 22:37:22 +00:00
James Teh
7a320647cd Bug 1771579 part 1: Process text leaf updates in the order in which they were received from layout. r=eeejay
Differential Revision: https://phabricator.services.mozilla.com/D191815
2023-10-26 22:37:22 +00:00
Ray Kraesig
fdea82453d Bug 1861494 - [1/1] remove unneeded #include r=win-reviewers,mhowell
MinGW can't find the header <shobjidl_core.h>... but also doesn't need
to, since it's implicitly included by <shobjidl.h>.

Differential Revision: https://phabricator.services.mozilla.com/D192022
2023-10-26 22:06:08 +00:00
Narcis Beleuzu
245aa3a535 Backed out changeset 191ecbe7f7a4 (bug 1821731) for AddressSanitizer failures on Assertions.h 2023-10-27 00:58:34 +03:00
Karl Tomlinson
04a0140bc4 Bug 1860954 name GraphDriver audio streams with document title r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D191837
2023-10-26 21:51:55 +00:00
Andreas Nazlidis
3dc85f36e6 Bug 1860232 - Removes duplicate include r=sylvestre DONTBUILD
Removes duplicate include of PropertyDescriptor.h
in ModuleEnvironmentProxy.cpp

Differential Revision: https://phabricator.services.mozilla.com/D192020
2023-10-26 21:22:18 +00:00
Florian Quèze
2f062a2efa Bug 1860896 - include useful metadata (worker type, test type, source URL) in test profiles, r=gbrown.
Differential Revision: https://phabricator.services.mozilla.com/D191977
2023-10-26 21:06:35 +00:00
Florian Quèze
ea5e4186ba Bug 1860896 - record markers in test jobs, r=releng-reviewers,gbrown.
Differential Revision: https://phabricator.services.mozilla.com/D191792
2023-10-26 21:06:34 +00:00
Florian Quèze
0070c4a92e Bug 1860896 - record profiles of test jobs, r=releng-reviewers,gbrown.
Differential Revision: https://phabricator.services.mozilla.com/D191791
2023-10-26 21:06:34 +00:00
Florian Quèze
05da6265d9 Bug 1860896 - Make mozharness use mozsystemmonitor from the tree rather than from pip, r=releng-reviewers,gbrown.
Differential Revision: https://phabricator.services.mozilla.com/D191790
2023-10-26 21:06:34 +00:00
Florian Quèze
c34ee708ff Bug 1860896 - make SystemResourceMonitor methods used to record markers static, r=ahal,glandium.
Differential Revision: https://phabricator.services.mozilla.com/D191789
2023-10-26 21:06:33 +00:00
Florian Quèze
c1b98295b6 Bug 1860894 - record when the resource monitor was started and stopped, r=glandium.
Differential Revision: https://phabricator.services.mozilla.com/D191788
2023-10-26 21:06:33 +00:00
Florian Quèze
af4c80b2f6 Bug 1860896 - Output events recorded with SystemResourceMonitor.record_event as instant markers in profiles, r=glandium.
Differential Revision: https://phabricator.services.mozilla.com/D191787
2023-10-26 21:06:32 +00:00
Florian Quèze
b582f5e97c Bug 1860100 - Make the minimum time between two samples of SystemResourceMonitor half the sampling interval, r=jcristau.
Differential Revision: https://phabricator.services.mozilla.com/D191464
2023-10-26 21:06:32 +00:00
Narcis Beleuzu
454b002486 Backed out changeset 0b9fa7430923 (bug 1847726) for mochitest failure on test_youtube_flash_embed.html . CLOSED TREE 2023-10-27 00:30:28 +03:00
Narcis Beleuzu
491bb648e7 Backed out changeset a1dbe7d20995 (bug 1666084) for GTest failure on MPRISServiceHandler.cpp . CLOSED TREE 2023-10-27 00:16:14 +03:00
Gregory Pappas
dc882a5060 Bug 1847726 - Stop rewriting YouTube flash embeds in Nightly r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D191931
2023-10-26 20:46:14 +00:00
Joel Maher
beda4eb89e Bug 1860650 - Add confirm failure tasks to taskgraph and optimize them out. r=ahal,marco,taskgraph-reviewers,releng-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D191685
2023-10-26 20:37:22 +00:00
Mike Hommey
ac55867690 Bug 1857687 - Disable thread safety analysis on a few problematic functions. r=nika,necko-reviewers,valentin
The functions return a reference to a value that is normally protected
by a lock in an unlocked manner, but they do so on purpose.

One of them can be annotated with the lock that is being held when it's
called, though, so we do that.

Differential Revision: https://phabricator.services.mozilla.com/D191707
2023-10-26 20:13:22 +00:00
Katherine Patenio
d9a5545618 Bug 1855970 - Add test for review quality explainer link glean event r=perry.mcmanis
Differential Revision: https://phabricator.services.mozilla.com/D192006
2023-10-26 20:04:09 +00:00
Michael Froman
1c1dcc9c78 Bug 1861498 - change line endings to Unix(LF) in third_party/libwebrtc/tools/grit/grit/testdata/GoogleDesktop.adm r=dbaker,webrtc-reviewers
This fixes an issue where the restore/save patch-stack scripts change the Windows(CRLF)
line endings to Linux(LF).  The change causes a failure in verify_vendoring.sh.

Differential Revision: https://phabricator.services.mozilla.com/D192010
2023-10-26 19:58:35 +00:00
Alexandre Poirot
241f15a1f6 Bug 1849998 - [devtools] Unify the codebase to interpret location's column to be 0-based. r=devtools-reviewers,nchevobbe
There was some inconsistancies in column interpretation.
Some code was assuming it was 1-based.
This patch aligns the debugger frontend with spidermonkey assumptions.
Spidermonkey and the debugger frontend both assume that:
* line is 1-based
* column is 0-based

Note that tests are still passing 1-based column as this feels more natural.

Note that CodeMirror consider both line and column to be 0-based.

Removed `toEditorRange` as that's only used by jest test.

Differential Revision: https://phabricator.services.mozilla.com/D187571
2023-10-26 19:57:11 +00:00
Alexandre Lissy
c1897abd04 Bug 1666084 - Build MPRIS name with DBus unique name r=stransky
Differential Revision: https://phabricator.services.mozilla.com/D191858
2023-10-26 19:20:28 +00:00
Mozilla Releng Treescript
21a219fdbe no bug - Bumping Firefox l10n changesets r=release a=l10n-bump DONTBUILD CLOSED TREE
cy -> 6d6e43ed0b027727988ee45f5a97ec8455ac72b0
da -> f7ec6aa04b2be76a70e87d7f72ee31561600e1a9
es-CL -> ff2b76625250103365832ad64ab97254ccef8ab4
fr -> 73dba2a5ab0ccc3379f1c33871ea18623e92ef7e
gn -> 7cb2575a39cb2e44c1bcc1b9abf4c8227f97ea13
is -> 00c51ae66e84149e4bb0cc6e9f1f7ba5887bb245
ka -> f18521f4d8b4bc986026ea37ba3404f845f9c052
lv -> 5909e52cd13ec891fc10945831c8ddbfc457d620
si -> 9c48d4b58333645f875f8e965a7f42984d27ced1
zh-CN -> fdc961a0a739b33fb8a0d44628ccb47d13e2a48c
2023-10-26 19:00:51 +00:00
Ray Kraesig
9ce2a860d0 Bug 1837079 - [10/10] WinFileDialog: log HRESULT of failed Win32 calls r=ipc-reviewers,nika,win-reviewers,mhowell
Add a new telemetry item, `WindowsFileDialogErrorCode`, which will be
included along with the failure reason for any file-dialog-specific
IPC failure crashes from the Windows file dialog utility process.

Differential Revision: https://phabricator.services.mozilla.com/D187417
2023-10-26 18:21:30 +00:00
Ray Kraesig
b30ef50e6e Bug 1837079 - [9/10] WinFileDialog: add ProcessingError() implementations r=ipc-reviewers,nika,win-reviewers,mhowell
Implement `ProcessingError` in `WinFileDialog{Parent,Child}` to report
errors in logging -- and, in the child process, report them via
telemetry and crash.

Differential Revision: https://phabricator.services.mozilla.com/D180344
2023-10-26 18:21:30 +00:00
Ray Kraesig
371b0d83fc Bug 1837079 - [8/10] Implement file-dialog utility-process-crash tests r=handyman,ipc-reviewers,mstange,gerard-majax,nika,profiler-reviewers,julienw
Implement a mochitest confirming the stability of Firefox when the
file-picker crashes (patterned loosely off the existing geolocation
crash tests).

Differential Revision: https://phabricator.services.mozilla.com/D184723
2023-10-26 18:21:30 +00:00
Ray Kraesig
12fc5c8e26 Bug 1837079 - [7.5/10] - Restore window-enable state on conclusion of ShowRemote() r=win-reviewers,mhowell
An undocumented side-effect of IFileDialog::Show() is that the top-level
window which is the ancestor of the file-dialog's owner window is
disabled when the dialog is shown, and reenabled when the dialog is
dismissed.

However, if the external process containing the file-dialog crashes, the
latter action will never be taken -- we're left with an unresponsive
window. In this case, reenable it manually.

Depends on D180343

Differential Revision: https://phabricator.services.mozilla.com/D190733
2023-10-26 18:21:29 +00:00
Ray Kraesig
e2771bde2c Bug 1837079 - [7/10] Open Windows file picker out-of-process r=gstoll,handyman,ipc-reviewers,nika,win-reviewers,mhowell
When opening a new Windows file dialog, open it out-of-process if
possible. Fall back to opening it in-process if that fails. (This
behavior is configurable with a pref.)

Differential Revision: https://phabricator.services.mozilla.com/D180343
2023-10-26 18:21:29 +00:00
Ray Kraesig
3c94ba2a4e Bug 1837079 - [6/10] Properly destroy actors and utility processes r=ipc-reviewers,nika
The IPC subsystem effectively owns IPC actors, and requires an explicit
call to `Close()` to destroy a toplevel actor: releasing the last RefPtr
doesn't cut it. Similarly, the UtilityProcessManager owns the utility
processes it creates, and one must explicitly call `DestroyProcess()`.

Handle both of these lifetime issues by using a custom meta-RefPtr for
WinFileDialogParent which will close the actor and kill the process upon
its final `Release()`.

Differential Revision: https://phabricator.services.mozilla.com/D180345
2023-10-26 18:21:28 +00:00
Ray Kraesig
6c2facfc0c Bug 1837079 - [5/10] Create WinFileDialog IPDL protocol and implementation r=gstoll,handyman,ipc-reviewers,nika,win-reviewers,mhowell
Create and implement a new top-level IPC protocol, `PWinFileDialog`,
using the primitives from bug 1833450 and the new sandboxing type from
the previous commit.

Again, this commit does not actually create any instances of the new
protocol; that will come in a later commit in this patchset.

Differential Revision: https://phabricator.services.mozilla.com/D180342
2023-10-26 18:21:28 +00:00
Ray Kraesig
8cd437b72d Bug 1837079 - [4/10] Create WINDOWS_FILE_DIALOG utility process type r=gerard-majax,ipc-reviewers,fluent-reviewers,bobowen,handyman,nika
Create a new utility-process type for the sole use of out-of-process
instantiation of the Windows file dialog.

We do not sandbox this process type, as in certain test environments
sandboxing has been found to prevent the child process from interacting
with any other windows on the desktop -- including the parent process
window which it will need to assign as the parent of the file dialog.

Technically, no functional changes, as this commit adds no uses of this
type. (That will come later in the patchset.)

Differential Revision: https://phabricator.services.mozilla.com/D180341
2023-10-26 18:21:28 +00:00
Ray Kraesig
c5c346391a Bug 1837079 - [3/10] Refactor Windows nsFilePicker dialog creation r=gstoll,handyman,win-reviewers,mhowell
Extract the creation of Windows file dialogs into a separate function,
as preparation for (sometimes) performing that remotely (that is, out-
of-process).

No functional changes.

Differential Revision: https://phabricator.services.mozilla.com/D180340
2023-10-26 18:21:27 +00:00
Ray Kraesig
f72bfe06f7 Bug 1837079 - [2/10] Use HRESULT rather than nsresult for nsFilePickerCommands r=gstoll,win-reviewers,mhowell
`nsresult` was expected to be easier to use, but this turned out not to
be the case in practice.

No functional changes.

Differential Revision: https://phabricator.services.mozilla.com/D180339
2023-10-26 18:21:27 +00:00