browsertime 14.18.1 → 14.20.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 CHANGED
@@ -1,5 +1,27 @@
1
1
  # Browsertime changelog (we do [semantic versioning](https://semver.org))
2
2
 
3
+ ## 14.20.0 - 2022-02-07
4
+ ### Added
5
+ * Docker container for both amd64 and arm64.
6
+
7
+ ## 14.19.2 - 2022-02-05
8
+ ### Fixed
9
+ * Upgraded to Geckodriver 0.30.0 [#1710](https://github.com/sitespeedio/browsertime/pull/1710).
10
+ * Upgraded to Chromedriver that always looks for Chromedriver in PATH for arm64.
11
+ * Fixed getting Geckoprofile on Android when you do not specify Android package [#1712](https://github.com/sitespeedio/browsertime/pull/1712).
12
+ ## 14.19.1 - 2022-02-03
13
+ ### Fixed
14
+ * Remove the old fix for setting CPUThrottling, that works now in Chrome without that fix [#1708](https://github.com/sitespeedio/browsertime/pull/1708).
15
+ * Do not set binary for Firefox when run on Android [#1706](https://github.com/sitespeedio/browsertime/pull/1706).
16
+
17
+ ## 14.19.0 - 2022-02-02
18
+
19
+ ### Added
20
+ * Chrome and Chromedriver 98 [#1704](https://github.com/sitespeedio/browsertime/pull/1704).
21
+
22
+ ### Fixed
23
+ * Fix so we get the Firefox version on Android [#1704](https://github.com/sitespeedio/browsertime/pull/1704).
24
+
3
25
  ## 14.18.1 - 2022-01-24
4
26
  ### Fixed
5
27
  * If loading a URL failed and we retry and we logged that as an info message, but you as a user only need to know if it fails after X retries. The log message now logs at debug level [#1701](https://github.com/sitespeedio/browsertime/pull/1701).
@@ -25,14 +25,6 @@ module.exports = function (seleniumOptions, browserOptions, options, baseDir) {
25
25
  seleniumOptions.addArguments('--disable-setuid-sandbox');
26
26
  }
27
27
 
28
- // Running CPU throttling in Chrome desktop is broken. It works in
29
- // headless mode
30
- if (browserOptions.CPUThrottlingRate) {
31
- seleniumOptions.addArguments(
32
- '--disable-features=IsolateOrigins,site-per-process'
33
- );
34
- }
35
-
36
28
  if (options.xvfb && (options.xvfb === true || options.xvfb === 'true')) {
37
29
  seleniumOptions.addArguments('--disable-gpu');
38
30
  }
@@ -345,7 +345,19 @@ class Engine {
345
345
  // Just swallow
346
346
  }
347
347
  }
348
+ } // We don't have a HAR for Firefox on Android
349
+ else if (options.browser === 'firefox' && options.android) {
350
+ for (let result of totalResult) {
351
+ result.info.browser.name = 'Firefox';
352
+ try {
353
+ const vString = result.info.browser.userAgent.split('Firefox/')[1];
354
+ result.info.browser.version = vString;
355
+ } catch (e) {
356
+ // Just swallow
357
+ }
358
+ }
348
359
  }
360
+
349
361
  util.logResultLogLine(totalResult);
350
362
 
351
363
  if (failures.length > 0) {
@@ -3,6 +3,7 @@ const log = require('intel').getLogger('browsertime.firefox');
3
3
  const geckoProfilerDefaults = require('./settings/geckoProfilerDefaults');
4
4
  const { isAndroidConfigured, Android } = require('../android');
5
5
  const path = require('path');
6
+ const get = require('lodash.get');
6
7
  const pathToFolder = require('../support/pathToFolder');
7
8
  const { BrowserError } = require('../support/errors');
8
9
  const delay = ms => new Promise(res => setTimeout(res, ms));
@@ -103,7 +104,11 @@ class GeckoProfiler {
103
104
 
104
105
  let deviceProfileFilename = destinationFilename;
105
106
  if (isAndroidConfigured(options)) {
106
- deviceProfileFilename = `/sdcard/Android/data/${this.firefoxConfig.android.package}/files/geckoProfile-${index}.json`;
107
+ deviceProfileFilename = `/sdcard/Android/data/${get(
108
+ this.firefoxConfig,
109
+ 'android.package',
110
+ 'org.mozilla.firefox'
111
+ )}/files/geckoProfile-${index}.json`;
107
112
  }
108
113
 
109
114
  // Must use String.raw or else the backslashes on Windows will be escapes.
@@ -172,9 +172,14 @@ module.exports.configureBuilder = function (builder, baseDir, options) {
172
172
  return n !== undefined;
173
173
  });
174
174
 
175
- ffOptions.setBinary(
176
- firefoxTypes.length > 0 ? firefoxTypes[0] : firefox.Channel.RELEASE
177
- );
175
+ // Do not set binary when using Android
176
+ // https://bugzilla.mozilla.org/show_bug.cgi?id=1751196
177
+
178
+ if (!options.android) {
179
+ ffOptions.setBinary(
180
+ firefoxTypes.length > 0 ? firefoxTypes[0] : firefox.Channel.RELEASE
181
+ );
182
+ }
178
183
 
179
184
  ffOptions.addArguments('-no-remote');
180
185
 
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "description": "Browsertime",
3
- "version": "14.18.1",
3
+ "version": "14.20.0",
4
4
  "bin": "./bin/browsertime.js",
5
5
  "dependencies": {
6
6
  "@sitespeed.io/throttle": "3.0.0",
7
7
  "@devicefarmer/adbkit": "2.11.3",
8
8
  "btoa": "1.2.1",
9
- "@sitespeed.io/chromedriver": "97.0.4692-7b",
9
+ "@sitespeed.io/chromedriver": "98.0.4758-48b",
10
10
  "chrome-har": "0.12.0",
11
11
  "chrome-remote-interface": "0.31.0",
12
12
  "dayjs": "1.10.7",
@@ -24,7 +24,7 @@
24
24
  "lodash.set": "4.3.2",
25
25
  "selenium-webdriver": "4.1.0",
26
26
  "@sitespeed.io/edgedriver": "95.0.1020-30",
27
- "@sitespeed.io/geckodriver": "0.29.1-3",
27
+ "@sitespeed.io/geckodriver": "0.30.0",
28
28
  "@sitespeed.io/tracium": "0.3.3",
29
29
  "speedline-core": "1.4.3",
30
30
  "@cypress/xvfb": "1.2.4",