On 31/08/17 02:14, Michael Smith wrote:
On 8/30/2017 15:56, David Burns wrote:
> Do we know if the other vendors would see value in having this spec'ed properly so that we have true interop here? Reverse engineering seems like a "fun" project but what stops people from breaking stuff without realising?

Fortunately we're not reverse engineering here (for the most part), all protocol messages are specified in a machine-readable JSON format which includes inline documentation [0] --- this is what the cdp Rust library consumes. The spec is versioned and the authors do seem to follow a proper process of introducing new features as "experimental", stabilizing mature ones, and deprecating things before they're removed.

I think that the reverse engineering part is not the wire protocol, which is usually the most trivial part, but the associated semantics. It doesn't seem that useful to support the protocol unless we behave in the same way as Chrome in response to the messages. It's the specification of that behaviour which is — as far as I can tell — missing, and which seems likely to involve reverse engineering.

In general it seems unfortunate if we are deciding to implement a proprietary protocol rather than opting to either extend something that is already a standard (e.g. WebDriver) or perform standardisation work alongside the implementation. What alternatives have we considered here? Is it possible to extend existing standards with missing features? Or are the current tools using the protocol so valuable that we don't have any choice but to support them on their terms? If it's the latter, or we just think the Chrome protocol is so technically superior to the other options that we would be foolish to ignore it, can we work with Google to get it standardised? I think some meaningful attempt at standardisation should be a prerequisite to this kind of protocol implementation shipping in Firefox.
_______________________________________________
dev-platform mailing list
dev-platform@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-platform

Reply via email to