Skip to content

fix(chromedriver): version fixes for update, status, and start #380

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

Merged
merged 1 commit into from
Apr 30, 2019

Conversation

cnishina
Copy link
Contributor

  • Set the max versioning set in config.json. This will need to be updated on
    every release of chromedriver. This will "fix" chrome and chromedriver
    mismatches until Chrome 75 comes out. When it does there will have to be
    an update for this again. Possible future work would allow a user
    to set this via flag. Example --maxVersions.chrome "74."
  • Create a generic way to get a valid version for Chromedriver. If
    presented with 2.x, change this to 2.x.0. If presented with a 74.x.x.x,
    chop off the last set of numbers and change this to 74.x.x
    • Fixes the status command during a semver check.
    • Fixes the update and start command when starting a specific version of
      chromedriver

- Set the max versioning set in config.json. This will need to be updated on
every release of chromedriver. This will "fix" chrome and chromedriver
mismatches until Chrome 75 comes out. When it does there will have to be
an update for this again. Possible future work would allow a user
to set this via flag. Example --maxVersions.chrome "74."
- Create a generic way to get a valid version for Chromedriver. If
presented with 2.x, change this to 2.x.0. If presented with a 74.x.x.x,
chop off the last set of numbers and change this to 74.x.x
  - Fixes the status command during a semver check.
  - Fixes the update and start command when starting a specific version of
chromedriver
@zachdavid
Copy link

@cnishina - how can i leverage this fix in my pom file? Currently using

 <dependency>
            <groupId>io.github.bonigarcia</groupId>
            <artifactId>webdrivermanager</artifactId>
            <version>3.4.0</version>
            <scope>test</scope>
        </dependency>

@cnishina
Copy link
Contributor Author

@zachdavid I am not sure how to run node from a pom.xml file. Just a quick search gets me to https://auth0.com/blog/integrating-node-dot-js-build-tools-with-maven/

This would be kinda cool to figure out. Let me know if you get it. I might try this out but I do not have the bandwidth to dig into this right now.

@alex-deaconu
Copy link

@cnishina thanks for fixing!

However, as per your comment above, when Chrome 75 goes to stable, the library will cause the same error to be thrown (but in reverse) until you manually update the env variable.

As this is being used in automated testing, we were affected by this outage for half a workday yesterday. And, it is not the first time there were issues with chromedriver/chrome version mismatches.

Wondering if a more thorough fix is planned or we should implement something on our side?

Thanks!

@cnishina
Copy link
Contributor Author

cnishina commented May 1, 2019

@alex-deaconu Yes that is true. Here's the plan for the master branch and webdriver-manager@13+:

  • We will prevent this from a config.json file in the repo
  • We will have a command line config flag to set your own major versions and other flags. These will override the config in the repo.
  • We will also major_versions.chromedriver flag to set them on the command line.

Setting the max versions will go well when downloading chromium... So if you want chromedriver 74 we could also download chromium 74.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants