Граф коммитов

787953 Коммитов

Автор SHA1 Сообщение Дата
Eitan Isaacson 18d4e8633e Bug 1758811 - P1: Use gecko cache when it is enabled for retrieving node info. r=Jamie
Differential Revision: https://phabricator.services.mozilla.com/D140749
2022-03-11 18:55:42 +00:00
Sean Feng ed08c116bb Bug 1752558 - Enable browser.soft_reload.only_force_validate_top_level_document in all channels r=nika
We have this experimented in EARLY_BETA_OR_EARLIER for a while, and
it's been looking good. So let's enable it everywhere!

Differential Revision: https://phabricator.services.mozilla.com/D140793
2022-03-11 18:44:52 +00:00
Mitchell Hentges 23226da5f7 Bug 1755516: Explicitly use system Python packages for Firefox build CI r=ahal
Updates all build-related jobs (`artifact-build`, `build` and
`instrumented-build`) tasks to explicitly set
`MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE=system`. This allows them
to consume `psutil` (if installed on the system) without needing
to hit PyPI.org.

Modifies `build-l10n.sh` and `build-linux.sh` to no longer
explicitly fetch `psutil` from PyPI
(`./mach python --virtualenv psutil`), since that is replaced
by Mach's "native package source" behaviour.

Differential Revision: https://phabricator.services.mozilla.com/D140257
2022-03-11 18:34:13 +00:00
Drew Willcoxon 2745f694aa Bug 1752953 - Part 3: Don't update the Firefox Suggest scenario unnecessarily. r=daisuke
This modifies the Nimbus update observer in UrlbarPrefs so that it does not
update the Firefox Suggest scenario unnecessarily. The scenario and the prefs
related to the scenario only need to be updated when either of these happens:

* A relevant Nimbus variable changes
* The current default-branch value of a relevant pref is incorrect for the
  intended scenario

Currently, any time a pref changes that is declared as a fallback pref for a
Nimbus urlbar variable, we end up updating the scenario all over again even if
it was some totally unrelated variable like `bestMatchEnabled`.

We have very good test coverage for scenario updates, so I'm confident that this
revision works properly and that we can catch regressions when we modify related
code in the future.

While working on this, I found that the `quickSuggestNonSponsoredEnabled` was
accidentally removed by D130159 (https://hg.mozilla.org/mozilla-central/rev/ccda4432cdc4d7180a9304e05b52f046616bbf2b)
so I added it back. We haven't used this variable in any experiments or rollouts
so it was never a problem.

Differential Revision: https://phabricator.services.mozilla.com/D140425
2022-03-11 18:28:27 +00:00
Drew Willcoxon 7b5a2a1e5a Bug 1752953 - Part 2: Add scalar telemetry for urlbar engagements and abandonments. r=mak
This adds two new scalars for engagements and abandonments in the urlbar:

```
urlbar.engagement
urlbar.abandonment
```

We already have engagement event telemetry but it's preffed off by default, and
for the upcoming best match experiment, data science would prefer scalars so we
can easily measure total engagement volume. (See bug 1752953 comment 22.)
Recording simple scalars for engagements and abandonments in addition to the
optional event telemetry seems totally reasonable.

The existing `urlbar.picked.*` scalars are sort of proxies for engagement, but a
single scalar would make analysis easier, and there is no similar existing
scalar for abandonments.

This revision hooks into the `TelemetryEvent` class, but it records the scalars
regardless of `browser.urlbar.eventTelemetry.enabled` because there's no reason
to not always enable it.

Differential Revision: https://phabricator.services.mozilla.com/D140287
2022-03-11 18:28:27 +00:00
Drew Willcoxon b25ca9924e Bug 1752953 - Part 1: Add best match scalar telemetry. r=daisuke
This adds new keyed scalars for best match that are analogous to the current
non-best-match scalars, but they are broken out by sponsored vs. non-sponsored:

```
contextual.services.quicksuggest.impression_sponsored_bestmatch
contextual.services.quicksuggest.impression_nonsponsored_bestmatch
contextual.services.quicksuggest.click_sponsored_bestmatch
contextual.services.quicksuggest.click_nonsponsored_bestmatch
contextual.services.quicksuggest.help_sponsored_bestmatch
contextual.services.quicksuggest.help_nonsponsored_bestmatch
```

For best matches, these new scalars are incremented *in addition to* the current
non-best-match scalars.

Differential Revision: https://phabricator.services.mozilla.com/D140286
2022-03-11 18:28:27 +00:00
Julia Cwiek 2ae754db9d Bug 1704587 - Remove expired telemetry probe preferences.read_user_js r=chutten
Differential Revision: https://phabricator.services.mozilla.com/D111758
2022-03-11 18:25:52 +00:00
Mathew Hodson 34da4aaf3e Bug 1751107 Part 3 - Clamp current time for SVG elements. r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D140449
2022-03-11 18:13:07 +00:00
Daniel Holbert e03afacdd6 Bug 1751107 part 2: Create a copy of WPT "end-of-time" crashtest with a not-quite-so-massive setCurrentTime invocation. r=emilio
The value that I'm using in the new copy is still large, but small enough that
it doesn't overflow our internal int64_t representation (when converted into
milliseconds by multiplying by 1000x).

