Open barath-uni opened 4 years ago
Hello there!
I'm not very sure what the problem is here. It can either of the following two cases:
Is the port actually occupied by an older ChromeDriver? And thus it is responding the message as the current Chrome is not his expected version. And in which case, the package outputs this as expected.
Or do you mean no matter what process occupies the port, it always produces this message? In which case, it should be a bug.
Please kindly help me confirm which case it is. Thanks!
As far as i can see, it is the '1st' you have mentioned. When you say, 'the package outputs this as expected', should it not say the port is occupied rather than throw a weird error with that exception message?
So from the point of view of the library (or the Dart part), it talks through the http port and sends a request to create the session.
It gets a valid response, even though it's an error. It should output the error as is. The same error can happen if you just forget to update the chromedriver after Chrome updates, in which case, saying the port is occupied is very confusing.
The chromedriver instance (supposedly the new one) is not started by Dart code (or this library). The occupied problem should be spotted when you start chromedriver manually. It will show something like the following, which is very obvious:
[1583275583.382][SEVERE]: bind() failed: Address already in use (48)
[1583275583.382][INFO]: listen on IPv4 failed with error ERR_ADDRESS_IN_USE
IPv4 port not available. Exiting...
If you are using a different workflow, please let me know.
The following error throws when the Port is not available.
It even defaults to chromeDriver=78.* and throws 'ChromeDriver only supports Chrome version 78' which is not a proper error message.
Checking the port with
netstat -vanp tcp | grep 4444
shows that the port is occupied. Killing the Port manually solves the problem.Shouldn't the package take care of this by itself? Kindly also provide a proper 'Error' message which is relevant to the issue.