Public Project Meeting - April 08, 2021

Continuing the series of bi-weekly public project meetings, here is the timeline of the meeting held on April 08, 2021,5:30 PM CET. (Below times are on IST)

Meetings are held on the #selenium-tlc channel on Selenium Slack.


Diego Molina 8:59 PM

Ok, proposed agenda is:

  • General project statistics
  • Stuff implemented/fixed in the last two weeks
  • Pending work that needs to be done for the third Beta?
  • PRs that need to be reviewed

please feel free to add any other topics

pinging @titusfortner @manoj9788 @mmerrell @simonstewart @barancev @Puja Jagani @AutomatedTester @harsha509 @jimevans

Alright, let’s start with today’s public meeting :slightly_smiling_face:

9:02 PM

General project statistics

  • Previous meeting: 178 open issues, 23 open PRs
  • Current: 163, 24 PRs

Marcus Merrell 9:03 PM

no news to report from me–still working on the CoC with Karen, and working on either booking the Chicago venue for a 2022 conference, or getting our $40,000 back

Diego Molina 9:04 PM

thanks for sharing @mmerrell

Simon Stewart 9:04 PM

Presumably we’re looking at late 2022 for the in-person conference?

Diego Molina 9:05 PM

I hope so

are there any thoughts around a virtual conference this year?

Simon Stewart 9:06 PM

I’m lukewarm about virtual conferences. It’s hard to sit and watch YouTube videos all day

Diego Molina 9:06 PM

me too, but as a project we should consider that alternative

David Burns 9:06 PM

having just done one for work there is a “we’ve had enough” vibe going

9:07 PM

it was a success but I don’t think we could have done it later this year

Simon Stewart 9:07 PM

I’d love to do some short videos on topics, though

Things like relative locators, shadow DOM, CDP, etc

And we can do a “q&a” one with committers and a host

We should ask folks if they’d like to do something, and then maybe post one or two a month?

Diego Molina 9:08 PM right, a mini conference would be nice

Simon Stewart 9:08 PM

Provided we pay for someone to help make the videos and edit them

Titus Fortner 9:08 PM

less “talks” and more “video tutorials with Q&A?” :)

Diego Molina 9:08 PM

perhaps one day of workshops and one day of short talks

Simon Stewart 9:09 PM

Workshops are a really good thing to do

David Burns 9:09 PM

I would like to think on it more before committing either way

Simon Stewart 9:09 PM

Not even sure about “one day of short talks”. Just posting things regularly on the YT channel

Titus Fortner 9:09 PM

I really like it when there is a “time” that a video is shown, and the author can chat with people about it in whatever room, and then answer questions at the end

9:10 PM

then everything can be posted in whatever channel for people to watch

Simon Stewart 9:10 PM

I can see that

Diego Molina 9:10 PM

well, there we have a whole topic to think about :slightly_smiling_face:

Simon Stewart 9:10 PM

Ha! :slightly_smiling_face:

Titus Fortner 9:10 PM

but I do like the idea of a series of shorts on different pertinent selenium topics

9:11 PM

less “why testing is like a toaster oven” and more practical on how to get the most out of new Selenium 4, etc :-D

Simon Stewart 9:11 PM

Right

Diego Molina 9:12 PM

ok, I am a bit short of time today, so I suggest to go back to the agenda and if there is time, we can circle back to ideas about a “conference”

Titus Fortner 9:12 PM

:thumbsup:

Diego Molina 9:12 PM

Next topic:

  • Stuff implemented/fixed in the last two weeks

I have a short list of things I know they were done, so I will paste it here

  • CDP url for Firefox
  • Platform matching but when platform is Windows
  • noVNC added to docker-selenium

Simon Stewart 9:12 PM

Been quiet from me, but I have landed the bits to plumb through se:cdpVersion and have started on a unified New Session Queue

Diego Molina 9:13 PM

(there was a bug when matching Windows as a platform)

9:14 PM

yeah, if you try the Grid right now, CDP for Firefox should work also (but there are some CI tests failing for Firefox)

I also added noVNC to the docker containers, that bring us closer to have the live view in the Grid UI

Simon Stewart 9:15 PM

That’s very cool

Diego Molina 9:15 PM

Ok, so now having said what we have done during the last two weeks, we can now talk about what is left for beta 3:

Pending work that needs to be done for the third Beta?

I will paste the things that come from the previous meeting, but please add/remove as you wish

Simon Stewart 9:16 PM

Thank you

Diego Molina 9:16 PM

Server changes:

  • Enable retries of commands where necessary using failsafe
  • Pipe VNC connectors through the websocket plumbing for live video
  • Investigate: Grid gets stuck when screenshot is taken in a terminated session
  • Investigate: Router request timeouts when forwarding command to Node

Things left in Java, Python, JS, Ruby, C#?

  • “se:cdpVersion”?
  • Can all bindings do CDP over Grid?

Marcus Merrell 9:16 PM

(just to close out the 2022 conference idea–yes, Fall of 2022 in Chicago)

Simon Stewart 9:16 PM

Adding: unify the new session queue

Diego Molina 9:18 PM

We had this comment from the last meeting:

Here’s the plan, then. We’ll ship beta3 when two of these conditions are met:

  • The .net bindings support CDP over Grid
  • We send se:cdpVersion in Capabilities and that’s also handled by Grid

is this still valid? what do you all think?

Simon Stewart 9:18 PM

Time has elapsed. I’m not convinced we’re using se:cdpVersion properly on the local end yet

Titus Fortner 9:19 PM

looks like Java is the only one using it

Simon Stewart 9:19 PM

@jimevans can tell us whether the .Net bindings work

David Burns 9:19 PM

I will look at the Python/JS stuff for that tomorrow

Titus Fortner 9:20 PM

There are several Ruby bugs that we fixed, so I’m for releasing beta 3 even without cdpversion implemented

9:21 PM

I would like to get v90 & v91 devtools support added

Diego Molina 9:21 PM

Grid is now returning se:cdpVersion properly, and the Java bindings (when running locally) are also returning it properly

Titus Fortner 9:21 PM

or at least v90

David Burns 9:21 PM

that seems simple then…

Diego Molina 9:21 PM

but I wonder if the other bindings also create and manage se:cdpVersion when running locally (not over Grid)

Titus Fortner 9:22 PM

wait is Firefox using CDP 85 or 86?

Simon Stewart 9:22 PM

@titusfortner I can help you land the CDP v90 stuff

Diego Molina 9:22 PM

86

Titus Fortner 9:23 PM

I think I followed the guid and have the pdl files for the latest v90

Simon Stewart 9:23 PM

@diemol I’m not sure the java bindings use se:cdpVersion properly

David Burns 9:23 PM

firefox is 85 unless they changed it

Titus Fortner 9:23 PM

Well, if we aren’t hard coding it to 85, then I need to figure out how we want to approach that going forward :slightly_smiling_face:

I just see that trunk has FirefoxDriver set to use 86

(in Java)

which I didn’t think was correct

David Burns 9:24 PM

Java is wrong then

Simon Stewart 9:24 PM

Easy fix

David Burns 9:24 PM

r-

9:24

:stuck_out_tongue:

Diego Molina 9:25 PM

Seems we need to create a GitHub issue to track that

I’ll do that now

Simon Stewart 9:26 PM

Thanks

Jim Evans 9:27 PM

.NET still doesn’t proxy CDP across RemoteWebDriver yet.

is jumping through corporate IT/security/legal hoops right now.

Titus Fortner 9:29 PM

that sounds joyful

Diego Molina 9:30 PM

ok, created this to track it https://github.com/SeleniumHQ/selenium/issues/9365

please feel free to add more details

(if needed)

9:32 PM

So, IMO, we should have se:cdpVersion working and all bindings doing CDP over Grid before beta 3, right?

what do you think?

Simon Stewart 9:32 PM

I’m letting @jimevans call it

Jim Evans 9:33 PM

let’s not hold up beta3 for that. if i get to it before then, fine, but i’m swamped right now.

Titus Fortner 9:33 PM

I definitely don’t think we need cdpVersion

9:34 PM

doing CDP over grid doesn’t require that per se

Diego Molina 9:34 PM

no, it does not, they are two separate things

Titus Fortner 9:34 PM

Does Python & JS have CDP over grid working?

Simon Stewart 9:34 PM

I’d like to get the java bindings consuming se:cdpVersion properly.

Titus Fortner 9:35 PM

can we save that for beta4?

David Burns 9:35 PM

replied to a thread: Does Python & JS have CDP over grid working?

It should do

Diego Molina 9:35 PM

I know it would be ideal to get a beta 3 soon, but if we need to wait to have all bindings working with CDP, I am ok with that

Titus Fortner 9:35 PM

I generally don’t like putting off a release until Java gets something working, because that just means we wait for everyone else to implement it or Java is off from the rest of us. :smile:

Diego Molina 9:36 PM

I have seen issues asking “can we have in JS what it is already done in Java”, and similar

Titus Fortner 9:36 PM

Like I said, I have several bug fixes that would be nice to get into people’s hands sooner

I guess I can always do a beta 2.1 for ruby, but…

Simon Stewart 9:36 PM

Let’s aim for next Tuesday for beta 3

Diego Molina 9:37 PM

I am also ok with that

but I don’t want to reach RC without some degree of feature parity between bindings

even if it takes longer

Jim Evans 9:38 PM

i get my second vaccine dose on tuesday, so it’ll be in the afternoon

9:38 PM

(US eastern time)

Titus Fortner 9:38 PM

woo hoo!

Diego Molina 9:38 PM

oh, that’s amazing!

Simon Stewart 9:38 PM

RC should have feature parity

I’d like that one out for a few days, and then we ship 4.0.0

Titus Fortner 9:39 PM

oh, while we’re here, I think Java & .NET are the only ones who have implemented these? https://w3c.github.io/webdriver/#get-computed-role

9:40 PM

These new endpoints sneak up on me

Simon Stewart 9:40 PM

There are a few. The Shadow DOM ones are new as well

Titus Fortner 9:41 PM

oh no, python & java

Simon Stewart 9:41 PM

I think @AutomatedTester has snuck in a broader API than the rest of us since he actually reads specs

Titus Fortner 9:41 PM

sneaky

Simon Stewart 9:41 PM

Clever lad

David Burns 9:41 PM

none of the shadow dom stuff is done

9:42 PM

but I am adding it to Firefox

Sri Harsha 9:42 PM

JS bindings have it too, only left with shadow-dom

Jim Evans 9:42 PM

@titusfortner.NET does the get computed ones too

David Burns 9:42 PM

If you watched todays twitch you would have seen why… I am not sure of the API for things not Java/.NET

Titus Fortner 9:43 PM

so what everyone is saying is that it’s just Ruby slacking

Diego Molina 9:43 PM

ok, so we’ll aim beta 3 for next Tuesday :slightly_smiling_face:

David Burns 9:43 PM

@titusfortner not ruby… whistles :stuck_out_tongue_winking_eye:

Diego Molina 9:43 PM

last topic is:

  • PRs that need to be reviewed

9:44 PM

there are a few ones that could be an “easy” merge and ideally they do not need a lot of time for a review

I also see @Puja Jagani now contributing to the C# bindings, which is great!

I’ll list the PRs here:

C#

Python

David Burns

done

Diego Molina

thank you!

Diego Molina 9:47 PM

Java:

9:48 PM

in case you have some spare time, @AutomatedTester @jimevans @simonstewart

that’s all I had in the agenda :slightly_smiling_face: