Closed Bug 1590765 Opened 6 years ago Closed 6 years ago

Remote Debugging - getProcess doesn't return all actors

Categories

(DevTools :: General, task)

task
Not set
normal

Tracking

(Not tracked)

RESOLVED WONTFIX

People

(Reporter: roy450, Unassigned)

Details

User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.120 Safari/537.36

Steps to reproduce:

I started firefox with the "-start-debugger-server" parameter. My websocket is connect to the server. I am sending this content "{ "to":"root", "type":"getProcess" }" to server.

Actual results:

The result on the version 70 of firefox of this request is :
{"form":{"actor":"server1.conn0.processDescriptor1","id":0,"isParent":true},"from":"root"}

Expected results:

On the version 69 of firefox the result was :
{"form":{"actor":"server1.conn0.parentProcessTarget19","traits":{"isBrowsingContext":true},"url":"chrome://browser/content/browser.xhtml","outerWindowID":1,"consoleActor":"server1.conn0.consoleActor20","inspectorActor":"server1.conn0.inspectorActor21","styleSheetsActor":"server1.conn0.styleSheetsActor22","storageActor":"server1.conn0.storageActor23","memoryActor":"server1.conn0.memoryActor24","framerateActor":"server1.conn0.framerateActor25","reflowActor":"server1.conn0.reflowActor26","cssPropertiesActor":"server1.conn0.cssPropertiesActor27","performanceActor":"server1.conn0.performanceActor28","animationsActor":"server1.conn0.animationsActor29","promisesActor":"server1.conn0.promisesActor30","emulationActor":"server1.conn0.emulationActor31","webExtensionInspectedWindowActor":"server1.conn0.webExtensionInspectedWindowActor32","accessibilityActor":"server1.conn0.accessibilityActor33","screenshotActor":"server1.conn0.screenshotActor34","changesActor":"server1.conn0.changesActor35","webSocketActor":"server1.conn0.webSocketActor36"},"from":"root"}

Did something changed on version 70 for the remote debugger ? How can I get all the actors now ?

Component: Untriaged → Debugger
Product: Firefox → Remote Protocol
Version: 70 Branch → unspecified
Product: Remote Protocol → DevTools

I found the solution. The consoleActor is now given by the ProcessDescriptor once you call "getTarget" on it.

I haven't found any documentation about those changes. To get the list of all the types available for an actor you can call the "requestTypes" on the actor. The "protocolDescription" is also useful.

The priority flag is not set for this bug.
:jlast, could you have a look please?

For more information, please visit auto_nag documentation.

Flags: needinfo?(jlaster)

Julian, do you know when getProcess changed?

Component: Debugger → about:debugging
Flags: needinfo?(jlaster) → needinfo?(jdescottes)

This changed in Bug 1566450, where we introduced descriptors for process targets

As you have seen here, once you have a process descriptor calling getTarget() on the descriptor will return the process target actor.
We have also introduced this for frame targets, and we will keep moving other targets to the same pattern (tabs, workers etc...)

I haven't found any documentation about those changes. To get the list of all the types available
for an actor you can call the "requestTypes" on the actor. The "protocolDescription" is also useful.

Our server documentation is quite outdated, and the architecture on the server side is moving a lot recently.
We don't maintain an API doc for external consumers, so except reading the code and integrating changes regularly, we don't have a great solution for following our protocol changes. As it is the Remote DevTools Protocol is really intended for internal use first. There some integrations out there (eg vscode) so it's doable, but it can be a bit painful.

Antoine: it seems like you found how to workaround this issue, so I am closing the bug here.
If you have other questions, feel free to reach out on slack https://devtools-html-slack.herokuapp.com/
(or open other bugs, but as you can see it can take time to get an answer depending on how many bugs we need to triage)

Not related to about:debugging, moving to General

Status: UNCONFIRMED → RESOLVED
Type: defect → task
Closed: 6 years ago
Component: about:debugging → General
Flags: needinfo?(jdescottes)
Resolution: --- → WONTFIX
You need to log in before you can comment on or make changes to this bug.