webdriver-installer 1.1.10 → 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +37 -0
- package/firefox.js +28 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,42 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [1.2.0](https://github.com/shaka-project/webdriver-installer/compare/v1.1.11...v1.2.0) (2025-03-13)
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
### Features
|
|
7
|
+
|
|
8
|
+
* Add MS Edge support on Linux and Mac ([59505f4](https://github.com/shaka-project/webdriver-installer/commit/59505f49b94030c63377d72e2b4639093915ab3d))
|
|
9
|
+
* Make logging optional, export main ([1d7bb17](https://github.com/shaka-project/webdriver-installer/commit/1d7bb1755725a50b9c5a423c55402f6a84503919))
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
### Bug Fixes
|
|
13
|
+
|
|
14
|
+
* Choose platform-specific msedgedriver version ([#8](https://github.com/shaka-project/webdriver-installer/issues/8)) ([2e0e859](https://github.com/shaka-project/webdriver-installer/commit/2e0e8598f878c0c3fcd8ed55d4e830da398a891b))
|
|
15
|
+
* Fix Chromedriver download for version 115+ ([#28](https://github.com/shaka-project/webdriver-installer/issues/28)) ([1d17e40](https://github.com/shaka-project/webdriver-installer/commit/1d17e40c70be980067f4972d538ddb55db88c759))
|
|
16
|
+
* Fix CLI installation ([2f6b649](https://github.com/shaka-project/webdriver-installer/commit/2f6b649033312f778795b1372abfc0a175d70e61))
|
|
17
|
+
* Fix execution in node v12 ([9b06017](https://github.com/shaka-project/webdriver-installer/commit/9b06017b7c83ebfea1e600d7f667b2810ab05b5f))
|
|
18
|
+
* Fix failure to query registry for Firefox ([ce12f34](https://github.com/shaka-project/webdriver-installer/commit/ce12f347f96406cc1f0a219c4c44cd2a9b827254))
|
|
19
|
+
* Fix Firefox macOS hang ([#48](https://github.com/shaka-project/webdriver-installer/issues/48)) ([79bb757](https://github.com/shaka-project/webdriver-installer/commit/79bb757ada95351adfcea76ce1ab21e37d2f0cce)), closes [#47](https://github.com/shaka-project/webdriver-installer/issues/47)
|
|
20
|
+
* Fix GitHub API rate limit issues getting geckodriver release ([074beb7](https://github.com/shaka-project/webdriver-installer/commit/074beb79adf7d9807ab57b67c9edd26d9451270e))
|
|
21
|
+
* Fix msedgedriver version detection ([#20](https://github.com/shaka-project/webdriver-installer/issues/20)) ([3838b88](https://github.com/shaka-project/webdriver-installer/commit/3838b889772e2a0ce7167e9220969b25714f0d03))
|
|
22
|
+
* Fix unlinking existing binaries ([#12](https://github.com/shaka-project/webdriver-installer/issues/12)) ([8a43765](https://github.com/shaka-project/webdriver-installer/commit/8a43765b54fbbf164762f7a8edf52520b4d08059))
|
|
23
|
+
* Get the correct binary for Edge on M1 macs ([#30](https://github.com/shaka-project/webdriver-installer/issues/30)) ([b5303ea](https://github.com/shaka-project/webdriver-installer/commit/b5303ea26653cee24a122208a1e7088021a77ebe))
|
|
24
|
+
* Get the correct binary for Firefox on M1 macs ([#31](https://github.com/shaka-project/webdriver-installer/issues/31)) ([f0e5a7c](https://github.com/shaka-project/webdriver-installer/commit/f0e5a7cc8d7ccc8f367bcf9386c383645e16eb3d))
|
|
25
|
+
* Ignore errors executing non-executable drivers ([#23](https://github.com/shaka-project/webdriver-installer/issues/23)) ([07c8644](https://github.com/shaka-project/webdriver-installer/commit/07c864446e68e6f8714c3d1a899b42b2d0931aae)), closes [#22](https://github.com/shaka-project/webdriver-installer/issues/22)
|
|
26
|
+
* Improved error logging for CLI ([b588638](https://github.com/shaka-project/webdriver-installer/commit/b588638774526d621983e0b497aa85ab217fcc46))
|
|
27
|
+
* Make installation process error-resilient ([#45](https://github.com/shaka-project/webdriver-installer/issues/45)) ([b70732b](https://github.com/shaka-project/webdriver-installer/commit/b70732b1f6cfab0718cca742b5c0e61899dfd752))
|
|
28
|
+
* Make Windows browser version queries more robust ([85f3b27](https://github.com/shaka-project/webdriver-installer/commit/85f3b2796e06e1a0f2171b46beef73f6a0407ecb))
|
|
29
|
+
* Retry when WebDriver updates are not available yet ([#24](https://github.com/shaka-project/webdriver-installer/issues/24)) ([e0312c8](https://github.com/shaka-project/webdriver-installer/commit/e0312c89eab70bbb7241298846dff93e4a690753))
|
|
30
|
+
* Revert EdgeDriver 115+ workaround ([#35](https://github.com/shaka-project/webdriver-installer/issues/35)) ([6df9bc2](https://github.com/shaka-project/webdriver-installer/commit/6df9bc2ba996a022361a299d511b99e1ea815b79))
|
|
31
|
+
* Work around failure to launch Edge on Linux ([#32](https://github.com/shaka-project/webdriver-installer/issues/32)) ([ce45a24](https://github.com/shaka-project/webdriver-installer/commit/ce45a243e2d4e63ef32992607a1228d2b079d960))
|
|
32
|
+
|
|
33
|
+
## [1.1.11](https://github.com/shaka-project/webdriver-installer/compare/v1.1.10...v1.1.11) (2025-03-13)
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
### Bug Fixes
|
|
37
|
+
|
|
38
|
+
* Fix Firefox macOS hang ([#48](https://github.com/shaka-project/webdriver-installer/issues/48)) ([79bb757](https://github.com/shaka-project/webdriver-installer/commit/79bb757ada95351adfcea76ce1ab21e37d2f0cce)), closes [#47](https://github.com/shaka-project/webdriver-installer/issues/47)
|
|
39
|
+
|
|
3
40
|
## [1.1.10](https://github.com/shaka-project/webdriver-installer/compare/v1.1.9...v1.1.10) (2025-02-19)
|
|
4
41
|
|
|
5
42
|
|
package/firefox.js
CHANGED
|
@@ -7,6 +7,7 @@
|
|
|
7
7
|
const {WebDriverInstallerBase} = require('./base.js');
|
|
8
8
|
const {InstallerUtils} = require('./utils.js');
|
|
9
9
|
|
|
10
|
+
const fsPromises = require('fs').promises;
|
|
10
11
|
const os = require('os');
|
|
11
12
|
const path = require('path');
|
|
12
13
|
|
|
@@ -32,7 +33,10 @@ class FirefoxWebDriverInstaller extends WebDriverInstallerBase {
|
|
|
32
33
|
// Output is a string like "Mozilla Firefox 96.0"
|
|
33
34
|
return output ? output.trim().split(' ')[2] : null;
|
|
34
35
|
} else if (os.platform() == 'darwin') {
|
|
35
|
-
|
|
36
|
+
// The typical "InstallerUtils.getMacAppVersion" may hang for Firefox, so
|
|
37
|
+
// we use this alternate method instead.
|
|
38
|
+
// See https://github.com/shaka-project/webdriver-installer/issues/47
|
|
39
|
+
return this.getMacAppVersion();
|
|
36
40
|
} else if (os.platform() == 'win32') {
|
|
37
41
|
return await InstallerUtils.getWindowsExeVersion('firefox.exe');
|
|
38
42
|
} else {
|
|
@@ -40,6 +44,29 @@ class FirefoxWebDriverInstaller extends WebDriverInstallerBase {
|
|
|
40
44
|
}
|
|
41
45
|
}
|
|
42
46
|
|
|
47
|
+
/**
|
|
48
|
+
* Parse the macOS Firefox ini file to get the version number.
|
|
49
|
+
* @return {?string}
|
|
50
|
+
*/
|
|
51
|
+
async getMacAppVersion() {
|
|
52
|
+
const path = '/Applications/Firefox.app/Contents/Resources/application.ini';
|
|
53
|
+
let data = null;
|
|
54
|
+
try {
|
|
55
|
+
data = await fsPromises.readFile(path, { encoding: 'utf8' });
|
|
56
|
+
} catch (error) {
|
|
57
|
+
// No such file, no Firefox installed.
|
|
58
|
+
return null;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
const match = /^Version=(.*)$/m.exec(data);
|
|
62
|
+
if (!match) {
|
|
63
|
+
// This shouldn't happen. Did the file change format?
|
|
64
|
+
console.error('Unable to parse Firefox version!');
|
|
65
|
+
return null;
|
|
66
|
+
}
|
|
67
|
+
return match[1];
|
|
68
|
+
}
|
|
69
|
+
|
|
43
70
|
/**
|
|
44
71
|
* @param {string} outputDirectory
|
|
45
72
|
* @return {!Promise<?string>}
|