With this patch the list of sanctioned identifiers in the C++ and JS source
files is automatically generated from the yaml file. And we also check that
the ICU data filter file includes all necessary unit resources.
This also renames `MeasureUnit::subtype` to `MeasureUnit::name` for clarity.
Differential Revision: https://phabricator.services.mozilla.com/D73031
Due to the resource usage (over 8Gb memory per libxul), cost and low impact, stop generating partials for asan builds
Differential Revision: https://phabricator.services.mozilla.com/D74710
|./mach try| subcommands are now compatible with both python 2 and 3.
Hand-tested with many combinations of subcommand and subcommand flags.
Updates tryselect unit tests to use Python 3.
Differential Revision: https://phabricator.services.mozilla.com/D73398
Since we now run those tests in baremetal (which runs more parallel jobs
than packet.net), the variance of the time it takes to execute xpcshell
tests increased.
Differential Revision: https://phabricator.services.mozilla.com/D74703
The BothFingersLifted() mechanism was a bit of a hack to handle the case that
with touch inputs, a user might be able to lift just one finger to transition
from a pinch to a pan or other kind of gesture. This isn't possible with
other kinds of pinch gestures, such as on trackpads or with mousewheels.
So instead of tracking that via special-case behaviour of mFocusPoint, or
adding an extra bool to the PinchGestureInput class, it seems cleaner to
separate the concerns by adding a new type of input event that explicitly
covers the "finger lifted" touch scenario. This patch implements this change,
and removes the BothFingersLifted() machinery.
Differential Revision: https://phabricator.services.mozilla.com/D74415
This is mostly unrelated, but I considered reusing this variable for the
pinch gesture block before deciding it was too risky because some platforms
may have pinch and touch input blocks active concurrently. However the name
and documentation are kind of misleading so I figured I'd fix it while here.
Differential Revision: https://phabricator.services.mozilla.com/D74413
In the 'chunk_by_runtime' algorithm a 'get_manifest' helper function is used to
determine what "manifest" a test belongs to. The logic is basically, if
'ancestor-manifest' exists then use that. Otherwise use 'manifest_relpath'.
We need to do this because in some cases a "shared" manifest can be included
multiple times from parent manifests, each with a different configuration.
However, when we calculate the "skipped" manifests in chunking.py, we were
simply using 'manifest_relpath' and ignoring 'ancestor-manifest'. I believe
this meant we were mis-reporting which manifests were skipped in the task logs.
It possibly even meant we were double-scheduling some tests (i.e, if the
'skip-if' was in the ancestor, not the shared one). I'm not sure if the double
scheduling was actually happening in practice, but it's certainly theoretically
possible.
Afaict, this only affected a handful of xpcshell manifests on Windows and
Android.
Depends on D74449
Differential Revision: https://phabricator.services.mozilla.com/D74451
This is instead of tests and will make it easier to re-use in the taskgraph.
This commit is a straight refactor and results in zero differences in the
taskgraph.
Depends on D74448
Differential Revision: https://phabricator.services.mozilla.com/D74449
In Python 3, iteration order over the contents of a native `dict` is always unpredictable, which results in bugs like bug 1635755 where `xptdata.cpp` has irreproducible content. To avoid this, we be sure to always write out JSON in a fixed, deterministic order.
Differential Revision: https://phabricator.services.mozilla.com/D74443
Adds support for all variations of fenix (app name and activity passed by argument to mach perfest)
Fixes bug in mach perftest argument passing (android-activity was not being set)
Differential Revision: https://phabricator.services.mozilla.com/D73334
This performs JSScript allocation by consuming the Stencil. For now we leave
handling of delazification compiles alone.
Differential Revision: https://phabricator.services.mozilla.com/D74572
Use the ScriptStencil copy of flags which also includes computed flags. We
also fix up the flag computation in the SmooshFrontend to be more complete
and explicit.
Differential Revision: https://phabricator.services.mozilla.com/D74571