-
-
Notifications
You must be signed in to change notification settings - Fork 8.4k
[🚀 Feature]: Add support for Selenium Windows ARM64 (WoA) CI builds and binaries #15801
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
@Mugundanmcw, thank you for creating this issue. We will troubleshoot it as soon as we can. Selenium Triage Team: remember to follow the Triage Guide |
@Mugundanmcw when you say binaries, do you mean the Selenium Manager binary? |
I think the reasons we can't (or don't) support Windows ARM64 is explained here under "Alternative architectures": https://www.selenium.dev/documentation/selenium_manager/ To summarize:
I think the 2nd point is the real blocker, because if we did build Selenium Manager on Windows ARM64, users could always configure it to use whichever browser they have installed, even if we can't download it for them. So unless you have ideas to overcome these issues, I don't think we can support Windows ARM64 at this time. |
Hi @cgoldberg,
Thanks! |
Thanks for the context, @Mugundanmcw. I think we need to change how we distribute Selenium Manager. Right now, it is packaged with the bindings, and adding one more will just make it larger. |
And this is absolutely normal to distribute native dependencies within package. About package's footprint: current Selenium.WebDriver NuGet package is 11.94 MB. Adding one more supported platform is not a criminal. For comparison Microsoft.Playwright NuGet package is 182.04 MB |
I see that Edge is available, but Chrome-for-Testing doesn't appear to be: (at least from the location we fetch browsers from) We would also need to make changes to the bindings and Selenium Manager. Right now we distribute a single SM executable for each platform. We would need a way to detect the architecture and select the appropriate executable to call... or change the way we package SM, so only the relevant executable is distributed for each platform and architecture. |
But |
as far as I can tell:
So Chrome-for-Testing and chromedriver for Windows ARM64 would be the missing pieces. Note: There are unofficial builds of |
Thanks for discovering! I think of supporting |
Besides the implications of building it in CI, we also need to address the issue I mentioned in a previous comment. The drivers all call Not a huge change, but something that would need to be done in each binding. I think it's reasonable to further investigate ARM support... but if we go down that road, I'd vote for supporting Linux ARM64 first, to enable use on Raspberry Pi and other systems with more marketshare than Windows ARM64 :) |
I don't see problems, it is more about planning, we are community. I propose to create general issue like "Support ARM", break down everything what should be done. And we, as a community, will do it (if @SeleniumHQ/selenium-tlc doesn't mind). |
Uh oh!
There was an error while loading. Please reload this page.
Feature and motivation:
This issue aims to add official support for the Windows ARM64 (WoA) platform by enabling CI builds and distributing native Selenium binaries for WoA.
Currently, Selenium lacks native binaries for Windows ARM64. With the increasing adoption of ARM-based Windows devices, having native binaries for WoA would be highly beneficial for both end users and developers working on this growing platform.
Looking forward to collaborate in making necessary changes to make this happen.
Thanks in advance!
The text was updated successfully, but these errors were encountered: