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

251 Коммитов

Автор SHA1 Сообщение Дата
Paul Adenot 5a606e463e Bug 1626918 - Add the native audio callback thread to the profiler. r=gregtatum
Differential Revision: https://phabricator.services.mozilla.com/D78503
2020-06-12 13:13:06 +00:00
Greg Tatum 9322f4483d Bug 1642330 - Fix profiler icon in the overflow menu; r=julienw
Differential Revision: https://phabricator.services.mozilla.com/D78143
2020-06-11 21:35:07 +00:00
Paul Adenot dfcea09efd Bug 1641608 - Add "GraphRunner" to the media preset thread list. r=gregtatum
Differential Revision: https://phabricator.services.mozilla.com/D77299
2020-05-28 18:57:10 +00:00
Gerald Squelart fedbac274e Bug 1641149 - Add 'fileio', 'fileioall', 'noiostacks' to about:profiling - r=gregtatum
Differential Revision: https://phabricator.services.mozilla.com/D77013
2020-05-28 01:25:02 +00:00
Greg Tatum 3802fc82a4 Bug 1640274 - Remove the unused TrackOptimizations profiler; r=gerald
Differential Revision: https://phabricator.services.mozilla.com/D76854
2020-05-27 22:08:49 +00:00
Greg Tatum ca8ec92461 Bug 1571086 - Remove privacy feature from the profiler; r=gerald
Differential Revision: https://phabricator.services.mozilla.com/D76853
2020-05-27 22:07:57 +00:00
Greg Tatum db4d917032 Bug 1633855 - Break out the about:profiling features into separate sub-sections; r=julienw
Differential Revision: https://phabricator.services.mozilla.com/D76512
2020-05-27 22:07:30 +00:00
Greg Tatum 873a3e02c2 Bug 1633855 - Re-work the experimental definitions for features; r=julienw
This commit changes up the definitions of the presets a bit. I promoted the
allocations work to non-experimental, as it's fairly well supported now in the UI.
Others I demoted to experimental if they were not supported in our current UI,
or flat out don't work.

Differential Revision: https://phabricator.services.mozilla.com/D76511
2020-05-27 22:07:08 +00:00
Greg Tatum 680b9f7324 Bug 1633855 - Clean up some old getSupportedFeatures actor compatibility; r=julienw
This is a drive-by clean-up, as I was touching this code.

Differential Revision: https://phabricator.services.mozilla.com/D76510
2020-05-27 22:06:54 +00:00
Greg Tatum 8b1305be4b Bug 1634448 - Update the menu button to reflect the current profiler states; r=canaltinova
This patch adjusts the profiler menu button to properly reflect the current state
of the profiler. It doesn't completely match the design spec, as there are a bunch
of CSS rules already in place in the toolbar, and I wanted to keep the changes
simple. It does however, update the UI based on the state of the profiler.

Differential Revision: https://phabricator.services.mozilla.com/D75851
2020-05-26 15:59:59 +00:00
Greg Tatum b9823e9fb8 Bug 1598734 - Refine background script toggleProfiler and captureProfile commands; r=canaltinova
This patch handles the issue where a user sends two commands two toggle the profiler and/or
capture. This gets the profiler UI in a weird state that usually is just because the UI
is hanging and lagging. This makes the profiler pause state into a "capturing" state.
I did not include a test with the behavior change, as I was worried about intermittent
failures on asserting this behavior.

Differential Revision: https://phabricator.services.mozilla.com/D75850
2020-05-26 15:42:34 +00:00
Greg Tatum b5e1be1d8d Bug 1634448 - Remove some unused references to the old profiler popup iframe; r=canaltinova
These were left-over from the previous implementation.

Differential Revision: https://phabricator.services.mozilla.com/D75849
2020-05-26 15:42:20 +00:00
Greg Tatum 5c9b8bef77 Bug 1634542 - Add a test for the private browsing popup support; r=canaltinova
Differential Revision: https://phabricator.services.mozilla.com/D75602
2020-05-18 14:49:17 +00:00
Greg Tatum 2b35eaf09a Bug 1634542 - Teach the profiler popup about private browsing; r=canaltinova
Differential Revision: https://phabricator.services.mozilla.com/D75601
2020-05-18 14:35:15 +00:00
Markus Stange 74da9ffadf Bug 1617246 - Always consult objdirs for symbols. r=gregtatum
This moves some symbolication code out of browser.js and into a new module symbolication.jsm.js.

It also threads the pageContext parameter through to getSymbolsFromThisBrowser so that it can
respect the correct objdir pref. This part is probably more complicated than necessary.

Differential Revision: https://phabricator.services.mozilla.com/D63914
2020-05-11 19:52:53 +00:00
Gerald Squelart 4e88697b5d Bug 1632750 - Tweak about:profiling default buffer sizes - r=gregtatum
Presets used 16Mi entries (128MiB) by default, but these numbers were a limit per process.
Now that the limit is for the whole Firefox app, we would record a lot less information, because there are typically around 8 or more processes.
So the default are now 8 times larger to roughly record a similar amount of profiling data.

Also the custom buffer maximum size has been increased from 1GiB to 2GiB.

Differential Revision: https://phabricator.services.mozilla.com/D73216
2020-05-08 03:36:33 +00:00
Greg Tatum b198255525 Bug 1630271 - Guard against accidental uses of startup and shutdown profiling in tests; r=canaltinova
Right now trying to dump a shutdown profile from our profiler tests results in failure,
which is confusing. We should guard against this and fail the test if this happens.

Differential Revision: https://phabricator.services.mozilla.com/D74286
2020-05-07 20:33:22 +00:00
Greg Tatum d09e7cedb5 Bug 1623594 - Add recording state UI to the profiling popup; r=julienw
Differential Revision: https://phabricator.services.mozilla.com/D73332
2020-05-04 15:05:23 +00:00
Gerald Squelart d6e98da86d Bug 1634234 - Only allow powers of 2 for buffer size in about:profiling - r=gregtatum
Display the buffer size as powers of 2, using binary-friendly units (e.g., 64MiB).
Presets have been adjusted to powers of 2.

Note that the profiler still uses this number as maximum per process, but this will change when bug 1632750 lands.

Differential Revision: https://phabricator.services.mozilla.com/D73213
2020-04-30 23:21:03 +00:00
Gerald Squelart 983fefb005 Bug 1634216 - PROFILE_ENTRY_SIZE = 8, as expected by the Gecko Profiler - r=gregtatum
Differential Revision: https://phabricator.services.mozilla.com/D73174
2020-04-30 23:20:43 +00:00
Julien Wajsberg 8a64dfa089 Bug 1629109 - Change the popup to 'custom' when changing it in about:profiling r=gregtatum
Differential Revision: https://phabricator.services.mozilla.com/D72682
2020-04-29 15:32:19 +00:00
Julien Wajsberg 5a57f750eb Bug 1629109 - Loop over all presets to display in about:profiling r=gregtatum
Differential Revision: https://phabricator.services.mozilla.com/D72681
2020-04-29 15:32:17 +00:00
Greg Tatum 46fc6e8cf6 Bug 1607801 - Create a TypeScript friendly lazy loading mechanism; r=ochameau
This patch changes the lazy loading mechanism to explicitly create a "lazy" object
that can be used to load modules. It makes it so that TypeScript can understand what
is going on with the lazy loading. I couldn't find a solution to make the Object.define
mechanism work for the global object.

I briefly considered using the Object.define() method on the returned "lazy" object,
as this could be typed correctly, but I felt magically accessing properties was less
clear compared to calling a function that has the side effect of maybe loading a
module for the first time.

Differential Revision: https://phabricator.services.mozilla.com/D59208
2020-04-28 17:51:09 +00:00
Greg Tatum 02e0ad2908 Bug 1607801 - Pre-define ChromeUtils.import paths; r=julienw
This patch takes the approach from mossop on pre-defining ChromeUtils.import
paths, so that they don't need to be defined where they are used. Perhaps in
the future we could automate this more, but for now this will make the current
approach more ergonomic for consumers of the types.

Differential Revision: https://phabricator.services.mozilla.com/D59206
2020-04-28 17:49:59 +00:00
Greg Tatum 6d3e71a39a Bug 1607801 - Upgrade TypeScript to v3.8.3; r=julienw
Differential Revision: https://phabricator.services.mozilla.com/D70439
2020-04-28 17:48:53 +00:00
Alex Chronopoulos 35f2245f17 Bug 1631055 - Add AsyncCubebTask thread in media profiler preset r=gregtatum
Differential Revision: https://phabricator.services.mozilla.com/D71376
2020-04-17 20:13:29 +00:00
Greg Tatum 54c6ddefbc Bug 1625145 - Ensure the profiler menu button feature flag is enabled in tests; r=julienw
Differential Revision: https://phabricator.services.mozilla.com/D68616

--HG--
extra : moz-landing-system : lando
2020-03-30 07:47:11 +00:00
Paul Adenot 2a86306d93 Bug 1621611 - Add a profiler presets to profile media workloads r=gregtatum
Differential Revision: https://phabricator.services.mozilla.com/D68404

--HG--
extra : moz-landing-system : lando
2020-03-27 12:23:57 +00:00
Greg Tatum 9578995f40 Bug 1621022 - Change the workflow of enabling the profiler menu button; r=canaltinova
This patch makes it so that the profiler shortcuts work based on the location of
the profiler menu button. It changes it so that if the menu button is in the navbar
or other menus, the shortcuts will work. Otherwise, the shortcuts will be a no-op.

This removes the Tools -> Web Developer - Enable Profiler Menu Button option. By
default on Nightly and Dev Edition the profiler menu button will be available.
On other channels, users must visit profiler.firefox.com.

Differential Revision: https://phabricator.services.mozilla.com/D66785

--HG--
extra : moz-landing-system : lando
2020-03-25 15:34:59 +00:00
Brindusan Cristian 78dff22220 Backed out 2 changesets (bug 1572786, bug 1621022) for bc failures at browser_downloads_autohide.js. CLOSED TREE
Backed out changeset e86e00c78134 (bug 1572786)
Backed out changeset bc5fee900c02 (bug 1621022)
2020-03-25 00:04:25 +02:00
Greg Tatum 2272f2bb03 Bug 1621022 - Change the workflow of enabling the profiler menu button; r=canaltinova
This patch makes it so that the profiler shortcuts work based on the location of
the profiler menu button. It changes it so that if the menu button is in the navbar
or other menus, the shortcuts will work. Otherwise, the shortcuts will be a no-op.

This removes the Tools -> Web Developer - Enable Profiler Menu Button option. By
default on Nightly and Dev Edition the profiler menu button will be available.
On other channels, users must visit profiler.firefox.com.

Differential Revision: https://phabricator.services.mozilla.com/D66785

--HG--
extra : moz-landing-system : lando
2020-03-24 20:50:17 +00:00
Greg Tatum ec3435bcee Bug 1623529 - Fix supported features used in the profiler; r=julienw
about:profiling was failing to use the supported features of the target
and was instead only checking the locally supported features.

Differential Revision: https://phabricator.services.mozilla.com/D67528

--HG--
extra : moz-landing-system : lando
2020-03-24 20:45:22 +00:00
Greg Tatum efc2e39f55 Bug 1623529 - Add "java" to the profiler presets by default; r=julienw
The feature should only be enabled if it's supported, e.g on
mobile phones.

Differential Revision: https://phabricator.services.mozilla.com/D67527

--HG--
extra : moz-landing-system : lando
2020-03-24 20:45:18 +00:00
Greg Tatum 29a0fcf69d Bug 1623529 - Clean up PerfFront.getSupportedFeatures backwards FF 72 compatibility; r=julienw
The current Firefox release channel is 74, which means this old mitigation is no
longer needed. getSupportedFeatures is supported on all targets.

Differential Revision: https://phabricator.services.mozilla.com/D67526

--HG--
extra : moz-landing-system : lando
2020-03-24 20:43:37 +00:00
Sylvestre Ledru be18fd4dba Bug 1622328 - add license info to all eslintrc files r=Standard8,webcompat-reviewers,miketaylr
Differential Revision: https://phabricator.services.mozilla.com/D67319

--HG--
extra : moz-landing-system : lando
2020-03-19 13:47:51 +00:00
Daniel Varga 2d266171ee Backed out 2 changesets (bug 1572786, bug 1621022) for causing mochitest failures at widget/tests/test_keycodes.xhtml
CLOSED TREE

Backed out changeset 6afede62221b (bug 1572786)
Backed out changeset e08a023c7212 (bug 1621022)
2020-03-18 19:52:41 +02:00
Greg Tatum c1b2f46f80 Bug 1621022 - Change the workflow of enabling the profiler menu button; r=canaltinova
This patch makes it so that the profiler shortcuts work based on the location of
the profiler menu button. It changes it so that if the menu button is in the navbar
or other menus, the shortcuts will work. Otherwise, the shortcuts will be a no-op.

This removes the Tools -> Web Developer - Enable Profiler Menu Button option. By
default on Nightly and Dev Edition the profiler menu button will be available.
On other channels, users must visit profiler.firefox.com.

Differential Revision: https://phabricator.services.mozilla.com/D66785

--HG--
extra : moz-landing-system : lando
2020-03-18 15:36:02 +00:00
Ed Lee acb960676c Bug 1620556 - Automatic code fixes for Prettier 1.19.1 upgrade. r=Standard8,remote-protocol-reviewers,marionette-reviewers,webcompat-reviewers,perftest-reviewers,sparky,whimboo,denschub
Differential Revision: https://phabricator.services.mozilla.com/D66128

--HG--
extra : moz-landing-system : lando
2020-03-13 23:38:52 +00:00
Greg Tatum c06af4a530 Bug 1621076 - Fix intermittents caused by recording state race; r=canaltinova
I originally wrote the tests to check for the "not-yet-known" recording state. This
check is a race that did not fail locally, but does when run on the try servers.
This patch makes the tests a bit more permissive. It still includes the check for
"not-yet-known", but also allows for the recording state to already be known
at the beginning of the test.

Differential Revision: https://phabricator.services.mozilla.com/D66609

--HG--
extra : moz-landing-system : lando
2020-03-13 16:21:39 +00:00
Greg Tatum 4de8535d88 Bug 1621650 - Make Firefox Platform the default profiler preset on Nightly and Local builds; r=canaltinova
Platform engineers spend most of their time in Nightly and on local builds. This patch
changes it so that the profiler is most likely set to a more advanced preset when platform
engineers need it.

Differential Revision: https://phabricator.services.mozilla.com/D66407

--HG--
extra : moz-landing-system : lando
2020-03-11 23:10:53 +00:00
shindli d3afc81a47 Backed out changeset 3083337429be (bug 1621408) for causing TV failures in devtools/client/performance-new/test/browser/browser_shortcuts-record-capture.js CLOSED TREE 2020-03-11 19:32:51 +02:00
Greg Tatum fb28a50a7d Bug 1621644 - Add screenshots to the profiler presets; r=canaltinova
This patch does not include a test as it's a configuration change, and
should be covered by existing tests. I manually tested it on my machine
to verify that screenshots were in fact recorded.

Differential Revision: https://phabricator.services.mozilla.com/D66398

--HG--
extra : moz-landing-system : lando
2020-03-11 14:52:07 +00:00
Greg Tatum 60288ef727 Bug 1621408 - Add a test for profiler popup shortcuts; r=canaltinova
Differential Revision: https://phabricator.services.mozilla.com/D66292

--HG--
extra : moz-landing-system : lando
2020-03-11 13:54:07 +00:00
Greg Tatum 5caa818a75 Bug 1620323 - Revert preferences in the head file for performance-new tests; r=julienw
Differential Revision: https://phabricator.services.mozilla.com/D65578

--HG--
extra : moz-landing-system : lando
2020-03-09 15:04:22 +00:00
Greg Tatum 801c03be29 Bug 1619748 - Update code documentation for the new about:profiling workflow; r=julienw
Differential Revision: https://phabricator.services.mozilla.com/D65203

--HG--
extra : moz-landing-system : lando
2020-03-09 15:02:17 +00:00
Greg Tatum 9e6847fac4 Bug 1611817 - Migrate remaining chrome tests to devtools browser tests; r=julienw
Differential Revision: https://phabricator.services.mozilla.com/D65153

--HG--
extra : moz-landing-system : lando
2020-03-09 15:01:26 +00:00
Greg Tatum 24b1c74c7b Bug 1597388 - Hook about:profiling up to remote debugging; r=julienw,jdescottes
Differential Revision: https://phabricator.services.mozilla.com/D65152

--HG--
extra : moz-landing-system : lando
2020-03-09 15:01:02 +00:00
Greg Tatum 45cedbd5fa Bug 1611817 - Add mochitests for the performance-new panel in DevTools; r=julienw
Note that this patch also updates the setReactFriendlyInputValue function in
head.js, as it was not working for selects.

Differential Revision: https://phabricator.services.mozilla.com/D65151

--HG--
extra : moz-landing-system : lando
2020-03-09 14:57:56 +00:00
Greg Tatum 68c5d4cc04 Bug 1611817 - Fix race condition in DevTools shutdown and stopProfilerAndDiscardProfile; r=julienw
This race condition is really only exposed in automated testing, but it
was making the DevTools performance-new mochitests intermittent.

The race looks like this:

* stopProfilerAndDiscardProfiler() request
* perf actor process the request
* The gecko profiler sends an event notifying that the profiler stopped
* DevTools updates the UI upon receiving the event
* The test suite sees the UI update, and triggers a close of DevTools
* Error: Connection closed, pending request
* stopProfilerAndDiscardProfiler still hasn't sent the response yet

This patch fixes it by not throwing an error if the panel is already destroyed.

Differential Revision: https://phabricator.services.mozilla.com/D65150

--HG--
extra : moz-landing-system : lando
2020-03-09 14:57:05 +00:00
Greg Tatum 806c8be4d6 Bug 1618002 - Migrate about:profiling chrome tests to only browser tests;r=julienw
The browser chrome tests previously only tested the performance-new client
from a unit testing perspective. I originally wrote them this way so that
they would be fast, and not flaky, as the client actually runs the profiler
and full browser infrastructure. However, these tests haven't been really
great at catching bugs, and the tests break pretty easy to due implementation
changes for the client.

The new browser tests have been proving fast, reliable, and great at catching
regressions. This patch moves all of the about:profiling related tests to be
exclusively mochitests.

Differential Revision: https://phabricator.services.mozilla.com/D65149

--HG--
extra : moz-landing-system : lando
2020-03-09 14:56:21 +00:00