W3C

– DRAFT –
October 2021 WebDriver

13 October 2021

Attendees

Present
AutomatedTester, brwalder, foolip, jdescottes, jgraham, sadym, simonstewart
Regrets
-
Chair
AutomatedTester
Scribe
AutomatedTester, AutomatedTester:, David Burns, jgraham

Meeting minutes

RRSAgent: quiet

RRSAgent: silence

RRSAgent: create minutes

<jgraham> RRSAgent: Make logs public

<jgraham> RRSAgent: Make minutes v2

<jgraham> RRSAgent: stop

<jgraham> RRSAgent: Make minutes v2

https://www.w3.org/wiki/WebDriver/2021-10-BiDi

TPAC

AutomatedTester: Nothing currently organised. But TPAC is remote so there's still the possibility to organise something. Do we want something extra for TPAC or is the current cadence OK? If we do need something, what do people want? Also Web Extensions want to speak to us, we should find a way to make that work.

jgraham: No obvious need for an extra meeting from my side, but would be good to talk to WECG to see if there's the possibility to share work on some common functionality e.g. sandboxed scripts.

AutomatedTester: Don't want to overload with meetings. The current cadence seems OK to me, but I'll send out an email to check with the whole group. I'll also contact WECG.

Action: David to email wg about TPAC

Action: david to email WECG to organise meeting

formatted args support

github: https://github.com/w3c/webdriver-bidi/issues/139

github: https://github.com/w3c/webdriver-bidi/issues/139

jdescottes: I posted a question in an issue about formatted args supported
… we looked across the implementation and there is no real interop here
… and we looked at CDP and it [describes how that works]
… and we saw that stringify doing different things in different browsers
… so my question is do we want to standradize here or push it back to consumers?

<jgraham> https://bugzilla.mozilla.org/show_bug.cgi?id=1731543#c9 has the clearest examples of what's going on here

simonstewart: I think we want to send back the formatted text to consumers
… not everyone is going to be using JS
… we can send back different things depending on the types and some of it could be relatively undefinied
… additionally, we can send back larger groupds of data to help people not do a lot of small calls across the internet

jgraham: CDP already doesn't fill in the format specifiers over the wire
… and doesn't on the surface it doesn't know about substitution
… however there is a argumnet that makes all the clients do the work may not be worth it because we can simplify it on browser side
… and there could be a potential interop problem if things are not the same
… I think I am currently leaning on the client doing the substitutions as we have prior art in puppeteer
… and maybe in the future we can get to a point where we start the allow people to ask for the formatting but
… would prefer to do the simplier thing now (unformatted)

simonstewart: I am not sure the formatting consistency is a real issue
… it might be easier in the browser but there is a lot of work for clients and can lower the quality for end users if it is not implemented properly
… if people are using the logs to be searched they will be looking for messages they injected specifically

foolip: what is that cdp/marionette currently do?

jdescottes: You can go to the issue and see the differences in the implementations

Events for initial about:blank

github: https://github.com/w3c/webdriver-bidi/issues/141

jgraham: when we started looking at navigation we came across about:blank
… so historically about:black has been an area of bad interop
… and firefox is an outlier here

foolip: I have an opinion but does it really matter?

jgraham: I don't really know
… I suspect it doesn't matter that much
… [discusses a few different scenarios around events and loading of about:blank in different contexts]

foolip: On the web a person can create a new page and then observe it
… so if people want it we should give it to them
… there might be reasons, they can ignore if they want

jgraham: There is 1 case when you waant tocreate an about:blank and run some script
… but there might be case where we dont care where you create a frame and with a url. about:blank is loaded first and then the url and that might confuse folks

<foolip> I think hsivonen has had a lot of fun with about:blank and load events.

jgraham: I think we can see what the browsers are doing and make sure we do the most interoperable thing

Sending data from the local end (client) to the remote end (browser)

github: https://github.com/w3c/webdriver-bidi/issues/140

jgraham: how do we serialise the arguments from the client to the browser
… and this came up from a PR that sadym did
… and we don't want to copy selenium
… so if its an ID we will run it from what's stored
… so do people have opinions on what is sent to the browser?
… [describes the events and seriablisable args]
… so we can either have the client have a look process or have a symetrical serialisation process

sadym: So my idea was to have 1 source of truth
… and we mirror from the browser to the client
… e.g. If I create an object on the client side and passed it to the browser what would happen

jgraham: so on the browser side it would look like a immutable platform object
… we have some strong use cases for sending back full objects to the client and not that much in the other directions

sadym: the parametere in the `invoke` do we need this object reference? In CDP there is an implementation but it seems to be syntatic sugar

jgraham: I agree with you for the initial implementation
… although we should look and see what puppeteer/playwright do

brwalder: should we maintain object ideas on the client side
… I agree with sadym here that the browser should be the source of truth
… if we don't do that we have a lot of complexity on clients
… [describes a scenario]
… and I am not convinced the added complexity in browsers is worth it

jgraham: I don't think there is a lot of enthusiam for supporting this now
… so we'll do the simple thing which is great

sadym: one other scenario when a client receives an object with args and then sends it back the browser the args could be ignored
… and there wouldnt be a collision with things going back and forth

Reminder there is an editorial meeting

<jgraham> RRSAgent: make minutes v2

Summary of action items

  1. David to email wg about TPAC
  2. david to email WECG to organise meeting
Minutes manually created (not a transcript), formatted by scribe.perl version 136 (Thu May 27 13:50:24 2021 UTC).

Diagnostics

Succeeded: s/(//

Maybe present: RRSAgent