Open Bug 1904665 Opened 3 months ago Updated 15 hours ago

Prepare the Remote Agent code base for parent process event dispatching

Categories

(Remote Protocol :: Agent, task, P2)

task
Points:
5

Tracking

(Not tracked)

ASSIGNED

People

(Reporter: whimboo, Assigned: whimboo)

References

(Blocks 9 open bugs)

Details

(Whiteboard: [webdriver:m13], [wptsync upstream])

Attachments

(3 files, 1 obsolete file)

Dispatching events from the parent process will cause us to have to update the Actions module in certain ways. This bug covers the required work to prepare the code base for widget level events:

  • Move the JSON deserialization and Actions processing code entirely into the parent process. Use the MarionetteCommandsActor for IPC communication to call specific EventUtils methods in the content process.

As best we should have the new wdspec job created first to ensure that we do not introduce regressions.

No longer blocks: 1904671
Depends on: 1904671
Assignee: nobody → hskupin
Status: NEW → ASSIGNED

Actually we wont need the extra wdspec jobs for this particular work so removing it from the dependency list.

No longer depends on: 1904671

New try build with additional fixes and running all the web-platform tests to check if there are any other issues left:
https://treeherder.mozilla.org/jobs?repo=try&revision=b6dbec1ac4bce58838d452b4df9e12dc8c0f07e0

Attachment #9421527 - Attachment description: WIP: Bug 1904665 - [webdriver] Update JSdoc in Actions module. → Bug 1904665 - [webdriver] Update JSdoc in Actions module.
Attachment #9421528 - Attachment description: WIP: Bug 1904665 - Prepare the Remote Agent code base for parent process event dispatching. → Bug 1904665 - Prepare the Remote Agent code base for parent process event dispatching.
Attachment #9421528 - Attachment description: Bug 1904665 - Prepare the Remote Agent code base for parent process event dispatching. → Bug 1904665 - [remote] Prepare the Remote Agent code base for parent process event dispatching.
Attachment #9421529 - Attachment is obsolete: true
Pushed by hskupin@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/a7ed7e623ec9 [webdriver] Update JSdoc in Actions module. r=webdriver-reviewers,jdescottes https://hg.mozilla.org/integration/autoland/rev/669d9db4d064 [wdspec] Updated tests for perform actions to check for "move target out of bounds" errors. r=webdriver-reviewers,jdescottes https://hg.mozilla.org/integration/autoland/rev/7670532062ec [remote] Prepare the Remote Agent code base for parent process event dispatching. r=webdriver-reviewers,jdescottes
Created web-platform-tests PR https://github.com/web-platform-tests/wpt/pull/48015 for changes under testing/web-platform/tests
Whiteboard: [webdriver:m12] → [webdriver:m12], [wptsync upstream]

The test failures that caused this backout are related to pointer actions of type mouse and are appearing in drag & drop tests. The issue seems to be that the target coordinates for the draggable element are incorrect, resulting in the element not being dragged to the expected position, or the command returns too early, causing the checks to fail.

I attempted to reproduce the issue locally but didn't encounter any problems with the tests. I'm not sure yet what's different about the macOS workers in CI that's causing only those tests to fail.

Flags: needinfo?(hskupin)

Here is the difference between a passing and failing test:

PASS:

