August 2017

1st August

Provided needinfo on bug 1384517.

Reviewed bug 1364389.

Closed geckodriver issue 850.

Submitted PR 992 to the WebDriver standard with various window state fixups.

Submitted patches for bug 1381876.

Provided needinfo and closed bug 1111282.

2nd August

Commented on geckodriver issue 852.

Commented on bug 1384956.

Closed geckodriver issue 851 as resizing to the same window size was fixed in bug 1357878.

Commented on geckodriver issue 852.

Reviewed bug 1380936.

Various fixups to bug 1381876.

Filed bug 1386581 as a follow-up to bug 1386356. It would be nice if MOZ_HEADLESS in the environment would imply --headless for the Marionette mach command.

Patched bug 1386581.

Addressed code review issues with PR 987 to the WebDriver specification.

Commented on bug 1386605.

Continued work on bug 1311041.

Commented on geckodriver issue 852.

Commented on geckodriver issue 813.

Closed geckodriver issue 821.

Thursday 3rd

Commented on WPT PR 6729.

Reviewed PR 995 and PR 994 to the WebDriver specification.

Commented on geckodriver issue 490.

Reviewed PR 107 to webdriver-rust.

Met with hskupin to discuss proxy configuration in geckodriver and Marionette.

1:1 with dburns.

Commented on bug 1264259 regarding the implementation of a user prompt handler for Marionette.

Closed geckodriver issue 854.

Reviewed bug 1376625.

Provided feedback on bug 1370403.

Provided needinfo on bug 1351940 regarding restored tabs, which with E10s causes the content browser not to be initialised before switching to the tab. This is an interesting case, and Marionette needs to handle this.

Provided needinfo on bug 1384875, which shows that tests involving window resizing are still flakey. I’m out of ideas on how to make this more deterministic.

Commented on bug 1321516. I need to spend some time figuring out which of the patches associated with enabling WebDriver conforming clicks that can land as separate bugs.

Rebased bug 1381876.

Friday 4th

Provided needinfo on bug 1384875.

Closed bug 1071526.

Commented on bug 1368453.

Filed bug 1387380 to stop capabilities negotiation in Marionette.

Filed and patched bug 1387447, bug 1387457, and bug 1387461. Also filed bug 1387470, and commented on bug 1321516. All this is in relation to shipping the WebDriver conforming Element Click implementation in Marionette by default.

Rebased bug 1381876.

Discussed how we can make the event module in Marionette accumulate state and fire the correct “implied” events. For example, a rapid succession of two mousedown + mouseup should fire a dblclick event, and a mousedown on the secondary button should cause contextmenu to fire.

Commented on geckodriver issues 856, 855, and 853.

Requested needinfo and commented on bug 1387403.

Commented on geckodriver issue 828.

Commented on Selenium PR 4278.

Commented on geckodriver issue 669.

Commented on bug 1383686.

Closed bug 1326397 due to removing capabilities matching from the Marionette server in bug 1387380.

Patched bug 1387380 to stop performing capabilities matching in the Marionette WebDriver service. This will for the future be left for geckodriver.

Patched bug 1387559 to drop the session_id fallback for the WebDriver:NewSession command.

Patched bug 1387552.

Reviewed bug 1387644.

Saturday 5th

Commented on geckodriver issue 853.

Fixed lint problems with bug 1387457.

Fixups to bug 1387559.

Closed bug 1341309 as a duplicate of bug 1376680.

Rebased bug 1381876.

Monday 7th

Commented on geckodriver issue 842.

Submitted PR 109 to webdriver-rust, introducing a state field on the window rect.

Patched bug 1376680.

Patched bug 1388036 to map the Fullscreen Window command in geckodriver to the correct Marionette command.

Filed and patched bug 1388072 to drop the legacy marionette.defaultPrefs.port and marionette.logging prefs from geckodriver. Unfortunately, the fallbacks cannot be removed from the Marionette server until Firefox 60 ships due to the Firefox UI tests’ testing of ESR.

Rebased and worked on bug 1311041.

Filed and patched bug 1388082 to remove Task.jsm/yield/generator functions from Marionette.

