Description
What happened?
This issue was introduced by #14247
These revisions were intended to resolve #14216
The revisions applied to RelaySessionFactory were unnecessary, actually creating a bug instead of resolving one.
The OP reported that he was unable to acquire Appium session from Selenium Grid 4 because the "merge" operation that combines relay node stereotypes with the client's requested capabilities was creating a specification that defined both appium:app
and browserName
, which is disallowed by Appium.
The issue wasn't in the Selenium Relay implementation; it was in the OP's configuration. The actual fix was to add an additional entry to the [configs] array of his relay configuration. One of the entries should specify browserName
and the other should omit it.
The fix for the issue in RelaySessionFactory is to simply revert the changes from #14247
How can we reproduce the issue?
To reproduce this issue, examine the source for **RelaySessionFactory**. The `apply` method includes Appium-specific implementation that unnecessarily alters the client's desired capabilities.
Relevant log output
There is no relevant log output
Operating System
Any
Selenium version
Java 4.23.0
What are the browser(s) and version(s) where you see this issue?
Android Chrome
What are the browser driver(s) and version(s) where you see this issue?
ChromeDriver 128.0.6594.0
Are you using Selenium Grid?
4.23.0