July 2015


Worked on a patch to add Rust macros to autoconf, whereby I was introduced to the M4 macro language.

1:1 with dburns.


Gave a talk on the WebDriver standard at the Selenium meetup in Belfast.


Reviewed r/5445.


Spent some time doing my expenses for recent trips.

Reviewed r/5442.

Filed bug 1180810.


Leadership QA session in the London office.

Work on patch for librustdoc.


Submitted PR 26881 to Rust for generalising some keyboard shortcut code in the HTML API browser.

Submitted PR 26882 also to Rust that removes the border-radius of the help popup dialogue.

Submitted PR 26887 which blurs the background of the rest of the document when the help dialogue is not hidden in the online Rust API browser.


On PTO from today until 19 July.


Followed up on review comments for my patch to librustdoc. Posted a few screenshots to ease the review process.


Back at work from holiday.

Rebased, fixed up, and squased PR 26887 to Rust about blurring the background when the help dialogue is open for the HTML presentation in librustdoc.

Answered some email, although found that Apple has broken SMTP two-factor authentication with GMail which made things more difficult than they should be.

Spent some time investigating office wi-fi issues (again).

Submitted PR 109 to WebDriver which unbreaks four references.

Submitted PR 110 to WebDriver which imports the CSS WG’s specification style.

Filed bug 1185662 and bug 1185664 based on the comments in bug 1177608 about adding support for optimised- and debug builds with rustc in Gecko.

Authored my deliverables for Q3.

Continued work on bug 1177608.


Submitted Q3 deliverables.

Submitted PR 111 to the WebDriver specification that introduces the notion of switch case statements.

Also submitted WebDriver PR 112, 113, 114, 115, 116, 117, 118, 119, 120, and 121.

Pushed a try run for bug 1177608 and pushed to review at rb/13687.


Had 1:1 with dburns.

Fixed up review issues for bug 1177608.

Filed bug 1186455 following code review for 1177608.

Filed bug 1186503 on a Treeherder UI bug.

Started work on bug 1186455 about providing an autoconf macro for compiling, linking, and invocating a Rust function from C.


Pushed bug 1177608 to inbound.

Submitted PR 122 to WebDriver which turns issue comments visible.

Submitted PR 123 to WebDriver to correct chapter section close tags.

Started work bug 1185664.


Fixed up an issue with non-inclusive 0 for PR 120 to WebDriver.

Pushed bug 1185664 to review, rb/14111.

Fixed up code review issues for PR 111 regarding introducing a switch and match statement to the WebDriver specification.

Submitted PR 126 to WebDriver with a few more validation fixes. This reminds me that I really need to fix the validation test target so that Travis can notify us of these things.

Submitted PR 128 which suboptimally fixes the validation of the WebDriver specification.


Submitted PR 129 to WebDriver which fixes inconsistencies in return statements.

Submitted PRs 130, 131, 132, and 133 to WebDriver.


Submitted PRs PR 134, PR 135, and PR 136 to WebDriver, which all address extracting data from return values.

Submitted PR 137 which defines Get Element CSS Value to the WebDriver specification.

Also submitted PR 138 that corrects the retrieval of the element from its parameters, rather than attempting to deserialise a primitive value.

Submitted PR 139 to WebDriver which adds missing references to the Set Window Size command. Similarily PR 140 fixes up the Get Window Sized command.


Rebased bug 1153822, which has been lying around for a long time. It contains changes to make the Marionette protocol more similar to the one mandated by the WebDriver specification.

Also rebased bug 1168396 which is the Gaia Marionette client part of the patch.

Filed bug 1187895 about the B2G compilation issue on Linux with clang.

The Automation- and Tools team (A-team for short) was renamed Engineering Productivity today. I guess I’m into that now

Worked on getting Gaia integration tests for bug 1168396 running inside the Linux container provided by Taskcluster. This turned out to be a little bit more fiddly than anticipated, but a worthwhile exercise which I think might even be useful to others. Especially considering all the issues people are having running these tests.


Continued work on bug 1168396, or rather, on attempting to run the tests. It is clear by this point that the planets need to align in order to run them locally. After unsuccesful attempts with mounting the library path from the host OS in Docker and modifying LD_LIBRARY_PATH, which was successful for libgtk-3.0 and libstdc++6 but not for libgobject for some reason, I’ve decided to abandon all hope of running the Gaia integration tests against a local Gecko build in a container.

ahal kindly pointed out that bug 1179818 might help the situation a bit in the future.

Since the patch to the Marionette server in Gecko would have required backwards compatibility support due to the Firefox upgrade tests, I’ve decided to proceed with adding the same for the Marionette JS client in Gaia. This will allow me to land the patch individually from the m-c patch.


Reviewed bug 1188826.

Submitted PR 141 to WebDriver, which should finally fix all the validation issues.

Continued work on making the patch for bug 1168396 backwards compatible with the current Marionette server protocol.

Rebased various WebDriver PRs.

Submitted PR 142 to WebDriver with adds references to error code where applicable.

Closed PR 110 about importing the CSS WG’s stylesheet into our specification, and decided after discussion with dburns that we should apply inline fixes to the concrete things that annoys us.


Commented on a change in ReSpec which introduces two dozen more warnings on the WebDriver specification, arguing why I think it’s a bad idea to remove the @title attribute.

Submitted WebDriver PRs 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, and 155.


Filed bug 1189718 about an overflow painting problem when layers.async-pan-zoom is enabled.

Continued discussion about recent changes to ReSpec to which we were able to reach a compromise suggested by myself.

Submitted PR 156 to WebDriver which fixes references after a recent ReSpec release.