Commit Graph
13 Commits
Author SHA1 Message Date
Adam Raine b01444b30c Filter Lighthouse categories based on selected mode
Timespan and snapshot modes will never use certain categories, so this
CL filters the checkboxes based on which categories are available. If a
category is not available, it will be set to the indeterminate state.

Example:
https://imgur.com/a/o53SLcj

Bug: 1291284
Change-Id: I930870b7a144084fd5d11d2ba942e81dac837b17
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/3606383
Reviewed-by: Paul Irish <paulirish@chromium.org>
Reviewed-by: Mathias Bynens <mathias@chromium.org>
Commit-Queue: Adam Raine <asraine@chromium.org>
2022-05-02 21:14:57 +00:00
Adam Raine e89a9dee3a Set Lighthouse flags for FR modes
Bug: 1291284
Change-Id: I1becfef702746007df00849d8e4862aeec618d5b
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/3553072
Reviewed-by: Paul Irish <paulirish@chromium.org>
Commit-Queue: Paul Irish <paulirish@chromium.org>
2022-03-25 20:48:03 +00:00
Paul Irish 6405af2471 Improve clarity around Lighthouse Protocol Service
Added ASCII diagram and comments to better convey how the system works.
Additionally, some key renames were applied. For example, methods which
do not directly deal with CDP were stripped of "method"/"param"
in exchange for "action"/"args".
Spiritual descendent of https://crrev.com/c/2697187

Bug: 1291284, 1015330
Change-Id: I8e04732d1dbe6c89963892f2af99106fa27e6e2c
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/3472630
Reviewed-by: Adam Raine <asraine@chromium.org>
Reviewed-by: Connor Clark <cjamcl@chromium.org>
Auto-Submit: Paul Irish <paulirish@chromium.org>
Commit-Queue: Paul Irish <paulirish@chromium.org>
Reviewed-by: Mathias Bynens <mathias@chromium.org>
Commit-Queue: Mathias Bynens <mathias@chromium.org>
2022-02-18 22:54:03 +00:00
Adam Raine b02aa95252 Add Lighthouse timespan mode to FR experiment
Bug: 1291284
Change-Id: Icce2f1991561af4a10400b4d741ee3807f167282
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/3462275
Reviewed-by: Alex Rudenko <alexrudenko@chromium.org>
Reviewed-by: Mathias Bynens <mathias@chromium.org>
Reviewed-by: Paul Irish <paulirish@chromium.org>
Commit-Queue: Adam Raine <asraine@chromium.org>
2022-02-18 02:12:13 +00:00
Adam Raine b2305a0e89 [Lighthouse] Roll Lighthouse 9.4.0
Bug: 772558
Change-Id: I6ef12a8401f28235d0fee402074730ec56d4f21e
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/3470457
Reviewed-by: Connor Clark <cjamcl@chromium.org>
Commit-Queue: Adam Raine <asraine@chromium.org>
2022-02-17 01:43:02 +00:00
Adam Raine ff80ccb170 Experiment to add a mode selector to the Lighthouse panel
Currently only includes navigation and snapshot modes, timespan mode
will require further UX changes because the user controls when timespan
mode ends.

Related:
https://chromium-review.googlesource.com/c/chromium/src/+/3456526

Bug: 1291284
Change-Id: Ic5c7c3b1925609de021e625c5095e8bd08348851
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/3456629
Reviewed-by: Paul Irish <paulirish@chromium.org>
Reviewed-by: Mathias Bynens <mathias@chromium.org>
Commit-Queue: Adam Raine <asraine@chromium.org>
2022-02-14 19:02:37 +00:00
Adam Raine 9312c5bd24 Add Lighthouse FR Navigation Mode
Puppeteer is a dependency for the new mode. This CL modifies the
`getPuppeteerConnection` function from the recorder panel. The new
version of this function can be shared between the Lighthouse worker
and the recorder panel.

Bug: 1291284
Change-Id: Ie2cc144f5bd27b9970392638f08f968019b039c8
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/3412356
Reviewed-by: Alex Rudenko <alexrudenko@chromium.org>
Reviewed-by: Mathias Bynens <mathias@chromium.org>
Reviewed-by: Paul Irish <paulirish@chromium.org>
Reviewed-by: Randolf Jung <jrandolf@chromium.org>
Commit-Queue: Adam Raine <asraine@chromium.org>
2022-02-10 18:34:21 +00:00
Tim van der Lippe 2116adf135 Remove Runtime.loadResourcePromise
`window.fetch` is the modern equivalent.

R=jacktfranklin@chromium.org

Bug: none
Change-Id: I979962efe7a8480c5ddbfb9093db6be421dabd03
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/3369371
Reviewed-by: Jack Franklin <jacktfranklin@chromium.org>
Commit-Queue: Tim Van der Lippe <tvanderlippe@chromium.org>
2022-01-07 10:38:24 +00:00
Connor Clark 6c6dc45441 [Lighthouse] Recover from fatal Lighthouse errors.
A previous CL[1] refactored this file, transforming some promise
chaining into a try/catch. However, the final statement that
actually kicks off Lighthouse was not await'd, so any fatal
error is not handled as expected.

Additionally, the same CL dropped the 'close()' no-op method on the
Lighthouse port. This doesn't result in a user-facing error because
Lighthouse dismisses any error that happens during the disconnect
phase, but there is still an error message logged to console, which
is misleading as there really isn't any harm done.

[1] https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2697187
[2] https://github.com/GoogleChrome/lighthouse/issues/13273#issuecomment-958162407

Bug: 968639
Change-Id: Icf41f3ed8c3cd993f1d9e4748b8aff394c0582a5
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/3258498
Commit-Queue: Connor Clark <cjamcl@chromium.org>
Reviewed-by: Paul Irish <paulirish@chromium.org>
2021-11-03 02:57:03 +00:00
Tim van der Lippe 59f68132b1 Make lighthouse_worker a proper entrypoint
This entrypoint was still being copied over, due to techdebt we
had before. The techdebt has since been removed, so we can now
properly use `devtools_{module,entrypoint}` to process these files.

R=jacktfranklin@chromium.org

Fixed: 1248392
Change-Id: I8c7394c62c21b9b73e259fd9206510c92203ad0a
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/3158384
Commit-Queue: Tim van der Lippe <tvanderlippe@chromium.org>
Auto-Submit: Tim van der Lippe <tvanderlippe@chromium.org>
Reviewed-by: Jack Franklin <jacktfranklin@chromium.org>
2021-10-04 16:25:42 +00:00
Connor Clark 4a7d834643 Import Lighthouse report renderer as esmodules.
Bug: 772558
Change-Id: Ie6a01847ee57d341d653b07acab422d26e524130
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2939422
Commit-Queue: Connor Clark <cjamcl@chromium.org>
Reviewed-by: Tim van der Lippe <tvanderlippe@chromium.org>
2021-07-19 21:33:40 +00:00
Tim van der Lippe 0d8ffe34d5 Use GN metadata to compute GRD files
GN metadata allows to specify and later query metadata from any
action in our build graph. Using GN metadata, we can specify
GRD files on an action and collect these files on the top level.
Then, we can compare the list of collected files to the expected
GRD files in `devtools_grd_files.gni` to ensure they match.

As a follow-up change, we can remove the intermediate lists we have
been specifying in `all_devtools_modules.gni` and
`devtools_module_entrypoints.gni`, which now become obsolete. That's
because both `devtools_module` and `devtools_entrypoint` now specify
the files in their respective metadata and essentially perform the
check that all relevant files are collected.

R=aerotwist@chromium.org

Also-By: alexrudenko@chromium.org
Bug: 1174013
Change-Id: I9dd2e6f7e010b5c25f83556511af12d5d1c2ec7c
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2843322
Commit-Queue: Tim van der Lippe <tvanderlippe@chromium.org>
Reviewed-by: Alex Rudenko <alexrudenko@chromium.org>
Reviewed-by: Paul Lewis <aerotwist@chromium.org>
2021-04-22 11:50:37 +00:00
Tim van der Lippe 1051671d89 Move lighthouse_worker to entrypoints/lighthouse_worker
R=aerotwist@chromium.org

Bug: 1187573
Change-Id: I006c9331e70bc9181c29c41aa2b676946cc65311
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2826292
Commit-Queue: Tim van der Lippe <tvanderlippe@chromium.org>
Reviewed-by: Paul Lewis <aerotwist@chromium.org>
2021-04-14 16:51:11 +00:00