Граф коммитов

24 Коммитов

Автор SHA1 Сообщение Дата
Henrik Skupin 8bbcc2773b Bug 1680962 - [remote] sendResponse has to always return a result in the response payload. r=remote-protocol-reviewers,jdescottes
Differential Revision: https://phabricator.services.mozilla.com/D98854
2020-12-07 14:01:17 +00:00
Maja Frydrychowicz 2536ddcb74 Bug 1614108 - Truncate Remote Agent log messages; r=remote-protocol-reviewers,whimboo
Copy format module from Marionette.

Differential Revision: https://phabricator.services.mozilla.com/D62344

--HG--
extra : moz-landing-system : lando
2020-02-15 08:22:56 +00:00
Andreas Tolfsen 8b58648e51 bug 1606612: remote: pretty-print WebSocket JSON payloads when verbose logging r=remote-protocol-reviewers,whimboo
When remote.log.level is Log.Level.Info or above, verbose logging
is enabled and we pretty-print JSON payloads in requests to the
HTTPD in JSONHandler.

This patch matches the behaviour of the JSONHandler logging, where
JSON payloads are logged to stdout with special formatting before
being transmitted across WebSocket connections.

Differential Revision: https://phabricator.services.mozilla.com/D58506

--HG--
extra : moz-landing-system : lando
2020-01-06 09:37:02 +00:00
Brindusan Cristian 87aed6f2be Backed out 2 changesets (bug 1606612) for 'remote' failures at browser_scriptToEvaluateOnNewDocument.js. CLOSED TREE
Backed out changeset d0ff02a17ad9 (bug 1606612)
Backed out changeset 4368466b495b (bug 1606612)
2020-01-02 18:19:40 +02:00
Andreas Tolfsen 986fa21674 bug 1606613: remote: stop logging handled errors r=remote-protocol-reviewers,whimboo
Errors that arise from use of the protocol, for example by the client
passing in the wrong argument or an operationg being unsupported, are
returned to the client.  Since these are not inherent implementation
problems there is no point to double-logging them in the server.

This is a left-over from when the remote agent was in a prototype
stage and we couldn't always rely on the Puppeteer client to
interact with Firefox correctly.

Differential Revision: https://phabricator.services.mozilla.com/D58508

--HG--
extra : moz-landing-system : lando
2020-01-02 12:02:17 +00:00
Andreas Tolfsen d482c88ae3 bug 1606612: remote: pretty-print WebSocket JSON payloads when verbose logging r=remote-protocol-reviewers,whimboo
When remote.log.level is Log.Level.Info or above, verbose logging
is enabled and we pretty-print JSON payloads in requests to the
HTTPD in JSONHandler.

This patch matches the behaviour with JSON payloads being transmitted
across WebSocket connections.

Differential Revision: https://phabricator.services.mozilla.com/D58506

--HG--
extra : moz-landing-system : lando
2020-01-02 13:08:54 +00:00
Henrik Skupin 50ad3cd134 Bug 1600317 - [remote] Deny internal methods to be called. r=remote-protocol-reviewers,maja_zf
As long as we do not validate incoming messages against the
Chrome DevTools JSON schema, all incoming commands would be
executed. To prevent clients from changing internal data by
calling internal commands (prefixed with "_"), deny their
execution.

Differential Revision: https://phabricator.services.mozilla.com/D55411

--HG--
extra : moz-landing-system : lando
2019-12-02 14:28:13 +00:00
Henrik Skupin 656a009825 Bug 1598468 - [remote] Temporarily stop emitting the "Target.receivedMessageFromTarget" event. r=remote-protocol-reviewers,ato
This event is currently sent for each and every message,
and as such duplicates every log entry as displayed when
having the Puppeteer debug logs turned on.

Until we can fix it to behave correctly, it should be
disabled.

Differential Revision: https://phabricator.services.mozilla.com/D54273

--HG--
extra : moz-landing-system : lando
2019-11-25 15:34:24 +00:00
Alexandre Poirot f0a9475719 Bug 1563690 - Make Target class save a list of Connection rather than Session. r=remote-protocol-reviewers,jdescottes
Connection already saves the list of Session, so it is more natural
to save it only once there and instead directly close the connections
from Target. Each connection is going to cleanup all related sessions.

I also stop automatically registering the session to the connection from Session constructor,
it felt not explicit enough.

Differential Revision: https://phabricator.services.mozilla.com/D37045

--HG--
extra : moz-landing-system : lando
2019-07-18 16:39:11 +00:00
Alexandre Poirot 370bc3f1f2 Bug 1563692 - Move all CDP's JSON packet handling to Connection. r=remote-protocol-reviewers,jdescottes,ato
This helps sharing a single implementation of how the JSON objects
are read and written from/to the WebSocket connection.
Also, by delegating the command calls to the Session via `Session.execute`
and expecting a promise with a resolution or rejection, we make error
handling of command calls clearer and unified.

Differential Revision: https://phabricator.services.mozilla.com/D37046

--HG--
extra : moz-landing-system : lando
2019-07-11 17:45:29 +00:00
Alexandre Poirot 9c99764b14 Bug 1563685 - Rename WebSocketDebuggerTransport class to match its JSM file name. r=remote-protocol-reviewers,jdescottes,ato
Differential Revision: https://phabricator.services.mozilla.com/D37040

--HG--
extra : moz-landing-system : lando
2019-07-09 09:36:16 +00:00
shindli 351e9a95ce Backed out 2 changesets (bug 1563685) for causing bc perma failures in browser/base/content/test/static/browser_all_files_referenced.js CLOSED TREE
Backed out changeset 10109cbe9641 (bug 1563685)
Backed out changeset 6525d810b0b0 (bug 1563685)

--HG--
rename : remote/server/WebSocketHandshake.jsm => remote/server/WebSocket.jsm
2019-07-08 22:25:34 +03:00
Alexandre Poirot a07eadfa52 Bug 1563685 - Rename WebSocketDebuggerTransport class to match its JSM file name. r=remote-protocol-reviewers,jdescottes,ato
Differential Revision: https://phabricator.services.mozilla.com/D37040

--HG--
extra : moz-landing-system : lando
2019-07-08 15:03:12 +00:00
Victor Porof 991b3c93c6 Bug 1561435 - Format remote/, a=automatic-formatting
# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D35925

--HG--
extra : source : b793788d0f38244b33eb59ea36e2c6624dbd12c5
2019-07-05 10:56:48 +02:00
Alexandre Poirot 4c3f075b45 Bug 1536794 - Close httpd's Connection when closing the remote agent's server. r=ato
This fixes the browser mochitest which currently timesout when calling server.close()
It started to timeout when the patch related to websocket handshake landed.

Depends on D24219

Differential Revision: https://phabricator.services.mozilla.com/D24220

--HG--
extra : moz-landing-system : lando
2019-03-21 14:17:36 +00:00
Alexandre Poirot 2e14b7808c Bug 1533682 - Implement sessions. r=ato
In order to be able to query/instantiate sub targets like remote frames, or tab targets from the MainProcessTarget,
we have to support session at the protocol layer.
This is all based on a `sessionId` attribute put on all inbound/outbound messages.

This patch will be later used, once we start instantiating sub targets.

Differential Revision: https://phabricator.services.mozilla.com/D22694

--HG--
extra : moz-landing-system : lando
2019-03-11 12:48:05 +00:00
Andreas Tolfsen 09aa28daaa bug 1523104: remote: drop outdated todos; r=me 2019-03-08 16:28:03 +00:00
Andreas Tolfsen 028b0ea0a5 bug 1523104: remote: signal that transport is ready when connection is created; r=ochameau 2019-03-08 16:28:01 +00:00
Andreas Tolfsen c889849aa3 bug 1523104: remote: self-assign id to connection; r=ochameau 2019-03-08 16:28:00 +00:00
Alexandre Poirot 73a38c3179 bug 1523104: remote: remove unused listener argument passed to Connection; r=ato 2019-03-08 16:27:39 +00:00
Alexandre Poirot 5e4abd9576 bug 1523104: remote: add missing Connection.close method called from TargetListener.close; r=ato 2019-03-08 16:26:38 +00:00
Alexandre Poirot cbe8f61b5b bug 1523104: remote: fix eslint by removing unecessary commas; r=ato 2019-03-08 16:26:36 +00:00
Alexandre Poirot 326eeff61c bug 1523104: remote: stop binding JSM exported globals on this; r=ato
This was breaking the constructor name, used in Domain.jsm.
As doing

	this.Foo = class extends Domain {

creates a class with undefined constructor name.
While

	class Foo extends Domain {

creates a class with "Foo" as domain name.
2019-03-08 16:26:33 +00:00
Andreas Tolfsen 06faaf9146 bug 1523104: remote: initial cdp prototype; r=ochameau 2019-03-08 16:26:22 +00:00