appium / dotnet-client

Extension to the official Selenium dotnet webdriver
Apache License 2.0
385 stars 187 forks source link

Is this project alive? #495

Closed arnonax-tr closed 2 years ago

arnonax-tr commented 2 years ago

I see that the last commits, both on master and on release/5.0.0 branches are from October 2021 (by @Dor-bl ), and that the latest pre-release NuGet package is 5.0.0-beta01 from the same date.

I have a project that depend on Appium.Net and Selenium WebDriver. Without upgrading Appium to 5.0.0-beta I cannot upgrade Selenium WebDriver to 4.0 and I'm still stuck with 3.141. However, I'm very hesitant to upgrading to Appium-5.0.0-beta because it's still "beta", and moreover, it seems that this project was abandoned for the last 6 months...

Any clarifications regarding the state of this project and its future plans are highly appreciated.

Thanks, Arnon.

laolubenson commented 2 years ago

I lost my windows machine due to manufacturers fault, so haven't been able to contribute or proceed with maintenance & upgrade plan in regards to appium options and supporting Selenium v4. Today, I have resolved those issues, and can resume when I have capacity.

If you're planning on using the beta version, you should be wary of existing bugs in regards to appium options and the removal of the deprecated SeleniumExttas package which includes the PageObject

agray commented 2 years ago

Thanks @akinsolb, How long do you think it will be (roughly) till version 5.0.0 is out of beta?

arnonax-tr commented 2 years ago

@akinsolb @Dor-bl

Or to make a long story short, what do I need to do in order to become an active contributor and take this project forward?

mykola-mokhnach commented 2 years ago

Hi @arnonax-tr

thank you for your response. We'd be very happy if you could improve the dotnet client and maintain it. Let me try to answer your questions:

Can you please send links to these existing bugs?

All active bugs could be found in the current issues section. I don't know any other place where they could be tracked. If we get dotnet-client-specific issues reported to the main Appium repo then they get transferred here. Ofc, not all of the reported issues are bugs, they need to be triaged properly first (which is also a part of the regular maintenance, because for one it's hard to triage a new issue if they don't know much about the client itself).

Can I try to contribute and resolve some of those issues?

Contributions are always welcome. If you are going to start working on something big then it always makes sense to discuss it first. We have the dotnet-client chat for this purpose in Appium slack.

Who prioritizes and decides what's must be fixed in order to release 5.0?

Everyone who participates in dotnet client maintainers team (see above).

Is there anything I can do to expedite the release of 5.0?

Lets just start a new discussion. Usually we try to align our major releases with major releases of Selenium client as we depend on it.

If I send a PR, who needs to approve it?

See above

What's the process of building and releasing of this repo? I read the Readme file, but it doesn't say anything about running tests (I see that there are integration tests in the repo, but I wonder if I can just run them like unit-test without any dependencies, or should I have to connect a device in order to run them?

I agree the current dev documentation (and the client documentation in general) is quite poor and must be improved. If you prove yourself to be a responsible/reliable maintainer then we consider sharing release access rights with you. Currently all integrations tests are executed on emulators/simulators. It would probably be too expensive to test that in a real device cloud in CI env.

If I do, then I guess that for iOS I also need to a Mac machine, is it true?).

yes, this is true

It also doesn't mention anything about the GitHub Actions in this repo. Does the process only manual? I also looked at the yaml file and didn't see that it runs any tests...

AFAIK currently CI tests are executed using MS Azure. If you think it would be better to use GH Actions for this purpose then feel free to push a PR and port them.

agray commented 2 years ago

Currently all integrations tests are executed on emulators/simulators. It would probably be too expensive to test that in a real device cloud in CI env

An Open Sauce account from SauceLabs is free. Have you applied for one of those?

AFAIK currently CI tests are executed using MS Azure. If you think it would be better to use GH Actions for this purpose then feel free to push a PR and port them.

GH Actions is MUCH better than AzDO. Migrate ASAP. Let me know if you need a hand.

jlipps commented 2 years ago

It's sometimes a bit tough to use an Open Sauce account if we're relying on an Appium version (development or production) that they don't happen to have. But in the case of a client like this, it would definitely be suitable for regression tests.

arnonax-tr commented 2 years ago

Thanks a lot for your answers @mykola-mokhnach @agray and @jlipps .

Some background: I'm a test automation architect for eToro. I'm a full-time employee and anything I may do to contribute to this project will likely be as part of my job and after I got approval and consent from my manager, but I'm asking these questions in order to come to her when I understand exactly what it takes. We may decide to go with the beta version as-is, and if/when we'll encounter issues that we need to fix, we'll create a PR.

mykola-mokhnach commented 2 years ago

Some background: I'm a test automation architect for eToro. I'm a full-time employee and anything I may do to contribute to this project will likely be as part of my job and after I got approval and consent from my manager, but I'm asking these questions in order to come to her when I understand exactly what it takes. We may decide to go with the beta version as-is, and if/when we'll encounter issues that we need to fix, we'll create a PR.

Don't worry, this part is covered in the license. Your company consent will be needed to sign it if you do OSS contributions as a part of company job.

Don't I need an invite to join the Appium channel? How do I get invited?

You can either try to register yourself at https://appium.slack.com or provide me your email address and I will send an invite

I know I can find all bugs in the Issues, but I'm asking specifically about bugs that are relevant for Appium 5.0 and are holding us back from getting out of Beta. (Or, can we just declare that the Beta is done and we can release it as is??)

These issues have to be triaged first. And since I don't know anyone doing this right now there are no blocking issues 🤷

If I can use SauceLabs, then I guess that I don't need a Mac after all, isn't it?

For your local tests - probably yes, but the time there is limited

Where can I find (and get access if needed) to the AzDO pipelines?

The current config is pretty simple: https://github.com/appium/appium-dotnet-driver/blob/master/azure-pipelines.yml From it I assume that only the very basic set of tests is being executed. In general, the most problematic CI part is to get emulator/simulator running in that env and to be not too slow.

agray commented 2 years ago

Can I register with my email address?

Why is it telling me gmail.com is not an "approved" domain?

Seems a silly limitation.

On Tue, 17 May 2022, 2:25 pm Mykola Mokhnach, @.***> wrote:

Some background: I'm a test automation architect for eToro https://github.com/appium/appium-dotnet-driver/issues/www.etoro.com. I'm a full-time employee and anything I may do to contribute to this project will likely be as part of my job and after I got approval and consent from my manager, but I'm asking these questions in order to come to her when I understand exactly what it takes. We may decide to go with the beta version as-is, and if/when we'll encounter issues that we need to fix, we'll create a PR.

Don't worry, this part is covered in the license. Your company consent will be needed to sign it if you do OSS contributions as a part of company job.

Don't I need an invite to join the Appium channel? How do I get invited?

You can either try to register yourself at https://appium.slack.com or provide me your email address and I send an invite

I know I can find all bugs in the Issues, but I'm asking specifically about bugs that are relevant for Appium 5.0 and are holding us back from getting out of Beta. (Or, can we just declare that the Beta is done and we can release it as is??)

These issues have to be triaged first. And since I don't know anyone doing this right now there are no blocking issues 🤷

If I can use SauceLabs, then I guess that I don't need a Mac after all, isn't it?

For your local tests - probably yes, but the time there is limited

Where can I find (and get access if needed) to the AzDO pipelines?

The current config is pretty simple: https://github.com/appium/appium-dotnet-driver/blob/master/azure-pipelines.yml From it I assume that only the very basic set of tests is being executed. In general, the most problematic CI part is to get emulator/simulator running in that env and be not too slow.

— Reply to this email directly, view it on GitHub https://github.com/appium/appium-dotnet-driver/issues/495#issuecomment-1128396386, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAA42VXSD5TOA7LTHMLYBTDVKMNVHANCNFSM5UPLGLJQ . You are receiving this because you were mentioned.Message ID: @.***>

arnonax-tr commented 2 years ago

@mykola-mokhnach Looks like only certain domains can automatically join Appium's Slack channel. So please send me an invite to arnonax@etoro.com

jlipps commented 2 years ago

Because this is a developer-only slack group we didn't want to allow open signups, however allowed e-mail addresses from companies that tend to produce contributors.

agray commented 2 years ago

Being an open source project have you applied for an Open Sauce account offered by SauceLabs?

That's what my open source project uses and it's free!

On Mon, 16 May 2022, 11:15 pm Mykola Mokhnach, @.***> wrote:

Hi @arnonax-tr https://github.com/arnonax-tr

thanks you for your response. We'd be very happy if you could improve the dotnet client and maintain it. Let me try to answer your questions:

Can you please send links to these existing bugs?

All active bugs could be found in the current issues section. I don't know any other place where they could be racked. If we get dotnet-client-specific issues reported to the main Appium repo then they get transferred here. Ofc, not all of the reported issues are bugs, they need to be triaged properly first (which is also a part of the regular maintenance, because for one it's hard to triage a new issue if they don't know much about the client itself).

Can I try to contribute and resolve some of those issues?

Contributions are always welcome. If you are going to start working on something big then it always makes sense to discuss it first. We have the dotnet-client chat for this purpose in Appium slack.

Who prioritizes and decides what's must be fixed in order to release 5.0?

Everyone who participates in dotnet client maintainers team (see above).

Is there anything I can do to expedite the release of 5.0?

Lets just start a new discussion. Usually we try to align our major releases with major releases of Selenium client as we depend on it.

If I send a PR, who needs to approve it?

See above

What's the process of building and releasing of this repo? I read the Readme file, but it doesn't say anything about running tests (I see that there are integration tests in the repo, but I wonder if I can just run them like unit-test without any dependencies, or should I have to connect a device in order to run them?

I agree the current dev documentation (and the client documentation in general) is quite poor and must be improved. If you prove yourself to be a responsible/reliable maintainer then we consider sharing release access rights with you. Currently all integrations tests are executed on emulators/simulators. It would probably be too expensive to test that in real device client in CI env.

If I do, then I guess that for iOS I also need to a Mac machine, is it true?).

yes, this is true

It also doesn't mention anything about the GitHub Actions in this repo. Does the process only manual? I also looked at the yaml file https://github.com/appium/appium-dotnet-driver/blob/master/.github/workflows/release-nuget.yml and didn't see that it runs any tests...

AFAIK currently CI tests are run using MS Azure. If think it would be better to use GH Actions for this purpose then feel free to push a PR and port them.

— Reply to this email directly, view it on GitHub https://github.com/appium/appium-dotnet-driver/issues/495#issuecomment-1127658884, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAA42VXVEIMVUIPF574AS7TVKJC5HANCNFSM5UPLGLJQ . You are receiving this because you commented.Message ID: @.***>

Dor-bl commented 2 years ago

The project was recently updated to support appium 2.0. So yes, it's alive. @arnonax-tr feel free to contribute if time allow, we are always looking for more people to help out.