Enable Remote Agent in Thunderbird
Categories
(Thunderbird :: Upstream Synchronization, task)
Tracking
(thunderbird_esr78 unaffected)
| Tracking | Status | |
|---|---|---|
| thunderbird_esr78 | --- | unaffected |
People
(Reporter: darktrojan, Assigned: darktrojan)
References
Details
Attachments
(2 files)
Remote Agent will be required for upcoming changes to Marionette.
| Assignee | ||
Comment 1•5 years ago
|
||
| Assignee | ||
Comment 2•5 years ago
|
||
Comment 3•5 years ago
|
||
I want to add that when using the Remote Agent, which implies using the --remote-debugger-port argument, an additional HTTP server will run within Thunderbird. It's needed to accept client connections via HTTP that will immediately be upgraded to a WebSocket connection. To handle that we make use of httpd.js from /network/test/httpserver. As long as we have to support CDP this wont change.
Given that there is only a single Marionette test available I wonder if this is a temporary solution, or if you want to keep Marionette support for Thunderbird. I think that this would be important to know, also regarding our compatibility matrix and necessary work to keep Thunderbird support working.
If we are going with that solution we could make CDP an opt-in and still allow these parts of the code to be disabled by default via the --enable-cdp build time flag that would default to false for Thunderbird. This I would have to do at the same time while working on bug 1700910.
As such please let me know what's the preferred option for you before we actually get review on these patches.
| Assignee | ||
Comment 4•5 years ago
|
||
How are Mochitests going to be affected by all of this?
Comment 5•5 years ago
|
||
Oh, right! That's a good point.
WebDriver BiDi will be an opt-in for WebDriver. That means that everything will have to continue to work as is by just using Marionette.
The build time flags on one side are needed so that we can share the common code between Marionette and Bidi under /remote. Parts of that will also be used by the CDP implementation. As such /remote is a better place to host all the modules. And that should be independent if --remote-debugger-port has been specified or not.
On the other side if no CDP and BiDi support is needed in Thunderbird (yet) we might not need the second patch on this bug. Not enabling the Remote Agent would still allow us to use the shared modules via Marionette, and keep the component + HTTP server off. But if that's done I'm not sure in how to get the command line argument not added. It would mean that it is a no-op, which also doesn't sound ideal.
Note that in the future the WebDriver BiDi implementation will replace Marionette, so that clients and consumers have to be updated. But that's not something for this year, but maybe next year for the first steps towards this direction.
Comment 6•5 years ago
|
||
I don't think there is much need to hang on to Marionette for Thunderbird.
Comment 7•5 years ago
|
||
(In reply to Magnus Melin [:mkmelin] from comment #6)
I don't think there is much need to hang on to Marionette for Thunderbird.
As Geoff pointed out you will need it for Mochitests so that the necessary extensions can be installed.
Nevertheless if there are no objections we will go ahead as planned. Thanks.
| Assignee | ||
Updated•5 years ago
|
Pushed by geoff@darktrojan.net:
https://hg.mozilla.org/comm-central/rev/5b578fe8dc96
Enable Remote Agent command-line flag in Thunderbird. r=mkmelin
| Assignee | ||
Comment 10•5 years ago
|
||
Got a little bit out of sequence here. I'll let PulseBot do the honours when the m-c merge happens.
Comment 11•5 years ago
|
||
| bugherder | ||
Description
•