Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.
Sign upError message when New Session failed lacks information #832
Comments
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
jgraham
Jul 21, 2017
Collaborator
Yeah, this is a known problem. I've discussed it before with @andreastt and I think we know what to do, but it's a little work to fix.
The problem is that because there are multiple possible matching capabilities sets, we need to collect the errors that stopped each one matching. That means changing some of the traits for handling capabilities matching to return something like a Result<(), Vec[String]> (or some kind of error enum) rather than an Option<()> (or whatever the current return type is). Then when we finally fail to match anything, we need to turn the list of error strings into a useful message. So it's not really hard, but there's a little plumbing that makes it not quite trivial to fix.
If anyone wants to have a go at this, I would be happy to mentor.
|
Yeah, this is a known problem. I've discussed it before with @andreastt and I think we know what to do, but it's a little work to fix. The problem is that because there are multiple possible matching capabilities sets, we need to collect the errors that stopped each one matching. That means changing some of the traits for handling capabilities matching to return something like a If anyone wants to have a go at this, I would be happy to mentor. |
andreastt
added
geckodriver
webdriver-rust
labels
Jul 21, 2017
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
shs96c
Jul 21, 2017
My reading of the algorithm in the spec is that you can stop the moment there's something that doesn't match --- as a temporary first step, it would be useful to just return that first error.
shs96c
commented
Jul 21, 2017
|
My reading of the algorithm in the spec is that you can stop the moment there's something that doesn't match --- as a temporary first step, it would be useful to just return that first error. |
AutomatedTester
referenced this issue
Sep 8, 2017
Closed
Improve capabilities matching error messages #591
andreastt
referenced this issue
Sep 13, 2017
Closed
Improve error message when Firefox binary not found #182
barancev
referenced this issue
Sep 21, 2017
Closed
Error handling when no Firefox binary is found #4688
andreastt
referenced this issue
Oct 9, 2017
Closed
session not created - Unable to find a matching set of capabilities - BaseThreadInitThunk #991
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
whimboo
Oct 27, 2017
Collaborator
Btw I filed bug 1410838 a couple days ago. Nearly missed this existent issue.
|
Btw I filed bug 1410838 a couple days ago. Nearly missed this existent issue. |
andreastt
referenced this issue
Nov 3, 2017
Closed
geckodriver doesn't skip unknown names in capabilities #1038
whimboo
referenced this issue
Jan 3, 2018
Closed
Unable to find a matching set of capabilities #1119
andreastt
referenced this issue
Feb 21, 2018
Closed
Unable to find a matching set of capabilities - Gecko 0.19.1, Ubuntu 16, FF 58, Selenium 3.9.0 #1178
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
NormanEdance
commented
May 11, 2018
•
|
No updates? Workarounds? |
shs96c commentedJul 20, 2017
In order to help us efficiently investigate your issue, please provide the following information:
Platform and application details
Steps to reproduce
A
SessionNotCreatedExceptionis thrown (as expected), but the error message is simply:Unable to find a matching set of capabilitiesThe only thing wrong with the payload is that the binary does not exist. This is detected by geckodriver, but not reported, which makes debugging hard.
In general, it would be useful if there was some indication of which parts of the New Session payload caused the match to fail, even if it's just the first failed match or failure of validation.
As can be seen, this returns when the trace indicates that the binary cannot be found --- invaluable information when debugging.