Confirmed users
111
edits
(add new project) |
(→Automation & Tools: Remove project that is now high priority to finish before May.) |
||
| Line 187: | Line 187: | ||
| I'll happily add the backend to TaskCluster workers, so we can debug processes in CI tasks from a browser. | | I'll happily add the backend to TaskCluster workers, so we can debug processes in CI tasks from a browser. | ||
|- | |- | ||
| Make WebDriver/marionette match the featureset of Selenium FirefoxDriver. | | <strike>Make WebDriver/marionette match the featureset of Selenium FirefoxDriver.</strike> | ||
| WebDriver is a protocol for remote control of browsers that is in the process of being standardised at W3C. At this time, the most common WebDriver implementation used with Firefox is Selenium FirefoxDriver. However this has a number of problems e.g. incompatibility with e10s. For internal testing we have developed "marionette", a remote control API with the featureset to replace FirefoxDriver, but using a simple JSON-based protocol rather than HTTP used by WebDriver. To bridge these two worlds we have developed "wires", a proxy written in Rust that translates between W3C-standard WebDriver and the marionette protocol. This allows Firefox to be controlled by any WebDriver-compatible client. | | <strike>WebDriver is a protocol for remote control of browsers that is in the process of being standardised at W3C. At this time, the most common WebDriver implementation used with Firefox is Selenium FirefoxDriver. However this has a number of problems e.g. incompatibility with e10s. For internal testing we have developed "marionette", a remote control API with the featureset to replace FirefoxDriver, but using a simple JSON-based protocol rather than HTTP used by WebDriver. To bridge these two worlds we have developed "wires", a proxy written in Rust that translates between W3C-standard WebDriver and the marionette protocol. This allows Firefox to be controlled by any WebDriver-compatible client.</strike> | ||
Although "wires" currently implements most of the features of the W3C spec, there are a number of improvements required before it can match the functionality of FirefoxDriver. In particular it currently doesn't support the "actions" API which allows simulating low-level events (key presses, mouse clicks, touches, etc.), although this is well supported in marionette itself. There are also some non-standard features that are much requested by early adopters, including the ability to explicitly provide a Firefox profile to run. The purpose of this project would be to add those features to wires. | <strike>Although "wires" currently implements most of the features of the W3C spec, there are a number of improvements required before it can match the functionality of FirefoxDriver. In particular it currently doesn't support the "actions" API which allows simulating low-level events (key presses, mouse clicks, touches, etc.), although this is well supported in marionette itself. There are also some non-standard features that are much requested by early adopters, including the ability to explicitly provide a Firefox profile to run. The purpose of this project would be to add those features to wires.</strike> | ||
| Rust (basic level only) and other programming experience. | | <strike>Rust (basic level only) and other programming experience.</strike> | ||
| jgraham | | <strike>jgraham</strike> | ||
| jgraham | | <strike>jgraham</strike> | ||
| | | This project has been reprioritized and is no longer suitable for GSoC. | ||
|- | |- | ||
| Redesign SETA and give it TaskCluster support | | Redesign SETA and give it TaskCluster support | ||