[task 2024-09-06T21:35:33.031Z] 21:35:33     INFO - PID 2775 | 1725658533029	Marionette	DEBUG	0 -> [0,523,"WebDriver:PerformActions",{"actions":[{"actions":[{"origin":{"element-6066-11e4-a52e-4f735466cecf":"5e7614ac-7dcc-4503-8593-611f5332dc0d"},"type":"pointerMove","x":0,"y":0},{"button":0,"type":"pointerDown"},{"duration":0,"origin":"pointer","type":"pointerMove","x":20,"y":0},{"button":0,"type":"pointerUp"},{"duration":100,"origin":"pointer","type":"pointerMove","x":80,"y":50}],"id":"pointer_id","parameters":{"pointerType":"mouse"},"type":"pointer"}]}]
[task 2024-09-06T21:35:33.033Z] 21:35:33     INFO - PID 2775 | 1725658533032	Marionette	TRACE	Dispatching tick 1/5
[task 2024-09-06T21:35:33.033Z] 21:35:33     INFO - PID 2775 | 1725658533033	Marionette	TRACE	Dispatch PointerMoveAction mouse with id: pointer_id x: 0 y: 0
[task 2024-09-06T21:35:33.040Z] 21:35:33     INFO - PID 2775 | 1725658533039	Marionette	TRACE	moveOverTime start: 0,0 target: 58,303 duration: 0
[task 2024-09-06T21:35:33.041Z] 21:35:33     INFO - PID 2775 | 1725658533039	Marionette	TRACE	PointerMoveAction.performPointerMoveStep [58,303]
[task 2024-09-06T21:35:33.047Z] 21:35:33     INFO - PID 2775 | 1725658533046	Marionette	TRACE	Dispatching tick 2/5
[task 2024-09-06T21:35:33.048Z] 21:35:33     INFO - PID 2775 | 1725658533046	Marionette	TRACE	Dispatch PointerDownAction mouse with id: pointer_id button: 0
[task 2024-09-06T21:35:33.059Z] 21:35:33     INFO - PID 2775 | 1725658533058	Marionette	TRACE	Dispatching tick 3/5
[task 2024-09-06T21:35:33.060Z] 21:35:33     INFO - PID 2775 | 1725658533058	Marionette	TRACE	Dispatch PointerMoveAction mouse with id: pointer_id x: 20 y: 0
[task 2024-09-06T21:35:33.062Z] 21:35:33     INFO - PID 2775 | 1725658533061	Marionette	TRACE	moveOverTime start: 58,303 target: 78,303 duration: 0
[task 2024-09-06T21:35:33.063Z] 21:35:33     INFO - PID 2775 | 1725658533061	Marionette	TRACE	PointerMoveAction.performPointerMoveStep [78,303]
[task 2024-09-06T21:35:33.069Z] 21:35:33     INFO - PID 2775 | 1725658533068	Marionette	TRACE	Dispatching tick 4/5
[task 2024-09-06T21:35:33.070Z] 21:35:33     INFO - PID 2775 | 1725658533068	Marionette	TRACE	Dispatch PointerUpAction mouse with id: pointer_id button: 0
[task 2024-09-06T21:35:33.075Z] 21:35:33     INFO - PID 2775 | 1725658533074	Marionette	TRACE	Dispatching tick 5/5
[task 2024-09-06T21:35:33.076Z] 21:35:33     INFO - PID 2775 | 1725658533074	Marionette	TRACE	Dispatch PointerMoveAction mouse with id: pointer_id x: 80 y: 50
[task 2024-09-06T21:35:33.078Z] 21:35:33     INFO - PID 2775 | 1725658533077	Marionette	TRACE	moveOverTime start: 78,303 target: 158,353 duration: 100
[task 2024-09-06T21:35:33.113Z] 21:35:33     INFO - PID 2775 | 1725658533111	Marionette	TRACE	PointerMoveAction.performPointerMoveStep [105,320]
[task 2024-09-06T21:35:33.265Z] 21:35:33     INFO - PID 2775 | 1725658533264	Marionette	TRACE	PointerMoveAction.performPointerMoveStep [158,353]
[task 2024-09-06T21:35:33.272Z] 21:35:33     INFO - PID 2775 | 1725658533271	Marionette	DEBUG	0 <- [1,523,null,{"value":null}]
[task 2024-09-06T21:35:33.273Z] 21:35:33     INFO - PID 2775 | 1725658533271	webdriver::server	DEBUG	<- 200 OK {"value":null}
[task 2024-09-06T21:35:33.273Z] 21:35:33     INFO - PID 2775 | 1725658533272	webdriver::server	DEBUG	-> POST /session/ac9c4acf-84c0-4477-9c11-51f06cfd07d0/execute/sync {"script": "return allEvents.events;", "args": []}
[task 2024-09-06T21:35:33.274Z] 21:35:33     INFO - PID 2775 | 1725658533273	Marionette	DEBUG	0 -> [0,524,"WebDriver:ExecuteScript",{"args":[],"script":"return allEvents.events;"}]
[task 2024-09-06T21:35:33.283Z] 21:35:33     INFO - PID 2775 | 1725658533281	Marionette	DEBUG	0 <- [1,524,null,{"value":[{"type":"mousemove","button":0,"buttons":0,"pageX":58,"pageY":303,"ctrlKey":false,"metaKey":false,"altKey":false,"shiftKey":false,"target":"dragTarget"},{"type":"mouseup","button":0,"buttons":0,"pageX":78,"pageY":303,"ctrlKey":false,"metaKey":false,"altKey":false,"shiftKey":false,"target":"dragArea"}]}]
[task 2024-09-06T21:35:33.284Z] 21:35:33     INFO - PID 2775 | 1725658533282	webdriver::server	DEBUG	<- 200 OK {"value":[{"altKey":false,"button":0,"buttons":0,"ctrlKey":false,"metaKey":false,"pageX":58,"pageY":303,"shiftKey": ... 0,"buttons":0,"ctrlKey":false,"metaKey":false,"pageX":78,"pageY":303,"shiftKey":false,"target":"dragArea","type":"mouseup"}]}
[task 2024-09-06T21:35:33.285Z] 21:35:33     INFO - PID 2775 | 1725658533283	webdriver::server	DEBUG	-> GET /session/ac9c4acf-84c0-4477-9c11-51f06cfd07d0/element/5e7614ac-7dcc-4503-8593-611f5332dc0d/rect
[task 2024-09-06T21:35:33.286Z] 21:35:33     INFO - PID 2775 | 1725658533284	Marionette	DEBUG	0 -> [0,525,"WebDriver:GetElementRect",{"id":"5e7614ac-7dcc-4503-8593-611f5332dc0d"}]
[task 2024-09-06T21:35:33.292Z] 21:35:33     INFO - PID 2775 | 1725658533290	Marionette	DEBUG	0 <- [1,525,null,{"x":75,"y":299.8999938964844,"width":7,"height":7}]
[task 2024-09-06T21:35:33.292Z] 21:35:33     INFO - PID 2775 | 1725658533291	webdriver::server	DEBUG	<- 200 OK {"value":{"x":75.0,"y":299.8999938964844,"width":7.0,"height":7.0}}

