Public Project Meeting - November 19, 2020

Continuing the series of bi-weekly public project meetings, here is the timeline of the meeting held on November 19, 2020 (times are on IST).

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

The next meeting will be on December 03, 2020,5:30 PM CET.


Simon Stewart 9:53 PM

@diemol are you running today’s status update?

Diego Molina 9:55 PM

I can do that I always forget because the event has no notifications

let me look for the agenda Some numbers before starting: Previous meeting: 281 open issues, 61 open PRs Current: 280, 62 PRs

Simon Stewart 9:58 PM

I’ve added a 30 minute reminder to the meeting in Google Calendar

Diego Molina 10:00 PM

From previous agendas, I believe these could be the topics:

  • Overall announcements? New people on committees, with the commit bit, etc?
  • Anything new to report from the last PLC/SFC call?
  • Pending work that needs to be done for the first Beta?
  • Users/passwords, access keys, etc… to distribution and release repositories.
  • CoC, next steps?

10:00

Feel free to add topics

10:01

Should we start? pinging @AutomatedTester @titusfortner @harsha509 @jimevans @manoj9788 @mmerrell @barancev @p0deje

Sri Harsha 10:04 PM

m in

Simon Stewart 10:04 PM

Here!

Diego Molina 10:05 PM

First topic: Overall announcements? New people on committees, with the commit bit, etc?

David Burns 10:05 PM

here

Simon Stewart 10:06 PM

We really need to agree an emoji for “I’ve nothing to say”

:shushing_face: maybe?

David Burns 10:06 PM :speak_no_evil:

Diego Molina 10:06 PM

:speak_no_evil:

Simon Stewart 10:06 PM

I like that We shipped 4a7 Nice work, everyone

Diego Molina 10:08 PM

ok, let’s move to the next topic :slightly_smiling_face:

2nd topic: Anything new to report from the last PLC/SFC call?

Simon Stewart 10:09 PM

I missed it

David Burns 10:10 PM

There were notes from @jimevans re: a meeting at the end of October, was that the last SFC?

https://seleniumhq.slack.com/archives/C013TSZD4P5/p1604415853013000

Diego Molina 10:12 PM

right, I remember that, probably that covers the topic then, next one :slightly_smiling_face: 3rd topic: Pending work that needs to be done for the first Beta?

Simon Stewart 10:13 PM

There’s a lot. Mostly in Java I think we should all get together at some point and figure out how closely our CDP-based functionality aligns I think it’s pretty close, but I know that there are few things that @jimevans did that I’d like “take inspiration” from

David Burns 10:14 PM

Can we get things documented since you can be a bottle neck due to life. How can we, being my team, help here?

Simon Stewart 10:14 PM

  • lient facing changes:
  • Make relative locators return elements sorted by proximity
  • Fix Java Module System problems
  • Allow locator strategies to be pluggable
  • Enable fallbacks for commands

10:16

Server changes:

  • Enable retries of commands where necessary using failsafe
  • Get the Grid UI looking nice, and returning useful data
  • Allow locator strategies to be pluggable
  • Pipe VNC connectors through the websocket plumbing for live video

@AutomatedTester ^^ I documented them :stuck_out_tongue: CDP for Firefox would be handy too

David Burns 10:17 PM I am going to start CDP for Firefox tomorrow

Simon Stewart 10:17 PM

Are there docs on how to find the ws address to use?

David Burns 10:17 PM

No… I will document it

Diego Molina 10:17 PM

we really need some sort of docs to have a decent feature parity across bindings

Titus Fortner 10:17 PM

does all the CDP stuff work for Edge as well right now? I haven’t tried anything but Chrome so far

David Burns 10:18 PM

I have a “try” build of geckodriver with it that I need to play with

Simon Stewart 10:18 PM

The Java stuff works for edge too

Titus Fortner 10:18 PM

I was doing a brief analysis of some things for a talk I was giving, and we implemented features in Selenium 3 at very different versions between the bindings. Kind of surprised me :)

Simon Stewart 10:18 PM

Heh. Jari was fast :slightly_smiling_face:

David Burns 10:19 PM

misses Jari

Diego Molina 10:20 PM

do we have GitHub issues for the items missing for beta?

Jim Evans 10:20 PM

those notes were from the 3 november call, which was the last PLC call (they only happen monthly)

Simon Stewart 10:20 PM

Most of those things are in the project plan, @diemol

Jim Evans 10:21 PM

so there’s a bug in .NET alpha7 that prevents the bindings from working with grid 4. (it’s fixed now)

Titus Fortner 10:21 PM

I mentioned recently that Java & Ruby don’t have the right STP name still in 4 alpha and .NET & Ruby both need to add support for full page screenshots in Firefox. Not sure what list that needs to get added to? (I’ll try to get to the Ruby stuff this weekend)

Jim Evans 10:22 PM

print-to-pdf end point?

Simon Stewart 10:22 PM

@jimevans I think the check in the java bindings may be a little too extreme, so we may need to loosen things there too @titusfortner good point. The STP thing is irksome. I need to dig into it

Jim Evans 10:23 PM

sorry i’m late to the party, btw. was spending a few minutes with P this morning before her first client.

Titus Fortner 10:23 PM

I tried to fix it in Java, but I was missing pieces. Someone who knows what they are doing, should be easy

Simon Stewart 10:23 PM

It’s not easy If it was, I’d have fixed it already :slightly_smiling_face: Or @barancev would have

Titus Fortner 10:23 PM

STP went from “Safari” to “Safari Technology Preview” back to “Safari” I changed Ruby to the longer version when I thought I was using the latest STP (I was not)

Simon Stewart 10:24 PM

I think I need to tease apart the two versions of the browser more

Titus Fortner 10:24 PM

I think we just need to support the latest version

Simon Stewart 10:24 PM

I’ll have a chat with folks here to figure out the Right Thing to do

Jim Evans 10:24 PM

i want .NET to undergo a radical refactor in its class structure before 4.0 releases. now that we have a web standard, the current class hierarchy is wrong.

Simon Stewart 10:24 PM

Yeah, just the latest version

Jim Evans 10:24 PM

well, not really “radical,” but definitely a change

Simon Stewart 10:25 PM

@jimevans we really need to find a way to get someone helping you with the .net stuff

Jim Evans 10:25 PM

nothing breaking, API-wise. with .NET 5 being out, it should be a fair sight easier.

Diego Molina 10:27 PM

We can spread the word about the help we need in the different bindings, either for refactoring or reaching feature parity if we have those changes described somewhere, ideally a GitHub issue. Then we could tweet or something, saying we need help with this issue.

David Burns 10:28 PM

Well… I have an idea I would like to share towards this but I can do that at another time unless now is a good time

Simon Stewart 10:28 PM

The Java module stuff is obvious if you use java modules

Jim Evans 10:28 PM

so, right now, the .NET class hierarchy is RemoteWebDriver (implements IWebDriver et al) -> all browser-specific drivers. what it should be is abstract class WebDriver (implements IWebDriver) -> RemoteWebDriver, and also abstract WebDriver -> browser specific drivers. if i’m clever about it, this will not be a breaking API change, because IWebDriver is still A Thing™.

Simon Stewart 10:28 PM

Just like the java 8 issue was

Diego Molina 10:29 PM

Please share, @AutomatedTester

Jim Evans 10:30 PM

my ${paidWork} project is approaching a bit of stability, so i should be able to devote some time between now and the end of the year, hopefully.

Jim Evans 10:30 PM

my ${paidWork} project is approaching a bit of stability, so i should be able to devote some time between now and the end of the year, hopefully.

David Burns 10:31 PM I would like to, with support of this group, see about creating a Yak Day. The idea is, and it requires a bit of upfront work, to get issues in place for this and then see if we can get contributors

Jim Evans 10:31 PM

the idea in Selenium 5 is to start phasing out the use of IWebDriver in favor of using the abstract base class.

David Burns 10:32 PM

it would also require that I, or others, do a “How to contribute” video to share before hand

Jim Evans 10:32 PM

(sorry for the parallel idea-spewing into the channel, but i’ve been thinking about this, and not really talked about it to anyone outside the multiple voices in my own head.)

David Burns 10:32 PM

and if we split it accordingly to language bindings and services we can see if we can try build out a bit more support for each langauge and may get us more contributors.

Simon Stewart 10:33 PM

There’ll be hoops I need to jump through, but I can jump through them to make that happen

David Burns 10:33 PM

I appreciate it can flood us with junk and we would need to work out to how to prevent that

Simon Stewart 10:33 PM

I’ve got some half-written docs for building with bazel for selenium.dev too

David Burns 10:33 PM

but the general gist is create tiny bits of work to build up contributors

Titus Fortner 10:34 PM

So, I don’t know what everything that is on the lists mentioned above entails, but I do want to put in a generic plug that we make sure things absolutely need to be in 4.0. If we can release something “good enough” to iterate on through 4.x releases, it’s going to be *much better than a super polished codebase that isn’t released for another 6 months.

Diego Molina 10:34 PM

that would be really great

David Burns 10:35 PM

I agree @titusfortner, while we are in alpha we have a limited usage group but we have finite resources so its a fine line to tread

Titus Fortner 10:36 PM

nope, totally understand; we’re all volunteers and such. just requesting we keep in mind that perfect is the enemy of releasing something that makes current users lives better

Simon Stewart 10:36 PM

After 4.0 ships, I’m going to be stepping away I’ll probably stay involved with WebDriver Bidi, but I won’t be cutting code

Diego Molina 10:37 PM

no no, you cannot leave us alone with bazel :smile:

Titus Fortner 10:37 PM

Yeah, I get that this is a factor for sure :)

David Burns 10:37 PM

Bazel isn’t that scary

Titus Fortner 10:38 PM

isn’t the point of bazel that we shouldn’t have much issue with it once everything transitions? :-D

Simon Stewart 10:38 PM

I’ll still be hacking on bazel

David Burns 10:38 PM

I’ve been contributing to that community recently… going to overtake @simonstewart knowledge soon :smile:

Simon Stewart 10:38 PM

One can only hope

Jim Evans 10:39 PM

bazel is fine… as long as your language and toolset’s opinions don’t conflict with bazel’s

David Burns 10:39 PM

@jimevans I’m finding that works with all languages… but that’s an aside

Simon Stewart 10:39 PM

@jimevans I want to see better .net support in bazel What I need is a) time, b) a Windows machine

Jim Evans 10:40 PM

well some languages’ tooling are more opinionated than others. (see: MSFT is all in on MSBuild, and any other build tool will always, always, always be a second-class citizen.)

Diego Molina 10:40 PM

Can the project buy you one?

Jim Evans 10:41 PM

@simonstewart i’ve had remarkably good luck using VMs and VMWare Fusion.

Simon Stewart 10:41 PM

My hard drive is currently stuffed with multiple versions of macOS.

Jim Evans 10:41 PM

like, that’s been my exclusive .NET dev environment for going on 8 years now.

Simon Stewart 10:42 PM

Once I get more storage, I can try a VM again

Diego Molina 10:42 PM

but ok, to the topic, which was Pending work that needs to be done for the first Beta? I believe we have commented the most of it

10:43

I will go through the meeting minutes and then create GitHub issues if I don’t find any for the items mentioned

Simon Stewart 10:43 PM

For me, “beta 1” means “this is what you’ll get in 4.0, but there are known issues”

Jim Evans 10:43 PM

.NET needs to add the “make CDP user scenarios easy” methods to be added.

Diego Molina 10:43 PM

and I will ping you to add details about it

Jim Evans 10:44 PM

yikes that’s atrocious grammar. but you get my meaning.

Diego Molina 10:44 PM

should we move to the last two topics? we have 16 minutes left

David Burns 10:44 PM

go for it :slightly_smiling_face:

Diego Molina 10:44 PM

4th topic: Users/passwords, access keys, etc… to distribution and release repositories. So, recently @AutomatedTester & me got access to the project to release Java, but in general, if we ever need to do a release and the key folks are missing we do not have access to this information

Jim Evans 10:45 PM anyone who wants access to the nuget repo, create a nuget.org account (requires a “microsoft account”), and let me know. i’ll add you to the organization for selenium.

Titus Fortner 10:46 PM

who owns email access to selenium.dev? I think we should get a project email/password for these things instead of each using our own?

Sri Harsha 10:46 PM

i got access to npm selenium-webdriver package

Diego Molina 10:46 PM

for example, we were able to get access to the npm org recently, so @harsha509 could do a JS release

David Burns 10:46 PM

and we got access for NPM :wink:

Diego Molina 10:46 PM

I thought we could be more proactive in this and not wait until we need the person to share the access.

Titus Fortner 10:47 PM

I mean, if people sign up for rubygems and send me their email, I can add them to the list of authorized users; but might scale better if there were a lastpass/onepass/whateverpass that stores universal credentials…

David Burns 10:47 PM

The only place I can think of is nuget python has a few people but we can add more. The other place is Google Storage, do we have enough people with access there?

Simon Stewart 10:49 PM

I’ve got Google Storage. @jimevans does too. I think Luke may still have the keys.

Diego Molina 10:51 PM

I believe it is a matter of someone doing the work and going one by one to give access to the TLC to all what we need. I can find some time to do that

10:52

ok, then the last topic 10:52 CoC, next steps?

David Burns 10:53 PM

CoC is waiting on SFC/PLC to reply to my message I should follow up I have found a contractor, ex-head of D&I from Mozilla, to help do the work

lukeis:indeed: 10:55 PM

yeah, i still have the google storage keys… tucked away in an archive i put in my personal google drive :grimacing:

Simon Stewart 10:55 PM

I’ve put together a quick Google Doc for folks to add their names to for access to release pathways.

David Burns 10:56 PM

thanks @simonstewart!

lukeis:indeed: 10:57 PM

we got rid of the google app-engine driving seleniumhq.org right?

Simon Stewart 10:58 PM

I can’t remember where we deploy selenium.dev to It may still be app engine

David Burns 10:58 PM

selenium.dev is on github pages

Diego Molina 10:58 PM

We use GitHub Pages

David Burns 10:58 PM

via Hugo

Simon Stewart 10:59 PM

https://github.com/SeleniumHQ/seleniumhq.github.io/blob/dev/.github/workflows/deploy.yml#L26 .github/workflows/deploy.yml:26 uses: peaceiris/actions-gh-pages@v3 https://github.com/SeleniumHQ/seleniumhq.github.io|SeleniumHQ/seleniumhq.github.ioSeleniumHQ/seleniumhq.github.io | Added by GitHub

lukeis:indeed: 11:00 PM

yeah, the sehq app engine still exists… and the dashboard seems like it’s still getting some kind of requests (very few) wonder if it’s still handling some redirects

Diego Molina 11:02 PM

it should be mostly redirects I need to leave, but thank you all for joining!

Titus Fortner 11:02 PM

Thanks @diemol!