Closed
Bug 1014516
Opened 10 years ago
Closed 7 years ago
Support more devtools protocol features in marionette
Categories
(Remote Protocol :: Marionette, defect)
Tracking
(Not tracked)
RESOLVED
WONTFIX
People
(Reporter: ochameau, Unassigned)
Details
(Keywords: pi-marionette-transport)
From what I heard, marionette was using the devtools remote protocol as-is long time ago.
But at some point, due to new devtools features and some regression, marionettes stripped down its usage of devtools codebase and ended up reusing only a subset of it.
Today, on server side, it mostly uses transport.js:
http://mxr.mozilla.org/mozilla-central/source/toolkit/devtools/server/transport.js
And on the client side, it supports even less. The actors support is very limited and it doesn't support receiving messages that aren't a response to a given request.
This is what we call "unsolicited events" in devtools codebase and it allows to send at any time some events from the server to the client.
That introduces many really bad limitation in the layers on top of transport.py. marionette API executeScript has to be polling for any async event and the gaia integration test, based on executeScript has to do similarely...
And finally, if you want to use marionette for tooling, you will face the exact same limitation. For example if you want to write a tool using marionette to watch for some events, you will have to poll for them.
I already highlighted these limitation during the b2g coordination meetup and got a positive feeback from jgriffin about patching transport.py to support more devtools protocol features, but I'm having hard time having spare cycle to look at this, so I would be happy to mentor anyone to do this.
The most important feature to add is unsolicited events, which would allow sending from firefox/device any event at any time to the marionette client. But ideally I would like to see transport.py be a suggested/maintained implementation of devtools protocol client for python. (We miss a better usage of actors and we recently introduced bulk data [bug 797639] to efficiently transfer big chunk of data without involving JSON)
Updated•10 years ago
|
Keywords: ateam-marionette-transport
Comment 1•7 years ago
|
||
Not something we are going to fix anytime soon
Status: NEW → RESOLVED
Closed: 7 years ago
Resolution: --- → WONTFIX
Updated•2 years ago
|
Product: Testing → Remote Protocol
You need to log in
before you can comment on or make changes to this bug.
Description
•