FAIL:

[task 2024-09-06T21:34:06.389Z] 21:34:06     INFO - PID 4605 | 1725658446388	Marionette	DEBUG	0 -> [0,524,"WebDriver:PerformActions",{"actions":[{"actions":[{"origin":{"element-6066-11e4-a52e-4f735466cecf":"f5de6044-cf0d-420c-a999-26d484faf4a9"},"type":"pointerMove","x":0,"y":0},{"button":0,"type":"pointerDown"},{"duration":0,"origin":"pointer","type":"pointerMove","x":20,"y":0},{"button":0,"type":"pointerUp"},{"duration":100,"origin":"pointer","type":"pointerMove","x":80,"y":50}],"id":"pointer_id","parameters":{"pointerType":"mouse"},"type":"pointer"}]}]
[task 2024-09-06T21:34:06.391Z] 21:34:06     INFO - PID 4605 | 1725658446390	Marionette	TRACE	Dispatching tick 1/5
[task 2024-09-06T21:34:06.391Z] 21:34:06     INFO - PID 4605 | 1725658446390	Marionette	TRACE	Dispatch PointerMoveAction mouse with id: pointer_id x: 0 y: 0
[task 2024-09-06T21:34:06.402Z] 21:34:06     INFO - PID 4605 | 1725658446401	Marionette	TRACE	moveOverTime start: 0,0 target: 58,303 duration: 0
[task 2024-09-06T21:34:06.403Z] 21:34:06     INFO - PID 4605 | 1725658446401	Marionette	TRACE	PointerMoveAction.performPointerMoveStep [58,303]
[task 2024-09-06T21:34:06.409Z] 21:34:06     INFO - PID 4605 | 1725658446408	Marionette	TRACE	Dispatching tick 2/5
[task 2024-09-06T21:34:06.410Z] 21:34:06     INFO - PID 4605 | 1725658446408	Marionette	TRACE	Dispatch PointerDownAction mouse with id: pointer_id button: 0
[task 2024-09-06T21:34:06.416Z] 21:34:06     INFO - PID 4605 | 1725658446416	Marionette	TRACE	Dispatching tick 3/5
[task 2024-09-06T21:34:06.417Z] 21:34:06     INFO - PID 4605 | 1725658446416	Marionette	TRACE	Dispatch PointerMoveAction mouse with id: pointer_id x: 20 y: 0
[task 2024-09-06T21:34:06.418Z] 21:34:06     INFO - PID 4605 | 1725658446417	Marionette	TRACE	moveOverTime start: 58,303 target: 78,303 duration: 0
[task 2024-09-06T21:34:06.418Z] 21:34:06     INFO - PID 4605 | 1725658446417	Marionette	TRACE	PointerMoveAction.performPointerMoveStep [78,303]
[task 2024-09-06T21:34:06.421Z] 21:34:06     INFO - PID 4605 | 1725658446420	Marionette	TRACE	Dispatching tick 4/5
[task 2024-09-06T21:34:06.421Z] 21:34:06     INFO - PID 4605 | 1725658446420	Marionette	TRACE	Dispatch PointerUpAction mouse with id: pointer_id button: 0
[task 2024-09-06T21:34:06.425Z] 21:34:06     INFO - PID 4605 | 1725658446424	Marionette	TRACE	Dispatching tick 5/5
[task 2024-09-06T21:34:06.425Z] 21:34:06     INFO - PID 4605 | 1725658446424	Marionette	TRACE	Dispatch PointerMoveAction mouse with id: pointer_id x: 80 y: 50
[task 2024-09-06T21:34:06.426Z] 21:34:06     INFO - PID 4605 | 1725658446425	Marionette	TRACE	moveOverTime start: 78,303 target: 158,353 duration: 100
[task 2024-09-06T21:34:06.529Z] 21:34:06     INFO - PID 4605 | 1725658446528	Marionette	TRACE	PointerMoveAction.performPointerMoveStep [158,353]
[task 2024-09-06T21:34:06.535Z] 21:34:06     INFO - PID 4605 | 1725658446534	Marionette	DEBUG	0 <- [1,524,null,{"value":null}]
[task 2024-09-06T21:34:06.536Z] 21:34:06     INFO - PID 4605 | 1725658446535	webdriver::server	DEBUG	<- 200 OK {"value":null}
[task 2024-09-06T21:34:06.536Z] 21:34:06     INFO - PID 4605 | 1725658446535	webdriver::server	DEBUG	-> POST /session/4ad05060-f4b2-4186-9cd0-caa7652dece3/execute/sync {"script": "return allEvents.events;", "args": []}
[task 2024-09-06T21:34:06.537Z] 21:34:06     INFO - PID 4605 | 1725658446536	Marionette	DEBUG	0 -> [0,525,"WebDriver:ExecuteScript",{"args":[],"script":"return allEvents.events;"}]
[task 2024-09-06T21:34:06.543Z] 21:34:06     INFO - PID 4605 | 1725658446542	Marionette	DEBUG	0 <- [1,525,null,{"value":[{"type":"mousemove","button":0,"buttons":0,"pageX":58,"pageY":303,"ctrlKey":false,"metaKey":false,"altKey":false,"shiftKey":false,"target":"dragTarget"},{"type":"mouseup","button":0,"buttons":0,"pageX":78,"pageY":303,"ctrlKey":false,"metaKey":false,"altKey":false,"shiftKey":false,"target":"dragArea"}]}]
[task 2024-09-06T21:34:06.544Z] 21:34:06     INFO - PID 4605 | 1725658446542	webdriver::server	DEBUG	<- 200 OK {"value":[{"altKey":false,"button":0,"buttons":0,"ctrlKey":false,"metaKey":false,"pageX":58,"pageY":303,"shiftKey": ... 0,"buttons":0,"ctrlKey":false,"metaKey":false,"pageX":78,"pageY":303,"shiftKey":false,"target":"dragArea","type":"mouseup"}]}
[task 2024-09-06T21:34:06.545Z] 21:34:06     INFO - PID 4605 | 1725658446543	webdriver::server	DEBUG	-> GET /session/4ad05060-f4b2-4186-9cd0-caa7652dece3/element/f5de6044-cf0d-420c-a999-26d484faf4a9/rect
[task 2024-09-06T21:34:06.546Z] 21:34:06     INFO - PID 4605 | 1725658446545	Marionette	DEBUG	0 -> [0,526,"WebDriver:GetElementRect",{"id":"f5de6044-cf0d-420c-a999-26d484faf4a9"}]
[task 2024-09-06T21:34:06.548Z] 21:34:06     INFO - PID 4605 | 1725658446547	Marionette	DEBUG	0 <- [1,526,null,{"x":55,"y":299.8999938964844,"width":7,"height":7}]
[task 2024-09-06T21:34:06.548Z] 21:34:06     INFO - PID 4605 | 1725658446547	webdriver::server	DEBUG	<- 200 OK {"value":{"x":55.0,"y":299.8999938964844,"width":7.0,"height":7.0}}

In both cases the recorded mousemove and mouseup events look similar and cause the checks to pass:

{
  "value": [
    {
      "type": "mousemove",
      "button": 0,
      "buttons": 0,
      "pageX": 58,
      "pageY": 303,
      "ctrlKey": false,
      "metaKey": false,
      "altKey": false,
      "shiftKey": false,
      "target": "dragTarget"
    },
    {
      "type": "mouseup",
      "button": 0,
      "buttons": 0,
      "pageX": 78,
      "pageY": 303,
      "ctrlKey": false,
      "metaKey": false,
      "altKey": false,
      "shiftKey": false,
      "target": "dragArea"
    }
  ]
}

The issue seems to be that the draggable element’s client rect hasn’t been updated and is still returning the old position. We might need to wait for the next animation frame to ensure that the rendering is fully updated before proceeding.

Upstream PR merged by moz-wptsync-bot

As it looks like it is indeed a race. A first try with requesting an animation frame seem to have helped. I've polished the code for both Marionette and WebDriver BiDi to make use of this technique. I pushed a try build for it:

https://treeherder.mozilla.org/jobs?repo=try&revision=ed54185b726ebb587dd40a2f22a0558198e5e9ec

Pushed by hskupin@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/046e38921371 [webdriver] Update JSdoc in Actions module. r=webdriver-reviewers,jdescottes https://hg.mozilla.org/integration/autoland/rev/ec79322c670d [wdspec] Updated tests for perform actions to check for "move target out of bounds" errors. r=webdriver-reviewers,jdescottes https://hg.mozilla.org/integration/autoland/rev/d20f091c1aab [remote] Prepare the Remote Agent code base for parent process event dispatching. r=webdriver-reviewers,jdescottes

Backed out for causing wpt failures on input-events-get-target-ranges-joining-dl-elements.tentative.html.

[task 2024-09-10T16:13:53.766Z] 16:13:53     INFO - TEST-START | /input-events/input-events-arrow-key-on-number-input-delete-document.html
[task 2024-09-10T16:13:53.790Z] 16:13:53     INFO - Closing window d53441cd-c72e-4235-adf2-d16a95b48aa2
[task 2024-09-10T16:13:54.528Z] 16:13:54  WARNING - Action send_keys failed
[task 2024-09-10T16:13:54.551Z] 16:13:54  WARNING - Traceback (most recent call last):
[task 2024-09-10T16:13:54.551Z] 16:13:54  WARNING -   File "/builds/worker/workspace/build/tests/web-platform/tests/tools/wptrunner/wptrunner/executors/executormarionette.py", line 898, in run_func
[task 2024-09-10T16:13:54.551Z] 16:13:54  WARNING -     self.result = True, self.func(self.protocol, self.url, self.timeout)
[task 2024-09-10T16:13:54.551Z] 16:13:54  WARNING -   File "/builds/worker/workspace/build/tests/web-platform/tests/tools/wptrunner/wptrunner/executors/executormarionette.py", line 1024, in do_testharness
[task 2024-09-10T16:13:54.551Z] 16:13:54  WARNING -     done, rv = handler(result)
[task 2024-09-10T16:13:54.551Z] 16:13:54  WARNING -   File "/builds/worker/workspace/build/tests/web-platform/tests/tools/wptrunner/wptrunner/executors/base.py", line 755, in __call__
[task 2024-09-10T16:13:54.552Z] 16:13:54  WARNING -     return callback(url, payload)
[task 2024-09-10T16:13:54.552Z] 16:13:54  WARNING -   File "/builds/worker/workspace/build/tests/web-platform/tests/tools/wptrunner/wptrunner/executors/base.py", line 772, in process_action
[task 2024-09-10T16:13:54.552Z] 16:13:54  WARNING -     result = action_handler(payload)
[task 2024-09-10T16:13:54.552Z] 16:13:54  WARNING -   File "/builds/worker/workspace/build/tests/web-platform/tests/tools/wptrunner/wptrunner/executors/actions.py", line 92, in __call__
[task 2024-09-10T16:13:54.552Z] 16:13:54  WARNING -     element = self.protocol.select.element_by_selector(selector)
[task 2024-09-10T16:13:54.552Z] 16:13:54  WARNING -   File "/builds/worker/workspace/build/tests/web-platform/tests/tools/wptrunner/wptrunner/executors/protocol.py", line 289, in element_by_selector
[task 2024-09-10T16:13:54.552Z] 16:13:54  WARNING -     raise ValueError(f"Selector '{element_selector}' matches no elements")
[task 2024-09-10T16:13:54.552Z] 16:13:54  WARNING - ValueError: Selector ':root > *|body:nth-child(2) > *|input:nth-child(1)' matches no elements
[task 2024-09-10T16:13:54.552Z] 16:13:54  WARNING - 
[task 2024-09-10T16:13:54.625Z] 16:13:54     INFO - TEST-ERROR | /input-events/input-events-arrow-key-on-number-input-delete-document.html | took 857ms
[task 2024-09-10T16:13:54.996Z] 16:13:54     INFO - STDOUT: cleanup aborted: Unable to remount device
[task 2024-09-10T16:13:55.119Z] 16:13:55     INFO - STDOUT: cleanup aborted: Unable to remount device
[task 2024-09-10T16:13:55.121Z] 16:13:55     INFO - Closing logging queue
[task 2024-09-10T16:13:55.121Z] 16:13:55     INFO - queue closed
[task 2024-09-10T16:13:55.136Z] 16:13:55     INFO - Setting up ssl
[task 2024-09-10T16:13:55.288Z] 16:13:55     INFO - certutil | b''
[task 2024-09-10T16:13:55.338Z] 16:13:55     INFO - certutil | b''
[task 2024-09-10T16:13:55.347Z] 16:13:55     INFO - certutil | b'\nCertificate Nickname                                         Trust Attributes\n                                                             SSL,S/MIME,JAR/XPI\n\nweb-platform-tests                                           CT,, \n'
[task 2024-09-10T16:13:55.938Z] 16:13:55     INFO - adb Granting important runtime permissions to org.mozilla.geckoview.test_runner
[task 2024-09-10T16:13:57.109Z] 16:13:57     INFO - adb launch_application: am start -W -n org.mozilla.geckoview.test_runner/org.mozilla.geckoview.test_runner.TestRunnerActivity -a android.intent.action.MAIN --es env0 MOZ_CRASHREPORTER=1 --es env1 MOZ_CRASHREPORTER_NO_REPORT=1 --es env2 MOZ_CRASHREPORTER_SHUTDOWN=1 --es env3 MOZ_HIDE_RESULTS_TABLE=1 --es env4 MOZ_IN_AUTOMATION=1 --es env5 MOZ_LOG=signaling:3,mtransport:4,DataChannel:4,jsep:4 --es env6 R_LOG_LEVEL=6 --es env7 R_LOG_DESTINATION=stderr --es env8 R_LOG_VERBOSE=1 --es env9 MOZ_PROCESS_LOG=/tmp/tmp1810c69spidlog --es env10 MOZ_DISABLE_NONLOCAL_CONNECTIONS=1 --es arg0 -no-remote --es arg1 -profile --es arg2 /data/local/tmp/test_root/profile --es arg3 --marionette --es arg4 about:blank
[task 2024-09-10T16:13:58.980Z] 16:13:58     INFO - Starting runner
[task 2024-09-10T16:13:59.945Z] 16:13:59     INFO - TEST-START | /input-events/input-events-arrow-key-on-number-input-prevent-default.html
Flags: needinfo?(hskupin)

With bug 1918049 the wpt1 input-events tests will be fixed. Not sure why those were failing but those were completely busted.

The Wd1 failures for invalid.py on Android happen because we now run a little bit longer and already before the test nearly took 65s. Similar to the classic test we should extend the timeout for this file.

Here a hopefully final try build:
https://treeherder.mozilla.org/jobs?repo=try&revision=18a7dfb9015b59b00381120d783faae600027f17

Flags: needinfo?(hskupin)
Pushed by hskupin@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/148a13606d43 [webdriver] Update JSdoc in Actions module. r=webdriver-reviewers,jdescottes https://hg.mozilla.org/integration/autoland/rev/56bcb0cc0d7f [wdspec] Updated tests for perform actions to check for "move target out of bounds" errors. r=webdriver-reviewers,jdescottes https://hg.mozilla.org/integration/autoland/rev/a204942669fe [remote] Prepare the Remote Agent code base for parent process event dispatching. r=webdriver-reviewers,jdescottes
Failed to create upstream wpt PR due to merge conflicts. This requires fixup from a wpt sync admin.
Flags: needinfo?(james)
Flags: needinfo?(aborovova)
Whiteboard: [webdriver:m12], [wptsync upstream] → [webdriver:m12], [wptsync upstream error]

Backed out for causing wpt failures in input-events-get-target-ranges-joining-dl-elements.tentative.html

  • Backout link
  • Push with failures
  • Failure Log
  • Failure line: TEST-UNEXPECTED-NOTRUN | /input-events/input-events-get-target-ranges-joining-dl-elements.tentative.html?Backspace | Backspace at "<dl><dd>list-item1[</dd></dl><dl><dd>list-item2]</dd><dd>list-item3</dd></dl>" - expected FAIL
    TEST-UNEXPECTED-NOTRUN | /input-events/input-events-get-target-ranges-joining-dl-elements.tentative.html?Backspace | Backspace at "<dl><dd>[list-item1</dd></dl><dl><dd>list-item2]</dd><dd>list-item3</dd></dl>" - expected FAIL
Flags: needinfo?(hskupin)

It seems that this has also caused some wd jobs to increase in frequency. Maybe someone can please take a look before re-landing this.

wd example of failures here

Created web-platform-tests PR https://github.com/web-platform-tests/wpt/pull/48306 for changes under testing/web-platform/tests
Whiteboard: [webdriver:m12], [wptsync upstream error] → [webdriver:m12], [wptsync upstream]
Flags: needinfo?(james)
Flags: needinfo?(aborovova)
Upstream PR merged by moz-wptsync-bot

To give a quick update: Once bug 1854942 landed I have to change the action commands to opt-out of the retry-logic. This is necessary because we have to call into content several times and when a navigation happens in the middle references to elements become invalid. That means we will use retryOnAbort: false and wrap all code within a try/catch which itself retries to run all again a given number of times before giving up.

I'm going to wait with landing this patch until we are no longer in the soft freeze phase, which means it will happen on Monday afternoon.

Flags: needinfo?(hskupin)
Whiteboard: [webdriver:m12], [wptsync upstream] → [webdriver:m13], [wptsync upstream]
Pushed by hskupin@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/fc29b0af3933 [webdriver] Update JSdoc in Actions module. r=webdriver-reviewers,jdescottes https://hg.mozilla.org/integration/autoland/rev/b4697182e31c [wdspec] Updated tests for perform actions to check for "move target out of bounds" errors. r=webdriver-reviewers,jdescottes https://hg.mozilla.org/integration/autoland/rev/680aa8a3f3b4 [remote] Prepare the Remote Agent code base for parent process event dispatching. r=webdriver-reviewers,jdescottes
Blocks: 1871346
No longer depends on: 1871346
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: