Use the ResourceWatcher API to fetch CSS Warning
Categories
(DevTools :: Console, task, P1)
Tracking
(Fission Milestone:M6c, firefox79 fixed)
Tracking | Status | |
---|---|---|
firefox79 | --- | fixed |
People
(Reporter: ochameau, Assigned: nchevobbe)
References
Details
(Whiteboard: dt-fission-m2-mvp)
Attachments
(1 file)
Bug 1576624 introduced the ResourceWatcher
API, accessible via toolbox.resourceWatcher
. This API will help listen to data that is being created early, when the document just started loading.
We should migrate the whole DevTools codebase to this API for any data that:
- DevTools frontend listen to, or care about,
and, - may be created or be notified early, when the document just starts being loaded.
This data will typically be: console messages, errors, warnings, sources, Root element NodeFront, storage values, network events, stylesheets, ...
We are typically not going to use this API for:
- data being fetched on-demand, from user's input. For ex: webconsole evaluation input, or, DOM element expands from the Markup view.
- events which we only want to record when the user cares about them. For ex: animation events.
For some more high level context, please have a look at Migration to Fission-compatible APIs, which describes all Fission-related refactorings.
The typical task for this bug will be about migrating code that:
- start listening and register a RDP event listener,
- retrieve already existings data,
from panel's codebase, to theResourceWatcher
module, in theLegacyListener
object.
And then, the panel should use theResourceWatcher
instead.
Bug 1620234 is a good example of such migration, applied to Console Messages.
Bug 1623699 is also useful example as it demonstrates how to write tests for such migration.
This bug is about focusing on only one usecase in the console: CSS Warnings.
This case is different from the other ones, I imagine this depends on bug 1625905, as CSS Warnings are passed as JS Errors?
But we do call target.ensureCSSErrorReportingEnabled
:
https://searchfox.org/mozilla-central/source/devtools/client/webconsole/enhancers/css-error-reporting.js#39
https://searchfox.org/mozilla-central/rev/9c6e7500c0015a2c60be7b1b888261d95095ce27/devtools/server/actors/targets/browsing-context.js#1084
We should probably be going through the ResourceWatcher API, as a followup work will be about migration client side LegacyListeners to the server side. And from the server side, we will have to ensure calling ensureCSSErrorReportingEnabled
as soon as the document starts loading. So, we should probably introduce a CSS Warning Type and ensure registering it to the ResourceWatcher API.
Comment 1•5 years ago
|
||
Tracking Fission DevTools bugs for Fission Nightly (M6) milestone
Assignee | ||
Updated•5 years ago
|
Comment 2•5 years ago
|
||
Tracking dt-fission-m2-mvp bugs for Fission Nightly milestone (M6c)
Assignee | ||
Comment 3•5 years ago
|
||
Comment 5•5 years ago
|
||
Backed out for dt failures on browser_webconsole_location_styleeditor_link.js
Backout link: https://hg.mozilla.org/integration/autoland/rev/641e49089fee2e6c0b13ba6d0d5621622993c8ee
Log link: https://treeherder.mozilla.org/logviewer.html#/jobs?job_id=306509871&repo=autoland&lineNumber=3154
Assignee | ||
Comment 6•5 years ago
|
||
sorry, I forgot to upload my up-to-date patch to phab before landing it
Comment 8•5 years ago
|
||
bugherder |
Description
•