Fix and re-enable devtools/shared/resources/tests/browser_target_list_service_workers_navigation.js test for Fission
Categories
(DevTools :: Framework, task, P3)
Tracking
(Fission Milestone:MVP, firefox92 fixed)
Tracking | Status | |
---|---|---|
firefox92 | --- | fixed |
People
(Reporter: cpeterson, Assigned: nchevobbe)
References
(Blocks 1 open bug)
Details
(Whiteboard: dt-fission-m3-mvp)
Attachments
(1 file)
This test was disabled for Fission in bug 1641796.
[browser_target_list_service_workers_navigation.js]
skip-if = fission
# There are several issues to test TargetList navigation scenarios with fission.
# Without a toolbox linked to the target-list, the target list cannot switch
# targets. The legacy worker watchers are also not designed to support target
# switching, since they set this.target = targetList.targetFront just once in
# their constructor.
Comment 1•3 years ago
|
||
The Bugbug bot thinks this bug should belong to the 'DevTools::Framework' component, and is moving the bug to that component. Please revert this change in case you think the bot is wrong.
Updated•3 years ago
|
Updated•3 years ago
|
Reporter | ||
Comment 2•3 years ago
|
||
Tracking DevTools test bugs for Fission M8 (blocking Release experiment).
Updated•3 years ago
|
Reporter | ||
Updated•3 years ago
|
Reporter | ||
Comment 3•3 years ago
|
||
Tracking DevTools Post-M8 bugs for Fission MVP milestone. They don't block the Fission Release channel experiment, but we would like them to be completed before we roll out Fission by default.
Updated•3 years ago
|
Comment 4•3 years ago
|
||
(In reply to Chris Peterson [:cpeterson] from comment #0)
[browser_target_list_service_workers_navigation.js] skip-if = fission # There are several issues to test TargetList navigation scenarios with fission. # Without a toolbox linked to the target-list, the target list cannot switch # targets. The legacy worker watchers are also not designed to support target # switching, since they set this.target = targetList.targetFront just once in # their constructor.
This comment is still relevant and highlight what is wrong in the current code.
The legacy (service) workers listener doesn't support target switching.
But today, we probably have the right APIs to fix that and start using watchTargets, like here:
https://searchfox.org/mozilla-central/source/devtools/shared/commands/target/legacy-target-watchers/legacy-workers-watcher.js#145-149
Comment 5•3 years ago
|
||
Note that this will touch the same code as bug 1715908.
Assignee | ||
Updated•3 years ago
|
Assignee | ||
Comment 6•2 years ago
|
||
There were a few issues when Fission was being enabled:
-
the sw legacy listener was throwing when trying to compute the origin of the
"current" target in _onProcessAvailable. That's because the function might be
called while the "old" target was being destroyed, in which case itsurl
property
is nullified. We can't simply usetargetCommand.target
though, as we might
be notified about the new process being created before about the new frame
document. The fix is to store acurrentTargetURL
property in the sw legacy listener,
and to update it when we receivewill-navigate
events. -
A few functions were ignoring the
targetCommand.destroyServiceWorkersOnNavigation
flag and clearing caches when doing a target switch. This meant that we might
not be notified about sw targets being unregistered after multiple navigations.
Pushed by nchevobbe@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/826644ec677f [devtools] Enable browser_target_list_service_workers_navigation.js on Fission. r=jdescottes.
Comment 9•2 years ago
|
||
bugherder |
Description
•