Commented on geckodriver issue 857.

Commented on PR 109 to webdriver-rust.

Tuesday 8th

Released webdriver crate 0.29.0.

Filed and patched bug 1388365 to upgrade the webdriver crate dependency to geckodriver.

Commented on bug 1384956.

Closed and commented on geckodriver issue 853. It turns out it was a duplicate of bug 1353074.

Closed geckodriver 837.

Commented on geckodriver issue 859.

Commented on geckodriver issue 838.

Filed and patched bug 1388424 as a follow-up to bug 1387380.

Closed geckodriver issue 860.

Closed bug 1290814.

Rebased and addressed test failures with bug 1388082.

Commented on bug 1388036 that the WebDriver:FullscreenWindow command is highly unreliable in Marionette and that we need to address that before adding WPT tests for it.

Commented on geckodriver issue 858 regarding file uploads.

Commented on Selenium PR 4278. Filed bug 1388465 as a follow-up to have geckodriver ask Marionette bind to port 0, for then later to read the profile’s marionette.port preference.

Commented on geckodriver issue 786 regarding input and synthesising events in Marionette.

Commented on webdriver-rust PR 109.

Commented on bug 1255946.

Friday 11th

Commented on geckodriver issue 860 regarding the parity of the Maximizd Window command in Marionette versus WebDriver.

Saturday 12th

Commented on bug 1388424.

Sunday 13th

Closed geckodriver PR 863.

Monday 14th

Commented on bug 1321516.

Rebased and addressed code review issues with bug 1388082.

Rebased bug 1388036.

Commented on WebDriver issue 1006.

Commented on WebDriver issue 1007.

Commented on WebDriver issue 1005.

Reviewed bug 1376625.

Provided needinfo on bug 1386605 and bug 1388249.

Tuesday 15th

Attempted to reproduce test failures on bug 1388036.

Filed and patched bug 1390520 to improve the readability of the Set Window Rect WPT tests.

Reviewed bug 1387092.

Commented on bug 1388249.

Provided needinfo on bug 1385476.

Reviewed bug 1390486.

Filed and patched bug 1390595 to exit with jsdoc’s return code from the mach marionette doc command.

Thursday 17th

Closed geckodriver issue 644 as it appears to have been fixed by bug 1390486. Also closed bug 1361329.

Closed geckodriver issue 879.

Replied to numerous internal email threads.

Commented on geckodriver issue 878. That WebElement#submit() does not wait for the document to finish loading, is a problem with the Selenium shim, since there is no primitive ‘submit command’ in the WebDriver specification.

Rebased and fixed issues with bug 1388036.

Reviewed WPT PR 6918 which adds support for chromedriver to wptrunner.

Reviewed WebDriver PR 1017.

Commented on bug 1386605.

Provided needinfo on bug 1374283 regarding clicking on an inline-level element that encapsulates a block-level element and inherits its margins/layout box in an XHTML document. There is probably one, maybe two, WebDriver specification issues here.

Commented on geckodriver issue 877.

Commented on geckodriver issue 881.

Closed and commented on geckodriver issue 858.

Closed geckodriver issue 880 as a duplicate of issue 858.

Closed PR 884 to geckodriver.

Commented on geckodriver issue 883.

Friday 18th

Closed geckodriver issue 885.

Commented on bug 1374283.

Addressed test failures with bug 1388036.

Filed and patched bug 1391662.

Filed bug 1391670 to request commit access level 1 for a contributor to Marionette.

Reviewed bug 1391661.

Reviewed bug 1369827.

Closed geckodriver issue 871.

Commented on bug 1254136 that we ought to have eslint warn us whenever a case block is missing a break statement. Filed and patched bug 1391699 as a follow-up.

Filed and patched bug 1391691 to make Marionette window manipulation commands idempotent.

Commented on geckodriver issue 881.

Commented on WebDriver PR 1017, requesting it to be backed out.

Did another review pass of PR 6918.

Commented on geckodriver issue 874.

Commented on geckodriver issue 874.

Closed geckodriver issue 869 because it is not reproducible.

Commented on geckodriver issue 875.

Commented on geckodriver issue 867.

Closed geckodriver issue 864 as <input type=hidden> elements are not supposed to be interactable.

Commented on geckodriver issue 860.

Reviewed WPT PR 6810 with wdspec tests for Get Page Source.

Reviewed WPT PR 6805.

Closed bug 1275270 as a duplicate of bug 1384956.

Commented on bug 1389049.

Saturday 19th

Rebased and landed bug 1391661 manually, because mozreview did not let me re-open the review.

Filed and patched bug 1391952.

Submitted PR 1020, PR 1021, and PR 1022 to the WebDriver specification, addressing a few window manipulation issues.

Monday 21st

Commented on bug 1391699.

Reviewed bug 1369827.

Addressed review comments with bug 1391952.

Commented on bug 1391661.

Addressed review comments with bug 1391691.

Rebased WebDriver PR 1022.

Investigated intermittent and commented on bug 1368039.

Investigated intermittent bug 1261598.

Made bug 1373444, which is an intermittent to do with switching to a cross-origin window, as dependent on bug 1311041, which is the Marionette window tracking bug.

Filed and patched bug 1392281 to pass the WindowProxy global into the action module instead of the container object.

Filed and patched bug 1392318 to use the fromJSON convention in the Marionette action module.

Filed and patched bug 1392323 to correct some misuse of pprint also in the action module.

Filed and patched bug 1392339 to fix misuses of nsIDOMWindow and nsIDOMElement throughout Marionette.

Filed and patched bug 1392346 to decouple the element staleness check from element.Store, in preparation of the window tracking changes.

Provided needinfo on bug 1391691.

Provided needinfo on bug 1387678.

Made another pass at reviewing bug 1369827.

Commented on geckodriver issue 887.

Commented on geckodriver issue 886.

Commented on geckodriver issue 888.

Commented on bug 1392313 regarding the geckodriver binary size.

Commented on geckodriver issue 873 and filed bug 1392368 to track it.

Commented on bug 1380310 regarding an intermittent which only occurs on the beta channel. I don’t think we should take any action here.

Commented on bug 1368767.

Requested needinfo and commented on bug 1380309.

Closed PR 134 to the Selenium docs.

Re-opened geckodriver issue 864 as it is really about elements hidden with a hidden attribute, but which are revealed throug styling such as display: block.

Filed wptdashboard issue 90 because the number of WebDriver test results on http://wpt.fyi/webdriver are obviously wrong.

Tuesday 22nd

Commented on bug 1380309.

Closed geckodriver issue 889.

Commented on geckodriver issue 875.

Commented on WebDriver PR 1024.

Closed geckodriver issue 890.

Commented on geckodriver issue 888.

Commented on geckodriver issue 322.

Closed geckodriver issue 792.

Closed geckodriver issue 857.

Closed geckodriver issue 865.

Closed geckodriver issue 876.

Commented on geckodriver issue 669.

Commented on Selenium PR 629 with my opinion on the design of the FirefoxDriver class in the Selenium Python client.

Rebased and addressed test failures with patches for bug 1391691.

Commented on webcompat PR 1718 regarding “geckodriver randomly failing tests”.

Closed WebDriver issue 1026.

Fixed test failures with patches for bug 1392346.

Worked on bug 1392368 in order to attempt reproducing geckodriver issue 873, but was unable to see the problem. Nevertheless, I wrote a lot of useful tests for the Set Window Rect, which is never amiss.

Addressed test failures with bug 1392318 and bug 1392323.

Commented on bug 1273470.

Closed geckodriver issue 891.

Commented on geckodriver issue 322.

Commented on geckodriver issue 889.

Closed geckodriver issue 892.

Commented on Selenium issue 2632.

Wednesday 23th

Had a WebDriver WG work day in the London office.

Thursday 24th

Reviewed WebDriver PR 1043 that changes some status codes.

Submitted webdriver-rust PR 117 to correct the HTTP status codes.

Closed issue 1042 to the WebDriver specification.

Commented on geckodriver issue 902.

Friday 25th

Commented on geckodriver issue 892.

Commented on WebDriver PR 1028.

Closed selenium-docs PR 135.

Submitted webdriver-rust PR 119 to drop window state from the window rect and correct the return types.

Filed webdriver-rust issue 120 because it is missing the noProxy key in the proxy configruation object.

Reviewed bug 1369827.

Reviewed bug 1392984.

Reviewed bug 1331313.

Commented on bug 1393064.

Commented on WebDriver issue 1035 regarding URI template variables.

Rebased bug 1392318.

Closed geckodriver issue 872 as it was fixed by bug 1391691.

Filed WebDriver issue 1047 about normative text in a note as a follow up to geckodriver issue 897.

Reviewed WebDriver PR 1041.

Filed and patched bug 1393812 to address the fallout from bug 1392346, which was reported in bug 1392854. This will effectively fix the fallout and make element.isDisconnected take separate window- and shadowRoot arguments.

Reviewed WebDriver PR 1048.

Filed bug 1393831 about making the pointerMove action use the element’s in-view centre point, which is the cause of geckodriver issue 901.

Address code review issues with patches for bug 1392368.

Sunday 27th

Continued work on window tracking for Marionette.

Monday 28th

Closed geckodriver issue 328 as it got fixed by bug 1363053.

Re-opened and commented on geckodriver issue 904 to make the Execute Script and Execute Async Script commands conform to the WebDriver specification with regards to recursion in complex JS Objects.

Closed geckodriver issue 907.

Commented on geckodriver issue 906.

Commented on geckodriver issue 905.

Reviewed bug 1331313 again.

Continued work on marionette-window-tracking.

Commented on bug 1381876.

Closed geckodriver issue 897.

Tuesday 29th

Closed geckodriver issue 908.

Closed geckodriver issue 909.

Commented on WebDriver PR 1044.

Reviewed WebDriver PR 1050.

Submitted PR 1051 to the WebDriver specification to fix some validation problems.

Worked on bug 1368265 to linearise and overlay the webdriver crate into testing/webdriver in mozilla-central. As always I ran into hg issues. However, I need help from gps to finally land the changesets on mozilla-inbound due to the push-hook commit message restriction.

Filed and patched bug 1394849 to introduce error.stack as a shorthand for creating stacktraces. It is a dependency for marionette-window-tracking.

Filed bug 1394881 to replace element.isDisconnected with Node#isConnected.

Filed WebDriver issue 1055 about is stale not taking into account possible shadow roots. Also submitted PR 1056 to fix it.

Submitted PR 1057 to the WebDriver specification to improve the definition of ScrollIntoViewOptions.

Submitted PR 1058 to the WebDriver specification with minor editorial fixes for the editable definition.

Submitted PR 1059, PR 1060, PR 1061, and PR 1062 to the WebDriver specification to clarify that the fields on JSON Objects are strings.

Submitted PR 1063 to the WebDriver specification which formalises the idea of optional error data in the protocol.

Wednesday 30th

Fixed test failures with bug 1394849.

Responded to needinfo for bug 1321516.

Rebased bug 1321516.

Patched bug 1394881.

Reviewed WebDriver PR 1069.

Commented on geckodriver issue 909.

Reviewed bug 1369827.

Commented on bug 1338004.

Provided needinfo on bug 1393812.

Attended an hour-long Marionette meeting.

Filed and patched bug 1395176 that introduces a lint rule forbidding the use of var.

Submitted PR 1072, PR 1073, PR 1074, PR 1075, PR 1076, and PR 1077 to the WebDriver specification.

Thursday 31st

Commented on geckodriver issue 639.

Reviewed selenium-docs PR 138.

Commented on WebDriver PR 1075.

Commented on geckodriver issue 913.

Commented on WebDriver PR 1077.

Provided needinfo on bug 1395469.

Patched bug 1395469.

Fixed a test failure with bug 1394849.

Commented on wptdashboard issue 90.

Provided needinfo on bug 1393051.

Closed bug 965283, bug 965304, bug 1045671, and bug 1031255.

Attended first Country Ambassador meeting.

Reviewed bug 1387094.