Closed Bug 1699432 Opened 3 years ago Closed 3 years ago

Prepare for destroying the target fronts via target-destroyed-form instead of tabDetached

Categories

(DevTools :: Framework, task)

task

Tracking

(Fission Milestone:M7, firefox88 fixed)

RESOLVED FIXED
88 Branch
Fission Milestone M7
Tracking Status
firefox88 --- fixed

People

(Reporter: ochameau, Assigned: ochameau)

References

Details

(Whiteboard: dt-fission-m3-mvp)

Attachments

(4 files)

Bug 1631451 will use target-destroyed-form instead of tabDetached in order to destroy the target fronts.
This require a few fixes before being able to do so.
Moving a few safe fixes from bug 1631451 to this bug in order to ship them in Fx88 while keeping the more risky patch for next release.

Assignee: nobody → poirot.alex

Close method may be called by the transport on close.
This was highlighted by browser_target_from_url.js
Surprisingly devtools/shared/tests/xpcshell/test_debugger_client.js
tries quite hard to cover such issue, but we seem to get yet another type of reentrancy.
This probably depends on WebSocketTransport, which is a bit hard to get covered.
No test seems to be spawning a WebSocket DevToolsServer...

This is to allow destroying correctly the targets even if we aren't watching for additional targets.

This is to fix intermittent failure on all browser toolbox tests.
It looks like these patches make toolbox.destroy shuts down connection faster
and lead to evaluateJSAsync request still be pending while the connection is closed
and actors and fronts are destroyed.

Pushed by apoirot@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/f5ed2fc4c64f
[devtools] Bail out if DevToolsClient.close becomes reentrant. r=nchevobbe
https://hg.mozilla.org/integration/autoland/rev/bd1d8de19a1e
[devtools] Always listen to target-available and destroyed events from TargetCommand. r=nchevobbe,jdescottes
https://hg.mozilla.org/integration/autoland/rev/549ed0564f38
[devtools] Destroy TabDescriptor instead of Target from toolbox and tests. r=nchevobbe,jdescottes
https://hg.mozilla.org/integration/autoland/rev/5a6d5b2331a3
[devtools] Ignore connection closed when closing browser toolbox in tests. r=nchevobbe
Fission Milestone: --- → M7
Whiteboard: dt-fission-m3-mvp
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: