Fixes for macOS ChromeDriver download. If you are using a macOS and are
running into a WebDriver.createSession
error, run
webdriver-manager clean
to remove the downloaded ChromeDriver
before running webdriver-manager update
.
-
(4f5f736) fix(chromedriver): get most recent version on x64 windows if multiple major versions exist (#473)
-
(17db8a2) fix(binaries): filter m1 mac chromedriver versions (#478)
Updates to Chromedriver to the LATEST_RELEASE. This should work from here on in when Chrome is updated to a new version.
-
64795b7 chore(chrome) get latest chromedriver from LATEST_RELEASE (#418)
- changed the get latest chromedriver to use the URL getting the latest first, then downloading that specific version.
- removed unused imports.
Update the max Chrome version to 76.
Update the max Chrome version to 75.
Fixes issues introduced by 12.1.3 (--versions.chrome flag and status command did not work). Also prevents downloading version 75 using the config.json file.
-
(0a6ce24) fix(chromedriver): version fixes for update, status, and start (#380)
- 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
Fixes download issues for chromedriver version 74+.
-
(476c117) fix(chromedriver): support downloads for chromedriver beyond 2.46 (#377)
Versions of Chromdriver were versioned as 2.xx. We previously used to tack on a '.0' at the end to make it a semver version. This is why it was not downloading 74.0.3729.6. We now have to change 74.0.3729.6 to be a semver. We will do this by grabbing 74.0.3729 with a regex.
This should work when downloading the latest chromedriver version since 2.46.0 < 74.0.3729. If Chromedriver releases 75 but we are still on Chrome 74, this will still break in this version of webdriver-manager. This does not prevent latest Chromedriver and latest Chrome mismatches. If you run into an issue where Chromedriver is mismatched with Chrome, use the
--versions.chrome
flag to pass in the version to download.
Fixes download issues for the selenium jar file.
-
(7dc17ef) fix(selenium): download jar files and not zip files (#371)
This fix is here because selenium now has .zip files in the .xml. This worked previously since there were no .zip files and it would find a version that matched the latest jar file.
Also do not download alpha versions since we are also not downloading beta versions of the jar file.
closes #370
-
(f17b226) Fix(types): Operator '==' cannot be applied to types 'string | string[]' and 'number' (#297)
- build-enforced style changes
- add package-lock.json
-
(7dbc1df) fix(clean): remove existing chrome meta files from update on clean command (#279)
- change file name from chromedriver-response.xml to chrome-response.xml
-
(0a4c065) fix(appium): change appiumPort to seleniumPort for selenium server request (#228)
-
(6775421) deps(package): update npm audit.
- Updates to vulnerable to zipslip.
- Update all dependencies with
npm audit fix --force
.
closes #314
-
(a80ccd2) deps(appium): bump up the appium version (#258)
- (708ade3) fix(responses): response xml and json files (#247)
- (242a72f) feat(start): start selenium without making web requests (#232)
-
(52d8a23) fix(ignoressl): pass option to both binary and config source
closes #207.
-
(5af1c1c) fix(cache): change timestamp to 1 hour instead of 10 hours (#223)
closes #221
- (bb13882) feat(gecko): Improve error message when Github api limit reached. (#217)
the user. Also, API limit is reached, the error message now directly informs when any other failure occurs the status code is reported. This should hopefully give more info for issue #216.
-
(2cffd30) fix(ignoressl): pass proxy and ignore ssl down to the binary and config source (#208)
closes #207 and closes #221
- (0bdf6a4) deps(typescript): use typescript@~2.0.0. fix any types (#203)
- (6209666) fix(gecko): add additional check for OS when getting latest (#200)
This release gets the latest release for selenium standalone, chromedriver, iedriver, and gecko driver by downloading and parsing either a json or xml file. These json or xml files are cached in the selenium directory. This means for users that provide an alternative cdn will also be required to provide the proper xml or json server response to find these binaries.
Since we are always downloading the latest, the config.json
versions will no
longer be a place to override these.
If a new release is out and you have old binaries, running webdriver-manager start
without specifying any versions should throw an error. The error will
tell the user that the binary is not present.
Since we are downloading the latest and not maintaining a default version in
config.json
, we are dropping the default tag.
-
(fe309ef) feat(latest): get the latest version from the cdn (#198)
This reads the xml from the CDN to get the latest chromedriver, iedriver, or standalone version if the version is 'latest'. If the release is from Github, use the Github API to get the releases. Also store the downloaded information to a cache in the output directory (default: selenium/). If the file is older than one hour it will be rewritten.
When getting the status, we are no longer showing the default version. Default versions will be deprecated and will be removed from the config.json file.
When starting the standalone server, use the 'latest' version by default unless specified by --versions.{binary} flag.
Change the gulp update task to use 3.0.0-beta4 so Firefox tests will pass.
-
(70614a2) fix(ie): Use 32-bit version by default for IEDriver (#181)
closes #180
-
(6f9a2ab) fix(gecko): Respect versions.gecko in start command. (#184)
Also bump the geckodriver version to latest.
- (5881c5b) deps(update): update devDependencies (#187)
- Update to set the default chrome driver version to 2.26
-
(72e3d9f) feat(status): show the last downloaded version when using status (#177)
- added a test to run update, then checks status for labels
closes #172
-
(a3b46c7) fix(iedriver): if downloading x64, use x64 version on start command (#173)
- clang formatting
closes #147
- Minor version update so users still on ES5/selenium 2.x can access appium/mobile fixes See https://github.com/angular/webdriver-manager/commits/10.3.0 for details
- Requires node 6 since node 6 is in long term support. See (node LTS Schedule)[https://github.com/nodejs/LTS#lts-schedule].
-
(b5638ef) feat(update): on update, write full binary paths to file (#140)
-
Adding back in curl calls, these were removed on the new
Downloader.getFile
. Add curl call to reflect proxies. -
Fix output dir to read from update's options instead of Config
-
Feature will help directConnect users for Protractor. The file will keep track of the last binary version as well as all other binaries downloaded.
The file will be created in the output directory. By default this is
selenium/update-config.json
. Onclean
this file will be removed.webdriver-manager update --versions.chrome=2.20 --standalone=false --gecko=false
file created:
{ "chrome": { "last": "/opt/src/webdriver-manager/selenium/chromedriver_2.20", "all": ["/opt/src/webdriver-manager/selenium/chromedriver_2.20"] } }
then the user wants to use 2.25:
webdriver-manager update --versions.chrome=2.25 --standalone=false --gecko=false
file created:
{ "chrome": { "last": "/opt/src/webdriver-manager/selenium/chromedriver_2.25", "all": ["/opt/src/webdriver-manager/selenium/chromedriver_2.20", "/opt/src/webdriver-manager/selenium/chromedriver_2.25"] } }
-
-
(473ab3e) feat(android): match android arch to os.arch (#164)
The default was x86-64, but x86 cannot be emulated on ARM. This makes more sense
-
(c864c9a) feat(shutdown): do not error if you try to shutdown a server which is already off (#162)
When scripting, you might want to defensively run a
shutdown
command. If the shutdown fails because the server is already off, you don't care. If it fails for another reason, you do care. So I made trying to shutdown a server which is already off just a warning. I added a flag in case you want the old behavior though. -
(338fffd) feat(quiet/verbose): add
--quiet
and--verbose
flags to control the level of output (#156)I added the
--quiet
flag for cases like: where currently the start --detach; ./tests.sh; webdriver-manager shutdownselenium server output will get mixed in with other output. I also added the
--verboseflag for
webdriver-manager updatein case you *really* wanted to see all the output which gets eaten by using
--android-accept-licenses`. -
(91e36a3) feat(android on windows): Support android VMs on windows (#154)
Closes angular#51
-
(d533b03) feat(start android): extend the --detach flag to wait for appium/android (#141)
-
(26586f1) fix(start): wait for emulated android to really be ready before signaling (#161)
Before, we were just waiting for the emulator to be running, rather than waiting for the OS to be booted up and ready to instance chrome. While I was doing that I moved some stuff into
lib/utils.ts
since I felt like too much oflib/cmds/start.ts
was being devoted to this one feature. Also closes angular#166 -
(a7c6eb5) fix(update/android): 2a1505f broke android
-
(3ee3e1a) fix(fs): path.join does not handle absolute paths as desired (#152)
-
(deead0f) fix(downloader): destroy the request after receiving the header (#144)
Otherwise we’ll won’t terminate until the whole file was downloaded, even though we don’t need it.
-
(c16bf90) chore(es6): allow to use es6 promises (#160)
- with node 6 on LTS, we can update the tsconfig to es6
- update travis tests to use node 6 and 7
- Since 10.2.9 produced breaking changes, released as version 11.0.0
- Version 10.2.8 is the same as 10.2.10 due to issue #170.
-
(1f9713a) feat(start and shutdown): Added
--detach
option forstart
command and newshutdown
command (#130) -
(88cf46b) feat(version): have a way to get the package version (#136)
closes #119
-
(5966b6a) fix(cli): fix setting flag to false (#135)
- This fixes
webdriver-manager update --gecko=false
- This does not fix
webdriver-manager update --gecko=0
. Minimist interprets 0 as true. - Add options and programs unit tests closes #110
- This fixes
-
(35676ee) fix(gecko): follow redirects for content-length (#133)
- (66776a0) feat(start): add way to programmatically detect when the selenium server is running (#120)
-
(dc2f9f9) fix(cli): fix default option values, boolean and string handling (#110) (#122)
- default option values initialize properly for
minimist
- user-supplied boolean-type option values respected
- string-type option values are always strings
- simplify boolean-type option value access
- default option values initialize properly for
-
(88d6105) fix(gecko): Update geckodriver to 0.11.0 and fix suffixes. (#128)
Fixes #111
-
(707e015) fix(android): fixed four things for android: (#116)
- Make appium default to 1.6.0 (Android N didn't work on 1.5.x)
- Make virtual devices default to
google_apis
- Don't delete old virtual devices on update
- Update documentation
-
(9fe4b22) fix typo in webdriver-manager/spec/files (#125)
- (f892ec4) chore(chromedriver): update chromedriver version to 2.25
-
(b103850) fix(update): fix undefined gecko getBoolean error (#113)
closes #107
-
(7fbacf5) fix(start): set the port when standalone server starts
closes #106
-
(3984ea4) fix(filemanager): respect proxy/ignoreSSL options in contentLength HEAD request (#101)
-
(946ee00) fix(chrome_driver): use the x64 binary if chrome driver version is greater than 2.23 (#95)
- fix(chrome_driver): use the x64 binary if chrome driver version is greater than 2.23
- fix(chrome_driver): add semver to better determine version number
- refactor(chrome_driver): check first to see if we have valid semver or not
closes #93
-
(b183fad) fix(filemanager): Binaries can be downloaded from a custom CDN with alternate_cdn(#97)
closes #96
-
(5241fc1) chore(chromedriver): update chromedriver version to 2.24 (#92)
Chromedriver < 2.24 has issues with Chrome 54+ (https://bugs.chromium.org/p/chromedriver/issues/detail?id=1451).
-
(61af7be) feat(gecko): Add geckodriver, related config, and flags
Users will still need 'marionette': true in their capabilities in order to use gecko driver.
-
(fa48354) fix(downloader): fix against working proxy (#87)
-
(d6597e8) fix(start): add the correct flags for windows (#83)
closes #68
-
(c96090c) fix(update): download standalone with proxy and ignore ssl (#81)
closes #79
- (7ec082a) feat(start): add a gecko driver path to the start command (#86)
- (fe85c94) dep(types): update typescript, remove typings in favor of @types (#84)
-
(236a8ec) fix(downloader): increase timeouts and unlink sync on download errors (#75)
closes #62 and #63
-
(fa20ca8) fix(start): check if edge driver exists before adding to args (#73)
closes #60
-
(8b61b71) fix(start): use ie32 if specified via command line (#72)
closes #68
-
(8346858) feat(logging): add logging property to selenium standalone (#76)
closes #61
-
(18f9f1d) chore(selenium): add dev/urandom to selenium start args to prevent startup delays in linux
upgrade to latest chrome driver and selenium standalone server versions
- (aa1b8b7) feat(ios): iOS support (#57)
-
(81c2aa3) fix(iedriver): download url fix for iedriver (#54)
closes #53
-
(57372eb) feat(edge): add Microsoft Edge support in CLI (#56)
closes #55
-
(d937245) feat(android): support android
- (970167a) dep(typings): update typings (#42)
- (5073e23) fix(folder): fix selenium folder location (#43)
-
(d3724fb) fix(config): simplify locating configuration file, selenium folder (#41)
- Let the bin file decide which webdriver-manager to use
- Use the configuration file / package from the default position
- Selenium folder will always be located to webdriver-manager/selenium/
-
(5bca026) fix(config): configuration file local look up when used as a dependency (#33)
closes #32
-
(0cfcc88) fix(binary): Fix typo in fallback case when chalk isn't available.
- (a6f1edd) fix(global): fix finding config.json for global installs and release 10.0.1 (#23)
-
(70d32df) fix(dir): check selenium dir and warn user that the folder does not exist (#17)
-
(0ec1443) fix(binary): file type, unzipping, and permissions
closes #7, #16
-
(a073fd0) fix(npm): use global, local, and project without env
closes #20
-
(6ccb9d8) fix(versions): versions option should stay consistent with existing webdriver-manager
closes #6
-
(c34b05c) fix(bin): local, project, and global usage
-
(4a0caf5) fix(dep): fix dependency for chalk
-
(15ae0e8) fix(chmod): set permissions to 755
(1820fbc) Initial commit
-
(374c3e7) feat(length): on update, check to see the file is the correct length
closes #8
-
(8c47291) feat(local): use the local version of webdriver-tool if it is installed
closes #5
-
(f0622d2) feat(logs): add chrome logs command line option
closes #11
-
(3b30312) feat(logger): update logging methods (#5)