This value makes the crashtest hang in Firefox (hence the included .ini
"expected: TIMEOUT" annotation).  The original crashtest doesn't hang in
Firefox, but that's only because it uses a time that's substantially larger to
the extent that it overflows and produces a negative internal time
representation, and that happens to avoid the issue that causes the hang.

(Though, spoiler alert: the next patch in this series will prevent that
integer-overflow, which will make that original test start hanging Firefox as
well.)

Depends on D140770

Differential Revision: https://phabricator.services.mozilla.com/D140771
2022-03-11 18:13:06 +00:00
Daniel Holbert 50b2364a40 Bug 1751107 part 1: Add a numeric suffix to web-platform crashtest "end-of-time-crash.html". r=emilio
I'm making this rename so that I can create a modified copy of the test
with similar naming in the next patch.

Note that the number has to go before the crash, since "-crash" has to be right
before the file extension in order for it to be recognized as a crashtest, per
https://web-platform-tests.org/writing-tests/crashtest.html

Differential Revision: https://phabricator.services.mozilla.com/D140770
2022-03-11 18:13:05 +00:00
Emilio Cobos Álvarez 9399d71846 Bug 1758974 - Reuse inherited custom properties if they didn't change after resolution. r=jwatt
This should be cheap and gives us a lot of memory savings for the page
on the bug, by deduplicating the inherited properties between parent and
children.

WebKit implements a similar optimization.

Differential Revision: https://phabricator.services.mozilla.com/D140826
2022-03-11 18:12:56 +00:00
Emilio Cobos Álvarez 93e19dc4dd Bug 1758974 - Make custom-property substitution only traverse variables which could have references. r=jwatt
If a name is not in self.seen, it means we've inherited it from our
parent. That in turn means that it can't have any variable reference
(because we inherit the computed variables) and we can skip the work of
traversing it, as we'd hit the early-return in traverse() anyways.

This doesn't fix the memory usage issue of the page on the bug, which
has a giant list of properties on the root and then a custom property
specified on all elements, but should significantly reduce the time we
spend iterating over custom properties for all those elements.

Differential Revision: https://phabricator.services.mozilla.com/D140825
2022-03-11 18:12:55 +00:00
Lee Salzman 8003ac22fc Bug 1758736 - Fix debug assert in textureLinearUnpackedRG16. r=bradwerth
Differential Revision: https://phabricator.services.mozilla.com/D140824
2022-03-11 17:57:17 +00:00
Nicolas Chevobbe 486cb31190 Bug 1758624 - [devtools] Make Object previewers faster. r=bomsy.
- Accessing DebuggerObject.class is showing up in profile as it's a getter, so we
cache it before calling the previewers, and pass it as an extra argument.
- Remove object destructuring in some function signatures as it's
doing extra work we might end up not needing if the previewer isn't the one
that should be used for the object.
- For some previewers, add Sets for className to match so the lookup is faster
- Avoid checking `isWorker` upfront as it has some overhead

Test for Restricted grip is updated to check that we do get the url in preview.

Differential Revision: https://phabricator.services.mozilla.com/D140603
2022-03-11 17:55:14 +00:00
Nicolas Chevobbe 918e34cb42 Bug 1758638 - [devtools] Speedup ConsoleAPIListener#isMessageRelevant. r=jdescottes.
Store the window `innerWindowId` instead of retrieving it for each message.
Refactor `getWorkerType` to not use Array method.

Differential Revision: https://phabricator.services.mozilla.com/D140627
2022-03-11 17:55:14 +00:00
Nicolas Chevobbe 3d61547b02 Bug 1758625 - [devtools] Only include ownSymbols(Length)/privateProperties(Length) in grip when there are some in the object. r=ochameau.
This should help save some cycle in JSActor communication when logging objects.
The client handles those propery only when they are not falsy, so we don't need
to do anything there with this change.

Differential Revision: https://phabricator.services.mozilla.com/D140604
2022-03-11 17:55:14 +00:00
Drew Willcoxon 88d0fc3d57 Bug 1757220 - Automatically generate API docs for a few urlbar classes using sphinx-js. r=mcheang
This does the following:

* Add the urlbar root directory to the list of sphinx-js directories
* Add three new rst files for the automatically generated API docs for
  UrlbarController, UrlbarInput, and UrlbarView
* Add a new top-level section to the urlbar's index.rst for these three docs
* Tweak two JSDocs in UrlbarSearchOneOffs so that sphinx-js doesn't complain

This should be a good starting place for integrating automatically generated API
docs into the urlbar docs, and we can iterate on it from here.

Differential Revision: https://phabricator.services.mozilla.com/D139780
2022-03-11 17:51:18 +00:00
Alexandre Poirot 497528097e Bug 1758973 - [devtools] Upgrade DevTools's reselect to 4.1.5 r=nchevobbe
Differential Revision: https://phabricator.services.mozilla.com/D140738
2022-03-11 17:16:36 +00:00
Julian Descottes bbf60b1a78 Bug 1758797 - Use Profile.clone to create profile in wdspec test websocket_upgrade.py r=webdriver-reviewers,whimboo
Depends on D140799

Differential Revision: https://phabricator.services.mozilla.com/D140800
2022-03-11 17:06:38 +00:00
Julian Descottes 1a3fc4522c Bug 1758797 - Call copytree with ignore_dangling_symlinks=True from Profile.clone r=gbrown,whimboo
Differential Revision: https://phabricator.services.mozilla.com/D140799
2022-03-11 17:06:37 +00:00
Tom Ritter d5997d8ff7 Bug 1759167: Revert the CreatorsUpdate restriction on Win32k Lockdown r=bobowen
Differential Revision: https://phabricator.services.mozilla.com/D140850
2022-03-11 17:01:56 +00:00
Emilio Cobos Álvarez db025983c5 Bug 1758705 - Don't close shared worker as it can cause the message not to be delivered intermittently.
MANUAL PUSH: Orange fix CLOSED TREE
2022-03-11 18:19:42 +01:00
Andrew McCreight 67974ecbc3 Bug 1758549, part 2 - Guard a few more entry points into VRManager. r=jgilbert
Differential Revision: https://phabricator.services.mozilla.com/D140785
2022-03-11 16:43:31 +00:00
Andrew McCreight d886e818fb Bug 1758549, part 1 - Check that WebVR is enabled before creating PVR, PVRGPU and PVRLayer actors. r=jgilbert
Differential Revision: https://phabricator.services.mozilla.com/D140784
2022-03-11 16:43:31 +00:00
Mark Banner 8bb4667fae Bug 1758474 - Implement an ESLint rule to disallow passing {} as the target parameter for ChromeUtils.import. r=Gijs,mossop,perftest-reviewers,preferences-reviewers,sparky
Differential Revision: https://phabricator.services.mozilla.com/D140517
2022-03-11 16:41:29 +00:00
Jamie Nicol 020b3254c4 Bug 1759045 - Add null check to SurfaceAllocator.acquireSurface. r=agi
This prevents a java NullPointerException when the
RemoteSurfaceAllocator returns a null Surface to the local
SurfaceAllocator instance.

Differential Revision: https://phabricator.services.mozilla.com/D140801
2022-03-11 16:05:36 +00:00
Florian Quèze 1340e35255 Bug 1759144 - Avoid crashing when adding the ClearAnimation profiler marker if the animation is not found, r=mstange
Differential Revision: https://phabricator.services.mozilla.com/D140844
2022-03-11 16:00:50 +00:00
Ryan Hunt 589c7ce531 Bug 1753692 - wasm: Re-order Instance fields and add assert for compact encodings. r=lth
This re-orders some Instance fields for clarity, and adds comments
and assertions that the first fields of Instance are reserved for
critical data that should be accessable using compact encodings.

Differential Revision: https://phabricator.services.mozilla.com/D140232
2022-03-11 15:58:31 +00:00
Ryan Hunt 19b46a32aa Bug 1753692 - wasm: Avoid redundant load of instance from tls in JIT. r=lth
Stop loading tls->instance() and just use instance, as they are
now the same thing.

No functional changes.

Differential Revision: https://phabricator.services.mozilla.com/D139541
2022-03-11 15:58:31 +00:00
Ryan Hunt e334c7180f Bug 1753692 - wasm: Replace 'tlsData->instance()' with just 'tlsData'. r=lth
Update all use-sites that get a Instance from a TlsData to just use the
Instance they have.

No functional changes.

Differential Revision: https://phabricator.services.mozilla.com/D139540
2022-03-11 15:58:31 +00:00
Ryan Hunt 2c6e8ef299 Bug 1753692 - wasm: Replace 'instance->tlsData()' with just 'instance'. r=lth
Update all use-sites that need a TlsData from an Instance to just use
the instance they have.

No functional changes.

Differential Revision: https://phabricator.services.mozilla.com/D139539
2022-03-11 15:58:30 +00:00
Ryan Hunt 62616ca0f1 Bug 1753692 - wasm: Remove stub TlsData type and point references to Instance. r=lth
Clean up the hack from the previous commit by removing the stub
TlsData type and changing all references to point to wasm::Instance.

No functional changes.

Differential Revision: https://phabricator.services.mozilla.com/D139538
2022-03-11 15:58:30 +00:00
Ryan Hunt e57d800222 Bug 1753692 - wasm: Merge TlsData into Instance. r=lth
1. Move fields and accessors from TlsData to Instance
2. Allocate Instance using extra alignment and extra space at end
3. Leave TlsData as a subtype of Instance with no fields
   - This leaves all references to TlsData as valid
   - The TlsData stub type is never constructed, only used to
     resolve static members through its super type. This is a
     quick hack and is removed in a following commit.
4. Leave instance->tlsData() and tls->instance() as identity
   operations to be removed in a following commit.

The net result is that TlsData and wasm::Instance are the same
object in memory, just with different names.

Differential Revision: https://phabricator.services.mozilla.com/D139537
2022-03-11 15:58:29 +00:00
Ryan Hunt 7a60bf2669 Bug 1753692 - wasm: Protect members of TlsData in preparation to be moved to Instance. r=lth
wasm::Instance is a class with protected members. Change TlsData and it's uses
be similar in preparation for them to be merged.

Differential Revision: https://phabricator.services.mozilla.com/D139536
2022-03-11 15:58:29 +00:00
Ryan Hunt 1d45b2c557 Bug 1753692 - wasm: Reduce cost of WasmInstance.h for when it is transitively needed in more places. r=lth
The masm loadWasmPinnedRegsFromTls() API is moved to MacroAssembler.

Differential Revision: https://phabricator.services.mozilla.com/D139535
2022-03-11 15:58:28 +00:00
Sergey Galich 94901ad8d2 Bug 1758764 - promiseNotificationShown() helper to wait for notifications panel to be shown. r=tgiles
Differential Revision: https://phabricator.services.mozilla.com/D140676
2022-03-11 15:49:16 +00:00
Jan de Mooij 06aa40156e Bug 1643368 - Allocate helper thread contexts lazily. r=jonco
Now that these are only used for off-thread parsing, we can save some memory in
most content processes.

Differential Revision: https://phabricator.services.mozilla.com/D140839
2022-03-11 15:45:40 +00:00
Mitchell Hentges e54c1fa962 Bug 1759042: Add vendored six to `hooks_clang_format.py` r=ahal
The clang-format hook appears to be called directly without Mach, so it
has to manually handle its dependencies.
Since it transitively depends on `six` (through
`mozversioncontrol` > `mozfile`), it should add the vendored `six` to
the `sys.path`.

Differential Revision: https://phabricator.services.mozilla.com/D140769
2022-03-11 15:42:35 +00:00
Jens Stutte a272641640 Bug 1751371: Transform remaining MOZ_CRASH_UNLESS_FUZZING to normal assertions where appropriate. r=dom-storage-reviewers,jesup,janv
Differential Revision: https://phabricator.services.mozilla.com/D136599
2022-03-11 15:42:08 +00:00
Jens Stutte 3d0caaee90 Bug 1750525: Give IPC_FAIL a reason and remove obsolete MOZ_CRASH_UNLESS_FUZZING in Utils::RecvGetFileReferences. r=dom-storage-reviewers,janv
Differential Revision: https://phabricator.services.mozilla.com/D136592
2022-03-11 15:42:08 +00:00
Jens Stutte 2e2cd2d694 Bug 1750525: Do not IPC_FAIL on dispatch failure in Utils::RecvDeleteMe. r=dom-storage-reviewers,janv
Differential Revision: https://phabricator.services.mozilla.com/D136591
2022-03-11 15:42:08 +00:00
Jens Stutte 9d53f0a23b Bug 1750525: Give IPC_FAIL a reason and remove obsolete MOZ_CRASH_UNLESS_FUZZING in MutableFile::RecvGetFileId. r=dom-storage-reviewers,janv
Differential Revision: https://phabricator.services.mozilla.com/D136590
2022-03-11 15:42:07 +00:00
Jens Stutte 1ff23e096d Bug 1750525: Give IPC_FAIL a reason and remove obsolete MOZ_CRASH_UNLESS_FUZZING in Cursor<CursorType>::RecvContinue. r=dom-storage-reviewers,janv
Differential Revision: https://phabricator.services.mozilla.com/D136589
2022-03-11 15:42:07 +00:00
Jens Stutte 043102c5ac Bug 1750525: Give IPC_FAIL a reason but do not fail on dispatch failure in Cursor<CursorType>::RecvDeleteMe. r=dom-storage-reviewers,janv
Differential Revision: https://phabricator.services.mozilla.com/D136588
2022-03-11 15:42:06 +00:00
Jens Stutte 753d662656 Bug 1750525: Give IPC_FAIL a reason in VersionChangeTransaction::RecvPBackgroundIDBCursorConstructor. r=dom-storage-reviewers,janv
Differential Revision: https://phabricator.services.mozilla.com/D136587
2022-03-11 15:42:06 +00:00
Jens Stutte 62e7ea4221 Bug 1750525: Give IPC_FAIL a reason in VersionChangeTransaction::RecvPBackgroundIDBRequestConstructor. r=dom-storage-reviewers,janv
Differential Revision: https://phabricator.services.mozilla.com/D136586
2022-03-11 15:42:06 +00:00
Jens Stutte 8255808312 Bug 1750525: Give IPC_FAIL a reason and remove obsolete MOZ_CRASH_UNLESS_FUZZING in VersionChangeTransaction::RecvRenameIndex. r=dom-storage-reviewers,janv
Differential Revision: https://phabricator.services.mozilla.com/D136585
2022-03-11 15:42:05 +00:00
Jens Stutte 05460d6a66 Bug 1750525: Give IPC_FAIL a reason and remove obsolete MOZ_CRASH_UNLESS_FUZZING in VersionChangeTransaction::RecvDeleteIndex. r=dom-storage-reviewers,janv
Differential Revision: https://phabricator.services.mozilla.com/D136584
2022-03-11 15:42:05 +00:00
Jens Stutte 152b3606f2 Bug 1750525: Give IPC_FAIL a reason and remove obsolete MOZ_CRASH_UNLESS_FUZZING in VersionChangeTransaction::RecvCreateIndex. r=dom-storage-reviewers,janv
Differential Revision: https://phabricator.services.mozilla.com/D136583
2022-03-11 15:42:05 +00:00
Jens Stutte 0fbc89454a Bug 1750525: Give IPC_FAIL a reason and remove obsolete MOZ_CRASH_UNLESS_FUZZING in VersionChangeTransaction::RecvRenameObjectStore. r=dom-storage-reviewers,janv
Differential Revision: https://phabricator.services.mozilla.com/D136582
2022-03-11 15:42:04 +00:00