16:50:32 RRSAgent has joined #webdriver 16:50:36 logging to https://www.w3.org/2023/03/08-webdriver-irc 16:51:37 rrsagent set logs world-visible 16:52:02 Meeting: WebDriver Bidi - March 2023 16:53:41 chair: David Burns 16:54:04 Agenda: https://www.w3.org/wiki/WebDriver/2023-03-BiDi 16:54:20 scribe: AutomatedTester 16:54:57 rrsagent, create minutes 16:54:58 I have made the request to generate https://www.w3.org/2023/03/08-webdriver-minutes.html AutomatedTester 16:56:43 patrickangle_ has joined #webdriver 17:01:35 simons has joined #webdriver 17:02:23 present+ 17:02:30 present+ 17:02:39 present+ 17:02:40 present+ 17:02:41 present+ 17:02:48 present+ 17:02:49 present+ 17:03:13 present+ 17:03:22 present+ 17:04:27 topic: Use CDDL default value and ranges instead of pros 17:04:39 github: https://github.com/w3c/webdriver-bidi/issues/368 17:05:22 whimboo: for the networking changes that are coming jgraham set some defaults in the cddl definition 17:05:46 ... there was a question that came up about how do we have prose for this ? 17:06:16 jgraham: I haven't looked at how the lib (rust) behaves 17:06:32 ... there are some oddities in the cddl definitions for defaults 17:06:49 ... but I need to check into this a lot more 17:07:02 ... and perhaps cbromann has more info 17:08:31 cb: When I wrote the npm package from cddl to AST to typescript I was able to do it 17:08:41 ... but I saw you move to Rust and it might behave differently 17:09:08 jgraham: ok. I have also noticed that we don't have sufficient testing around the CDDL package 17:09:36 cb: I have been waiting for Saucelabs to transfer the package over to me so I will be able to contribute more on this 17:10:11 jgraham: great. I was just commenting that we haven't had testing of the cddl payloads as a priority and we should start doing that. 17:11:01 topic: Consider moving WebDriver HTTP wpt tests to “webdriver/tests/http” 17:11:15 github: https://github.com/web-platform-tests/wpt/issues/38768 17:11:40 whimboo: this is not for the spec but for where we store the wpt tests 17:12:25 ... and since we started tests for webdriver-bidi it was added as a subfolder 17:12:46 ... so do we want to move the "classic" tests to a new subdirectory 17:12:48 q+ 17:12:56 q+ 17:13:02 q? 17:14:08 automatedtester: why not have a new highlevel dir? 17:14:34 whimboo: there are some tests that are shared between like window handles etc and not sure how easy that will be to share them 17:14:45 Zakim has joined #webdriver 17:16:08 jgraham: I don't have opinion on moving it. One technical issue is that we have 150 char limit on path lengths which is enforced by wpt 17:16:17 q+ 17:16:45 ... about the TLD it would require a lot of work to get things working 17:17:34 ... and it's a issue with the wpt module setup so would not like to touch this if it purely for aesthetics. 17:17:37 q? 17:17:41 ack next 17:18:55 whimboo: for the path lengths... I don't think that this is going to be an issue because of the way we are structuring these things. It's more "http" vs "classic" 17:19:17 gsnedders: I have an opinion 17:20:04 simonstewart: I think that v1 would be better than classic 17:20:18 q+ 17:20:45 ack next 17:20:57 jgraham: I am against v1 17:21:26 ... and it becomes very confusing as we are working on it 17:21:56 simonstewart: I think that http would be better 17:23:08 whimboo: http can cause confusion and I think classic would be better 17:23:28 action: Whimboo to move http based tests into /http 17:24:34 topic: Pointer action subtype behaviour when subtype is unsupported 17:24:46 github: https://github.com/w3c/webdriver/issues/1665 17:25:47 patrickangle: currently it is not clear in webdriver classic how we are supposed to handle "unsupported" on a platform. e.g. Touch on MacOS won't work 17:26:11 q+ 17:26:30 ... our current proposal is mouse is the default and it is aliased to the relevant item like pointer, mouse, touch 17:27:04 ack next 17:27:24 jgraham: I think that makes sense. It is a bug 17:27:51 ... the spec can add new types in the future, we've done it before, so it make sense to tell you that the type is not supported 17:28:07 ... in gecko we inject "fake events" that isTrusted 17:28:42 ... but not at DOM level 17:28:49 ... [explains how it works on Firefox for android] 17:29:01 ... and in principle I am happy with that idea 17:29:05 q+ 17:29:12 ack next 17:30:01 gsnedders: There is more info in the issue tracker 17:30:03 ... like on MacOS we can do it 17:30:47 ... [describes complext touch inputs that can't be down with a mouse] 17:31:43 sadym: is it only about the subtype? or is about touch and click in a test? 17:32:03 patrickangle: we're mostly talking about the subtype here 17:32:24 ... and what to do when one is not supported? 17:32:25 q+ 17:32:26 q? 17:32:29 ack next 17:32:51 jgraham: Supporting touch on desktop is kinda allowed 17:33:29 ... we can update the language in the spec but it is a bit of a question on what to do with your users 17:33:56 ... if things still work great 17:34:16 gsnedders: the pointer tests in wpt they want to test everything separately 17:34:30 ... so knowing if something is aliased is useful 17:34:41 ... and if fallible that can be useful 17:35:03 ... but sometimes the aliasing can make testing pointers harder 17:35:23 jgraham: the spec is wooly here... and it works pretty well for most cases 17:35:56 ... I don't think that this potentially needs to be in a metric 17:36:23 gsnedders: There is talk around getting the mobile cases into the Interop report 17:37:02 gsnedders: for the normal users it defaulting to the alias of what the pointer is doing is "good enough" 17:37:10 ... but isn't great for wpt 17:39:51 topic: Add browsingContext parameter to script.addPreloadScript 17:40:10 github: https://github.com/w3c/webdriver-bidi/issues/373 17:40:55 sadym: on this topic... we noticed the biggest difference between cdp and bidi there is no way to pass in the browsing context 17:41:18 q+ 17:41:20 ... e.g. if you want to set MutationObserver on a specific page you cant 17:41:50 ... so our suggestion is to add the browsingContext to the method 17:41:53 ack next 17:42:17 jgraham: I think this usecase was never discussed 17:43:05 ... though it does feel like addPreloadScript will t hen exist for the rest of the life cycle of that context 17:43:10 ... but I don't see an issue here 17:44:40 sadym: do we want context or contexts. The latter prevents round trips 17:44:59 jgraham: being able to supply more than one makes most sense 17:45:25 topic: Extend browsingContext.ReadinessState with networkIdle and networkAlmostIdle 17:45:36 github: https://github.com/w3c/webdriver-bidi/issues/374 17:46:28 q+ 17:46:32 sadym: we have 2 more values that are used heavily in puppeteer than what we are already have in the spec 17:46:36 q+ 17:46:55 ... so we would like to add these 2 things. I know that jgraham has concerns about how t o spec this 17:47:00 ack 17:47:04 ack next 17:47:46 patrickangle: I share the same concern as jgraham 17:48:07 ... if we can do this with on top of network interceptions 17:48:27 sadym: we can do it that there were X values in a time frame 17:48:51 ... and if we can do it on the netwrok logging I think that we should be able to spec this out 17:49:57 patrickangle: I am now more concerned about putting this into webdriver. I feel that it would be better to be in the in client and they can explain it to users better 17:50:22 ... I don't think this is good for each of the impl doing this heuristic 17:50:25 ack 17:50:28 ack next 17:51:03 jgraham: I think I agree with patrickangle here 17:51:44 ... I am worried that people will depend on this heuristic and that won't be fully interop because the timing of the network requests could be different between each browser 17:52:09 ... but if clients are already depending on this then I guess we're going to need to figure out how this works 17:52:33 ... If we are going to spec this we are going to need to get more indepth details on how CDP is working 17:53:11 ... if it is basically a heuristic should we say that we return when N requests are left in T seconds 17:53:26 q? 17:54:02 action: sadym to write down in depth how CDP works here so we can make a more informed decision 17:54:37 topic: Should we serialize platform objects as JS objects with enumerable own properties included 17:54:47 github: https://github.com/w3c/webdriver-bidi/issues/352 17:55:35 sadym: should we serialize platform objects like JS objects, with own props? etc 17:55:44 ... and I created a PR for this. 17:55:50 q+ 17:55:50 q? 17:55:53 ack next 17:56:18 jgraham: I think the reason it doesnt work like that atm 17:56:39 ... platform objects implicitly get different way of serialising 17:57:18 ... it would be useful to get feedback from clients on what they really want here 17:57:39 ... we have had some theoretical goals here but it would be good to get real world info 17:58:06 ... and we've tried to avoid creating a new type 17:58:29 ... and another concern is "What does the extension story look like here?" 17:58:55 ... if we move from platform object to normal are we going to break client code 17:59:17 ... one thing we do that cdp doesn't do is "serialising the constructor" 18:01:14 ... I can see there being a lot of value in sharingt he constructor back to the client for the platform objects 18:01:38 ... and we can carry on in the issue tracker 18:02:16 rrsagent, publish minutes 18:02:17 I have made the request to generate https://www.w3.org/2023/03/08-webdriver-minutes.html AutomatedTester 18:02:47 rrsagent, set logs world-visible 18:03:12 github-bot: end topic 18:04:25 simons has joined #webdriver 18:06:49 simons has joined #webdriver 18:09:46 simons has joined #webdriver 18:11:20 simons_ has joined #webdriver 18:17:35 simons has joined #webdriver 18:33:25 simons has joined #webdriver 19:47:57 simons has joined #webdriver 19:55:11 simons has joined #webdriver 20:32:26 Zakim has left #webdriver